@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#163B56;--teal:#087F8C;--gold:#F3C65B;--mist:#EAF5F7;--white:#FFFFFF;--text:#405568}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--navy);background:white;font:17px/1.7 'DM Sans',sans-serif}a{color:inherit}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b57800;outline-offset:5px}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:10px}.announcement{background:var(--navy);color:white;text-align:center;font-size:14px;padding:8px 20px;letter-spacing:.02em}.wrap,.header{width:min(1200px,calc(100% - 96px));margin:auto}.header{display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:30px}.wordmark{text-decoration:none;line-height:1.2}.wordmark strong{font:800 26px/1.15 'Manrope',sans-serif;letter-spacing:-1px}.wordmark span{display:block;font:600 10px/2 'DM Sans',sans-serif;letter-spacing:2px}.wordmark img{display:block;width:270px;height:85px;object-fit:contain}.header nav{display:flex;align-items:center;gap:32px;font-size:15px;font-weight:600}.header nav>a:not(.button){text-decoration:none}.header nav>a:not(.button):hover{color:var(--teal)}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;background:var(--teal);color:white;border-radius:8px;padding:15px 24px;text-decoration:none;font-weight:600;font-size:16px;transition:background .2s,transform .2s}.button:hover{background:#086775;transform:translateY(-2px)}.button.small{font-size:14px;padding:11px 18px;gap:22px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;padding-top:36px;padding-bottom:72px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;line-height:1.5;margin:0 0 20px;color:var(--teal)}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.13;margin:0;font-weight:700;letter-spacing:-1.7px}h1{font-size:clamp(42px,4.7vw,66px)}h1 em{font-style:normal;color:var(--teal)}.intro{max-width:460px;font-size:19px;line-height:1.7;color:var(--text);margin:24px 0 30px}.hero-note{font-size:13px;color:var(--text);margin:18px 0 0}.hero-art{position:relative;background:var(--mist);border-radius:110px 20px 110px 20px;min-height:450px;overflow:hidden;display:flex;align-items:center}.hero-art img{width:100%;height:450px;object-fit:cover}.image-caption{position:absolute;bottom:23px;left:23px;background:white;padding:17px 23px;border-radius:10px;font-size:17px;line-height:1.4;box-shadow:0 6px 26px #163b5610}.image-caption strong{color:var(--teal)}.principles{background:var(--mist);border-top:1px solid #d6e9ed;border-bottom:1px solid #d6e9ed}.principles .wrap{display:flex;justify-content:space-between;gap:20px;padding:24px 0;font-size:16px;font-weight:600}.principles .principle{display:flex;align-items:center;gap:14px}.principle-icon{display:block;width:28px;height:28px;flex:0 0 28px;color:var(--teal)}.section{padding-top:90px;padding-bottom:90px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:70px;margin-bottom:42px}h2{font-size:clamp(32px,3.2vw,44px);letter-spacing:-1.4px}.section-heading>p{max-width:425px;margin:0;color:var(--text)}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.support-grid article{border:1px solid #d8e5ea;border-radius:14px;padding:30px}.number{display:inline-flex;font-size:15px;font-weight:700;color:var(--teal);border-bottom:3px solid var(--gold);margin-bottom:30px;padding-bottom:4px}h3{font-size:22px;letter-spacing:-.6px}.support-grid p{font-size:16px;color:var(--text);margin-bottom:0}.approach{background:var(--navy);color:white;padding:78px 0}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px}.approach .eyebrow{color:var(--gold)}.approach-lead{font-size:21px;color:white!important;margin-top:28px}.approach p{color:#d3e3ee}.approach-list article{display:flex;gap:23px;padding:22px 0;border-bottom:1px solid #46637a}.approach-list article:first-child{padding-top:0}.approach-list article:last-child{border-bottom:0;padding-bottom:0}.approach-list article>span{color:var(--gold);font-size:14px;padding-top:3px}.approach-list h3{font-size:21px}.approach-list p{font-size:16px;margin:10px 0 0}.faq-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:80px}.faq-layout>div>p:not(.eyebrow){color:var(--text)}details{border-bottom:1px solid #d8e5ea}summary{cursor:pointer;list-style:none;font-weight:600;padding:23px 40px 23px 0;position:relative;line-height:1.5}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:4px;font-size:25px;line-height:1}details[open] summary:after{content:'−'}details p{color:var(--text);font-size:16px;margin:0 0 24px}.contact{padding:46px 50px;background:var(--mist);border-radius:18px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:45px;margin-bottom:65px}.contact p{color:var(--text)}.contact-card{background:white;border-radius:12px;padding:28px;border-top:4px solid var(--gold)}.contact-card h3{font-size:21px}.contact-note{font-size:14px;border-top:1px solid #d8e5ea;padding-top:15px;margin-bottom:0}footer{border-top:1px solid #d8e5ea;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:28px;padding-bottom:28px;font-size:13px}.footer-brand{font-size:18px;font-weight:700;text-decoration:none}.footer-brand span{display:block;font-size:12px;font-weight:400}.draft-note{color:#52697a;font-size:12px}
@media(min-width:1500px){.hero{padding-top:55px;padding-bottom:90px}.hero-art,.hero-art img{min-height:500px}}
@media(max-width:1000px){.wrap,.header{width:calc(100% - 48px)}.header nav{gap:18px}.wordmark strong{font-size:22px}.wordmark img{width:225px}.hero{gap:22px}.hero-art,.hero-art img{min-height:380px;height:380px}.principles .wrap{font-size:14px}.approach-grid{gap:45px}.support-grid article{padding:23px}.faq-layout{gap:40px}.contact{padding:35px}}
@media(max-width:760px){.wrap,.header{width:calc(100% - 40px)}.header{min-height:88px;position:relative}.wordmark img{height:72px;width:225px}.menu-toggle{display:flex;gap:12px;align-items:center;background:white;border:1px solid #c7d9e2;border-radius:5px;padding:7px 11px;font-size:14px}.header nav{display:none;position:absolute;top:88px;left:-20px;right:-20px;z-index:10;background:white;padding:22px;box-shadow:0 12px 20px #163b5620;align-items:stretch}.header nav.open{display:flex;flex-direction:column}.header nav a{padding:10px}.hero{grid-template-columns:1fr;padding-top:25px;padding-bottom:40px;gap:28px}h1{font-size:46px}.intro{font-size:18px}.hero-art{border-radius:65px 15px 65px 15px}.hero-art,.hero-art img{height:auto;min-height:300px;max-height:440px}.hero-art img{aspect-ratio:1.4;object-fit:cover}.image-caption{font-size:16px}.principles .wrap{flex-direction:column;gap:7px;padding:19px 0;font-size:15px}.section{padding-top:60px;padding-bottom:60px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:22px}.support-grid{grid-template-columns:1fr;gap:14px}.support-grid article{padding:26px}.number{margin-bottom:18px}.approach{padding:55px 0}.approach-grid,.faq-layout{grid-template-columns:1fr;gap:28px}.contact{grid-template-columns:1fr;padding:30px 25px;gap:20px;margin-bottom:40px}.contact h2{font-size:34px}footer{align-items:start;flex-direction:column;gap:8px}footer p{margin:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.login-card fieldset{padding:0;border:0;margin:25px 0 0}.login-card label{display:block;font-size:15px;font-weight:600;margin:17px 0 7px}.login-card input{display:block;width:100%;padding:13px 14px;border:1px solid #b7cbd6;border-radius:7px;font:16px 'DM Sans',sans-serif;background:#fafcfd;color:var(--navy)}.login-card fieldset:disabled input{opacity:1;cursor:not-allowed}.login-card fieldset:disabled .button{margin-top:23px;width:100%;border:0;background:#587982;cursor:not-allowed;transform:none}.login-card .portal-status{font-size:14px;padding:17px}
.header nav{gap:21px;font-size:14px}.header nav a[aria-current=page]:not(.button){color:var(--teal);text-decoration:underline;text-underline-offset:8px}.page-intro{padding:60px 0 45px}.page-intro h1{font-size:clamp(38px,4.2vw,58px)}.page-intro .intro{max-width:650px}.page-intro+.section{padding-top:25px}.page-panel{padding:36px;border:1px solid #d8e5ea;border-radius:15px;margin-bottom:70px}.page-panel h2{font-size:30px}.page-panel p,.reading-width{max-width:760px;color:var(--text)}.text-link{font-weight:600;text-underline-offset:5px}.light{color:white}.parent-entry{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:45px;padding-bottom:75px;align-items:center}.parent-welcome h1{font-size:clamp(40px,4.4vw,62px)}.parent-welcome img{width:100%;height:220px;object-fit:cover;border-radius:50px 10px 50px 10px;margin-top:8px}.login-card{border:1px solid #d8e5ea;border-radius:18px;padding:42px;box-shadow:0 15px 50px #163b5609}.login-card h2{font-size:34px}.login-card>p{color:var(--text)}.portal-status{background:var(--mist);padding:22px;border-radius:10px;font-size:16px;margin:30px 0 20px}.portal-status p{margin-bottom:0;color:var(--text)}.login-help{font-size:15px}.preview-link{border-top:1px solid #d8e5ea;margin-top:30px;padding-top:22px}.preview-link>span{display:block;font-size:12px;letter-spacing:1px;text-transform:uppercase}.preview-link>a{font-size:15px;color:var(--teal);font-weight:600}.demo-banner{background:#fff2c9;text-align:center;padding:12px 20px;font-size:14px}.portal-shell{display:grid;grid-template-columns:210px 1fr;gap:45px;padding-top:40px;padding-bottom:85px;min-height:650px}.portal-sidebar{border-right:1px solid #d8e5ea;padding-right:25px}.portal-sidebar>strong{font-size:21px}.portal-sidebar nav{display:flex;flex-direction:column;gap:12px;margin-top:25px;font-size:15px}.portal-sidebar nav a{padding:11px 13px;border-radius:8px;text-decoration:none}.portal-sidebar nav a[aria-current=page]{background:var(--mist);color:var(--teal);font-weight:600}.portal-sidebar>p{font-size:14px;color:var(--text);margin-top:50px}.portal-content h1{font-size:40px}.portal-content>p{color:var(--text)}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.portal-tile{border:1px solid #d8e5ea;border-radius:12px;padding:26px}.portal-tile h2,.portal-message h2{font-size:23px;letter-spacing:-.6px}.portal-tile p,.portal-message p{font-size:16px;color:var(--text)}.portal-message{margin-top:25px;background:var(--mist);padding:30px;border-radius:12px}.portal-message p{margin-bottom:0}@media(max-width:1100px){.header nav{gap:13px}.wordmark img{width:215px}.parent-entry{gap:35px}.login-card{padding:30px}}@media(max-width:850px){.header nav{gap:10px;font-size:13px}.wordmark img{width:180px}.parent-entry{gap:28px}.login-card{padding:24px}.portal-shell{gap:25px;grid-template-columns:170px 1fr}.portal-grid{grid-template-columns:1fr}}@media(max-width:760px){.wordmark img{width:225px}.header nav{font-size:16px;gap:14px}.page-intro{padding:35px 0 25px}.parent-entry{grid-template-columns:1fr;padding-top:25px;padding-bottom:45px}.parent-welcome h1{font-size:42px}.parent-welcome h1 br:nth-of-type(2){display:none}.parent-welcome img{height:180px}.portal-shell{grid-template-columns:1fr;gap:22px}.portal-sidebar{border:0;padding:0}.portal-sidebar nav{flex-direction:row;flex-wrap:wrap;margin-top:12px}.portal-sidebar>p{display:none}.portal-content h1{font-size:34px}.login-card{padding:27px}.page-panel{padding:26px;margin-bottom:40px}}
.site-footer{display:block}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-social{border-top:1px solid #d8e5ea;margin-top:25px;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:24px}.social-heading{font-size:17px;font-weight:700;margin:0}.social-pending{font-size:13px;color:var(--text);margin:3px 0 0}.social-list{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.social-item{display:flex;align-items:center;gap:9px;padding:10px 15px;background:var(--mist);border:1px solid #cfe3e8;border-radius:8px;color:var(--navy);font-size:14px;font-weight:600}.social-item svg{color:var(--teal);flex:0 0 22px}@media(max-width:760px){.footer-main{flex-direction:column;align-items:flex-start;gap:8px}.footer-social{flex-direction:column;align-items:flex-start;gap:17px}.social-list{gap:8px}.social-item{padding:9px 11px}}
.header nav a{white-space:nowrap}@media(min-width:761px) and (max-width:960px){.header{position:relative}.menu-toggle{display:flex;gap:12px;align-items:center;background:white;border:1px solid #c7d9e2;border-radius:5px;padding:7px 11px;font-size:14px}.header nav{display:none;position:absolute;top:100%;left:-24px;right:-24px;z-index:10;background:white;padding:22px;box-shadow:0 12px 20px #163b5620;align-items:stretch;font-size:16px;gap:14px}.header nav.open{display:flex;flex-direction:column}.header nav a{padding:10px}.wordmark img{width:225px}}
.placeholder{background:#fde68a;color:var(--navy);padding:0 4px;border-radius:4px;font-style:normal}
.legal-entity{font-size:12px;margin:0}
.hero{padding-top:20px;padding-bottom:56px;gap:44px}.hero h1{font-size:clamp(36px,3.6vw,52px);letter-spacing:-1.4px}.hero .intro{margin:20px 0 12px;font-size:18px}.intro-more{color:var(--text);max-width:480px;margin:0 0 12px}.service-areas{font-size:15px;font-weight:600;color:var(--teal);max-width:480px;margin:0 0 26px}.hero-art,.hero-art img{min-height:400px;height:400px}
@media(max-width:760px){.hero h1{font-size:36px}.hero-art,.hero-art img{height:auto;min-height:260px}}
.footer-main{flex-wrap:wrap;row-gap:6px}.footer-main>p{margin:0}
/* Tighter vertical rhythm between sections (client feedback, November 4, 2026) */
.section{padding-top:56px;padding-bottom:56px}.approach{padding:60px 0}.hero{padding-bottom:48px}.page-intro{padding:44px 0 30px}
@media(max-width:760px){.section{padding-top:40px;padding-bottom:40px}.approach{padding:44px 0}.page-intro{padding:28px 0 18px}}
/* Larger logo (client request, November 4, 2026) */
.wordmark img{width:320px;height:120px}
@media(max-width:1250px){.wordmark img{width:270px;height:100px}}
@media(max-width:760px){.wordmark img{width:240px;height:88px}}
