.calender-modal .card-header{background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:24px 24px 16px}.calender-modal .card-header span{font-size:24px;font-weight:700;line-height:1.3;color:var(--color-text);margin-bottom:8px;display:block}.calender-modal{width:100%!important;height:80vh;border-radius:12px;overflow:hidden;background:var(--color-bg);border:1px solid var(--color-border)}.calender-modal-container{position:relative;height:100%;display:flex;flex-direction:column}.calender-close-btn{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;z-index:10;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.calender-close-btn:hover{background:var(--color-bg-hover);color:var(--color-text)}.calender-layout{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.error-banner{background:var(--color-error-bg);border:1px solid var(--color-error);color:var(--color-error);padding:12px 20px;font-size:14px}.calender-columns{display:flex;flex:1;min-height:0}.calender-column{display:flex;flex-direction:column}.calender-column--details{flex:0 0 300px;background:var(--color-bg-surface);border-right:1px solid var(--color-border)}.calender-column--calendar{flex:0 0 350px;background:var(--color-bg);border-right:1px solid var(--color-border)}.calender-column--times{flex:1;background:var(--color-bg);min-width:280px;overflow:hidden;position:relative;display:flex;flex-direction:column}.service-details-column{padding:24px;height:100%;overflow-y:auto}.margin-bottom--30{margin-bottom:30px}.service-title{font-size:24px;font-weight:700;color:var(--color-text);margin:0 0 8px;line-height:1.3}.service-description{font-size:16px;color:var(--color-text-muted);margin:0;line-height:1.5}.service-info{margin-bottom:32px}.info-item{display:flex;align-items:center;margin-bottom:20px}.info-icon{color:var(--color-primary);font-size:16px;width:20px;margin-right:12px}.info-content{display:flex;flex-direction:column}.info-label{font-size:14px;color:var(--color-text-muted);font-weight:500}.info-value{font-size:16px;color:var(--color-text);font-weight:600}.booking-confirmation{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-top:auto}.confirmation-title{font-size:18px;font-weight:600;margin:0 0 16px}.confirmation-details{display:flex;flex-direction:column;gap:12px}.confirmation-item{display:flex;align-items:center;font-size:14px;color:var(--color-text)}.confirmation-icon{color:var(--color-primary);font-size:14px;width:16px;margin-right:8px}.calender-calendar{padding:24px;height:100%;display:flex;flex-direction:column;overflow-y:auto}.calendar-header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.calendar-title{font-size:20px;font-weight:600;margin:0 0 16px}.calendar-navigation{display:flex;align-items:center;justify-content:space-between}.nav-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.nav-btn:hover{background:var(--color-bg-hover);color:var(--color-text)}.month-year{font-size:16px;font-weight:600}.calendar-grid{flex:1}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:8px}.weekday{text-align:center;font-size:12px;font-weight:600;color:var(--color-text-muted);padding:8px 0;text-transform:uppercase;letter-spacing:.5px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{aspect-ratio:1;width:100%;max-width:44px;min-height:36px;margin:0 auto;border:0;background:transparent;border-radius:50%;font-size:14px;font-weight:500;color:var(--color-text-muted);transition:background .15s ease,color .15s ease;display:flex;align-items:center;justify-content:center}.calendar-day.available{color:var(--color-primary);font-weight:700;background:color-mix(in srgb,var(--color-primary) 14%,transparent);cursor:pointer}.calendar-day.available:hover{background:color-mix(in srgb,var(--color-primary) 26%,transparent)}.calendar-day.selected,.calendar-day.selected:hover{background:var(--color-primary);color:#ffffff}.calendar-day.past,.calendar-day:disabled{background:transparent;cursor:default;opacity:.45}.calendar-day.empty{background:none;cursor:default}.calender-time-slots{height:100%;display:flex;flex-direction:column;overflow-y:auto;margin-top:6px;padding:24px 24px 100px}.time-slots-header{margin-bottom:24px}.time-slots-title{font-size:20px;font-weight:600;color:var(--color-text);margin:0 0 4px}.time-slots-subtitle{font-size:14px;color:var(--color-text-muted);margin:0}.timezone-indicator{font-size:12px;color:var(--color-text-muted);margin:4px 0 0}.timezone-indicator:hover{color:var(--color-text)}.no-times-message{display:flex;align-items:center;justify-content:center;flex:1;font-size:14px;color:var(--color-text-muted);text-align:center}.time-slots-content{flex:1}.time-group{margin-bottom:24px}.time-group:last-child{margin-bottom:0}.time-group-title{font-size:14px;font-weight:600;color:var(--color-text-muted);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.time-slots-list{display:flex;flex-direction:column;gap:8px}.time-slot-wrapper{display:flex;align-items:center;gap:8px;position:relative}.time-slot-btn{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:14px;color:var(--color-text);text-align:left;flex:1}.time-slot-btn.selected,.time-slot-btn:hover:not(.booked):not(.past):not(.selected){border-color:var(--color-primary)}.time-slot-btn.selected{background:var(--color-primary);color:white}.time-slot-btn.past,.time-slot-btn:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.55}.time-slot-btn.booked{background:var(--color-bg-surface);border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.time-slot-next-btn{background:var(--color-text);color:white;border:none;border-radius:8px;padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;animation:slideInRight .3s ease-out}.time-slot-next-btn:hover{background:var(--color-text-muted);transform:translateX(2px)}.time-slot-next-btn:active{transform:translateX(0)}@keyframes slideInRight{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.booked-text,.time-text{font-weight:500}.booked-text{font-size:12px;color:var(--color-primary)}.calender-footer{background:var(--color-bg);border-top:1px solid var(--color-border);padding:20px 24px;flex-shrink:0;position:relative;z-index:10}.calender-book-btn{background:var(--color-primary);color:white;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:140px}.calender-book-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.calender-book-btn:disabled{background:var(--color-text-muted);cursor:not-allowed;transform:none}@media (max-width:768px){.calender-modal{width:100%!important;height:90vh;max-height:100vh}.calender-columns{flex-direction:column;overflow-y:scroll}.calender-column--calendar,.calender-column--details,.calender-column--times{flex:none;border-right:none;border-bottom:1px solid var(--color-border);overflow-y:visible;height:auto}.calender-column--details{order:1}.calender-column--calendar{order:2}.calender-column--times{order:3;border-bottom:none;padding-bottom:20px}.calender-calendar,.calender-time-slots,.service-details-column{padding:16px}.booking-cta--block{margin-bottom:100px}.calendar-days{gap:2px}.calendar-day{min-height:44px;font-size:14px;aspect-ratio:1}.booking-confirmation{margin-top:16px}.time-slot-btn{font-size:15px;touch-action:manipulation}.form-input,.time-slot-btn{min-height:48px;padding:14px 16px}.form-input{font-size:16px;-webkit-appearance:none}.calender-book-btn{width:100%;min-height:48px;font-size:16px}}@media (max-width:480px){.service-title{font-size:20px}.calendar-title,.time-slots-title{font-size:18px}.calender-footer{padding:16px}.calender-book-btn{width:100%;padding:14px 24px;min-height:48px}.time-slot-btn{font-size:15px}.form-input,.time-slot-btn{min-height:48px;padding:16px}.form-input{font-size:16px}.calendar-day{min-height:44px;font-size:14px}.booking-step2-modal .border-top .display--flex{width:100%;gap:12px}.booking-step2-modal .border-top .display--flex.flex-justify-content--space-between.flex-align-items--center{padding-bottom:30px}.booking-step2-modal .border-top .button{flex-shrink:1;min-width:0}}.calender-calendar.loading,.calender-time-slots.loading{opacity:.6;pointer-events:none}.no-availability-message{display:flex;align-items:center;justify-content:center;flex:1;font-size:14px;color:var(--color-text-muted);text-align:center;padding:40px 20px}.calender-column--step2,.calender-modal .card-body{width:100%;max-width:600px;margin:0 auto;padding:20px}.booking-step2-container{display:flex;flex-direction:column}@media (max-width:768px){.booking-step2-modal .card-body--primary{padding-bottom:100px}.booking-step2-modal .card-root{margin-bottom:100px}}.booking-email-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border)}.form-group{margin-bottom:16px}.booking-email-section{padding:20px}.booking-email-section .form-group{margin-bottom:16px}.booking-email-section label{margin-bottom:12px}.booking-email-section .form-input{width:100%;padding:12px 16px;border:1px solid var(--color-border);border-radius:15px;font-size:14px;transition:border-color .2s ease,box-shadow .2s ease;background:var(--color-bg-surface);box-sizing:border-box;outline:none!important;-webkit-appearance:none;-moz-appearance:none;appearance:none}.booking-email-section .form-input:focus{border:1px solid var(--color-secondary)!important;box-shadow:0 0 0 3px rgba(16,187,169,.1)!important;outline:none!important}.booking-email-section .form-input.error{border:1px solid var(--color-error)}.booking-email-section .form-input.error:focus{border:1px solid var(--color-secondary)!important;box-shadow:0 0 0 3px rgba(16,187,169,.1)!important}.calender-footer-actions{display:flex;gap:12px;justify-content:flex-end;align-items:center}.booking-step2-modal{width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column}.booking-step2-modal .card-root{border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,.07);border:1px solid var(--color-border);overflow:hidden}.booking-step2-modal .card-header{background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:24px 24px 20px;display:flex;align-items:flex-start;gap:16px}.booking-step2-modal .card-header-content{flex:1;display:flex;flex-direction:column;gap:8px}.booking-step2-modal .card-header-title{font-size:24px;font-weight:700;line-height:1.3;color:var(--color-text);display:block}.booking-step2-modal .card-header-metadata{display:flex;align-items:center}.booking-step2-modal .card-header-metadata .display--flex{display:flex;align-items:center;gap:8px}.booking-step2-modal .card-header-metadata-community{font-size:14px;font-weight:600;color:var(--color-text);line-height:1.4}.booking-step2-modal .card-header-metadata-separator{font-size:14px;color:var(--color-text-muted);margin:0 4px}.booking-step2-modal .card-header-metadata-type{font-size:14px;font-weight:400;color:var(--color-text-muted);line-height:1.4}.header-back-btn{background:none;border:none;padding:8px;border-radius:50%;color:var(--color-text-muted);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:32px;height:32px}.header-back-btn:hover{background:var(--color-bg-surface);color:var(--color-text)}.header-back-btn:active{background:var(--color-bg-hover)}.booking-step2-modal .card-body--primary{background:var(--color-bg);padding:0}.booking-step2-modal .button-fill--primary{background:var(--color-text)!important;border:none;padding:16px 32px!important;font-size:16px;font-weight:600;transition:all .2s ease;display:flex;align-items:center;gap:8px}.webinar-booking-summary{max-width:100%}.webinar-booking-summary .property-list{width:100%}.webinar-booking-summary .property-list-item{display:flex;gap:2%;margin-bottom:12px}.webinar-booking-summary .property-list-item-property{flex:0 0 18%;font-size:14px;color:var(--color-text-muted)}.webinar-booking-summary .property-list-item-definition{flex:0 0 80%;text-align:left;word-break:break-word;overflow-wrap:break-word}.webinar-booking-summary .property-list-item-definition span{display:inline-block;width:100%;font-size:14px;color:var(--color-text);font-weight:500}.mobile-preview .booking-step2-modal{width:100%!important;max-width:100%!important;margin:0 0 40px!important;border-radius:0!important;height:auto!important;display:flex!important;flex-direction:column!important}.mobile-preview .booking-step2-modal .card-root{border:none!important;border-radius:15px!important;height:auto!important;display:flex!important;flex-direction:column!important;overflow:visible!important;box-shadow:none!important}.mobile-preview .booking-step2-modal .card-header{padding:16px 16px 12px!important;flex-shrink:0!important;border-radius:15px!important;border-bottom:1px solid var(--color-border)!important}.mobile-preview .booking-step2-modal .card-header-title{font-size:20px!important}.mobile-preview .booking-step2-modal .card-body--primary{flex:1!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.mobile-preview .booking-step2-modal .padding--20{padding:16px!important}.mobile-preview .booking-step2-modal .border-top{padding:12px 16px!important;border-top:2px solid var(--color-border)!important;flex-shrink:0!important;border-radius:15px!important}.mobile-preview .booking-step2-modal .display--flex{gap:12px!important;align-items:stretch!important}.mobile-preview .booking-step2-modal .button-fill--primary{width:100%!important;max-width:100%!important;min-height:50px!important;padding:14px 16px!important;font-size:16px!important;margin:0!important;box-sizing:border-box!important;white-space:normal!important;word-wrap:break-word!important;line-height:1.4!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}.mobile-preview .calender-modal{width:100%!important;max-width:100%!important;margin:0 0 40px!important;border-radius:15px!important;height:auto!important;display:flex!important;flex-direction:column!important;border:1px solid var(--color-border)!important;box-shadow:0 4px 6px rgba(0,0,0,.07)!important;background:var(--color-bg)!important}.mobile-preview .calender-modal-container{overflow-y:visible!important}.mobile-preview .calender-layout,.mobile-preview .calender-modal-container{display:flex!important;flex-direction:column!important;background:transparent!important;border-radius:15px!important}.mobile-preview .calender-columns{display:flex!important;flex-direction:column!important;overflow:visible!important;background:transparent!important}.mobile-preview .calender-column--calendar,.mobile-preview .calender-column--details{flex:none!important;border-right:none!important;border-bottom:1px solid var(--color-border)!important;overflow-y:visible!important;height:auto!important;width:100%!important}.mobile-preview .calender-column--details{order:1!important}.mobile-preview .calender-column--calendar{order:2!important}.mobile-preview .calender-column--times{order:3!important;flex:none!important;border-right:none!important;width:100%!important;padding-bottom:16px!important;border-bottom-left-radius:15px!important;border-bottom-right-radius:15px!important}.mobile-preview .calender-column--times,.mobile-preview .calender-time-slots{overflow-y:visible!important;height:auto!important;background:transparent!important}.mobile-preview .calender-time-slots{max-height:none!important;padding-bottom:0!important;margin-bottom:0!important}.mobile-preview .calender-column--times{padding-bottom:0!important;border-bottom:none!important}.mobile-preview .calender-columns,.mobile-preview .calender-modal-container{padding-bottom:0!important;margin-bottom:0!important}.booking-cta .button-fill--primary{background:var(--color-text)!important;border:none;padding:11px 28px!important;border-radius:8px;font-size:15px;font-weight:600;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.booking-cta:disabled .button-fill--primary,.booking-cta:hover:not(:disabled) .button-fill--primary{background:var(--color-text-muted)!important}.booking-cta:disabled .button-fill--primary{opacity:.55}.booking-cta--block{width:100%!important;display:block}.booking-step2-modal .border-top .booking-cta{width:auto!important;flex:0 0 auto}.booking-step2-modal .border-top .booking-cta .button-fill--primary{min-width:130px}.mobile-preview .booking-step2-modal .border-top .display--flex{flex-direction:row!important;align-items:center!important;gap:10px!important}.mobile-preview .booking-step2-modal .border-top .booking-cta{width:auto!important;flex:0 0 auto}.mobile-preview .booking-step2-modal .border-top .booking-cta .button-fill--primary{width:auto!important;min-width:120px!important;min-height:44px!important;padding:11px 24px!important;border-radius:8px!important;font-size:15px!important;font-weight:600!important;white-space:nowrap!important}