@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=DM+Serif+Display&display=swap";
:root{--color-bg:#fff;--color-text:#25292c;--color-black:#000;--gray-80:#000c;--gray-70:#000000b3;--gray-60:#0009;--gray-50:#00000080;--gray-40:#0006;--gray-30:#0000004d;--gray-20:#0003;--gray-10:#0000001a;--white-80:#fffc;--white-50:#ffffff80;--white-10:#ffffff1a;--color-off-white:#f2eee8;--color-cream:#faf8f5;--overlay-bg:#00000080;--color-apricot:#fea78f;--color-apricot-1:#ff8664;--color-apricot-30:#fea78f4d;--color-green:#7cc16a;--color-green-bg:#7cc16a66;--color-error:#f34b4b;--radius-modal:32px;--radius-sidebar:24px;--radius-card:16px;--radius-card-selected:20px;--radius-pill:16px;--radius-input:10px;--radius-btn:32px;--radius-badge:16px;--radius-slot:10px;--radius-slot-selected:14px;--font-serif:"DM Serif Display", Georgia, serif;--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}html,body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-off-white);-webkit-font-smoothing:antialiased;margin:0;padding:0}body.modal-open{overflow:hidden}.modal{z-index:1000;background:0 0;justify-content:center;align-items:center;padding:24px;animation:.25s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal__inner{background:var(--color-bg);border-radius:var(--radius-modal);width:878px;max-width:100%;height:665px;max-height:90vh;padding:8px;animation:.3s slideUp;display:flex;overflow:hidden;box-shadow:0 24px 80px #0003}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.booking-layout{width:100%;height:100%;display:flex}.booking-main{flex-direction:column;flex:1;min-width:0;padding-right:12px;display:flex;overflow:hidden}.booking-main__content{flex-direction:column;flex:1;gap:32px;min-height:0;padding:48px;display:flex;overflow-y:auto}.modal h1.booking-title{font-family:var(--font-sans);color:var(--color-text);text-align:center;white-space:nowrap;flex-shrink:0;margin:0;font-size:32px;font-weight:500;line-height:120%}.booking-header{flex-direction:column;flex-shrink:0;align-items:center;gap:16px;width:100%;display:flex}.booking-header[data-step="1"]{gap:20px}.booking-header[data-step="2"]{gap:12px}.booking-main__content[data-step="1"],.booking-main__content[data-step="2"]{padding:24px 48px 48px}.booking-badge{border-radius:var(--radius-badge);background:var(--color-apricot-30);color:var(--color-apricot-1);-webkit-backdrop-filter:blur(20px);align-items:center;padding:2px 8px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.booking-title-group{flex-direction:column;align-items:center;gap:8px;display:flex}.booking-description{color:var(--gray-70);text-align:center;max-width:420px;margin:0;font-size:14px;font-weight:400;line-height:140%}.booking-list-navigation{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.booking-step{background:var(--color-off-white);color:var(--gray-30);-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(12px);white-space:nowrap;cursor:default;border:none;border-radius:32px;padding:6px 12px;font-size:12px;font-weight:500;line-height:16px;transition:opacity .2s;position:relative}.booking-step.is-done{color:var(--color-black);cursor:pointer}.booking-step.is-done:hover{opacity:.7}.booking-step.is-active{color:var(--color-black)}.booking-step.is-active:before{content:"";border:2px solid var(--color-black);pointer-events:none;border-radius:32px;position:absolute;inset:-4px}.treatment-list{background:var(--color-bg);border-radius:12px;flex-direction:column;flex:1 0 0;align-self:center;gap:8px;width:454px;max-width:100%;padding:16px 16px 0;display:flex}.treatment-card{background:var(--color-off-white);cursor:pointer;text-align:left;width:100%;font-family:inherit;font-size:inherit;color:var(--color-text);border:none;border-radius:12px;align-items:center;height:88px;padding:0;display:flex;position:relative}.treatment-card:before{content:"";border:2px solid var(--color-black);pointer-events:none;opacity:0;border-radius:16px;transition:opacity .15s;position:absolute;inset:-5px}.treatment-card:hover:before,.treatment-card.is-selected:before{opacity:1}.treatment-card:hover,.treatment-card.is-selected{z-index:1}.treatment-card__image{background:#79797933;border-radius:12px;flex-shrink:0;width:117px;height:88px;overflow:hidden}.treatment-card__image img{object-fit:cover;width:100%;height:100%;display:block}.treatment-card__body{flex:1;min-width:0;padding:0 24px}.treatment-card__title{color:var(--color-black);font-size:16px;font-weight:500;line-height:20px}.treatment-card__sub{color:var(--gray-50);font-size:14px;font-weight:400;line-height:140%}.datetime-step{border:1px solid var(--gray-10);background:var(--color-bg);border-radius:12px;flex-direction:column;flex:1 0 0;align-self:center;gap:8px;width:454px;max-width:100%;padding:12px 16px 0;display:flex;overflow:hidden}.datetime-month{border-bottom:1px solid var(--gray-10);text-align:center;color:var(--color-text);white-space:nowrap;flex-shrink:0;width:100%;padding:2px 0 10px;font-size:12px;font-weight:500;line-height:16px}.datetime-days{flex-shrink:0;align-items:center;width:100%;display:flex}.datetime-nav{background:var(--color-bg);cursor:pointer;width:28px;height:74px;color:var(--color-text);border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:flex}.datetime-nav:hover:not(:disabled){opacity:.6}.datetime-nav:disabled{color:var(--gray-30);cursor:not-allowed;opacity:1}.datetime-day{width:122px;font-family:var(--font-sans);color:var(--gray-30);-webkit-user-select:none;user-select:none;cursor:pointer;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;height:74px;padding:16px 0;font-weight:500;display:flex;position:relative}.datetime-day.is-active{cursor:default}.datetime-day.is-disabled{cursor:not-allowed}.datetime-day:hover:not(.is-active):not(.is-disabled){opacity:.75}.datetime-day.is-active .datetime-day__num{color:var(--color-black)}.datetime-day.is-active .datetime-day__name{color:var(--gray-80)}.datetime-day__num{font-size:20px;font-weight:500;line-height:130%}.datetime-day__name{font-size:12px;font-weight:500;line-height:16px}@keyframes slideInFromRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.datetime-slots.slide-next{animation:.22s ease-out slideInFromRight}.datetime-slots.slide-prev{animation:.22s ease-out slideInFromLeft}.datetime-slots{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:1 0 0;gap:8px;width:calc(100% + 12px);min-height:0;margin:0 -6px;padding:6px 6px 16px;display:flex;overflow-y:auto}.datetime-slots::-webkit-scrollbar{display:none}.datetime-slot{background:var(--color-off-white);border-radius:var(--radius-slot);cursor:pointer;width:100%;font-family:var(--font-sans);text-align:center;color:var(--color-text);border:none;flex-shrink:0;padding:16px;font-size:14px;font-weight:500;line-height:16px;transition:all .15s;position:relative}.datetime-slot:before{content:"";border:2px solid var(--color-black);pointer-events:none;opacity:0;border-radius:14px;transition:opacity .15s;position:absolute;inset:-5px}@media (hover:hover){.datetime-slot:hover:not(:disabled):before{opacity:1}.datetime-slot:hover:not(:disabled){z-index:1}}.datetime-slot.is-selected:before{opacity:1}.datetime-slot.is-selected{z-index:1}.datetime-slot:disabled{color:var(--gray-30);cursor:not-allowed}.datetime-slot:disabled:before{opacity:0}.datetime-empty{text-align:center;color:var(--gray-50);padding:32px 16px;font-size:14px}.datetime-next-available{color:var(--gray-50);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:14px;text-decoration:none}.contact-form{background:var(--color-bg);border:1px solid var(--gray-10);border-radius:12px;flex-direction:column;flex-shrink:0;align-self:center;align-items:center;gap:8px;width:454px;max-width:100%;min-height:360px;padding:16px;display:flex}.contact-intro{flex-shrink:0;width:100%}.contact-intro p{color:var(--gray-70);margin:0;font-size:14px;font-weight:400;line-height:140%}.contact-fields{flex-direction:column;align-items:stretch;gap:8px;width:100%;display:flex}.form-field{flex-direction:column;gap:4px;width:100%;display:flex;position:relative}.form-field__label-row{flex-shrink:0;align-items:center;gap:8px;width:100%;height:16px;padding-left:2px;display:flex}.form-field__label{min-width:0;color:var(--gray-60);visibility:visible;flex:1;padding-left:2px;font-size:12px;font-weight:500;line-height:16px}.form-field__error{color:var(--color-error);text-align:right;white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:500;line-height:16px}.form-field.has-error input{color:var(--color-error)}.form-field.has-error input::placeholder{color:var(--color-error);opacity:.5}.form-field input{border:2px solid var(--gray-10);width:100%;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);border-radius:10px;outline:none;padding:12px 16px;font-size:14px;font-weight:400;line-height:140%;position:relative}.form-field input::placeholder{color:var(--gray-40);font-weight:400}.form-field select{border:2px solid var(--gray-10);width:100%;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);appearance:none;cursor:pointer;border-radius:10px;outline:none;padding:12px 16px;font-size:14px;font-weight:400;line-height:140%}.form-field select option[value=""],.form-field--select:not(.has-value) select{color:var(--gray-40)}.form-field__input-wrap{width:100%;display:flex;position:relative}.form-field__input-wrap:before{content:"";border:2px solid var(--color-black);pointer-events:none;opacity:0;border-radius:14px;transition:opacity .15s;position:absolute;inset:-4px}.form-field:focus-within .form-field__input-wrap:before{opacity:1}.form-field:focus-within{z-index:1}.contact-actions{flex-direction:column;flex-shrink:0;gap:12px;width:100%;display:flex}.contact-datenschutz{cursor:pointer;color:var(--gray-50);align-items:flex-start;gap:8px;font-size:12px;line-height:140%;display:flex}.contact-datenschutz input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary,#1a6fc4);flex-shrink:0;margin-top:2px}.contact-datenschutz a{color:#000c;text-underline-offset:2px;text-decoration:underline}.contact-datenschutz.has-error{color:#b00020}.contact-datenschutz__error{color:#b00020;margin:0;font-size:12px}.contact-step__error{color:#dc2626;background:#fef2f2;border-radius:6px;margin-bottom:14px;padding:10px 14px;font-size:13px}.booking-confirmation{flex-direction:column;flex:1;padding-right:12px;display:flex;position:relative;overflow:hidden}.booking-confirmation__close{-webkit-backdrop-filter:blur(12px);width:32px;height:32px;color:var(--color-black);cursor:pointer;z-index:2;background:0 0;border:none;border-radius:32px;justify-content:center;align-items:center;padding:8px;transition:opacity .15s;display:inline-flex;position:absolute;top:12px;right:12px}.booking-confirmation__close:hover{opacity:.6}.confirmation-step{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:32px;min-height:0;padding:24px 48px 48px;display:flex}.confirmation-calendar{background:var(--color-black);border-radius:16px;flex-direction:column;flex-shrink:0;align-items:center;gap:12px;padding:16px;display:flex}.confirmation-calendar__date{flex-direction:column;align-items:center;padding-bottom:8px;display:flex}.confirmation-calendar__day{font-family:var(--font-sans);letter-spacing:-1.92px;color:#fff;margin-bottom:-8px;font-size:96px;font-weight:500;line-height:110%}.confirmation-calendar__month{font-family:var(--font-sans);color:var(--white-80);margin-bottom:-8px;font-size:16px;font-weight:400;line-height:140%}.confirmation-calendar__meta{align-items:center;gap:2px;display:flex}.confirmation-calendar__time{background:var(--color-off-white);font-family:var(--font-sans);color:var(--color-black);white-space:nowrap;-webkit-backdrop-filter:blur(12px);border-radius:32px;padding:6px 12px;font-size:12px;font-weight:500;line-height:16px}.confirmation-calendar__status{background:var(--color-green);-webkit-backdrop-filter:blur(12px);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.confirmation-text{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:500px;display:flex}.confirmation-title{font-family:var(--font-sans);color:var(--color-black);margin:0;font-size:32px;font-weight:500;line-height:120%}.confirmation-description{font-family:var(--font-sans);color:var(--gray-70);margin:0;font-size:14px;font-weight:400;line-height:140%}.confirmation-address{color:var(--color-black);text-underline-offset:2px;font-weight:400;text-decoration:underline}.confirmation-actions{flex-shrink:0;justify-content:center;align-items:center;width:100%;display:flex}.btn-cancel{appearance:none;border:2px solid var(--gray-20);color:var(--color-text);border-radius:var(--radius-btn);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-sans);white-space:nowrap;background:0 0;padding:12px 20px;line-height:16px;transition:border-color .2s}.btn-cancel:hover{border-color:var(--gray-50)}.btn-cta{appearance:none;background:var(--color-apricot);color:var(--color-text);border-radius:var(--radius-btn);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-sans);white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:none;padding:12px 20px;line-height:16px;transition:background .2s;position:relative}.btn-cta:hover:not(:disabled){background:#ffb9a3}.btn-cta:before{content:"";border:2px solid var(--color-black);pointer-events:none;opacity:0;border-radius:32px;transition:opacity .15s;position:absolute;inset:-4px}.btn-cta:hover:not(:disabled):before{opacity:1}.btn-cta:hover:not(:disabled){z-index:1}.btn-cta:disabled{color:var(--gray-30);cursor:not-allowed}.btn-close{appearance:none;border:2px solid var(--gray-20);color:var(--color-text);border-radius:var(--radius-btn);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-sans);background:0 0;padding:12px 20px;transition:border-color .2s}.btn-close:hover{border-color:var(--gray-50)}.btn{appearance:none;background:var(--color-apricot);color:#000;border-radius:var(--radius-btn);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-sans);border:none;padding:14px 30px;transition:background .2s}.btn:hover{background:#ffb9a3}.clinic-sidebar{background:var(--color-black);color:#fff;text-align:left;border-radius:24px;flex-direction:column;flex-shrink:0;width:300px;height:100%;display:flex;overflow:hidden}.clinic-sidebar__hero{flex-shrink:0;padding-bottom:16px;position:relative}.clinic-sidebar__close{-webkit-backdrop-filter:blur(12px);width:32px;height:32px;color:var(--color-black);cursor:pointer;z-index:2;background:0 0;border:none;border-radius:32px;justify-content:center;align-items:center;padding:8px;transition:opacity .15s;display:inline-flex;position:absolute;top:12px;right:12px}.clinic-sidebar__close:hover{opacity:.6}.clinic-sidebar__close svg{display:block}.clinic-sidebar__image{aspect-ratio:1;object-fit:cover;border-radius:16px;width:100%;display:block}.clinic-sidebar__logo{background:#fff;border-radius:8px;justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:absolute;bottom:-16px;left:24px;overflow:hidden}.clinic-sidebar__logo img{object-fit:contain;width:54px;height:54px}.clinic-list{flex-direction:column;width:100%;margin:0;padding:16px 20px 0;list-style:none;display:flex}.clinic-list__item{cursor:pointer;border-bottom:1px solid #fff3;flex-direction:column;gap:12px;padding:8px 0 8px 2px;transition:opacity .15s;display:flex}.clinic-list__item.is-last{border-bottom:none}.clinic-list__item:not(.is-active):hover{opacity:.75}.clinic-list__item.is-active{cursor:default;padding:12px 0 16px 2px}.clinic-list__row{justify-content:space-between;align-items:center;gap:8px;width:100%;padding-right:6px;display:flex}.clinic-list__name{font-family:var(--font-sans);color:var(--white-50);white-space:normal;flex:1;min-width:0;font-size:20px;font-weight:500;line-height:130%}.clinic-list__item.is-active .clinic-list__name{color:#fff}.clinic-list__check{color:#fff;flex-shrink:0}.clinic-list__address{color:var(--white-80);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;font-weight:400;line-height:140%;overflow:hidden}.clinic-list__availability{background:var(--color-green-bg);color:var(--color-green);white-space:nowrap;-webkit-backdrop-filter:blur(20px);border-radius:16px;align-self:flex-start;padding:2px 8px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.preview-section{background:var(--color-off-white);justify-content:center;align-items:center;min-height:100dvh;padding:32px 16px;display:flex}.preview-section__content{text-align:center;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:480px;display:flex}.preview-section__badge{background:var(--color-apricot-30);color:var(--color-apricot-1);border-radius:16px;padding:2px 8px;font-size:12px;font-weight:500;line-height:16px}.preview-section__title{font-family:var(--font-sans);color:var(--color-text);margin:0;font-size:32px;font-weight:500;line-height:120%}.preview-section__text{color:var(--gray-70);margin:0;font-size:14px;line-height:140%}@media (max-width:768px){.preview-section__title{font-size:26px;line-height:130%}}.lp-btn-apricot{appearance:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--color-apricot);color:var(--color-black);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;border:none;border-radius:32px;padding:16px 24px;font-size:16px;font-weight:500;line-height:20px;transition:background .2s}.lp-btn-apricot:hover{background:#ffb9a3}.modal-mobile-header,.mobile-location{display:none}@media (max-width:768px){.modal{align-items:stretch;padding:0}.modal__inner{width:auto;max-width:none;height:auto;max-height:none;box-shadow:none;border-radius:24px 24px 0 0;flex-direction:column;padding:8px 8px 0;display:flex;position:fixed;inset:0;overflow:hidden}.modal-mobile-header{flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;width:100%;padding:8px;display:flex}.modal-mobile-close{-webkit-backdrop-filter:blur(12px);width:32px;height:32px;color:var(--color-black);cursor:pointer;background:0 0;border:none;border-radius:32px;justify-content:center;align-items:center;padding:8px;transition:opacity .15s;display:inline-flex}.modal-mobile-close:hover{opacity:.6}.mobile-location{background:var(--color-black);border-radius:12px;flex-direction:column;flex-shrink:0;width:100%;padding:12px 10px 16px 16px;display:flex}.mobile-location__trigger{appearance:none;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:6px;width:100%;padding:0;display:flex}.mobile-location__label{color:#fff9;padding-left:2px;font-size:14px;font-weight:400;line-height:140%}.mobile-location__row{justify-content:space-between;align-items:center;padding-left:2px;padding-right:6px;display:flex}.mobile-location__name{color:#fff;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:20px;font-weight:500;line-height:130%;overflow:hidden}.mobile-location__chevron{color:#fff;flex-shrink:0;transition:transform .2s}.mobile-location.is-open .mobile-location__chevron{transform:rotate(180deg)}.mobile-location__pill{background:var(--color-green-bg);color:var(--color-green);-webkit-backdrop-filter:blur(20px);border-radius:16px;align-self:flex-start;margin-left:2px;padding:2px 8px;font-size:12px;font-weight:500;line-height:16px}.mobile-location__list{flex-direction:column;width:100%;margin:0;padding:16px 8px 0 0;list-style:none;display:flex}.mobile-location__item{color:#ffffff80;cursor:pointer;border-bottom:1px solid #fff3;padding:8px 0 8px 2px;font-size:20px;font-weight:500;line-height:130%;transition:color .15s}.mobile-location__item:hover{color:#fff}.mobile-location__item.is-last{border-bottom:none}.booking-layout{flex-direction:column;flex:1 0 0;min-height:0}.clinic-sidebar{display:none}.booking-main{width:100%;padding-right:0}.booking-header,.booking-header[data-step="1"],.booking-header[data-step="2"]{gap:8px}.booking-title-group{gap:4px}.modal h1.booking-title{font-size:26px;line-height:130%}.treatment-list{background:0 0;border-radius:0;flex:none;align-self:stretch;width:100%;max-width:100%;padding:0}.treatment-card{max-width:100%}.datetime-step,.contact-form{width:100%;max-width:100%}.datetime-step{border:none;padding:12px 0 0}.datetime-slots{width:100%;margin:0;padding:6px 6px 16px}.datetime-nav{display:none}.datetime-day{flex:1 1 0;width:auto;min-width:0}.booking-main__content,.booking-main__content[data-step="0"],.booking-main__content[data-step="1"],.booking-main__content[data-step="2"]{gap:24px;padding:32px 16px}.contact-form{background:0 0;border:none;border-radius:0;gap:8px;min-height:0;padding:0}.contact-actions{flex-direction:column;align-items:stretch;gap:16px}.contact-actions .btn-cta{width:100%;padding:16px 24px;font-size:16px;line-height:20px}.contact-disclaimer{font-size:12px}.booking-confirmation{padding-right:0}.confirmation-step{gap:32px;padding:48px 24px 32px}.confirmation-title{font-size:26px;line-height:130%}.confirmation-text{max-width:340px}}.booking-main__content::-webkit-scrollbar{display:none}.datetime-slots::-webkit-scrollbar{display:none}.booking-main__content,.datetime-slots{scrollbar-width:none;-ms-overflow-style:none}
