.sab{--sab-ink:#173c36;box-sizing:border-box;max-width:780px;margin:28px auto;padding:clamp(20px,4vw,44px);border:1px solid #d7e4df;border-radius:18px;background:#fff;color:#183b35;font:16px/1.55 system-ui,sans-serif}.sab *{box-sizing:border-box}.sab h2{font-size:clamp(25px,4vw,34px);line-height:1.2;margin:10px 0 18px}.sab-eyebrow{font-size:12px;letter-spacing:.15em;font-weight:700;color:#487568}.sab label{display:block;font-weight:600;margin:15px 0}.sab input,.sab select{display:block;width:100%;min-height:46px;padding:10px 12px;margin-top:7px;border:1px solid #9eafa8;border-radius:7px;background:#fff;color:#183b35;font:inherit}.sab input:focus,.sab select:focus{outline:3px solid #b0d5c9;outline-offset:2px}.sab-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.sab button,.sab-print button{background:#BDD145;color:#fff;border:0;border-radius:8px;padding:13px 22px;font:600 16px system-ui;cursor:pointer}.sab button:hover,.sab-print button:hover{background:#adbf3d;color:#fff}.sab-muted{font-size:13px;color:#52665f}.sab-notice{padding:16px;background:#e4f4e9;border-radius:8px}.sab-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.sab-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#cddbd5;border:1px solid #cddbd5;margin:20px 0}.sab-day,.sab-empty,.sab-weekday{padding:10px;background:#fff;min-width:0}.sab-day{min-height:100px}.sab-empty{background:#f5f7f6}.sab-weekday{background:#195c4d;color:#fff;font-weight:600}.sab-event{display:block;background:#e5f2ed;padding:5px;margin-top:6px;border-radius:4px;color:#174c40;font-size:12px;text-decoration:none;overflow-wrap:anywhere}.sab-settings{margin:28px 0;padding:20px;background:#fff;border:1px solid #ccd8d2}.sab-settings summary{font-size:18px;cursor:pointer}.sab-table-wrap{overflow-x:auto;margin:20px 0}.sab-table{border-collapse:collapse;width:100%;font:14px/1.4 system-ui,sans-serif}.sab-table td,.sab-table th{padding:10px;text-align:left;border-bottom:1px solid #ccd8d2;overflow-wrap:anywhere}.sab-table tr:target{background:#fff5ce}.sab-print{margin:30px;font:15px/1.5 system-ui,sans-serif;color:#163b34}.sab dt{font-weight:600;margin-top:12px}.sab dd{margin-left:0}.sab-admin textarea{max-width:100%}@media(max-width:600px){.sab-grid{grid-template-columns:1fr}.sab-day{padding:4px}.sab-calendar{min-width:560px}.sab-admin{overflow-x:auto}}@media print{@page{size:A4 landscape;margin:12mm}.no-print{display:none!important}.sab-print{margin:0;color:#000}.sab{border:0;margin:0;max-width:none;padding:0}.sab-table-wrap{overflow:visible}.sab-table{table-layout:fixed;font-size:10pt}.sab-table th{background:#eee}.sab-table tr{break-inside:avoid}.sab-table thead{display:table-header-group}.sab-print a{color:#000;text-decoration:none}}.sab-admin .button{background:#BDD145;border-color:#BDD145;color:#fff}.sab-admin .button:hover,.sab-admin .button:focus{background:#adbf3d;border-color:#adbf3d;color:#fff}section.sab{width:100%;font-family:system-ui,sans-serif;text-align:left}section.sab header{position:static;background:#fff0;padding:0;margin:0}section.sab h2{font-family:inherit;font-weight:700;color:#183b35;text-transform:none;letter-spacing:normal}section.sab label{float:none;width:auto;font-family:inherit;font-size:16px;line-height:1.55;color:#183b35}section.sab .sab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}section.sab .sab-grid>label{min-width:0}section.sab input:not([type="hidden"]),section.sab select{width:100%;max-width:100%;height:auto;font:inherit;box-shadow:none}section.sab button[type="submit"]{background:#BDD145!important;color:#fff!important;border:0;border-radius:8px;font:600 16px system-ui,sans-serif;text-transform:none;letter-spacing:normal;padding:13px 22px;box-shadow:none}section.sab button[type="submit"]:hover{background:#adbf3d!important;color:#fff!important}section.sab .sab-honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}@media(max-width:600px){section.sab .sab-grid{grid-template-columns:minmax(0,1fr)}}.sab-booking-picker h3{font:600 20px/1.4 system-ui,sans-serif;color:#183b35;margin:22px 0 12px}.sab-picker-calendar{max-width:640px;border:1px solid #d7e4df;border-radius:12px;background:#fff;color:#183b35;padding:16px;margin:12px 0}.sab-picker-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.sab-picker-nav strong{font:600 18px system-ui,sans-serif;text-align:center}.sab .sab-picker-nav button,.sab-admin .sab-picker-nav button{min-width:44px;min-height:44px;padding:6px 12px;background:#BDD145;color:#fff;border:0;border-radius:7px;font:600 24px system-ui,sans-serif;cursor:pointer}.sab-picker-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.sab-picker-weekday{text-align:center;font:600 13px system-ui,sans-serif;padding:8px 0}.sab .sab-picker-day,.sab-admin .sab-picker-day{min-width:0;min-height:50px;width:100%;padding:8px 2px;background:#f0f5e0;color:#183b35;border:1px solid #b2c58b;border-radius:8px;font:600 16px system-ui,sans-serif;cursor:pointer;box-shadow:none}.sab .sab-picker-day[aria-pressed=true],.sab-admin .sab-picker-day[aria-pressed=true]{background:#BDD145;color:#fff;border:2px solid #536511}.sab .sab-picker-day:disabled,.sab-admin .sab-picker-day:disabled{background:#f4f5f4;border-color:#fff0;color:#747d79;cursor:default}.sab-picker-nav button:disabled{opacity:.4;cursor:default!important}.sab-picker-day:focus-visible{outline:3px solid #195c4d;outline-offset:2px}.sab-picker-status{font-size:14px}.sab-period{display:flex;gap:16px;align-items:end;flex-wrap:wrap;border:1px solid #d7e4df;padding:16px;max-width:640px}.sab-period label{display:flex;flex-direction:column;gap:8px;font-weight:600}.sab-period select{min-height:44px;min-width:175px;font-size:16px}.sab-selected-days{max-width:640px}.sab-selected-day{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #d7e4df}.sab-schedule-editor [hidden]{display:none!important}.sab-copy-editor{padding:20px;background:#fff;border:1px solid #d7e4df;margin:24px 0}.sab-copy-editor label{display:block;font-weight:600;margin:16px 0}.sab-copy-editor textarea{display:block;width:100%;max-width:780px;margin-top:6px;min-height:65px}.sab-copy-editor summary{font-size:18px;cursor:pointer}@media(max-width:400px){.sab-picker-calendar{padding:8px}.sab-picker-grid{gap:3px}.sab .sab-picker-day,.sab-admin .sab-picker-day{min-height:44px}}.sab-total{display:inline-flex;flex-direction:column;gap:6px;padding:20px 28px;margin:10px 0 24px;border:1px solid #d7e4df;border-radius:12px;background:#fff;color:#183b35}.sab-total strong{font:700 36px/1.2 system-ui,sans-serif}.sab-total small{color:#52665f}.sab .sab-upload-fields{border:1px solid #d7e4df;border-radius:10px;padding:18px;margin:24px 0;min-width:0}.sab-upload-fields legend{font-weight:600}.sab-upload-row{padding:14px 0;border-bottom:1px solid #d7e4df}.sab-upload-row a{color:#195c4d;text-decoration:underline}.sab-upload-status{color:#9b2020}.sab label.sab-consent{display:flex;align-items:flex-start;gap:12px;font-weight:400}.sab label.sab-consent input[type=checkbox]{width:20px;min-width:20px;min-height:20px;height:20px;margin:3px 0 0;accent-color:#647714}.sab-consent-evidence{max-width:360px;margin:10px 0}.sab-consent-evidence code{overflow-wrap:anywhere}.sab-upload-fields input[type=file]{font-size:14px}.sab-booking-form [hidden]{display:none!important}.sab .sab-progress{position:sticky;top:0;z-index:5;display:flex;list-style:none!important;margin:0 0 28px!important;padding:16px 0!important;background:#fff;border-bottom:1px solid #d7e4df}.sab .sab-progress li{position:relative;flex:1;display:flex;align-items:center;flex-direction:column;text-align:center;gap:8px;margin:0;padding:0;color:#195c4d;font-size:14px;line-height:1.35}.sab .sab-progress li:not(:last-child):after{content:"";position:absolute;top:22px;left:calc(50% + 24px);width:calc(100% - 48px);height:2px;background:#195c4d}.sab .sab-step-circle{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:2px solid #195c4d;border-radius:50%;background:#fff;color:#195c4d;font-weight:700;font-size:20px}.sab .is-active .sab-step-circle{background:#e88124;border-color:#e88124;color:#fff}.sab .is-complete .sab-step-circle{background:#195c4d;border-color:#195c4d;color:#fff}.sab .sab-stage-heading{font:700 23px/1.3 system-ui,sans-serif;color:#183b35;margin:20px 0}.sab .sab-wizard-controls{display:flex;justify-content:space-between;gap:16px;margin-top:24px}.sab .sab-wizard-controls button:last-child{margin-left:auto}.sab .sab-wizard-controls button{background:#BDD145;color:#fff;min-height:46px}.sab-wizard .sab-stage{scroll-margin-top:120px}@media(max-width:400px){.sab .sab-step-label{font-size:12px}.sab .sab-progress{gap:4px}}body.admin-bar .sab .sab-progress{top:32px}@media(max-width:782px){body.admin-bar .sab .sab-progress{top:46px}}section.sab .sab-stage-heading{font-size:20px!important;line-height:1.35!important}section.sab .sab-booking-picker .sab-date-picker h3,section.sab .sab-booking-picker .sab-time-title{display:block;font-family:inherit!important;font-size:16px!important;font-weight:600!important;line-height:1.5!important;letter-spacing:normal!important;text-transform:none!important}section.sab .sab-booking-picker .sab-time-label select{height:58px!important;min-height:58px!important;padding:14px 16px!important;font-size:16px!important;line-height:1.5!important}.sab-table th:first-child,.sab-table td:first-child,.sab-table th:nth-child(2),.sab-table td:nth-child(2){white-space:nowrap}