:root{--ink:#131314;--paper:#f4f2ec;--card:#fff;--olive:#abb318;--olive-d:#8f9612;--olive-text:#676b10;--muted:#6b6a63;--line:#e4e1d7;--line-strong:#d4d0c3;--warmgrey:#ddddd5;--r:14px;--r-sm:10px}.booking-root *{box-sizing:border-box;margin:0;padding:0}.booking-root{color:var(--ink);-webkit-font-smoothing:antialiased;background:var(--paper);color-scheme:light;font-family:Rethink Sans,system-ui,sans-serif;line-height:1.5}.booking-root .wrap{max-width:var(--maxw,1120px);margin:0 auto;padding:40px 28px 80px}.booking-root .callhint{color:var(--muted);margin-bottom:30px;font-size:14px}.booking-root .callhint a{color:var(--ink);border-bottom:1px solid var(--olive);padding-bottom:1px;font-weight:700;text-decoration:none}.booking-root .callhint a:hover{color:var(--olive-text)}.booking-root .eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--olive-text);margin-bottom:14px;font-size:12px;font-weight:700}.booking-root .steps{flex-wrap:wrap;gap:8px;margin:0 0 34px;display:flex}.booking-root .steps .s{color:var(--muted);background:0 0;border-radius:99px;align-items:center;gap:9px;padding:8px 14px;font-size:13px;font-weight:600;display:flex}.booking-root .steps .s .n{background:var(--warmgrey);width:22px;height:22px;color:var(--muted);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.booking-root .steps .s.active{background:var(--ink);color:#fff}.booking-root .steps .s.active .n,.booking-root .steps .s.done .n{background:var(--olive);color:var(--ink)}.booking-root .steps .s.done{color:var(--ink)}@media (width<=600px){.booking-root .steps{gap:7px}.booking-root .steps .s{padding:7px 10px;font-size:12.5px}.booking-root .steps .s:not(.active){padding:7px}.booking-root .steps .s:not(.active) .lbl{display:none}}.booking-root .panel{animation:.35s bk-fade;display:none}.booking-root .panel.show{display:block}@keyframes bk-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.booking-root .ptitle{letter-spacing:-.01em;margin-top:0;margin-bottom:6px;font-size:22px;font-weight:700}.booking-root .psub{color:var(--muted);margin-bottom:24px;font-size:15px}.booking-root .grid{gap:16px;display:grid}.booking-root .grid.g3{grid-template-columns:repeat(3,1fr)}.booking-root .grid.g2{grid-template-columns:repeat(2,1fr)}@media (width<=760px){.booking-root .grid.g3,.booking-root .grid.g2{grid-template-columns:1fr}}.booking-root .opt{background:var(--card);border:1.5px solid var(--line);border-radius:var(--r);cursor:pointer;text-align:left;width:100%;color:var(--ink);-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;padding:22px;font-family:inherit;transition:all .18s;position:relative}.booking-root .opt:hover{border-color:var(--line-strong);transform:translateY(-2px)}.booking-root .opt.sel{border-color:var(--olive);box-shadow:0 0 0 3px #abb3182e}.booking-root .opt .tick{border:1.5px solid var(--line-strong);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:13px;transition:all .18s;display:grid;position:absolute;top:16px;right:16px}.booking-root .opt.sel .tick{background:var(--olive);border-color:var(--olive)}.booking-root .opt h3{letter-spacing:-.01em;color:var(--ink);margin-bottom:4px;font-size:18px;font-weight:700}.booking-root .opt .meta{color:var(--muted);font-size:13.5px;line-height:1.55}.booking-root .opt .tag{letter-spacing:.04em;color:var(--olive-text);background:#f0f1dc;border-radius:99px;margin-top:14px;margin-right:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.booking-root .opt .hours{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin-top:15px;padding-top:13px;display:flex}.booking-root .opt .hours__row{justify-content:space-between;align-items:baseline;gap:14px;font-size:13px;line-height:1.3;display:flex}.booking-root .opt .hours__d{color:var(--ink);letter-spacing:.01em;font-weight:600}.booking-root .opt .hours__t{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.booking-root .opt.disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.4)}.booking-root .opt.disabled:hover{border-color:var(--line);transform:none}.booking-root .booking{grid-template-columns:1.1fr 1fr;gap:22px;display:grid}@media (width<=760px){.booking-root .booking{grid-template-columns:1fr}}.booking-root .cal{background:var(--card);border:1.5px solid var(--line);border-radius:var(--r);padding:20px}.booking-root .calhead{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.booking-root .calhead b{font-size:15px;font-weight:700}.booking-root .calhead button{background:var(--warmgrey);cursor:pointer;width:30px;height:30px;color:var(--ink);border:0;border-radius:8px;font-size:15px}.booking-root .calhead button:disabled{opacity:.4;cursor:not-allowed}.booking-root .dow{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;display:grid}.booking-root .dow span{text-align:center;color:var(--muted);padding:4px 0;font-size:11px;font-weight:700}.booking-root .days{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.booking-root .day{aspect-ratio:1;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:9px;font-family:inherit;font-size:14px;font-weight:600;transition:all .12s}.booking-root .day.mut{color:var(--line-strong);cursor:default}.booking-root .day.closed{color:var(--line-strong);cursor:not-allowed;text-decoration:line-through}.booking-root .day:not(.mut):not(.closed):hover{background:var(--warmgrey)}.booking-root .day.sel{background:var(--ink);color:#fff}.booking-root .day.dot{position:relative}.booking-root .day.dot:after{content:"";background:var(--olive);border-radius:50%;width:4px;height:4px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.booking-root .slots .sl-h{color:var(--muted);margin-bottom:14px;font-size:13.5px;font-weight:600}.booking-root .slots .sl-h b{color:var(--ink);font-weight:700}.booking-root .timegrid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.booking-root .slot{text-align:center;background:var(--card);border:1.5px solid var(--line);border-radius:var(--r-sm);cursor:pointer;padding:12px 0;font-family:inherit;font-size:14.5px;font-weight:600;transition:all .15s}.booking-root .slot:hover{border-color:var(--olive)}.booking-root .slot.sel{background:var(--olive);border-color:var(--olive);color:var(--ink)}.booking-root .slot.gone{opacity:.4;cursor:not-allowed;background:0 0;text-decoration:line-through}.booking-root .slot-note{color:var(--muted);grid-column:1/-1;padding:18px 4px;font-size:13.5px;line-height:1.5}.booking-root .slot-note.err{color:#9a3a2a}.booking-root .form{max-width:560px}.booking-root .field{margin-bottom:18px}.booking-root .field label{letter-spacing:.01em;margin-bottom:7px;font-size:13px;font-weight:700;display:block}.booking-root .field input{border:1.5px solid var(--line);border-radius:var(--r-sm);width:100%;font:inherit;background:var(--card);padding:13px 15px;font-size:15px;transition:all .15s}.booking-root .field input:focus{border-color:var(--olive);outline:0;box-shadow:0 0 0 3px #abb31829}.booking-root .form-note{color:var(--muted);max-width:560px;margin-top:2px;font-size:12.5px;line-height:1.5}.booking-root .form-note a{color:var(--olive-text);font-weight:600}.booking-root .row2{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=600px){.booking-root .row2{grid-template-columns:1fr}}.booking-root .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.booking-root .bar{background:var(--ink);color:#fff;border-radius:var(--r);justify-content:space-between;align-items:center;gap:16px;margin-top:28px;padding:16px 20px;display:flex;box-shadow:0 12px 30px #1313141a}.booking-root .bar .sum{font-size:13.5px;line-height:1.4}.booking-root .bar .sum .lbl{color:#9a9a93;text-transform:uppercase;letter-spacing:.12em;font-size:11.5px;font-weight:700}.booking-root .btn{background:var(--olive);color:var(--ink);font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:10px;align-items:center;gap:9px;padding:11px 24px;font-size:15px;font-weight:700;transition:all .16s;display:inline-flex}.booking-root .btn:hover{background:#bcc41f;transform:translate(2px)}.booking-root .btn:disabled{color:#7c7c77;cursor:not-allowed;background:#3a3a38;transform:none}.booking-root .btn.ghost{color:#fff;background:0 0;border:1.5px solid #3a3a38}.booking-root .btn.ghost:hover{background:#222;transform:none}.booking-root .linkbtn{font:inherit;color:#a9a8a1;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;border-radius:8px;padding:8px 6px;font-size:14px;text-decoration:underline #ffffff47;transition:color .16s}.booking-root .linkbtn:hover{color:#fff;text-decoration-color:currentColor}.booking-root .linkbtn:focus-visible{outline:3px solid var(--olive);outline-offset:2px}.booking-root .bar-err{color:#ffb4a3;margin-top:8px;font-size:13px;font-weight:600}@media (width<=600px){.booking-root .bar{flex-direction:column;align-items:stretch;gap:13px;padding:15px 16px}.booking-root .bar>div:last-child{justify-content:stretch}.booking-root .bar>div:last-child .btn{flex:1;justify-content:center}}.booking-root .done-wrap{text-align:center;padding:30px 0}.booking-root .check{background:var(--olive);width:74px;height:74px;color:var(--ink);border-radius:50%;place-items:center;margin:0 auto 22px;font-size:36px;display:grid}.booking-root .done-wrap h2{letter-spacing:-.02em;margin-bottom:10px;font-size:30px;font-weight:800}.booking-root .done-wrap p{color:var(--muted);max-width:440px;margin:0 auto 26px;font-size:16px}.booking-root .ticket{background:var(--card);border:1.5px solid var(--line);border-radius:var(--r);text-align:left;max-width:430px;margin:0 auto;padding:24px}.booking-root .ticket .trow{border-bottom:1px solid var(--line);justify-content:space-between;padding:11px 0;font-size:14.5px;display:flex}.booking-root .ticket .trow:last-child{border:0}.booking-root .ticket .trow span{color:var(--muted)}.booking-root .ticket .trow b{font-weight:700}.booking-root .ticket .trow a{color:var(--olive-text);font-weight:700;text-decoration:none}.booking-root .ticket .trow a:hover{text-decoration:underline}.booking-root .foot{text-align:center;color:var(--muted);margin-top:60px;font-size:12.5px}.apply-root .opt--center{text-align:center;align-items:center;padding-block:30px}.apply-root .opt--center h3{margin:0}.apply-root .opt-tag{color:var(--muted);letter-spacing:0;font-size:12px;font-weight:600}.apply-root .field textarea{border:1.5px solid var(--line);border-radius:var(--r-sm);width:100%;font:inherit;background:var(--card);resize:vertical;min-height:96px;padding:13px 15px;font-size:15px;transition:all .15s}.apply-root .field textarea:focus{border-color:var(--olive);outline:0;box-shadow:0 0 0 3px #abb31829}.apply-root #ap3 .field{max-width:560px}.apply-root .uploader{text-align:center;border:1.5px dashed var(--line-strong);border-radius:var(--r);background:var(--card);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;max-width:560px;padding:38px 24px;transition:border-color .18s,background .18s;display:flex}.apply-root .uploader:hover{border-color:var(--olive)}.apply-root .uploader.drag{border-color:var(--olive);background:#fbfcf2}.apply-root .uploader.has-file{border-style:solid;border-color:var(--olive)}.apply-root .uploader__icon{color:var(--olive-d);margin-bottom:4px;font-size:26px;line-height:1}.apply-root .uploader__main{color:var(--ink);font-size:15px}.apply-root .uploader__main b{color:var(--olive-text);font-weight:700}.apply-root .uploader__hint{color:var(--muted);font-size:12.5px}.apply-root .uploader__file{color:var(--olive-text);word-break:break-all;max-width:100%;margin-top:10px;font-size:14px;font-weight:700}.apply-root .consent{cursor:pointer;color:#2c2b27;align-items:flex-start;gap:11px;max-width:560px;margin-top:6px;font-size:13.5px;line-height:1.5;display:flex}.apply-root .consent input{width:17px;height:17px;accent-color:var(--olive);cursor:pointer;flex:none;margin-top:2px}.apply-root .consent a{color:var(--olive-text);font-weight:600}body.apply-open{overflow:hidden}.apply-modal{z-index:400;backdrop-filter:blur(5px);opacity:0;background:#140f0a9e;justify-content:center;align-items:center;padding:24px;transition:opacity .25s;display:flex;position:fixed;inset:0}.apply-modal.is-open{opacity:1}.apply-modal[hidden]{display:none}.apply-modal__backdrop{cursor:pointer;position:absolute;inset:0}.apply-modal__card{z-index:1;background:var(--paper);border-radius:22px;flex-direction:column;width:100%;max-width:880px;max-height:92vh;transition:transform .3s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden;transform:translateY(14px)scale(.985);box-shadow:0 40px 110px -34px #0000009e}.apply-modal.is-open .apply-modal__card{transform:none}.apply-modal__head{background:var(--card);border-top:4px solid var(--olive);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 30px 20px;display:flex}.apply-modal__head .eyebrow{margin-bottom:7px}.apply-modal__head h2{letter-spacing:-.02em;color:var(--ink);font-size:24px;font-weight:800;line-height:1.1}.apply-modal__close{cursor:pointer;background:var(--ink);color:#fff;border:0;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:23px;line-height:1;transition:filter .15s;display:grid}.apply-modal__close:hover{filter:brightness(1.2)}.apply-root--modal{background:var(--paper);flex:auto;min-height:0;overflow-y:auto}.apply-root--modal .wrap{padding:22px 30px}.apply-root--modal .callhint,.apply-root--modal .foot{display:none}.apply-root--modal .bar{margin-top:26px;bottom:0}@media (width<=600px){.apply-modal{padding:0}.apply-modal__card{border-radius:0;width:100%;max-width:none;height:100dvh;max-height:100dvh}.apply-root--modal .wrap{padding:18px}}
