/* Owner-approved content expansion, preserving the established editorial direction. */
:root{--line:#c2d0d7;--on-dark:#d9e6ed;--error:#9b2828;--field:#fff;--gap:clamp(60px,7vw,110px)}
.header{gap:24px}.brand{width:125px}.header nav{gap:21px}.header nav a{font-size:16px;white-space:nowrap}.header-call{font-size:15px;padding:15px 18px}.program-audience{margin-top:22px}.program-grid .text-link{min-height:44px;padding-block:10px}.intake{padding-block:var(--gap);display:grid;grid-template-columns:1fr 1fr;gap:65px}.intake-intro>.lead{margin-top:30px}.intake-request>h3,.general-contact>h3{font-size:36px;margin-bottom:20px}.intake-request>p{font-size:19px;margin-bottom:25px}.intake-steps{padding-left:27px;margin:45px 0 0;counter-reset:list-item}.intake-steps li{padding:0 0 24px 14px}.intake-steps li::marker{color:var(--green);font-size:20px}.intake-steps h3{font-size:25px;margin-bottom:8px}.intake-steps p{font-size:18px;max-width:370px}.request-form{margin-top:20px}.form-notice{padding:18px 20px;background:var(--blue);font-size:17px;line-height:1.5;color:var(--ink);margin-bottom:25px!important}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{display:block;font-size:17px;line-height:1.5;margin-bottom:8px}.field label span{font-size:14px}.field input,.field select,.field textarea{font:inherit;font-size:18px;background:var(--field);color:var(--ink);border:1px solid #819aa7;border-radius:0;width:100%;min-height:48px;padding:11px 12px;caret-color:var(--green)}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid var(--green);outline-offset:3px}.field textarea{resize:vertical;min-height:120px}.field input[aria-invalid=true]{border:2px solid var(--error)}.field-help{font-size:14px!important;line-height:1.5;margin-top:8px!important}.wide{grid-column:1/-1}.request-form>.button{margin-top:24px}.delivery-note,.admission-notice,.privacy-form{font-size:15px!important;line-height:1.55;margin-top:18px!important}.form-error{color:var(--error);background:white;padding:12px;margin-top:20px!important;font-size:17px!important}.email-review{margin-top:25px;background:var(--blue);padding:24px;color:var(--ink)}.email-review h4{font-size:24px;font-weight:400;margin:0 0 16px}.email-preview{font:inherit;font-size:16px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 18px}.email-review .button{font-size:16px}.email-review p{font-size:15px!important;line-height:1.5;margin-top:12px!important}.copy-request{display:block;background:transparent;border:0;text-decoration:underline;text-underline-offset:5px;color:var(--ink);font-size:16px;padding:12px 0;cursor:pointer}.safety{background:var(--blue);color:var(--ink);padding:27px 30px;font-size:17px;line-height:1.6}.safety h3{font-size:26px;margin-bottom:12px}.safety p{margin:0!important;font-size:17px!important}.safety>a{display:inline-flex;align-items:center;min-height:44px;margin-top:8px}.service-area{padding-block:var(--gap);display:grid;grid-template-columns:1fr 1fr;gap:70px}.service-area>div>p{font-size:21px;margin-top:25px;max-width:450px}.communities{display:grid;grid-template-columns:1fr 1fr;gap:35px}.communities h3{font-size:28px}.communities ul{list-style:none;padding:0;margin:24px 0 0;font-size:22px;line-height:1.9}.resources{background:var(--blue);padding-block:var(--gap)}.resource-list{display:grid;grid-template-columns:1fr 1fr;gap:12%}.resource-list h3{font-size:31px;margin-bottom:22px}.resource-list p{font-size:20px;margin-bottom:22px}.resource-list a{font-size:18px;display:inline-block;padding-block:8px;min-height:44px}.resource-actions{display:flex;gap:30px;margin-top:12px}.careers{padding-block:var(--gap);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.careers p{font-size:21px;margin-top:28px;max-width:460px}.careers figure{overflow:hidden}.careers img{aspect-ratio:1.25;object-fit:cover}.small-note{font-size:15px!important;margin-top:22px!important}.contact-grid{grid-template-columns:1fr 1fr;gap:65px}.contact-email{display:block;overflow-wrap:anywhere;width:fit-content;margin-top:20px;min-height:44px;padding-block:8px}.contact-location{margin-top:40px}.contact-location h3{font-size:30px}.contact-location address{font-style:normal;font-size:23px;margin-top:20px}.contact-location p{font-size:21px;margin-top:22px}.contact-location>a{display:inline-block;min-height:44px;padding-block:10px;margin-top:15px}.contact .walkin{font-size:16px;color:var(--on-dark);max-width:350px}.contact .request-form>.button{background:white;color:var(--ink)}.contact .request-form>.button:hover{background:var(--pale)}.contact .field input:focus,.contact .field select:focus,.contact .field textarea:focus{outline-color:var(--pale)}.contact .form-fields{color:white}.contact .safety{background:#16475e;color:white}.contact a:hover{color:var(--pale)}.contact .email-review a.button:hover{color:var(--ink);background:var(--pale)}.contact .email-review p{color:var(--ink)}.contact .email-review .copy-request:focus-visible{outline-color:var(--green)}.footer-top div>a{overflow-wrap:anywhere}.footer-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:28px}.footer-links a{font-size:16px;min-height:44px;display:inline-flex;align-items:center}.footer-bottom{margin-top:28px}.back-top{min-height:44px;display:inline-flex;align-items:center}.header nav a{min-height:44px;display:inline-flex;align-items:center}.document-header{justify-content:space-between}.document{max-width:900px;padding-block:55px 90px}.document h1{font-size:clamp(42px,5vw,64px);margin-bottom:35px}.document .lead{margin-bottom:35px}.document h2{font-size:32px;margin:45px 0 20px}.document p{margin-top:18px;font-size:19px}.document li{font-size:19px;margin-bottom:20px}.document-footer{padding-block:35px;display:flex;gap:25px;flex-wrap:wrap}.document-footer>a{min-height:44px;display:inline-flex;align-items:center}.document-footer p{font-size:14px;width:100%}
@media(max-width:1200px){.header nav{gap:13px}.header nav a{font-size:15px}.header-call{display:none}}
@media(max-width:1000px){.header nav{gap:14px}.brand{width:110px}.intake,.service-area,.contact-grid{gap:40px}.intake{grid-template-columns:1fr 1.1fr}.form-fields{grid-template-columns:1fr}.field{grid-column:1/-1}.intake-steps{padding-left:22px}.intake-steps li{padding-left:8px}}
@media(max-width:900px){.header{flex-wrap:wrap;justify-content:space-between}.header nav{display:none;order:4;width:100%;flex-direction:column;gap:0;margin:0}.header nav.open{display:flex}.header nav a{padding-block:9px;font-size:21px}.menu{display:flex;align-items:center;gap:12px;border:0;background:var(--blue);color:var(--ink);padding:12px 16px;min-height:48px}.brand{width:110px}}
@media(max-width:700px){.brand{width:105px}.hero h1{font-size:clamp(40px,10.5vw,65px)}.intake,.service-area,.careers{display:block;padding-block:65px}.intake-intro>.lead{font-size:21px;margin-top:25px}.intake-request{margin-top:42px}.intake-request>h3,.general-contact>h3{font-size:32px}.intake .safety{margin-top:40px}.intake-steps{margin-top:30px}.intake-steps p{font-size:19px}.form-fields{grid-template-columns:1fr}.form-notice{font-size:17px}.email-review{padding:20px}.safety{padding:24px}.communities{margin-top:35px;gap:24px}.communities h3{font-size:25px}.communities ul{font-size:21px;margin-top:18px}.resource-list{grid-template-columns:1fr;gap:40px}.resource-list h3{font-size:30px}.resources{padding-block:65px}.careers figure{margin-top:35px}.careers p{font-size:21px}.contact-grid{display:block}.contact-email{font-size:18px}.general-contact{margin-top:55px}.contact .safety{margin-top:40px}.contact-location address{font-size:22px}.contact .walkin{font-size:17px}.footer-links{gap:8px 20px}.document-header .button{padding:13px;font-size:15px}.document-header{gap:15px}.document-header>a:not(.brand):not(.button){font-size:16px}.document h1{font-size:42px}.document h2{font-size:30px}.document p,.document li{font-size:19px}}
[hidden]{display:none!important}
.contact .button:hover{background:var(--pale);color:var(--ink)}
.leaders details,.faq details{border-bottom:0}.leaders details+details{margin-top:8px}.leaders details[open]{background:#e3edf2;padding-inline:20px}.faq details[open]{background:var(--blue);padding-inline:20px}.faq summary span{font-size:22px}.review-note{font-size:13px}
@media(min-width:701px) and (max-width:1000px){.approach{grid-template-columns:1fr 1fr;gap:40px}.approach-heading{grid-column:1;grid-row:1}.group-photo{grid-column:2;grid-row:1;margin-top:0}.values{grid-column:1/-1;grid-row:2;margin-top:0;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.values>div{margin-top:0}.questions{grid-template-columns:1fr;gap:30px}.questions h2{max-width:none}.staff{grid-template-columns:1fr 1.6fr}}
@media(min-width:701px) and (max-width:900px){.program-grid{grid-template-columns:1fr;gap:50px}.program-grid article{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.program-grid article>h3{grid-row:1/4}.program-grid article>p{grid-column:2}.program-grid article>a{grid-column:2}.program-grid h3{font-size:32px}.program-grid .program-audience{margin-top:18px}}
@media(min-width:701px) and (max-width:900px){.program-grid article{grid-template-columns:1.2fr 1fr}.program-grid h3{font-size:30px}}

/* Keep contact controls directly interactive across desktop and touch browsers. */
.request-form{position:relative;isolation:isolate}
.request-form input,.request-form textarea,.request-form select{position:relative;pointer-events:auto;touch-action:manipulation}
.request-form input,.request-form textarea{-webkit-user-select:text;user-select:text;-webkit-text-fill-color:var(--ink)}
.request-form input:focus,.request-form textarea:focus,.request-form select:focus{border-color:var(--green)}
