.contact-calendar{max-width:350px;margin:24px 0;padding:18px;border:1px solid #48345d;border-radius:12px;background:#110c23;color:#eee4f6}.contact-calendar h3{font-size:19px;margin:0 0 16px}.contact-calendar [hidden]{display:none!important}.mini-month{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.mini-month strong{font-size:16px}.mini-month button{font:inherit;font-size:21px;width:36px;height:36px;border:1px solid #48345d;border-radius:50%;background:#221632;color:#eee4f6;cursor:pointer}.mini-month button:disabled{opacity:.3;cursor:default}.mini-weekdays,.mini-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}.mini-weekdays{font-size:12px;color:#b9a9cb;margin-bottom:8px}.mini-days a{box-sizing:border-box;display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:50%;border:1px solid #48345d;background:#221632;color:#eee4f6;font-size:14px;text-decoration:none}.contact-calendar .mini-state-1{background-color:#221632;background-image:repeating-linear-gradient(135deg,transparent 0,transparent 5px,rgba(205,151,235,.19) 5px,rgba(205,151,235,.19) 8px)}.contact-calendar .mini-state-2{background:#26232d;color:#aaa3b3;border-color:#45404e}.mini-days a:hover{border-color:#e187d8}.contact-calendar a:focus-visible,.contact-calendar button:focus-visible{outline:2px solid #e187d8;outline-offset:2px}.mini-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:14px;font-size:12px;line-height:1.5;color:#c3b9d0}.mini-legend span{display:inline-flex;align-items:center;gap:6px}.mini-legend i{display:block;flex-shrink:0;width:13px;height:13px;border:1px solid #48345d;border-radius:50%;background:#221632}.contact-calendar>a{font-size:14px;color:#ddc6eb}

.contact-with-form .contact-inner{grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:36px 60px;align-items:start}
.contact-with-form .contact-inner>.contact-intro{grid-column:1/-1}
.contact-with-form .contact-intro h2{max-width:24ch}
.contact-with-form .contact-intro>p{max-width:75ch}
.contact-with-form .contact-intro .contact-direct{flex-direction:row;flex-wrap:wrap;gap:8px 24px;margin-top:18px}
.contact-with-form .contact-intro .contact-support{max-width:75ch;margin-top:14px}
.contact-with-form .contact-inner>.contact-calendar{margin:0;width:100%;max-width:350px;box-sizing:border-box}
@media(max-width:760px){.contact-with-form .contact-inner{grid-template-columns:minmax(0,1fr);gap:30px}.contact-with-form .contact-inner>.contact-intro{grid-column:auto}}

.contact-booking-column{min-width:0}
.contact-booking-column .contact-calendar{margin:0;width:100%;box-sizing:border-box}
.contact-booking-column .contact-direct{margin-top:20px;flex-direction:column;gap:8px}

.contact-with-form .contact-inner{grid-template-columns:minmax(260px,.85fr) auto minmax(0,1.15fr);column-gap:28px}
.contact-choice-or{align-self:center;justify-self:center;color:#ee83cf;font-size:16px;font-weight:700;letter-spacing:.12em}
@media(max-width:760px){.contact-with-form .contact-inner{grid-template-columns:minmax(0,1fr)}.contact-choice-or{margin:0}}

.contact-with-form .contact-inner{grid-template-columns:minmax(260px,.85fr) 90px minmax(0,1.15fr);column-gap:28px}
.contact-with-form .contact-booking-column .contact-calendar{max-width:none}
.contact-choice-or{display:flex;align-items:center;justify-content:center;align-self:stretch;justify-self:stretch;color:#ee83cf;font-size:clamp(48px,5vw,72px);font-weight:800;line-height:1;letter-spacing:0}
.contact-choice-or span{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.06em}
@media(max-width:760px){.contact-with-form .contact-inner{grid-template-columns:minmax(0,1fr)}.contact-with-form .contact-booking-column .contact-calendar{max-width:350px}.contact-choice-or{font-size:38px}.contact-choice-or span{writing-mode:horizontal-tb;letter-spacing:.08em}}

.contact-with-form .contact-inner{column-gap:44px}
.contact-choice-or{font-size:clamp(24px,2.5vw,36px);text-shadow:0 0 9px rgba(238,131,207,.35),0 0 20px rgba(238,131,207,.15)}
@media(max-width:760px){.contact-with-form .contact-inner{column-gap:0}.contact-choice-or{font-size:19px}}

.contact-choice-or span{writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap}
@media(max-width:760px){.contact-choice-or span{writing-mode:horizontal-tb}}

.contact-choice-or{font-size:clamp(12px,1.25vw,18px)}
.contact-choice-or span{transform:rotate(180deg)}
.contact-choice-or:before,.contact-choice-or:after{content:none}
@media(max-width:760px){.contact-choice-or{font-size:9.5px}.contact-choice-or span{transform:none}}

.contact-choice-or{flex-direction:column;gap:18px}
.contact-choice-or:before,.contact-choice-or:after{content:"";display:block;width:1px;height:64px;flex:0 0 64px;background:rgba(238,131,207,.65);box-shadow:0 0 8px rgba(238,131,207,.25)}
@media(max-width:760px){.contact-choice-or{flex-direction:row}.contact-choice-or:before,.contact-choice-or:after{width:64px;height:1px}}

.contact-with-form .contact-booking-column .contact-calendar{width:88%;max-width:320px;padding:14px;margin-inline:auto}
.contact-booking-column .contact-direct{width:88%;max-width:320px;margin-inline:auto}
.contact-calendar .mini-days{gap:4px}
.contact-calendar .mini-month{margin-bottom:10px}

.contact-with-form .contact-inner{grid-template-columns:340px 64px minmax(0,1fr);column-gap:40px;row-gap:36px;align-items:stretch}
.contact-booking-column{display:flex;flex-direction:column;gap:20px}
.contact-with-form .contact-booking-column .contact-calendar{width:100%;max-width:none;margin:0;padding:18px;flex:1;display:flex;flex-direction:column}
.contact-calendar [data-mini-body]{flex:1;display:flex;flex-direction:column}
.contact-calendar .mini-legend{margin-top:auto;padding-top:16px}
.contact-calendar .mini-weekdays{margin-top:4px}
.contact-booking-column .contact-direct{width:100%;max-width:none;margin:0;gap:6px}
.contact-choice-or{gap:20px;padding-block:12px}
.contact-choice-or:before,.contact-choice-or:after{height:auto;flex:1;max-height:180px;background:linear-gradient(to bottom,transparent,rgba(238,131,207,.4));box-shadow:none}
.contact-choice-or:after{background:linear-gradient(to bottom,rgba(238,131,207,.4),transparent)}
@media(min-width:761px) and (max-width:1000px){.contact-with-form .contact-inner{grid-template-columns:300px 36px minmax(0,1fr);column-gap:24px}}
@media(max-width:760px){.contact-with-form .contact-inner{grid-template-columns:minmax(0,1fr);gap:26px}.contact-with-form .contact-booking-column .contact-calendar{max-width:340px;flex:none}.contact-choice-or{padding:0}.contact-choice-or:before,.contact-choice-or:after{height:1px;max-width:90px;flex:1;background:rgba(238,131,207,.4)}.contact-calendar .mini-legend{margin-top:0}}

.contact-calendar-title{font-size:19px;line-height:1.3;margin:0;color:#eee4f6}
.contact-booking-column{row-gap:16px}

.contact-calendar-title{text-align:center;width:100%}
@media(max-width:760px){.contact-calendar-title{max-width:340px}}
