.consult-flow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--line);border-radius:24px;background:#fffdf9;overflow:hidden;text-align:left}.consult-flow-calendar,.consult-flow-form{padding:clamp(20px,3vw,38px);min-width:0}.consult-flow-calendar{border-left:1px solid var(--line);background:#faf8f2}.consult-flow-progress{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--ink-soft);margin-bottom:24px}.consult-flow-progress>[aria-current]{font-weight:600;color:var(--accent)}.site-shell .consult-flow h3{font:400 clamp(28px,3vw,38px)/1.15 var(--serif);letter-spacing:-.025em;margin:12px 0 14px;color:var(--ink)}.consult-flow h3:focus{outline:none}.consult-flow-calendar>p,.consult-flow-intro{font-size:15px;line-height:1.6;color:var(--ink-soft);margin:0 0 20px}.consult-flow form fieldset{border:0;padding:0;margin:0;display:grid;gap:20px;min-width:0}.consult-flow details,.consult-flow label{display:grid;gap:10px;font:500 14px/1.5 var(--sans)}.consult-flow input,.consult-flow select,.consult-flow textarea{width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:8px;padding:12px 14px;background:white;color:var(--ink);font:400 16px/1.5 var(--sans)}.consult-flow button:focus-visible,.consult-flow input:focus-visible,.consult-flow select:focus-visible,.consult-flow summary:focus-visible,.consult-flow textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.consult-flow textarea{min-height:100px;resize:vertical}.consult-flow-phone{display:grid;grid-template-columns:108px minmax(0,1fr);gap:8px;margin-top:10px}.consult-flow-submit{width:100%;justify-content:center;gap:20px;min-height:52px}.consult-flow .consult-flow-fine,.consult-flow .consult-flow-note{font-size:12px;font-weight:400;line-height:1.6;color:var(--ink-soft);margin:0 0 16px}.consult-flow .consult-flow-fine{margin:0}.consult-flow a{text-underline-offset:3px;color:var(--accent)}.consult-flow .consult-flow-check{display:flex;align-items:flex-start;font-weight:400;gap:10px}.consult-flow-check input{width:20px;min-width:20px;height:20px;min-height:20px;accent-color:var(--accent);margin-top:2px}.consult-flow-contact{font-size:12px;overflow-wrap:anywhere;color:var(--ink-soft);margin:0}.consult-flow-contact button{border:0;padding:8px 0;display:block;text-decoration:underline;background:transparent;color:var(--accent);font:inherit;min-height:44px}.consult-flow details summary{cursor:pointer;min-height:44px;align-content:center}.consult-flow details[open]>label{margin-top:16px}.consult-flow-error{color:var(--field-error,#a6331f);font-size:14px;line-height:1.5}.consult-flow-locked{display:grid;place-content:center;min-height:260px;text-align:center;border-top:1px solid var(--line);margin-top:28px;padding:24px;color:var(--ink-soft);font-size:14px}.consult-flow-locked>span{font-size:52px;color:var(--accent);opacity:.4}.consult-flow-locked p{max-width:260px;margin:8px auto;line-height:1.6}.consult-flow-locked p:last-child{font-size:12px}.consult-flow-summary{display:grid;gap:8px;font-size:14px;line-height:1.5}.consult-flow-summary dt{color:var(--accent);font-weight:600}.consult-flow-summary dd{margin:0 0 10px}.site-shell .consult-compact:has(.consult-flow) .consult-experience-grid{max-width:1100px}.consult-flow-calendar .consultation-calendar{border:0;box-shadow:none;padding:0;margin:24px 0 0;background:transparent}.consult-flow-calendar .consultation-calendar>.free{display:none}@media(max-width:760px){.consult-flow{grid-template-columns:1fr}.consult-flow-calendar{border-left:0;border-top:1px solid var(--line)}.consult-flow-locked{min-height:80px;padding:8px}.consult-flow-locked>span{display:none}.consult-flow-progress{font-size:11px;gap:6px}.consult-flow-calendar,.consult-flow-form{padding:22px 18px}}.consult-flow h3{scroll-margin-top:120px}.site-shell .consult-compact:has(.consult-flow){scroll-margin-top:100px}.consult-flow select{appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2320402f' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer;text-overflow:ellipsis}.consult-flow select:required:invalid{color:var(--muted)}.consult-flow input,.consult-flow select,.consult-flow textarea{border-color:#d9d0c1;border-radius:12px;box-shadow:0 1px 2px #20402f04;transition:border-color .12s,box-shadow .12s}.consult-flow input:focus-visible,.consult-flow select:focus-visible,.consult-flow textarea:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 5px #20402f08}.consult-flow form .consult-flow-role{display:block}.consult-flow-role legend{font:500 14px/1.5 var(--sans);padding:0;margin-bottom:10px}.consult-flow-role-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.consult-flow-role-options label{display:flex;align-items:center;gap:10px;position:relative;padding:13px 12px;min-height:56px;border:1px solid #d9d0c1;border-radius:12px;background:white;cursor:pointer;font-size:14px;line-height:1.4;font-weight:400;transition:background .12s,border-color .12s}.consult-flow-role-options input{flex:none;width:18px;min-width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:var(--accent);box-shadow:none}.consult-flow-role-options label:has(:checked){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.consult-flow-role-options label:has(:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.consult-flow-role-options input:focus-visible{outline:none;box-shadow:none}.consult-flow-phone{grid-template-columns:116px minmax(0,1fr)}.consult-flow-progress>span{padding-bottom:8px;border-bottom:2px solid var(--line);flex:1 1;white-space:nowrap}.consult-flow-progress>[aria-current]{border-color:var(--accent)}.consult-flow-submit:disabled{cursor:wait;opacity:.65}@media(hover:hover){.consult-flow input:hover,.consult-flow select:hover,.consult-flow textarea:hover{border-color:#8b9c8e}.consult-flow-role-options label:hover{border-color:var(--accent);background:#f4f7f1}}@media(max-width:380px){.consult-flow-role-options{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.consult-flow input,.consult-flow select,.consult-flow textarea,.consult-flow-role-options label{transition:none}}@media(forced-colors:active){.consult-flow select{appearance:auto;background-image:none}.consult-flow-role-options label:has(:checked){outline:2px solid Highlight}}.consult-calendar-preview{position:relative;margin-top:28px;border:1px solid var(--line);border-radius:16px;overflow:hidden;isolation:isolate}.consult-calendar-ghost{padding:24px 20px;filter:blur(4px);opacity:.55;pointer-events:none;-webkit-user-select:none;user-select:none;background:#fffdf9}.consult-calendar-ghost-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;font:500 15px var(--sans);color:var(--accent)}.consult-calendar-ghost-heading>span{font-size:24px}.consult-calendar-days,.consult-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;text-align:center;font:400 13px var(--sans)}.consult-calendar-week{margin-bottom:12px;color:var(--muted)}.consult-calendar-days>span{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;color:var(--ink-soft)}.consult-calendar-days>span:nth-child(3n){background:var(--accent-soft);color:var(--accent)}.consult-calendar-days>.consult-calendar-day-highlight{background:var(--accent);color:white}.consult-calendar-ghost-times{display:flex;gap:8px;margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.consult-calendar-ghost-times>span{height:32px;border:1px solid var(--accent);border-radius:8px;flex:1 1}.consult-calendar-preview-cover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#faf8f25c;color:var(--accent);padding:24px;text-align:center}.consult-calendar-preview-cover>p{max-width:240px;margin:0;padding:12px 16px;border:1px solid #e2d9c6a6;border-radius:12px;background:#fffdf9ed;font-size:14px;line-height:1.5;box-shadow:0 4px 20px #20402f08}@media(max-width:760px){.consult-calendar-preview{max-width:420px;margin:20px auto 0}.consult-calendar-ghost{padding:18px}.consult-calendar-days>span{aspect-ratio:auto;min-height:30px}}.consult-flow[data-signup-state=booking] .calendar-embed,.consult-flow[data-signup-state=booking] .consult-flow-calendar .consultation-calendar{margin-top:0}.consult-flow[data-signup-state=booking]{grid-template-columns:minmax(0,1fr);max-width:900px;margin-inline:auto}.consult-flow[data-signup-state=booking] .consult-flow-calendar{border:0;background:#fffdf9;scroll-margin-top:110px;outline:none}.consult-flow-optional{font-weight:400;font-size:12px;color:var(--muted)}.consult-flow #consult-sat-hint{margin:8px 0 0}.consult-flow .consult-calendar-reminder{margin:0 0 20px;color:var(--accent);font:500 16px/1.5 var(--sans)}.consult-flow form .consult-family-choices{display:block}.consult-family-choices legend{font:500 14px/1.5 var(--sans);padding:0;margin-bottom:12px}.consult-flow .consult-grade-options{grid-template-columns:1fr 1fr}@media(max-width:380px){.consult-flow .consult-grade-options{grid-template-columns:1fr}}.consult-flow .consult-flow-invitation{font:500 14px/1.5 var(--sans);color:var(--accent);margin:0 0 18px}.consult-flow-invitation strong{font-weight:700}