/* Shared matching dialog, messenger links and editable tutor badges. */
body.match-open{overflow:hidden}
.delta-socials{display:flex;align-items:center;gap:8px;flex-shrink:0}
.delta-social{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:9px;border:1px solid #dcd5e7;border-radius:50%;background:#f1edf6;color:#705d8c;text-decoration:none;flex-shrink:0}
.delta-social svg{width:21px;height:21px;fill:currentColor;stroke:none}
.delta-social:disabled{opacity:.65;cursor:default}
.delta-social[href]:hover{background:#e6dff0}
.header .header-inner{gap:22px}
.header .header-cta{margin-left:0;white-space:nowrap;font-size:14px;padding:12px 18px}
.header .delta-socials{margin-left:auto}
.header[data-cms-block]{height:98px}
.header .desktop-nav{gap:18px;font-size:14px}
.footer .delta-socials{margin-left:auto}
.footer-top .delta-social{background:#ffffff12;border-color:#ffffff40;color:#fff}
.footer-top [data-cms-link="footer.link154"]{margin-left:0;border:1px solid #c9b8e0;border-radius:12px;padding:13px 18px;color:#fff;min-height:48px;text-align:center}
.footer-top [data-cms-link="footer.link154"] svg{display:none}
.teacher-photo-wrap{position:relative;min-width:0}
.teacher-badge{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border:1px solid #fff8;border-radius:100px;background:#f4effb;color:#5d477c;font-size:13px;font-weight:700;line-height:1.35;max-width:calc(100% - 32px);overflow-wrap:anywhere;box-shadow:0 4px 16px #28203010}
.teacher-photo-wrap>.teacher-badge{position:absolute;left:16px;bottom:16px}
.profile-top .teacher-badge,#dialog-content> .teacher-badge{margin-top:12px;box-shadow:none}
.match-dialog{box-sizing:border-box;width:min(720px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);border:1px solid #e1daeb;border-radius:26px;background:#faf9fc;color:#35343e;padding:42px;overflow:auto;overscroll-behavior:contain;font-family:Manrope,Arial,sans-serif;box-shadow:0 30px 100px #28203036}
.match-dialog::backdrop{background:#27212c80;backdrop-filter:blur(6px)}
.match-dialog *{box-sizing:border-box}
.match-close{position:absolute;right:17px;top:15px;width:34px;height:34px;padding:0;border:0;background:#eee9f4;color:#705d8c;border-radius:50%;font:26px/1 Arial;cursor:pointer}
.match-dialog .match-kicker{display:flex;justify-content:space-between;gap:12px;padding-right:20px;color:#705d8c;font-size:12px;font-weight:700;margin:0 0 14px}
.match-progress{display:block;width:100%;height:4px;border:0;border-radius:10px;overflow:hidden;accent-color:#8c77ac;background:#e9e3f0;margin:0 0 27px}
.match-progress::-webkit-progress-bar{background:#e9e3f0}.match-progress::-webkit-progress-value{background:#8c77ac}.match-progress::-moz-progress-bar{background:#8c77ac}
.match-dialog h2{font-size:clamp(25px,3vw,34px);line-height:1.2;letter-spacing:-.035em;font-weight:700;margin:0 0 12px;padding:0}
.match-dialog h2:focus{outline:none}
.match-intro{color:#787380;font-size:15px;line-height:1.65;margin:0 0 27px}
.match-fieldset{border:0;margin:0 0 23px;padding:0;min-width:0}
.match-fieldset legend{font-size:14px;font-weight:700;padding:0;margin:0 0 11px}
.match-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.match-option{position:relative;display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #ded7e8;border-radius:12px;background:white;font-size:14px;line-height:1.45;cursor:pointer;margin:0;color:#504b58}
.match-option:has(input:checked){border-color:#8c77ac;background:#eee7f6;color:#5e487c}
.match-option:has(input:focus-visible){outline:3px solid #a390c2;outline-offset:2px}
.match-option input{width:16px;height:16px;margin:0;flex:0 0 16px;accent-color:#705d8c}
.match-label{display:block;margin:0 0 19px;font-size:14px;font-weight:700}
.match-label input,.match-label select,.match-label textarea{display:block;width:100%;font:400 15px/1.5 Manrope,Arial,sans-serif;padding:13px 14px;margin-top:9px;border:1px solid #ded7e8;border-radius:10px;background:#fff;color:#35343e;min-width:0}
.match-label textarea{resize:vertical;max-height:200px}
.match-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.match-optional{font-size:12px;font-weight:400;color:#787380}
.match-consent{display:flex;gap:10px;font-size:12px;line-height:1.6;font-weight:400;color:#787380;cursor:pointer}
.match-consent input{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;accent-color:#705d8c}
.match-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:25px;padding-top:22px;border-top:1px solid #e1daeb}
.match-forward{display:flex;align-items:center;justify-content:flex-end;gap:16px}
.match-skip{border:0;background:none;padding:12px 0;color:#705d8c;font:600 13px/1.5 Manrope,Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer;min-height:44px}
.match-skip:hover{color:#493960}
.match-next,.match-back{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:0;border-radius:12px;padding:14px 24px;min-height:50px;font:700 14px/1.4 Manrope,Arial,sans-serif;cursor:pointer}
.match-next{background:#35343e;color:white}.match-next:hover{background:#4b4557}.match-back{background:#eee9f4;color:#705d8c}
.match-hint{font-size:12px;line-height:1.6;color:#787380;font-weight:400;margin:0}
.match-form>.match-hint{margin-top:14px}
.match-error{color:#8c3255;font-size:14px;line-height:1.5;margin:14px 0 0}.match-error:empty{display:none}
.match-summary{padding:14px 17px;border:1px solid #e1daeb;border-radius:12px;margin-bottom:21px;font-size:13px;background:#f1edf6}
.match-summary summary{cursor:pointer;font-weight:700;color:#705d8c}
.match-summary dl{display:grid;gap:12px;margin:16px 0 0}.match-summary dl>div{display:grid;grid-template-columns:1fr 1.4fr;gap:12px}.match-summary dt{color:#787380}.match-summary dd{margin:0;overflow-wrap:anywhere}
.match-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.match-success-mark{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;font-size:28px;background:#e9e0f3;color:#705d8c;margin-bottom:22px}
.match-dialog button:focus-visible,.match-dialog select:focus-visible,.match-dialog input:focus-visible,.match-dialog textarea:focus-visible,.match-dialog summary:focus-visible,.delta-social:focus-visible{outline:3px solid #a390c2;outline-offset:3px}
.lead-card dd{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:1200px){.header .header-inner{gap:15px}.header .desktop-nav{gap:14px;font-size:13px}.header .header-cta{padding:12px;font-size:13px}.header .wordmark img{width:180px}.header.container{gap:16px}.header.container nav{font-size:13px}}
@media(max-width:1050px){.header .desktop-nav{display:none}.header .menu-toggle{display:flex}.header .delta-socials{margin-left:auto}.header.container nav{display:none}}
@media(max-width:650px){
 .header[data-cms-block]{height:auto}.header .header-inner{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding-block:12px}.header .wordmark img{width:172px}.header .delta-socials{margin-left:0}.header .header-cta{grid-column:1/-1;grid-row:2;min-height:42px;width:100%;font-size:13px;padding:10px}.header .menu-toggle{grid-column:3;grid-row:1}.delta-social{width:35px;height:35px;padding:7px}.delta-socials{gap:6px}
 .header.container{display:flex;flex-wrap:wrap;height:auto;padding-block:16px}.header.container>a>img{width:166px}.header.container .delta-socials{margin-left:auto}.header.container>.button{width:100%}
 .footer .delta-socials{margin-left:0}.footer-top{gap:18px}.footer-top [data-cms-link="footer.link154"]{width:100%;justify-content:center}.footer.container>.button[data-match]{width:100%}
 .match-dialog{padding:34px 22px 25px;width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:20px}.match-dialog .match-kicker{font-size:11px;padding-right:18px}.match-dialog h2{font-size:26px}.match-intro{font-size:14px;margin-bottom:22px}.match-options{gap:8px}.match-option{font-size:13px;padding:12px 10px}.match-contact-grid{grid-template-columns:1fr;gap:0}.match-actions{gap:10px}.match-next,.match-back{padding:13px 17px;font-size:13px}.match-fieldset legend{font-size:13px}.match-summary dl>div{grid-template-columns:1fr;gap:3px}.teacher-badge{font-size:12px}
}
@media(max-width:360px){.header .wordmark img{width:145px}.header .header-inner{gap:7px}.match-options{grid-template-columns:1fr}}
@media(max-width:650px){.match-actions{flex-wrap:wrap}.match-forward{flex-wrap:wrap;gap:6px 14px;flex:1}.match-forward .match-skip{order:2;flex-basis:100%;text-align:right}.match-forward .match-next{min-width:0}}
