.scheduler{border:0;padding:0;background:var(--cream);color:var(--ink);width:min(950px,94vw);max-height:90svh;overflow:auto;box-shadow:0 25px 100px #0005}.scheduler[open]{display:grid;grid-template-columns:.85fr 1.15fr}.scheduler::backdrop{background:#102721bb;backdrop-filter:blur(6px)}.close-booking{position:absolute;right:14px;top:10px;background:none;border:0;font-size:28px;color:var(--ink);cursor:pointer;z-index:1}.scheduler-info{background:#e6e7dc;padding:50px 35px}.scheduler-info h2{font-size:46px}.scheduler-info>p:not(.eyebrow){font-size:13px;color:var(--muted)}.duration{border-top:1px solid #c9cebf;padding-top:20px;margin-top:25px}.demo-label{border-top:1px solid #bdc5b5;margin-top:35px;padding-top:18px;font-size:10px;letter-spacing:1px;line-height:1.8}.demo-label span{font-size:11px;letter-spacing:0;color:var(--muted)}.scheduler-main{padding:50px 35px;min-height:610px}.scheduler-main h3{font-size:36px}.month-nav{display:flex;justify-content:space-between;align-items:center;margin:24px 0;font-size:13px}.month-nav button,.back-step{border:0;background:none;color:var(--green);cursor:pointer;padding:8px}.month-nav button:disabled{opacity:.25;cursor:default}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.calendar-grid>span{font-size:8px;letter-spacing:1px;padding:8px 0}.dates button{border:0;background:#e4e8dc;border-radius:50%;aspect-ratio:1;font-size:12px;color:var(--green);cursor:pointer}.dates button:disabled{background:transparent;color:#b1b6aa;cursor:default}.dates button:hover:not(:disabled),.dates button.selected{background:var(--green);color:var(--cream)}.timezone{font-size:10px;color:var(--muted);margin-top:20px}.selected-date{font-size:12px;margin-top:22px}.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.slot-grid button{padding:10px;border:1px solid #abb5a5;color:var(--green);background:none;cursor:pointer}.slot-grid button:hover{background:var(--green);color:var(--cream)}.chosen-time{font-size:12px;background:#e5e8dd;padding:13px;line-height:1.7}.back-step{font-size:11px;margin:-15px 0 22px;padding-left:0}#booking-details label{display:block;font-size:11px;margin:16px 0}#booking-details label>span{color:var(--muted)}#booking-details input:not([type=checkbox]),#booking-details textarea{width:100%;display:block;background:transparent;border:1px solid #bfc6b7;padding:12px;font:inherit;color:var(--ink);margin-top:6px;border-radius:0}#booking-details textarea{resize:vertical}#booking-details .consent{display:flex;gap:8px;align-items:flex-start;font-size:10px}.consent input{accent-color:var(--green)}#booking-details .button{border:0;width:100%;cursor:pointer}.success-mark{display:grid;place-items:center;width:60px;height:60px;border:1px solid #a9b69d;border-radius:50%;font-size:25px;margin-bottom:30px}.booking-success>p:not(.eyebrow){font-size:13px;color:var(--muted)}.booking-success .button{width:100%;border:0;cursor:pointer}.scheduler button:focus-visible,.scheduler input:focus-visible,.scheduler textarea:focus-visible{outline:2px solid var(--brass);outline-offset:3px}@media(max-width:600px){.scheduler[open]{grid-template-columns:1fr}.scheduler-info{padding:30px 25px}.scheduler-info h2{font-size:35px}.scheduler-info>p:not(.eyebrow),.scheduler-info .duration{display:none}.scheduler-info .demo-label{margin-top:20px;padding-top:12px}.scheduler-main{padding:30px 25px;min-height:0}.close-booking{top:5px}.scheduler-info .eyebrow{margin-bottom:15px}}

.assessment-enquiry .scheduler-main{min-height:330px}.assessment-enquiry .scheduler-main>p{font-size:13px;line-height:1.9;color:#53624c}.assessment-enquiry .scheduler-main .button{margin:25px 0}.assessment-enquiry .scheduler-main>.assessment-note{font-size:11px}.assessment-enquiry:has(.assessment-calendly){width:min(1100px,96vw)}.assessment-enquiry:has(.assessment-calendly) .scheduler-main{padding:25px 10px}.assessment-enquiry .assessment-calendly{width:100%}

.assessment-contact-options{margin:16px 0;font-size:14px}.assessment-contact-options summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.assessment-contact-options p{margin:8px 0}
.email-contact-dialog{border:0;background:#f4f1e9;color:#233b34;width:min(520px,94vw);max-width:94vw;max-height:92svh;overflow:auto;padding:36px;box-shadow:0 25px 100px #0005}.email-contact-dialog::backdrop{background:#102721cc;backdrop-filter:blur(4px)}.email-contact-dialog h2{font:30px/1.2 Georgia,serif;margin:18px 0}.email-contact-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:inherit;font-size:28px;cursor:pointer}.email-contact-address{overflow-wrap:anywhere;user-select:text;font-size:14px}.email-contact-choices{display:grid;gap:10px;margin:24px 0}.email-contact-choices .button{margin:0;width:100%;font:13px/1.4 inherit;padding:15px 18px;cursor:pointer;justify-content:center}.email-contact-copy{border:1px solid #9ca99d;background:transparent;color:inherit}.email-contact-help,.email-contact-status{font-size:12px;line-height:1.7}.email-contact-dialog :focus-visible{outline:2px solid #aa9070;outline-offset:3px}@media(max-width:600px){.email-contact-dialog{padding:28px 22px}}
.footer-contact-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:20px;padding:16px 0}.footer-contact-actions .button{font-size:12px;padding:12px 20px}.contact-choice-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.footer-contact-actions details{margin:0}

.assessment-enquiry:has(.assessment-calendly){width:min(1240px,97vw);height:min(820px,94svh);max-height:94svh;overflow:hidden;grid-template-columns:310px minmax(0,1fr)}
.assessment-enquiry .scheduler-info{padding:40px 25px;overflow:auto;min-height:0}
.assessment-enquiry .scheduler-info h2{font-size:30px;line-height:1.2;margin:24px 0 18px}
.assessment-enquiry .scheduler-info .booking-buffer{font-size:11px;line-height:1.6;margin-top:18px}
.booking-secondary{border-top:1px solid #c9cebf;margin-top:26px;padding-top:16px;font-size:12px}
.booking-secondary .contact-choice-buttons{gap:8px}.booking-secondary .button{padding:9px 12px;font-size:11px;min-width:0}
.calendar-direct{display:inline-block;margin-top:20px;font-size:11px;text-decoration:underline;text-underline-offset:4px}
.assessment-enquiry:has(.assessment-calendly) .scheduler-main{padding:0;min-height:0;height:100%;overflow:hidden}
.assessment-enquiry .assessment-calendly{width:100%;height:100%;min-width:280px}
.assessment-enquiry .assessment-calendly iframe{height:100%;width:100%}
.assessment-enquiry .close-booking{background:var(--cream);border-radius:50%;width:32px;height:32px;line-height:1;right:8px;top:6px;z-index:5}
@media(max-width:760px){.assessment-enquiry:has(.assessment-calendly){width:100vw;max-width:100vw;height:100svh;max-height:100svh;margin:0;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.assessment-enquiry .scheduler-info{padding:14px 20px;overflow:visible}.assessment-enquiry .scheduler-info .eyebrow{display:none}.assessment-enquiry .scheduler-info h2{font-size:21px;margin:0 30px 8px 0}.assessment-enquiry .scheduler-info>p:not(.eyebrow){display:none}.booking-secondary{border:0;margin:0;padding:0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.booking-secondary>p{display:none}.booking-secondary .contact-choice-buttons{margin:0}.calendar-direct{margin:0;font-size:10px}}
