.msps-container{max-width:1200px;margin:0 auto;padding:20px}.msps-step{display:none;opacity:0;transition:opacity 0.3s ease}.msps-step.active{display:block;opacity:1}.msps-step-title{font-size:var(--step-title-font-size,32px);font-weight:var(--step-title-font-weight,600);text-align:var(--step-title-alignment,center);margin:var(--step-title-margin,0 0 10px 0);color:var(--step-title-color,#333);line-height:var(--step-title-line-height,1.2)}.msps-question{font-size:var(--step-question-font-size,24px);font-weight:var(--step-question-font-weight,normal);text-align:var(--step-question-alignment,center);margin:var(--step-question-margin,0 0 40px 0);color:var(--step-question-color,#666);line-height:var(--step-question-line-height,1.4)}.msps-products-grid{display:grid;gap:25px;padding:20px 0;width:100%}.msps-products-grid:not(.full-width):not(.fixed-width){grid-template-columns:repeat(auto-fill,minmax(200px,1fr));justify-content:center}.msps-products-grid.full-width{grid-template-columns:repeat(auto-fit,minmax(0,1fr));width:100%}.msps-products-grid.fixed-width{width:var(--grid-width)}.msps-grid-wrapper{width:100%;display:flex}.msps-grid-wrapper[data-alignment="flex-start"]{justify-content:flex-start}.msps-grid-wrapper[data-alignment="center"]{justify-content:center}.msps-grid-wrapper[data-alignment="flex-end"]{justify-content:flex-end}.msps-product-item{position:relative;height:100%;display:flex}.msps-products-grid:not(.full-width):not(.fixed-width) .msps-product-item{max-width:300px}.msps-products-grid.full-width .msps-product-item{max-width:none}.msps-products-grid.fixed-width .msps-product-item{max-width:var(--grid-width)}@media (max-width:768px){.msps-products-grid{grid-template-columns:1fr!important;justify-items:center!important}.msps-product-item{max-width:300px}}.msps-product-checkbox{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.msps-product-content,a.msps-product-content.has-link{width:100%;height:100%;display:flex;flex-direction:column;position:relative;padding:20px;border:2px solid #eee;border-radius:12px;transition:all 0.3s ease;background:#FFF0F5;margin:0}.msps-product-content .price,.msps-product-content .buttons{align-self:flex-start;width:100%}.msps-product-item .msps-product-content::before{content:'';position:absolute;top:15px;right:15px;width:30px;height:30px;border:2px solid #ddd;border-radius:50%;background-color:#fff;transition:all 0.3s ease;z-index:1}.msps-product-item .msps-product-checkbox:checked+.msps-product-content::before{background-color:#000;border-color:#000}.msps-product-item .msps-product-checkbox:checked+.msps-product-content::after{content:'✓';position:absolute;top:15px;right:15px;width:30px;height:30px;color:#fff;font-size:18px;line-height:30px;text-align:center;z-index:2}.msps-product-content img{width:100%;height:auto;border-radius:8px;margin:15px auto;flex-shrink:0}.msps-product-content h4{margin:10px 0;flex-grow:1;font-size:var(--custom-title-font-size,16px);line-height:var(--custom-title-line-height,1.4);font-weight:var(--custom-title-font-weight,500);text-align:var(--custom-title-alignment,center);color:var(--custom-title-color,#333333);font-family:var(--custom-title-font-family)}.msps-product-content h4.hidden-title{display:none;margin:0;padding:0;height:0}.msps-product-content h4.hidden-title+img,.msps-product-content img+h4.hidden-title{margin:0 auto}.msps-product-content .price{margin-top:auto}.msps-navigation{display:flex;justify-content:center;gap:20px;margin-top:40px}.msps-prev,.msps-next,.msps-submit{padding:15px 30px;border:none;border-radius:30px;font-size:16px;font-weight:600;cursor:pointer;transition:all 0.3s ease}.msps-prev{background-color:#f5f5f5;color:#333}.msps-next{background-color:#333;color:#fff}.msps-submit{background-color:#000;color:#fff;display:none}.msps-submit.active{display:block}.msps-product-item:hover .msps-product-content{border-color:#000;transform:translateY(-3px);background-color:#FFE4E8}.msps-prev:hover,.msps-next:hover,.msps-submit:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.1)}.msps-next.hover-lift:hover,.msps-submit.hover-lift:hover{transform:translateY(-3px)}.msps-next.hover-scale:hover,.msps-submit.hover-scale:hover{transform:scale(1.05)}.msps-container.accordion-style .msps-step{display:none;margin-bottom:20px}.msps-container.accordion-style .msps-step.active{display:block}.msps-container.accordion-style .msps-navigation{display:none}.elementor-editor-active .msps-step{display:block!important;opacity:1!important}.elementor-editor-active .msps-navigation{display:flex!important}.msps-step-title.required:after{content:'*';color:#e32;margin-left:5px}.msps-datetime-picker{width:100%;margin:0;padding:0;background:transparent}.msps-calendar-wrapper{margin:0;padding:0;background:transparent}.msps-date-input{width:100%;padding:12px 15px;border:2px solid #eaeaea;border-radius:8px;font-size:16px;cursor:pointer;background:#fff;transition:all 0.3s ease}.msps-date-input:hover{border-color:#000}.msps-date-input:focus{outline:none;border-color:#000;box-shadow:none}.custom-calendar{background:#fff;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,.1);border:none;padding:20px}.custom-calendar .flatpickr-months{margin-bottom:15px}.custom-calendar .flatpickr-month{color:#333}.custom-calendar .flatpickr-weekday{color:#666;font-weight:600}.custom-calendar .flatpickr-day{border-radius:50%;transition:all 0.3s ease}.custom-calendar .flatpickr-day:hover{background:#FFE4E8;border-color:transparent}.custom-calendar .flatpickr-day.selected{background:#FFF0F5;border-color:#000;color:#000}.msps-time-slots{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;--time-slot-bg:#ffffff;--time-slot-color:#333333;--time-slot-border:#eaeaea;--time-slot-hover-bg:#f5f5f5;--time-slot-selected-bg:#FFF0F5;--time-slot-selected-color:#000000;--time-slot-selected-border:#000000;--time-slot-border-radius:30px;--time-slot-padding:12px}.msps-time-input{position:absolute!important;opacity:0!important;width:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important;pointer-events:none!important}.msps-time-label{display:block;padding:12px;background:#fff;border:2px solid #eaeaea;border-radius:30px;cursor:pointer;transition:background 0.3s,border-color 0.3s;font-weight:500;position:relative}.msps-time-label:hover{background:var(--time-slot-hover-bg);transform:translateY(-2px)}.msps-time-input:checked+.msps-time-label{background:#FFF0F5;border-color:#000}.msps-time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:15px;margin-top:20px}.msps-time-slot input[type="radio"]::before,.msps-time-slot input[type="radio"]::after{display:none!important}.msps-time-slot{position:relative}.msps-datetime-picker.style-modern .flatpickr-calendar{box-shadow:0 10px 30px rgba(0,0,0,.1);border:none;border-radius:15px;background:#fff}.msps-datetime-picker.style-classic .flatpickr-calendar{border:1px solid #ddd;box-shadow:none;background:#fff}.msps-datetime-picker.style-minimal .flatpickr-calendar{box-shadow:none;border:none;background:#f7f7f7}.msps-datetime-picker.style-rounded .flatpickr-calendar{border-radius:30px;overflow:hidden;box-shadow:0 5px 20px rgba(0,0,0,.1);border:none;background:#fff}.msps-datetime-picker.style-fancy .flatpickr-calendar{box-shadow:0 15px 40px rgba(0,0,0,.15);border:none;border-radius:20px;background:linear-gradient(145deg,#ffffff,#f5f5f5)}.msps-datetime-picker.style-modern .flatpickr-day.selected{background:#FFF0F5;border-color:#000}.msps-datetime-picker.style-fancy .flatpickr-day.selected{background:linear-gradient(145deg,#FFF0F5,#FFE4E8);box-shadow:0 4px 15px rgba(0,0,0,.1)}.msps-datetime-picker.style-minimal .flatpickr-day.selected{background:#000;color:#fff}.msps-time-slots.style-list .msps-time-grid{display:flex;flex-direction:column;gap:10px}.msps-time-slots.style-buttons .msps-time-label{background:#f5f5f5;border:none;box-shadow:0 2px 5px rgba(0,0,0,.1)}.msps-time-slots.style-circles .msps-time-label{border-radius:50%;width:80px;height:80px;display:flex;align-items:center;justify-content:center}.msps-time-slots.style-cards .msps-time-label{padding:20px;box-shadow:0 5px 15px rgba(0,0,0,.05);transform-style:preserve-3d;transition:transform 0.3s ease}.msps-time-slots.style-cards .msps-time-input:checked+.msps-time-label{transform:translateY(-5px) rotateX(10deg)}.msps-product-item .location-logo{margin-bottom:15px;text-align:center}.msps-product-item .location-logo img{max-width:150px;max-height:100px;width:auto;height:auto;border-radius:8px;object-fit:contain}.msps-product-item .location-logo img[src$=".svg"]{width:100%;height:100%;padding:10px}.msps-product-item .location-info{text-align:center}.msps-product-item .location-description{color:#666;margin:10px 0}.msps-product-item .location-address{font-size:.9em;color:#888}.msps-time-slots.style-modern{--time-slot-bg:#ffffff;--time-slot-border-radius:12px;--time-slot-shadow:0 2px 8px rgba(0, 0, 0, 0.05)}.msps-time-slots.style-minimal{--time-slot-bg:#f7f7f7;--time-slot-border:transparent;--time-slot-hover-shadow:none}.msps-time-slots.style-rounded{--time-slot-border-radius:50px;--time-slot-padding:12px 24px}.msps-time-slots.style-fancy{--time-slot-bg:linear-gradient(145deg, #ffffff, #f5f5f5);--time-slot-shadow:0 4px 15px rgba(0, 0, 0, 0.1);--time-slot-border:transparent}.flatpickr-calendar{background:#fff;border:1px solid #ccc;box-shadow:0 4px 8px rgba(0,0,0,.1);border-radius:8px;padding:10px}.flatpickr-day{color:#333;background:#fff;border:none}.flatpickr-day.today{background-color:#f0f0f0}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background-color:#4CAF50;color:#fff}.flatpickr-time{background:#f9f9f9;padding:5px 10px;border-top:1px solid #ccc}.flatpickr-time input{border-color:#ccc}.select-wrapper{position:relative;background:#f9f9f9;border:1px solid #ccc;border-radius:8px;cursor:pointer}.select-wrapper:after{content:'\25BC';position:absolute;top:50%;right:10px;transform:translateY(-50%);color:#333}.select-dropdown{display:none;position:absolute;background:#fff;width:100%;box-shadow:0 4px 8px rgba(0,0,0,.1);z-index:100}.select-dropdown.active{display:block}.flatpickr-calendar.inline{display:none!important}.msps-date-input{width:100%;padding:12px 15px;border:2px solid #eaeaea;border-radius:8px;font-size:16px;cursor:pointer;background:#fff;transition:all 0.3s ease}.msps-date-input:hover{border-color:#000}.msps-date-input:focus{outline:none;border-color:#000;box-shadow:none}.msps-time-slot{position:relative}.msps-time-input{position:absolute;opacity:0;width:0;height:0}.msps-time-label{display:block;padding:var(--time-slot-padding);text-align:center;background:var(--time-slot-bg);color:var(--time-slot-color);border:2px solid var(--time-slot-border);border-radius:var(--time-slot-border-radius);cursor:pointer;transition:all 0.3s ease}.msps-time-label:hover{background:var(--time-slot-hover-bg);transform:translateY(-2px)}.msps-time-input:checked+.msps-time-label{background:var(--time-slot-selected-bg);color:var(--time-slot-selected-color);border-color:var(--time-slot-selected-border)}.msps-product-item a.msps-product-content.has-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;width:100%;height:100%;padding:20px;border:2px solid #eee;border-radius:12px;background:#FFF0F5;transition:all 0.3s ease}.msps-product-item a.msps-product-content.has-link:hover{transform:translateY(-3px);border-color:#000;background-color:#FFE4E8}.msps-product-item a.msps-product-content.has-link::before,.msps-product-item a.msps-product-content.has-link::after{display:none!important}.msps-product-link{display:block;text-decoration:none;color:inherit;width:100%;height:100%}.msps-product-content.has-link{cursor:pointer;height:100%;display:flex;flex-direction:column;padding:20px;border:2px solid #eee;border-radius:12px;background:#FFF0F5;transition:all 0.3s ease}.msps-product-link:hover .msps-product-content.has-link{transform:translateY(-3px);border-color:#000;background-color:#FFE4E8}.msps-product-content img{height:auto;display:block;margin:0 auto;transition:width 0.3s ease}.msps-selection-bar{position:fixed;bottom:0;left:0;right:0;background:rgba(255,255,255,.95);box-shadow:0 -2px 10px rgba(0,0,0,.1);padding:15px;z-index:1000;transform:translateY(100%);transition:transform 0.3s ease}.msps-selection-bar.active{transform:translateY(0)}.msps-selection-items{display:flex;gap:20px;max-width:1200px;margin:0 auto;overflow-x:auto;padding:0 20px}.msps-selection-item{display:none;align-items:center;gap:8px;opacity:0;transition:opacity 0.3s ease}.msps-selection-item.active{display:flex;opacity:1}.selection-label{font-weight:600;color:#666}.selection-value{color:#000}.msps-selection-bar-top .msps-selection-bar{top:0;bottom:auto;transform:translateY(-100%)}.msps-selection-bar-top .msps-selection-bar.active{transform:translateY(0)}@media (max-width:768px){.msps-selection-items{flex-wrap:wrap;justify-content:flex-start}.msps-selection-item{width:100%;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.1)}.msps-selection-item:last-child{border-bottom:none}}.msps-selection-items::-webkit-scrollbar{height:6px}.msps-selection-items::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.msps-selection-items::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.msps-selection-items::-webkit-scrollbar-thumb:hover{background:#555}.msps-date-input,.msps-time-input{width:100%;padding:10px;margin-bottom:10px;border:1px solid #ccc;border-radius:4px;font-size:16px}.msps-datetime-container{padding:20px;background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-top:20px;display:none}.msps-datetime-container.show{display:block}.flatpickr-calendar{font-family:var(--calendar-font-family);background:var(--calendar-background-color,#ffffff);border:1px solid var(--calendar-border-color,#e6e6e6);border-radius:var(--calendar-border-radius,8px);box-shadow:var(--calendar-box-shadow,0 4px 8px rgba(0,0,0,.1));margin-top:var(--calendar-margin-top,20px)}.flatpickr-current-month{font-size:var(--calendar-month-font-size,16px);font-weight:var(--calendar-month-font-weight,600);color:var(--calendar-month-color,#333);padding:var(--calendar-month-padding,10px 0)}.flatpickr-weekday{font-size:var(--calendar-weekday-font-size,14px);font-weight:var(--calendar-weekday-font-weight,normal);color:var(--calendar-weekday-color,#666)}.flatpickr-day{font-size:var(--calendar-day-font-size,14px);font-weight:var(--calendar-day-font-weight,normal);color:var(--calendar-day-color,#333)}.msps-time-label{font-size:var(--time-slot-font-size,14px);font-weight:var(--time-slot-font-weight,normal);color:var(--time-slot-color,#333);font-family:var(--time-slot-font-family);padding:var(--time-slot-padding,8px 12px);background:var(--time-slot-background,#ffffff);border:1px solid var(--time-slot-border-color,#e6e6e6);border-radius:var(--time-slot-border-radius,4px);margin:var(--time-slot-margin,4px);cursor:pointer;transition:all 0.3s ease;text-align:center;display:block}.msps-time-label:hover{background:var(--time-slot-hover-background,#f5f5f5);transform:translateY(-2px)}.msps-time-input:checked+.msps-time-label{background:var(--time-slot-selected-background,#FFF0F5);border-color:var(--time-slot-selected-border-color,#FFB6C1);color:var(--time-slot-selected-color,#333);transform:translateY(-2px);box-shadow:0 2px 4px rgba(0,0,0,.1)}.msps-time-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:20px;padding:15px}.msps-product-item:hover .msps-product-content h4{color:#000}.msps-product-content h4.hidden-title~img{margin:30px auto;padding:10px}.msps-step-title,.msps-question,.msps-selection-bar{font-family:var(--e-global-typography-primary-font-family)}.msps-step-title{font-size:var(--step-title-font-size,32px);font-weight:var(--step-title-font-weight,600);text-align:var(--step-title-alignment,center);margin:var(--step-title-margin,0 0 10px 0);color:var(--step-title-color,#333);line-height:var(--step-title-line-height,1.2)}.msps-question{font-size:var(--step-question-font-size,24px);font-weight:var(--step-question-font-weight,normal);text-align:var(--step-question-alignment,center);margin:var(--step-question-margin,0 0 40px 0);color:var(--step-question-color,#666);line-height:var(--step-question-line-height,1.4)}.msps-selection-bar .selection-label{font-size:var(--selection-label-font-size,14px);font-weight:var(--selection-label-font-weight,600);color:var(--selection-label-color,#666)}.msps-selection-bar .selection-value{font-size:var(--selection-value-font-size,14px);font-weight:var(--selection-value-font-weight,normal);color:var(--selection-value-color,#000)}.msps-product-content h4{margin:10px 0;flex-grow:1;font-size:var(--custom-title-font-size,16px);line-height:var(--custom-title-line-height,1.4);font-weight:var(--custom-title-font-weight,500);text-align:var(--custom-title-alignment,center);color:var(--custom-title-color,#333333);font-family:var(--custom-title-font-family)}.msps-product-content .product-name{font-size:var(--product-name-font-size,16px);font-weight:var(--product-name-font-weight,500);color:var(--product-name-color,#333);font-family:var(--product-name-font-family)}.msps-product-content .amount{font-size:var(--product-amount-font-size,14px);font-weight:var(--product-amount-font-weight,normal);color:var(--product-amount-color,#666);font-family:var(--product-amount-font-family)}.msps-product-content .price-val{font-size:var(--product-price-font-size,16px);font-weight:var(--product-price-font-weight,600);color:var(--product-price-color,#333);font-family:var(--product-price-font-family)}.msps-location-title{font-size:var(--location-title-font-size,18px);font-weight:var(--location-title-font-weight,600);color:var(--location-title-color,#333);font-family:var(--location-title-font-family)}.msps-location-address{font-size:var(--location-address-font-size,14px);font-weight:var(--location-address-font-weight,normal);color:var(--location-address-color,#666);font-family:var(--location-address-font-family)}.msps-location-info{font-size:var(--location-info-font-size,14px);font-style:var(--location-info-font-style,italic);color:var(--location-info-color,#666);font-family:var(--location-info-font-family)}.flatpickr-calendar{font-family:var(--calendar-font-family);background:var(--calendar-background-color,#ffffff);border:1px solid var(--calendar-border-color,#e6e6e6);border-radius:var(--calendar-border-radius,8px);box-shadow:var(--calendar-box-shadow,0 4px 8px rgba(0,0,0,.1));margin-top:var(--calendar-margin-top,20px)}.flatpickr-current-month{font-size:var(--calendar-month-font-size,16px);font-weight:var(--calendar-month-font-weight,600);color:var(--calendar-month-color,#333);padding:var(--calendar-month-padding,10px 0)}.flatpickr-weekday{font-size:var(--calendar-weekday-font-size,14px);font-weight:var(--calendar-weekday-font-weight,normal);color:var(--calendar-weekday-color,#666)}.flatpickr-day{font-size:var(--calendar-day-font-size,14px);font-weight:var(--calendar-day-font-weight,normal);color:var(--calendar-day-color,#333)}.msps-time-label{font-size:var(--time-slot-font-size,14px);font-weight:var(--time-slot-font-weight,normal);color:var(--time-slot-color,#333);font-family:var(--time-slot-font-family)}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--calendar-selected-background,#FFF0F5);border-color:var(--calendar-selected-border-color,#FFB6C1);color:var(--calendar-selected-color,#333)}.flatpickr-day:hover{background:var(--calendar-hover-background,#f5f5f5)}.flatpickr-day.today{border-color:var(--calendar-today-border-color,#FFB6C1)}.msps-product-content .buttons{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px;width:100%}.buttons button{background-color:var(--button-background,#eee);color:var(--button-text-color,#333);border:none;cursor:pointer;transition:all 0.3s ease;border-radius:var(--button-border-radius,4px);width:var(--button-size,26px);height:var(--button-size,26px);display:flex;align-items:center;justify-content:center;font-size:var(--button-font-size,16px);font-weight:var(--button-font-weight,normal)}.msps-product-content .price{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:auto;padding-top:10px}.msps-product-content .price-val{font-size:var(--price-font-size,16px);font-weight:var(--price-font-weight,600);color:var(--price-color,#333);font-family:var(--price-font-family)}