.ska-booking{--ska-ink:#29483e;--ska-line:#d8dfd9;box-sizing:border-box;max-width:780px;margin:40px auto;padding:clamp(22px,5vw,48px);background:#faf8f5;border:1px solid #e7e4df;border-radius:20px;color:#2b3933;font:16px/1.6 system-ui,sans-serif}.ska-booking *{box-sizing:border-box}.ska-booking [hidden]{display:none!important}.ska-eyebrow{font-size:11px;letter-spacing:.22em;font-weight:600;color:#586c5c}.ska-intro h2{font-family:Georgia,serif;font-size:clamp(30px,5vw,44px);font-weight:400;line-height:1.2;color:var(--ska-ink);margin:14px 0}.ska-intro p{max-width:600px}.ska-message{padding:14px 18px;background:#edf1eb;border-radius:8px;font-size:14px}.ska-message.ska-error{background:#fae9e5;color:#872f25}.ska-form label{display:block;font-weight:600;margin:18px 0 0}.ska-form label span,.ska-note,.ska-zone{font-weight:400;font-size:13px;color:#5e6c63}.ska-form input:not([type=checkbox]),.ska-form select{display:block;width:100%;min-height:48px;margin:7px 0 0;background:white;border:1px solid var(--ska-line);border-radius:8px;padding:10px 12px;color:#223b31;font:inherit}.ska-form input:focus,.ska-form select:focus,.ska-form button:focus-visible{outline:3px solid #819b87;outline-offset:2px}.ska-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ska-consent{display:flex!important;align-items:flex-start;gap:12px}.ska-consent input{width:20px;height:20px;flex:none;margin-top:4px;accent-color:#29483e}.ska-form button{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--ska-ink);color:white;border:0;padding:16px 22px;border-radius:8px;font:600 16px system-ui;cursor:pointer;margin-top:24px}.ska-form button:disabled{opacity:.5;cursor:not-allowed}.ska-form a{color:var(--ska-ink);text-decoration:underline}.ska-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.ska-zone{margin-top:8px}@media(max-width:560px){.ska-grid{grid-template-columns:1fr;gap:0}.ska-booking{margin:20px auto;border-radius:12px}}

/* Availability calendar */
.ska-grid.ska-grid-single{grid-template-columns:1fr!important}
.ska-calendar{margin:18px 0 0!important;padding:16px!important;background:#fff!important;border:1px solid var(--ska-line)!important;border-radius:12px!important}
.ska-cal-top{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:6px 16px!important;margin-bottom:10px!important}
.ska-cal-title{font-weight:600!important}
.ska-cal-key{display:inline-flex!important;align-items:center!important;gap:8px!important;font-size:13px!important;color:#5e6c63!important}
.ska-cal-swatch{display:inline-block!important;width:14px!important;height:14px!important;border-radius:4px!important;background:#dbe8dd!important;border:1px solid #9fbba6!important}
.ska-cal-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:8px!important}
.ska-cal-month{font-family:Georgia,serif!important;font-size:19px!important;color:var(--ska-ink)!important}
.ska-form .ska-calendar button{margin:0!important;padding:0!important;width:auto!important;justify-content:center!important;font:inherit!important;border-radius:8px!important;cursor:pointer!important}
.ska-form .ska-calendar .ska-cal-nav{width:40px!important;height:40px!important;background:transparent!important;color:var(--ska-ink)!important;border:1px solid var(--ska-line)!important;font-size:22px!important;line-height:1!important}
.ska-form .ska-calendar .ska-cal-nav:hover:not(:disabled){background:#edf1eb!important}
.ska-form .ska-calendar .ska-cal-nav:disabled{opacity:.35!important;cursor:default!important}
.ska-cal-week,.ska-cal-days{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:6px!important}
.ska-cal-week{margin-bottom:4px!important}
.ska-cal-week span{text-align:center!important;font-size:12px!important;font-weight:600!important;letter-spacing:.05em!important;color:#7a877e!important}
.ska-form .ska-calendar .ska-cal-day{height:44px!important;background:transparent!important;color:#b3bab5!important;font-size:15px!important;font-weight:400!important;border:1px solid transparent!important}
.ska-form .ska-calendar .ska-cal-day:disabled{opacity:1!important;cursor:default!important}
.ska-form .ska-calendar .ska-cal-day.is-plain{color:#2b3933!important}
.ska-form .ska-calendar .ska-cal-day.is-plain:hover{background:#edf1eb!important}
.ska-form .ska-calendar .ska-cal-day.is-open{background:#dbe8dd!important;color:var(--ska-ink)!important;font-weight:600!important;border-color:#b5cdb9!important}
.ska-form .ska-calendar .ska-cal-day.is-open:hover{background:#c5dacb!important;border-color:#819b87!important}
.ska-form .ska-calendar .ska-cal-day.is-today{text-decoration:underline!important;text-underline-offset:4px!important}
.ska-form .ska-calendar .ska-cal-day.is-picked,.ska-form .ska-calendar .ska-cal-day.is-picked:hover{background:var(--ska-ink)!important;border-color:var(--ska-ink)!important;color:#fff!important}
.ska-calendar.is-loading .ska-cal-days{opacity:.45!important;pointer-events:none!important}
.ska-cal-status{margin:10px 0 0!important;font-size:13px!important;color:#5e6c63!important}
.ska-cal-status:empty{display:none!important}
@media(max-width:560px){.ska-calendar{padding:12px!important}.ska-cal-week,.ska-cal-days{gap:4px!important}.ska-form .ska-calendar .ska-cal-day{height:40px!important}}

/* Appointment type helper */
.ska-form label.ska-attention select{border-color:#c9822b!important;box-shadow:0 0 0 3px rgba(201,130,43,.25)!important;animation:ska-nudge .9s ease 2}
.ska-helper{display:flex;align-items:center;gap:10px;margin:10px 0 0;padding:10px 14px;background:#fdf3e6;border:1px solid #f0d3ab;border-radius:8px;color:#7a4a12;font-size:14px;font-weight:600;line-height:1.4}
.ska-helper[hidden]{display:none!important}
.ska-helper-arrow{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#c9822b;color:#fff;font-size:15px;animation:ska-bob 1.2s ease-in-out infinite}
@keyframes ska-nudge{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@keyframes ska-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.ska-form label.ska-attention select,.ska-helper-arrow{animation:none!important}}
