.ssms-website-public-page{margin:0;background:#fff}.ssms-public-page{min-height:100vh;background:#fff;color:#294a55}.ssms-public-hero{position:relative;overflow:hidden;padding:46px 0 38px;background:linear-gradient(135deg,#fff 0%,#f5f9fa 65%,#edf5f6 100%)}.ssms-public-hero:after{content:"";position:absolute;right:-100px;top:-140px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(201,155,56,.13),rgba(201,155,56,0) 68%);pointer-events:none}.ssms-public-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:52px;align-items:center}.ssms-public-hero__copy h1{max-width:680px;margin:12px 0 16px;color:#315d6d;font-family:var(--ssms-display,"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif);font-size:clamp(42px,5vw,72px);font-weight:300;line-height:.98;letter-spacing:-.045em}.ssms-public-hero__copy p{max-width:670px;margin:0;color:#5f7881;font-size:16px;line-height:1.7}.ssms-public-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.ssms-public-hero__image{position:relative;min-height:390px;overflow:hidden;border-radius:30px;box-shadow:0 26px 70px rgba(54,79,87,.13)}.ssms-public-hero__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ssms-public-section{padding-top:58px;padding-bottom:64px}.ssms-public-section__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.58fr);gap:36px;align-items:end;margin-bottom:25px}.ssms-public-section__head h2{margin:5px 0 0;color:#416e7d;font-size:35px;font-weight:350;line-height:1.08}.ssms-public-section__head p{margin:0;color:#748991;font-size:13px;line-height:1.65}.ssms-public-filters{display:flex;gap:11px;align-items:end;margin-bottom:22px;padding:15px;border:1px solid #dbe7ea;border-radius:17px;background:#f7fafb}.ssms-public-filters label{display:grid;gap:5px;min-width:220px}.ssms-public-filters label span{color:#6d838b;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.ssms-public-filters select{min-height:42px;padding:0 38px 0 12px;border:1px solid #d0e0e4;border-radius:11px;background:#fff;color:#345761;font:inherit}.ssms-public-filters button{min-height:42px;margin-left:auto;padding:0 15px;border:1px solid #d0e0e4;border-radius:999px;background:#fff;color:#537580;font-size:10px;font-weight:850;cursor:pointer}.ssms-public-class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.ssms-public-class-card{min-width:0}.ssms-public-class-card[hidden]{display:none}.ssms-public-class-card__open{display:block;width:100%;height:100%;overflow:hidden;padding:0;border:1px solid #dce7ea;border-radius:18px;background:#fff;box-shadow:0 11px 34px rgba(46,77,88,.055);text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.ssms-public-class-card__open:hover,.ssms-public-class-card__open:focus-visible{transform:translateY(-3px);border-color:#bfd3d9;box-shadow:0 18px 42px rgba(46,77,88,.1);outline:none}.ssms-public-class-card__image{position:relative;display:block;height:190px;overflow:hidden;background:#edf4f6}.ssms-public-class-card__image img{width:100%;height:100%;object-fit:cover}.ssms-public-class-card__image>em{position:absolute;left:13px;bottom:12px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.93);box-shadow:0 4px 15px rgba(32,56,65,.12);color:#4b727d;font-size:9px;font-style:normal;font-weight:900}.ssms-public-class-card__image>em.is-full{color:#a64e4e}.ssms-public-class-card__image>em.is-limited{color:#946f22}.ssms-public-class-card__body{display:flex;flex-direction:column;min-height:245px;padding:18px}.ssms-public-class-card__body>small{color:#779099;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ssms-public-class-card__body>strong{margin-top:6px;color:#2f6374;font-size:19px;line-height:1.2}.ssms-public-class-card__body>span:not(.ssms-public-class-card__meta){margin-top:3px;color:#75909a;font-size:11px;font-weight:750}.ssms-public-class-card__body p{margin:11px 0 14px;color:#6b8189;font-size:12px;line-height:1.55}.ssms-public-class-card__meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.ssms-public-class-card__meta b,.ssms-public-class-card__meta i{padding:5px 8px;border-radius:999px;background:#f2f7f8;color:#607c85;font-size:9px;font-style:normal;font-weight:800}.ssms-public-class-card__meta i{background:#fff6df;color:#9a741f}.ssms-public-class-card__action{display:block;margin-top:13px;color:#c29431;font-size:10px;font-style:normal;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.ssms-public-empty{display:grid;justify-items:center;gap:7px;padding:42px;border:1px dashed #c8dce1;border-radius:18px;background:#fafcfc;color:#72878f;text-align:center}.ssms-public-empty strong{color:#416874;font-size:18px}.ssms-public-empty .ssms-btn{margin-top:10px}.ssms-public-class-modal{max-width:720px}.ssms-public-class-modal__image{height:230px;margin:-30px -30px 24px;overflow:hidden;border-radius:22px 22px 0 0;background:#edf4f6}.ssms-public-class-modal__image img{width:100%;height:100%;object-fit:cover}.ssms-public-class-modal__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.ssms-public-class-modal__facts div{padding:13px 14px;border:1px solid #dce7ea;border-radius:12px;background:#f8fbfb}.ssms-public-class-modal__facts small{display:block;color:#80939a;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.ssms-public-class-modal__facts strong{display:block;margin-top:4px;color:#365e69;font-size:12px}.ssms-public-class-modal__trial{margin-top:14px;padding:11px 13px;border-radius:11px;background:#fff7e4;color:#84641e;font-size:11px;font-weight:800}.ssms-public-class-modal__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:21px}.ssms-private-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.ssms-private-card{min-height:245px;padding:24px;border:1px solid #dce7ea;border-radius:18px;background:#fff;text-align:left;box-shadow:0 10px 30px rgba(48,78,88,.05);cursor:pointer}.ssms-private-card>span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#edf5f6;color:#5e8490;font-size:20px}.ssms-private-card strong{display:block;margin:16px 0 7px;color:#376876;font-size:18px}.ssms-private-card p{margin:0;color:#71868e;font-size:12px;line-height:1.6}.ssms-private-card em{display:block;margin-top:17px;color:#c29431;font-size:9px;font-style:normal;font-weight:900;text-transform:uppercase}.ssms-public-events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.ssms-public-event-card{overflow:hidden;padding:0;border:1px solid #dce7ea;border-radius:18px;background:#fff;text-align:left;box-shadow:0 10px 32px rgba(48,78,88,.05);cursor:pointer}.ssms-public-event-card>img{width:100%;height:210px;object-fit:cover}.ssms-public-event-card>span{display:block;padding:18px}.ssms-public-event-card small{color:#c29431;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.ssms-public-event-card strong{display:block;margin:5px 0 4px;color:#376876;font-size:19px}.ssms-public-event-card em{display:block;color:#66818a;font-size:10px;font-style:normal;font-weight:800}.ssms-public-event-card p{margin:10px 0;color:#72878f;font-size:12px;line-height:1.55}.ssms-public-event-card b{color:#c29431;font-size:9px;text-transform:uppercase}.ssms-public-event-modal{max-width:760px}.ssms-public-event-modal__image{width:calc(100% + 60px);height:260px;margin:-30px -30px 23px;object-fit:cover;border-radius:22px 22px 0 0}.ssms-public-event-modal__meta{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 13px}.ssms-public-event-modal__meta span{padding:5px 8px;border-radius:999px;background:#eff5f6;color:#607b84;font-size:9px;font-weight:850}@media(max-width:1050px){.ssms-public-hero__grid{grid-template-columns:1fr 1fr;gap:30px}.ssms-public-class-grid,.ssms-public-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ssms-private-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.ssms-public-hero{padding:26px 0 22px}.ssms-public-hero__grid{grid-template-columns:1fr;gap:22px}.ssms-public-hero__copy h1{font-size:43px}.ssms-public-hero__image{min-height:285px;border-radius:20px}.ssms-public-section{padding-top:38px;padding-bottom:42px}.ssms-public-section__head{grid-template-columns:1fr;gap:10px}.ssms-public-section__head h2{font-size:30px}.ssms-public-filters{display:grid;grid-template-columns:1fr 1fr}.ssms-public-filters label{min-width:0}.ssms-public-filters button{grid-column:1/-1;width:100%;margin-left:0}.ssms-public-class-grid,.ssms-public-events-grid{grid-template-columns:1fr}.ssms-public-class-card__image{height:210px}.ssms-private-grid{grid-template-columns:1fr}.ssms-public-class-modal__image,.ssms-public-event-modal__image{width:calc(100% + 36px);height:210px;margin:-18px -18px 20px}.ssms-public-class-modal__facts{grid-template-columns:1fr}}

/* 0.7.77 managed accreditation strip shared with SSMS public pages. */
.ssms-accreditations{background:#fff;border-top:1px solid #edf2f3}.ssms-accreditations__logos{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:34px 56px;padding-top:28px;padding-bottom:28px;min-height:120px}.ssms-accreditations__logos img{width:auto;max-width:230px;height:auto;max-height:78px;object-fit:contain}.ssms-site-footer__grid{grid-template-columns:1.5fr 1fr .8fr .8fr}
@media(max-width:1050px){.ssms-accreditations__logos{gap:26px 38px}.ssms-accreditations__logos img{max-width:190px;max-height:68px}.ssms-site-footer__grid{grid-template-columns:1.5fr 1fr 1fr}}@media(max-width:700px){.ssms-accreditations__logos{gap:22px 28px;padding-top:24px;padding-bottom:24px;min-height:0}.ssms-accreditations__logos img{max-width:150px;max-height:58px}.ssms-site-footer__grid{grid-template-columns:1fr 1fr}}@media(max-width:420px){.ssms-accreditations__logos{gap:18px 22px}.ssms-accreditations__logos img{max-width:125px;max-height:50px}.ssms-site-footer__grid{grid-template-columns:1fr}}

/* Private Booking public discovery handoff - 0.7.98. */
.ssms-private-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.ssms-private-public-modal{max-width:760px}
.ssms-private-service-list{display:grid;gap:10px;margin-top:20px}
.ssms-private-service-choice{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:16px 17px;border:1px solid #dbe7ea;border-radius:14px;background:#f9fbfb;color:#315d69;text-align:left;cursor:pointer;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.ssms-private-service-choice:hover,.ssms-private-service-choice:focus-visible{transform:translateY(-1px);border-color:#bcd2d8;box-shadow:0 10px 24px rgba(48,78,88,.08);outline:none}
.ssms-private-service-choice>span:first-child{display:grid;gap:4px;min-width:0}
.ssms-private-service-choice strong{font-size:15px}
.ssms-private-service-choice small{color:#71868e;font-size:11px;line-height:1.45}
.ssms-private-service-choice__meta{display:grid;gap:4px;justify-items:end;flex:0 0 auto}
.ssms-private-service-choice__meta b{color:#c29431;font-size:11px}
.ssms-private-service-choice__meta em{color:#78909a;font-size:9px;font-style:normal;font-weight:800;text-transform:uppercase}
.ssms-private-capacity-note{display:inline-flex;margin-top:12px;padding:7px 10px;border-radius:999px;background:#eff6f7;color:#5f7c85;font-size:10px;font-weight:800}
.ssms-private-teacher-list{display:grid;gap:12px;margin-top:20px}
.ssms-private-teacher-option{padding:16px;border:1px solid #dbe7ea;border-radius:15px;background:#fff}
.ssms-private-teacher-option__head small{display:block;color:#7c9299;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.ssms-private-teacher-option__head strong{display:block;margin-top:3px;color:#355f6b;font-size:17px}
.ssms-private-offer-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.ssms-private-offer-pills span{display:flex;gap:6px;align-items:center;padding:7px 9px;border-radius:999px;background:#f0f6f7;color:#607d86;font-size:10px}
.ssms-private-offer-pills b{color:#315d69}
.ssms-private-window-list{display:grid;gap:6px;margin-top:14px}
.ssms-private-window-list>small{color:#7c9299;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.ssms-private-window-list>span{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:10px;background:#fafcfc;color:#678089;font-size:10px}
.ssms-private-window-list>span b{min-width:82px;color:#3e6873}
.ssms-private-public-status{display:grid;gap:4px;margin-top:18px;padding:13px 14px;border:1px solid #dce8ea;border-radius:12px;background:#f7fafb;color:#6e858d;font-size:10px;line-height:1.5}
.ssms-private-public-status strong{color:#416b76;font-size:11px}
@media(max-width:620px){.ssms-private-service-choice{align-items:flex-start;flex-direction:column}.ssms-private-service-choice__meta{justify-items:start}.ssms-private-window-list>span{align-items:flex-start;flex-direction:column;gap:2px}.ssms-private-window-list>span b{min-width:0}}

/* Private Booking appointment selector - 0.7.99. */
.ssms-private-picker-label{margin-top:16px;color:#789099;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.ssms-private-offer-pills--interactive{margin-top:8px}
.ssms-private-offer-choice{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #dbe7ea;border-radius:999px;background:#f0f6f7;color:#607d86;font:inherit;font-size:10px;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.ssms-private-offer-choice:hover,.ssms-private-offer-choice:focus-visible{border-color:#aac6cf;outline:none;transform:translateY(-1px)}
.ssms-private-offer-choice.is-selected{border-color:#5f8793;background:#dfeef1;box-shadow:0 4px 14px rgba(48,78,88,.08);color:#315d69}
.ssms-private-offer-choice b{color:#315d69}.ssms-private-offer-choice span{color:inherit}
.ssms-private-offer-panel{margin-top:13px;padding-top:2px}
.ssms-private-date-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}
.ssms-private-date-choice{display:grid;gap:3px;padding:11px 12px;border:1px solid #dbe7ea;border-radius:12px;background:#fafcfc;color:#3e6873;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.ssms-private-date-choice strong{font-size:11px}.ssms-private-date-choice small{color:#7a9098;font-size:9px;font-weight:750}
.ssms-private-date-choice:hover,.ssms-private-date-choice:focus-visible{border-color:#aac6cf;outline:none;transform:translateY(-1px)}
.ssms-private-date-choice.is-selected{border-color:#5f8793;background:#edf5f6;box-shadow:0 5px 16px rgba(48,78,88,.08)}
.ssms-private-time-panel{margin-top:13px;padding:13px;border:1px solid #e0eaec;border-radius:13px;background:#f9fbfb}
.ssms-private-time-panel .ssms-private-picker-label{margin-top:0}
.ssms-private-time-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px}
.ssms-private-time-choice{padding:10px 8px;border:1px solid #cddfe3;border-radius:10px;background:#fff;color:#3b6672;font:inherit;font-size:10px;font-weight:850;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.ssms-private-time-choice:hover,.ssms-private-time-choice:focus-visible{border-color:#9ebdc5;outline:none;transform:translateY(-1px)}
.ssms-private-time-choice.is-selected{border-color:#c29431;background:#fff8e8;box-shadow:0 5px 15px rgba(194,148,49,.13);color:#80611d}
.ssms-private-selection{display:grid;gap:4px;margin-top:15px;padding:14px 15px;border:1px solid #c7dce1;border-radius:13px;background:#f3f8f9}
.ssms-private-selection small{color:#789099;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.ssms-private-selection strong{color:#315d69;font-size:13px}.ssms-private-selection span{color:#607d86;font-size:10px;line-height:1.5}.ssms-private-selection em{margin-top:4px;color:#7d8f95;font-size:9px;font-style:normal;line-height:1.45}
@media(max-width:620px){.ssms-private-date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ssms-private-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:420px){.ssms-private-date-grid,.ssms-private-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.ssms-private-party-stage{margin:14px 0 16px;padding:14px;border:1px solid #d8e5e8;border-radius:14px;background:#f8fbfb}.ssms-private-party-stage .ssms-private-flow-heading{margin-top:0}.ssms-private-party-stage .ssms-private-capacity-note{margin-top:9px}.ssms-private-action-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.ssms-private-action-row .ssms-private-primary-action{margin-top:0}.ssms-private-hold>.ssms-private-action-row{margin-top:7px}.ssms-private-review>.ssms-private-action-row{justify-content:flex-end}.ssms-private-action-row .ssms-btn{margin-top:0!important}
@media(max-width:620px){.ssms-private-action-row{align-items:stretch;flex-direction:column}.ssms-private-action-row .ssms-btn,.ssms-private-action-row .ssms-private-primary-action{width:100%}}

/* Private Booking Stage 3B: member assignment, teacher photo and temporary appointment protection. */
.ssms-private-teacher-option__head{display:flex;align-items:center;gap:13px}.ssms-private-teacher-photo{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;overflow:hidden;border:1px solid #d7e5e8;border-radius:18px;background:linear-gradient(145deg,#edf5f6,#f8fbfb);color:#5d8190;font-size:23px;font-weight:450}.ssms-private-teacher-photo img{width:100%;height:100%;object-fit:cover}.ssms-private-teacher-photo b{font:inherit}.ssms-private-primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin-top:10px;padding:0 16px;border:0;border-radius:999px;background:#315f6d;color:#fff;font:inherit;font-size:10px;font-weight:850;letter-spacing:.02em;cursor:pointer;box-shadow:0 7px 18px rgba(49,95,109,.14)}.ssms-private-primary-action:hover,.ssms-private-primary-action:focus-visible{background:#274f5c;outline:none}.ssms-private-primary-action:disabled{cursor:not-allowed;opacity:.48}.ssms-private-assignment{margin-top:15px;padding:16px;border:1px solid #cbdde1;border-radius:15px;background:#fbfdfd}.ssms-private-assignment__head{display:grid;gap:3px;padding-bottom:12px;border-bottom:1px solid #e4edef}.ssms-private-assignment__head small{color:#789099;font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.ssms-private-assignment__head strong{color:#315d69;font-size:15px}.ssms-private-assignment__head span{color:#718990;font-size:10px}.ssms-private-assignment__notice{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#edf5f6;color:#537681;font-size:10px;line-height:1.5}.ssms-private-assignment__notice.is-error{background:#fff0f0;color:#914b4b}.ssms-private-assignment__notice.is-info{background:#f2f7f8;color:#57747d}.ssms-private-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.ssms-private-family-choice{display:grid;grid-template-columns:24px 1fr;grid-template-rows:auto auto;column-gap:8px;width:100%;padding:10px 11px;border:1px solid #d8e5e8;border-radius:11px;background:#fff;color:#355f6b;text-align:left;cursor:pointer}.ssms-private-family-choice>span{grid-row:1/3;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#edf5f6;color:#5d8490;font-size:10px}.ssms-private-family-choice strong{font-size:11px}.ssms-private-family-choice small{color:#7b9098;font-size:9px;text-transform:capitalize}.ssms-private-family-choice:disabled{cursor:default;opacity:.45}.ssms-private-family-empty{margin-top:10px;padding:10px 12px;border-radius:10px;background:#f6f9fa;color:#738990;font-size:10px}.ssms-private-assigned-list{display:grid;gap:7px;margin-top:10px}.ssms-private-assigned-person{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid #d7e4e7;border-radius:11px;background:#f4f9fa}.ssms-private-assigned-person div{display:grid;gap:2px}.ssms-private-assigned-person strong{color:#315d69;font-size:11px}.ssms-private-assigned-person small{color:#7b9098;font-size:9px}.ssms-private-assigned-person button,.ssms-private-add-person,.ssms-private-record-check button{border:1px solid #cddde1;border-radius:999px;background:#fff;color:#476c77;font:inherit;font-size:9px;font-weight:800;cursor:pointer}.ssms-private-assigned-person button{padding:6px 9px}.ssms-private-add-person{margin-top:10px;padding:8px 11px}.ssms-private-new-person{margin-top:12px;padding:13px;border:1px solid #dbe7ea;border-radius:12px;background:#f8fbfb}.ssms-private-new-person__head{display:grid;gap:3px}.ssms-private-new-person__head strong{color:#315d69;font-size:12px}.ssms-private-new-person__head span{color:#748a92;font-size:9px;line-height:1.5}.ssms-private-person-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:11px}.ssms-private-person-fields--identity{grid-template-columns:repeat(3,minmax(0,1fr))}.ssms-private-person-fields label,.ssms-private-message{display:grid;gap:5px;color:#53727c;font-size:9px;font-weight:800}.ssms-private-person-fields label.is-wide{grid-column:1/-1}.ssms-private-person-fields input,.ssms-private-person-fields select,.ssms-private-person-fields textarea,.ssms-private-message textarea{width:100%;box-sizing:border-box;border:1px solid #cfdee2;border-radius:9px;background:#fff;color:#294a55;font:inherit;font-size:10px}.ssms-private-person-fields input,.ssms-private-person-fields select{height:38px;padding:0 10px}.ssms-private-person-fields textarea,.ssms-private-message textarea{padding:9px 10px;resize:vertical}.ssms-private-record-check{display:flex;align-items:center;gap:9px;margin-top:10px}.ssms-private-record-check button{padding:8px 11px}.ssms-private-record-check span{color:#7a8e95;font-size:9px}.ssms-private-record-result{margin-top:9px;padding:9px 10px;border-radius:9px;background:#edf6f1;color:#3d7962;font-size:9px;font-weight:750}.ssms-private-record-result.is-error{background:#fff0f0;color:#914b4b}.ssms-private-record-result.is-new{background:#fff8e8;color:#866a2a}.ssms-private-new-details{margin-top:11px;padding-top:11px;border-top:1px solid #e1ebed}.ssms-private-new-details>strong{color:#315d69;font-size:11px}.ssms-private-new-details>p{margin:4px 0 0;color:#71868e;font-size:9px;line-height:1.5}.ssms-private-new-person__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.ssms-private-message{margin-top:13px}.ssms-private-message>span{font-size:10px}.ssms-private-message>small{color:#809299;font-size:8px;font-weight:500}.ssms-private-confirm-details{display:flex;align-items:flex-start;gap:8px;margin-top:11px;padding:10px;border-radius:10px;background:#f2f7f8;color:#57747d;font-size:9px;line-height:1.45}.ssms-private-confirm-details input{margin-top:1px}.ssms-private-assignment__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding-top:12px;border-top:1px solid #e1ebed}.ssms-private-assignment__footer>strong{color:#315d69;font-size:14px}.ssms-private-assignment__footer .ssms-private-primary-action{margin-top:0}.ssms-private-hold{display:grid;gap:5px;margin-top:15px;padding:15px;border:1px solid #bcd8ce;border-radius:14px;background:#f2faf6}.ssms-private-hold small{color:#4c826d;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ssms-private-hold strong{color:#315d69;font-size:14px}.ssms-private-hold span{color:#5d7b76;font-size:10px;line-height:1.5}.ssms-private-hold [data-private-hold-countdown]{color:#3f7862;font-weight:850}.ssms-private-hold em{color:#718a82;font-size:9px;font-style:normal}.ssms-private-hold .ssms-btn{justify-self:start;margin-top:5px}.ssms-private-selection .ssms-private-primary-action{justify-self:start}.ssms-private-time-choice:disabled,.ssms-private-date-choice:disabled,.ssms-private-offer-choice:disabled{cursor:not-allowed;opacity:.5}
@media(max-width:620px){.ssms-private-family-grid,.ssms-private-person-fields,.ssms-private-person-fields--identity{grid-template-columns:1fr}.ssms-private-assignment__footer{align-items:stretch;flex-direction:column}.ssms-private-assignment__footer .ssms-private-primary-action{width:100%}.ssms-private-teacher-photo{flex-basis:54px;width:54px;height:54px;border-radius:15px}}
.ssms-private-review-details{display:inline-block;margin-top:7px;color:#4e7480;font-size:9px;font-weight:800;text-decoration:none}.ssms-private-review-details:hover,.ssms-private-review-details:focus-visible{text-decoration:underline}

/* Private Booking Stage 3B.1 customer reservation controls. */
.ssms-site .ssms-private-primary-action{background:linear-gradient(135deg,#d5a841,#bd8828);color:#fff!important;box-shadow:0 10px 24px rgba(185,135,38,.22)}
.ssms-site .ssms-private-primary-action:hover,.ssms-site .ssms-private-primary-action:focus-visible{background:linear-gradient(135deg,#c99a36,#ae7921);color:#fff!important;box-shadow:0 13px 28px rgba(185,135,38,.29)}
.ssms-site .ssms-private-primary-action:disabled{background:#dfe8ea;color:#789098!important;box-shadow:none;opacity:1;cursor:not-allowed}
.ssms-private-selection[hidden],.ssms-private-assignment[hidden],.ssms-private-hold[hidden],.ssms-private-time-panel[hidden],.ssms-private-offer-panel[hidden]{display:none!important}
.ssms-private-hold__timer{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:center;margin-top:7px;padding:11px 12px;border:1px solid #c9dfd6;border-radius:11px;background:#fff}
.ssms-private-hold__timer>b{min-width:82px;color:#2f7258;font-size:18px;line-height:1;letter-spacing:-.02em}
.ssms-private-hold__timer>span{color:#678078;font-size:9px;line-height:1.45}
@media(max-width:620px){.ssms-private-hold__timer{grid-template-columns:1fr;gap:5px}.ssms-private-hold__timer>b{font-size:21px}.ssms-site .ssms-private-primary-action{width:100%}}


/* Private Booking Stage 3B.2 staged customer journey. */
.ssms-private-teacher-list.is-private-flow-active>.ssms-private-teacher-option:not(.is-private-flow-active){display:none!important}
.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-teacher-option__head,.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-picker-label,.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-offer-pills,.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-offer-panel,.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-selection,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-teacher-option__head,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-picker-label,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-offer-pills,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-offer-panel,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-selection,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-assignment{display:none!important}
.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-assignment,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-hold{margin-top:0}
.ssms-private-step-back{display:inline-flex;align-items:center;margin:0 0 12px;padding:0;border:0;background:transparent;color:#517783;font:inherit;font-size:9px;font-weight:850;cursor:pointer}
.ssms-private-step-back:hover,.ssms-private-step-back:focus-visible{color:#315d69;text-decoration:underline;outline:none}
.ssms-private-assignment__action-notice{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#f2f7f8;color:#57747d;font-size:10px;line-height:1.5}
.ssms-private-assignment__action-notice.is-error{background:#fff0f0;color:#914b4b}
.ssms-private-assignment__action-notice.is-info{background:#f2f7f8;color:#57747d}
.ssms-private-assignment__action-notice[hidden],.ssms-private-hold__next-notice[hidden]{display:none!important}
.ssms-private-hold__continue{margin-top:9px!important}
.ssms-private-hold__next-notice{margin-top:8px;padding:9px 11px;border-radius:10px;background:#eef5f6;color:#587781;font-size:9px;line-height:1.5}

.ssms-private-flow-heading{display:grid;gap:2px;margin:14px 0 6px}.ssms-private-flow-heading small{color:#789099;font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.ssms-private-flow-heading strong{color:#315d69;font-size:13px}
.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-flow-heading,.ssms-private-teacher-option[data-private-flow-stage="3"]>.ssms-private-flow-heading{display:none!important}


/* Private Booking Stage 3B.3 button feedback and review step. */
.ssms-site .ssms-private-primary-action{transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .12s ease}
.ssms-site .ssms-private-primary-action:active,.ssms-site .ssms-private-primary-action.is-pressed,.ssms-site .ssms-private-primary-action.is-busy{background:#dfe8ea!important;color:#6f8790!important;box-shadow:none!important;transform:scale(.985)}
.ssms-site .ssms-private-primary-action.is-busy{cursor:wait}
.ssms-private-step-back:active,.ssms-private-step-back.is-pressed,.ssms-private-assigned-person button:active,.ssms-private-add-person:active,.ssms-private-family-choice:active,.ssms-private-date-choice:active,.ssms-private-time-choice:active,.ssms-private-offer-choice:active,.ssms-public-class-modal__actions .ssms-btn:active{background:#e3eaec!important;color:#668089!important;box-shadow:none!important;transform:scale(.985)}
.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-teacher-option__head,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-flow-heading,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-picker-label,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-offer-pills,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-offer-panel,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-selection,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-assignment,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-hold{display:none!important}
.ssms-private-review[hidden]{display:none!important}
.ssms-private-review{display:grid;gap:13px;margin-top:0;padding:16px;border:1px solid #c8dfe1;border-radius:15px;background:#fbfdfd}
.ssms-private-review__head{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid #e1ebed}.ssms-private-review__head small{color:#789099;font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.ssms-private-review__head strong{color:#315d69;font-size:15px}.ssms-private-review__head span{color:#718990;font-size:10px;line-height:1.5}
.ssms-private-review__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ssms-private-review__grid>div{display:grid;gap:3px;padding:10px 11px;border:1px solid #dce7e9;border-radius:11px;background:#fff}.ssms-private-review__grid>div.is-wide{grid-column:1/-1}.ssms-private-review__grid small{color:#7b9199;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ssms-private-review__grid strong{color:#315d69;font-size:11px;line-height:1.4}.ssms-private-review__grid span{color:#627d85;font-size:10px;line-height:1.5;white-space:pre-wrap}
.ssms-private-review__timer{margin-top:0}.ssms-private-review__terms{display:grid;gap:4px;padding:11px 12px;border-radius:11px;background:#f6f9fa}.ssms-private-review__terms strong{color:#315d69;font-size:10px}.ssms-private-review__terms span{color:#6b828a;font-size:9px;line-height:1.5}
.ssms-private-review__total{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;border-top:1px solid #e1ebed}.ssms-private-review__total span{color:#708891;font-size:10px;font-weight:800}.ssms-private-review__total strong{color:#315d69;font-size:17px}
.ssms-private-review__payment-note{display:grid;gap:3px;padding:11px 12px;border:1px solid #e0e9eb;border-radius:11px;background:#f2f7f8}.ssms-private-review__payment-note strong{color:#315d69;font-size:10px}.ssms-private-review__payment-note span{color:#627c85;font-size:9px;line-height:1.5}
@media(max-width:620px){.ssms-private-review__grid{grid-template-columns:1fr}.ssms-private-review__grid>div.is-wide{grid-column:auto}}
/* Private Booking Stage 3B.4 review acknowledgement. */
.ssms-private-review__agreement{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #dce7e9;border-radius:11px;background:#fff;color:#4f707a;font-size:9px;font-weight:800;line-height:1.5;cursor:pointer}.ssms-private-review__agreement input{flex:0 0 auto;margin:2px 0 0;width:16px;height:16px;accent-color:#315f6d}.ssms-private-review__agreement span{display:block}

.ssms-private-payment-action{justify-self:end;margin-top:0}.ssms-private-review__payment-note.is-error{border-color:#efd3d3;background:#fff4f4}.ssms-private-review__payment-note.is-error strong{color:#8d4747}.ssms-private-review__payment-note.is-error span{color:#895e5e}
.ssms-private-payment-return{padding-top:34px;padding-bottom:54px}.ssms-private-payment-return__card{max-width:760px;margin:0 auto;padding:28px;border:1px solid #d8e5e8;border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(39,79,92,.08)}.ssms-private-payment-return__card h2{margin:7px 0 8px;color:#315d69;font-size:clamp(24px,4vw,36px)}.ssms-private-payment-return__card>p{max-width:620px;margin:0 0 20px;color:#657e86;line-height:1.65}.ssms-private-payment-return__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 22px}.ssms-private-payment-return__summary>div{display:grid;gap:4px;padding:12px 13px;border:1px solid #e0e9eb;border-radius:12px;background:#f8fbfb}.ssms-private-payment-return__summary small{color:#7b9199;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ssms-private-payment-return__summary strong{color:#315d69;font-size:12px}.ssms-private-payment-return__card.is-confirmed{border-color:#bfd9ce}.ssms-private-payment-return__card.is-review,.ssms-private-payment-return__card.is-protected{border-color:#ead9b4}.ssms-private-payment-return__card.is-error{border-color:#ecd0d0}@media(max-width:620px){.ssms-private-payment-action{width:100%}.ssms-private-payment-return__card{padding:20px}.ssms-private-payment-return__summary{grid-template-columns:1fr}}

/* Private Booking administrator test route - 0.8.08. */
.ssms-private-admin-test-banner{display:flex;align-items:flex-start;gap:12px;margin:0 0 18px;padding:13px 15px;border:1px solid rgba(176,142,74,.38);border-radius:12px;background:#fffaf0;color:#263f49}.ssms-private-admin-test-banner strong{flex:0 0 auto;font-size:12px}.ssms-private-admin-test-banner span{font-size:11px;line-height:1.5;color:#65747a}@media(max-width:680px){.ssms-private-admin-test-banner{flex-direction:column;gap:4px}}

/* Private Booking 0.8.21: single-card staged booking journey. */
.ssms-private-public-modal [hidden]{display:none!important}
.ssms-private-teacher-list{display:grid;gap:14px}
.ssms-private-back-party{justify-self:start;margin:0 0 2px}
.ssms-private-teacher-option__head{justify-content:flex-start}
.ssms-private-select-teacher{margin-left:auto;padding:9px 14px;border:1px solid #c8dce1;border-radius:999px;background:#fff;color:#456d79;font:inherit;font-size:9px;font-weight:850;cursor:pointer;white-space:nowrap;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .12s ease}
.ssms-private-select-teacher:hover,.ssms-private-select-teacher:focus-visible{border-color:#8db5a2;outline:none;transform:translateY(-1px)}
.ssms-private-select-teacher.is-selected{border-color:#78aa91;background:#eaf6ef;color:#2f7258;box-shadow:0 5px 15px rgba(47,114,88,.1);cursor:default}
.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-change-teacher,.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-flow-heading,.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-picker-label,.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-offer-pills,.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-offer-panel,.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-selection,.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-assignment,.ssms-private-teacher-option:not(.is-teacher-selected)>.ssms-private-review{display:none!important}
.ssms-private-teacher-option[data-private-flow-stage="2"]>.ssms-private-change-teacher,.ssms-private-teacher-option[data-private-flow-stage="4"]>.ssms-private-change-teacher{display:none!important}
.ssms-private-offer-choice,.ssms-private-date-choice,.ssms-private-time-choice{position:relative}
.ssms-private-offer-choice.is-selected,.ssms-private-date-choice.is-selected,.ssms-private-time-choice.is-selected{border-color:#78aa91!important;background:#eaf6ef!important;color:#2f7258!important;box-shadow:0 5px 16px rgba(47,114,88,.1)!important}
.ssms-private-offer-choice.is-selected b,.ssms-private-date-choice.is-selected strong,.ssms-private-date-choice.is-selected small{color:#2f7258!important}
.ssms-private-offer-choice.is-selected,.ssms-private-date-choice.is-selected,.ssms-private-time-choice.is-selected{padding-right:31px}
.ssms-private-offer-choice.is-selected:after,.ssms-private-date-choice.is-selected:after,.ssms-private-time-choice.is-selected:after{content:"✓";position:absolute;right:10px;top:50%;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#d4ecdf;color:#2f7258;font-size:10px;font-weight:900;transform:translateY(-50%)}
.ssms-private-review__participants{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px}
.ssms-private-review__participant{display:grid;gap:2px;padding:9px 10px;border:1px solid #dce7e9;border-radius:10px;background:#f8fbfb}
.ssms-private-review__participant>small{color:#7b9199!important;font-size:8px!important;font-weight:900!important;letter-spacing:.08em;text-transform:uppercase}
.ssms-private-review__participant>strong{color:#315d69!important;font-size:11px!important;line-height:1.35}
.ssms-private-review__participant>span{color:#748a92!important;font-size:9px!important;line-height:1.35}
@media(max-width:620px){.ssms-private-teacher-option__head{align-items:flex-start;flex-wrap:wrap}.ssms-private-select-teacher{margin-left:0}.ssms-private-review__participants{grid-template-columns:1fr}}
.ssms-private-teacher-list.is-private-teacher-selected>.ssms-private-back-party{display:none!important}


/* Private Booking 0.8.22: age-aware new-member form and front-end form polish. */
.ssms-private-public-modal,.ssms-private-public-modal button,.ssms-private-public-modal input,.ssms-private-public-modal select,.ssms-private-public-modal textarea{font-family:var(--ssms-site-body,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif)}
.ssms-private-public-modal input,.ssms-private-public-modal select,.ssms-private-public-modal textarea{font-weight:500}
.ssms-private-age-result{margin-top:10px;padding:10px 12px;border:1px solid #d9e8e1;border-radius:10px;background:#edf7f1;color:#3d7962;font-size:9px;font-weight:800;line-height:1.5}
.ssms-private-age-result.is-error{border-color:#efd1d1;background:#fff1f1;color:#8f4747}
.ssms-private-age-result.is-ok{border-color:#cfe3d8;background:#eff8f3;color:#367258}
.ssms-private-person-fields label small{color:#84979d;font-size:8px;font-weight:650}
.ssms-private-person-fields .ssms-private-confirm-details{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;margin-top:3px;padding:12px 13px;border:1px solid #dce8ea;border-radius:11px;background:#f2f7f8;color:#57747d;font-size:9px;font-weight:750;line-height:1.5;cursor:pointer}
.ssms-private-confirm-details input[type="checkbox"],.ssms-private-review__agreement input[type="checkbox"]{-webkit-appearance:none;appearance:none;display:grid!important;place-content:center;flex:0 0 20px;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;margin:0!important;padding:0!important;border:1.5px solid #9fb9c1!important;border-radius:5px!important;background:#fff!important;box-shadow:none!important;cursor:pointer;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}
.ssms-private-confirm-details input[type="checkbox"]:before,.ssms-private-review__agreement input[type="checkbox"]:before{content:"✓";color:#fff;font-family:var(--ssms-site-body,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif);font-size:13px;font-weight:900;line-height:1;transform:scale(0);transition:transform .12s ease}
.ssms-private-confirm-details input[type="checkbox"]:checked,.ssms-private-review__agreement input[type="checkbox"]:checked{border-color:#4d896d!important;background:#4d896d!important}
.ssms-private-confirm-details input[type="checkbox"]:checked:before,.ssms-private-review__agreement input[type="checkbox"]:checked:before{transform:scale(1)}
.ssms-private-confirm-details input[type="checkbox"]:focus-visible,.ssms-private-review__agreement input[type="checkbox"]:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(77,137,109,.16)!important}
.ssms-private-confirm-details span,.ssms-private-review__agreement span{font-family:inherit}

/* Private Booking 0.8.23: public enrolment + positive acknowledgement states. */
.ssms-site .ssms-private-primary-action.is-pressed:not(.is-busy),.ssms-site .ssms-private-primary-action:active:not(.is-busy){background:#e8f5ed!important;color:#2f7258!important;box-shadow:0 0 0 1px #86b49d inset!important}
.ssms-private-family-choice{grid-template-columns:24px minmax(0,1fr) auto;grid-template-rows:auto;align-items:center;gap:9px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}
.ssms-private-family-choice__check{grid-row:auto!important;display:grid!important;place-items:center;width:24px!important;height:24px!important;border-radius:50%;background:#edf5f6!important;color:#5d8490!important;font-size:11px!important;font-weight:900}
.ssms-private-family-choice__person{display:grid;gap:2px;min-width:0}
.ssms-private-family-choice__person strong{font-size:11px}.ssms-private-family-choice__person small{color:#7b9098;font-size:9px;text-transform:capitalize}
.ssms-private-family-choice__action{justify-self:end;color:#547984;font-size:9px;font-style:normal;font-weight:850;white-space:nowrap}
.ssms-private-family-choice.is-assigned{border-color:#a9d0bb;background:#edf8f2;box-shadow:0 4px 14px rgba(47,114,88,.07);opacity:1!important}
.ssms-private-family-choice.is-assigned .ssms-private-family-choice__check{background:#d5ecdf!important;color:#2f7258!important}
.ssms-private-family-choice.is-assigned .ssms-private-family-choice__action,.ssms-private-family-choice.is-assigned strong{color:#2f7258}
.ssms-private-family-choice:disabled:not(.is-assigned){opacity:.45}
.ssms-private-assigned-person.is-assigned{justify-content:flex-start;border-color:#afd2bf;background:#edf8f2;box-shadow:0 4px 14px rgba(47,114,88,.05)}
.ssms-private-assigned-person__check{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:#d5ecdf;color:#2f7258;font-size:12px;font-weight:900}
.ssms-private-assigned-person.is-assigned>div{flex:1}.ssms-private-assigned-person.is-assigned strong{color:#2f7258}.ssms-private-assigned-person.is-assigned small{color:#5c806f}
.ssms-private-booking-contact{margin-top:13px;padding:13px;border:1px solid #cfe1d7;border-radius:12px;background:#f6fbf8}
.ssms-private-booking-contact__head{display:grid;gap:3px}.ssms-private-booking-contact__head small{color:#5f8774;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ssms-private-booking-contact__head strong{color:#315d69;font-size:12px}.ssms-private-booking-contact__head span{color:#6f8680;font-size:9px;line-height:1.5}
.ssms-private-review__contact{border-color:#d5e7dc!important;background:#f7fbf8!important}.ssms-private-review__contact strong{color:#2f7258!important}
.ssms-private-review__terms span{font-size:10.5px;line-height:1.62}
@media(max-width:620px){.ssms-private-family-choice{grid-template-columns:24px minmax(0,1fr)}.ssms-private-family-choice__action{grid-column:2;justify-self:start;margin-top:2px}.ssms-private-booking-contact{padding:12px}}
.ssms-private-card.is-acknowledged,.ssms-private-service-choice.is-acknowledged{border-color:#acd1bc!important;background:#eef8f2!important;box-shadow:0 7px 20px rgba(47,114,88,.08)!important;transform:scale(.995)}
.ssms-private-card.is-acknowledged>span{background:#dcefe4;color:#2f7258}.ssms-private-card.is-acknowledged strong,.ssms-private-service-choice.is-acknowledged strong,.ssms-private-service-choice.is-acknowledged .ssms-private-service-choice__meta b{color:#2f7258}
.ssms-private-family-choice>span.ssms-private-family-choice__person{grid-row:auto!important;display:grid!important;place-items:initial!important;width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;color:inherit!important;font-size:inherit!important}

/* Website Stage 1: guided Children's Classes browser. */
.ssms-public-guided-filters{
	display:grid;
	grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) auto;
	gap:12px;
	align-items:end;
	margin-bottom:0;
	padding:16px;
	border:1px solid #dbe7ea;
	border-radius:18px 18px 0 0;
	background:#fff;
	box-shadow:0 9px 28px rgba(44,75,86,.045);
}
.ssms-public-guided-filters label{display:grid;gap:6px;min-width:0}
.ssms-public-guided-filters label>span{color:#617b84;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.ssms-public-guided-filters select{
	width:100%;min-height:48px;padding:0 42px 0 14px;border:1px solid #cddfe4;border-radius:12px;
	background:#fff;color:#294d59;font:inherit;font-size:11px;font-weight:800;outline:none;
}
.ssms-public-guided-filters select:focus{border-color:#79a7b5;box-shadow:0 0 0 3px rgba(86,132,148,.11)}
.ssms-public-guided-filters label.is-disabled select,.ssms-public-guided-filters select:disabled{background:#f0f4f5;color:#a3b2b7;cursor:not-allowed}
.ssms-public-filter-reset{min-height:48px;padding:0 16px;border:0;border-radius:12px;background:#edf4f6;color:#54747e;font:inherit;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.ssms-public-filter-reset:hover,.ssms-public-filter-reset:focus-visible{background:#e4eef1;outline:none}
.ssms-public-day-strip{
	display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:22px;
	border:1px solid #dbe7ea;border-top:0;border-radius:0 0 18px 18px;overflow:hidden;background:#f4f8f9;
}
.ssms-public-day-strip button{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:0 8px;border:0;border-right:1px solid #dbe7ea;background:#eef4f5;color:#8da0a6;font:inherit;cursor:default}
.ssms-public-day-strip button:last-child{border-right:0}
.ssms-public-day-strip button span{font-size:10px;letter-spacing:.08em}
.ssms-public-day-strip button em{font-size:11px;font-style:normal;font-weight:900}
.ssms-public-day-strip button.is-available{background:#e5f3ed;color:#2d765d;cursor:pointer}
.ssms-public-day-strip button.is-unavailable{background:#fbf3ec;color:#c48b69}
.ssms-public-day-strip button.is-selected{background:#d9eee5;color:#246b53}
.ssms-public-day-strip button.is-selected:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:#2e8668}
.ssms-public-day-strip button.is-available:hover,.ssms-public-day-strip button.is-available:focus-visible{background:#dcefe7;outline:none}
.ssms-public-browser-prompt{display:grid;place-items:center;gap:5px;min-height:150px;padding:30px;border:1px dashed #ccdfe4;border-radius:18px;background:linear-gradient(180deg,#fbfdfd,#f6fafb);text-align:center}
.ssms-public-browser-prompt strong{color:#315e6d;font-family:var(--ssms-site-display);font-size:25px;font-weight:450}
.ssms-public-browser-prompt span{max-width:560px;color:#748a92;font-size:11px;line-height:1.55}
.ssms-public-class-grid[hidden],.ssms-public-browser-prompt[hidden],.ssms-public-empty[hidden]{display:none!important}

@media(max-width:860px){
	.ssms-public-guided-filters{grid-template-columns:1fr 1fr}
	.ssms-public-filter-reset{width:100%}
	.ssms-public-day-strip{grid-template-columns:repeat(3,1fr)}
	.ssms-public-day-strip button:nth-child(3){border-right:0}
	.ssms-public-day-strip button:nth-child(-n+3){border-bottom:1px solid #dbe7ea}
}
@media(max-width:560px){
	.ssms-public-guided-filters{grid-template-columns:1fr;padding:12px}
	.ssms-public-day-strip{grid-template-columns:repeat(6,minmax(68px,1fr));overflow-x:auto}
	.ssms-public-day-strip button{min-height:50px;border-bottom:0!important;border-right:1px solid #dbe7ea!important}
	.ssms-public-day-strip button:last-child{border-right:0!important}
	.ssms-public-filter-reset{justify-self:stretch}
	.ssms-public-browser-prompt{min-height:130px;padding:24px 18px}
}
.ssms-public-class-card[hidden]{display:none!important}

/* v0.8.49: public category pages use the same five-column footer as the homepage. */
@media (min-width:1051px){
  .ssms-site-footer__grid{grid-template-columns:1.35fr 1fr .85fr .75fr 1fr!important;gap:38px!important;align-items:start}
}


/* v0.8.50: manual private-booking DOB entry, matching the Timetable booking flow. */
.ssms-private-dob{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.35fr);align-items:center;gap:7px;width:100%}
.ssms-private-dob>span{color:#6b858e;font-size:14px;font-weight:850;text-align:center}
.ssms-private-person-fields .ssms-private-dob input[data-private-new-dob-part]{min-width:0;padding-left:7px;padding-right:7px;text-align:center}
.ssms-private-dob input[data-private-new-dob]{display:none!important}
@media(max-width:620px){.ssms-private-dob{grid-template-columns:1fr auto 1fr auto 1.35fr;gap:5px}.ssms-private-dob>span{font-size:16px}.ssms-private-person-fields .ssms-private-dob input[data-private-new-dob-part]{font-size:16px;padding-left:8px;padding-right:8px}}
