:root{--blue-950:#08275c;--blue-800:#0754c7;--blue-700:#0b67e8;--blue-100:#eaf3ff;--blue-50:#f5f9ff;--ink:#12213a;--muted:#5a6880;--line:#dbe5f2;--white:#fff;--surface:#f7f9fc;--accent:#ffcd4b;--radius:1.25rem;--shadow:0 18px 45px rgb(24 48 87 /.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6}img{display:block;max-width:100%;height:auto}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.55rem,6vw,5.3rem)}h2{font-size:clamp(2rem,4vw,3.35rem)}h3{font-size:1.28rem}.container{width:min(1120px,calc(100% - 2.5rem));margin-inline:auto}.narrow{width:min(760px,100%)}.skip-link{position:absolute;left:-10000px;z-index:100;padding:.7rem 1rem;background:white;color:var(--blue-950)}.skip-link:focus{left:1rem;top:1rem}.site-header{position:sticky;top:0;z-index:20;background:rgb(255 255 255 /.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:1.5rem}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;font-size:.78rem;line-height:1.08;text-transform:uppercase;letter-spacing:.09em;color:var(--blue-950)}.brand strong{font-size:1.05rem;letter-spacing:.03em}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--blue-800);color:white;font-weight:900;font-size:.8rem}.main-nav{display:flex;align-items:center;gap:1.35rem}.main-nav>a{font-size:.9rem;font-weight:650;text-decoration:none}.main-nav>a:not(.campus-link):hover,.main-nav>a[aria-current=page]{color:var(--blue-700)}.campus-link,.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid var(--blue-800);border-radius:.55rem;background:var(--blue-800);padding:.72rem 1rem;color:white!important;font-weight:750;text-decoration:none;transition:transform .2s,background .2s}.campus-link{font-size:.83rem}.button:hover{background:var(--blue-950);transform:translateY(-2px)}.button-light{background:white;color:var(--blue-950)!important;border-color:white}.button-outline{background:transparent;color:var(--blue-800)!important}.menu-toggle{display:none;background:none;border:0}.hero{min-height:680px;display:grid;align-items:center;color:white;background:linear-gradient(100deg,rgb(4 27 72 /.95),rgb(6 63 163 /.72)),url('/assets/images/2026/05/2147768647.jpg') center/cover}.hero-content{max-width:840px;padding-block:7rem}.eyebrow{margin-bottom:1rem;color:var(--blue-700);font-weight:800;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase}.hero .eyebrow,.light{color:#d7e7ff}.hero h1{max-width:780px;margin-bottom:1.35rem}.hero-copy{max-width:650px;font-size:clamp(1.05rem,2vw,1.28rem);color:#e4edfc}.hero-actions{display:flex;align-items:center;gap:1.5rem;margin-top:2.3rem}.text-link{font-weight:750;text-underline-offset:.25em}.section{padding-block:6.5rem}.section-tint{background:var(--surface)}.section-heading{max-width:700px;margin-bottom:3.2rem}.section-heading>p:last-child,.page-hero p,.statement p,.centered>p{color:var(--muted);font-size:1.1rem}.card-grid{display:grid;gap:1.5rem}.card-grid.three{grid-template-columns:repeat(3,1fr)}.info-card,.plain-card{padding:2rem;background:white;border:1px solid var(--line);border-radius:var(--radius)}.info-card{box-shadow:var(--shadow)}.info-card img{width:68px;height:68px;object-fit:contain;margin-bottom:1.8rem}.info-card p,.plain-card p{color:var(--muted)}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.program-grid a{display:grid;gap:.65rem;padding:1.5rem;text-decoration:none;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:white;transition:background .2s}.program-grid a:hover{background:var(--blue-100)}.program-grid span,.service-number{color:var(--blue-700);font-size:.8rem;font-weight:850}.program-grid strong{font-size:1.18rem}.program-grid small{color:var(--muted)}.split,.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:5rem;align-items:start}.requirements,.statement{padding:2rem;border-radius:var(--radius);background:var(--blue-950);color:white}.requirements h3{margin-bottom:1.25rem}.requirements ul{padding-left:1.1rem;margin:0}.requirements li+li{margin-top:.8rem}.faq{padding-block:6rem}.faq details{border-top:1px solid var(--line);padding:1.2rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:750}.faq details p{max-width:670px;color:var(--muted);padding-top:.7rem;margin-bottom:0}.page-hero{padding:7rem 0 5rem;background:linear-gradient(130deg,var(--blue-950),var(--blue-800));color:white}.page-hero .eyebrow{color:#b9d5ff}.page-hero h1{max-width:800px}.page-hero p{color:#dce9ff}.plain-card{min-height:180px}.service-list{display:grid;gap:5rem}.service-row{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.service-row.reverse img{order:2}.service-row img{width:100%;height:350px;object-fit:cover;border-radius:var(--radius)}.service-row p:not(.service-number),.service-cards p{color:var(--muted)}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-cards article{padding:1.6rem;background:white}.service-cards h3{color:var(--blue-800)}.centered{text-align:center;max-width:700px}.centered .button{margin-top:1rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.gallery-grid figure{margin:0;overflow:hidden;border-radius:var(--radius);background:var(--blue-950);color:white}.gallery-grid .gallery-feature{grid-column:span 2;grid-row:span 2}.gallery-grid img{width:100%;height:270px;object-fit:cover;transition:transform .4s}.gallery-grid .gallery-feature img{height:570px}.gallery-grid figure:hover img{transform:scale(1.035)}.gallery-grid figcaption{padding:.75rem 1rem;font-size:.85rem}.contact-list{padding-left:1.2rem}.contact-list li{margin-bottom:1rem}.contact-form{padding:2rem;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.form-row{display:grid;gap:.35rem;margin-bottom:1rem}.form-row label{font-weight:700;font-size:.9rem}.form-row input,.form-row select,.form-row textarea{width:100%;padding:.75rem;border:1px solid #aebdce;border-radius:.4rem;font:inherit}.form-note{margin-top:1rem;color:var(--muted);font-size:.8rem}.site-footer{padding-top:4rem;background:var(--blue-950);color:#dce9ff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer-brand,.footer-title{color:white;font-weight:800}.footer-brand{font-size:1.3rem}.site-footer a{display:block;margin-bottom:.6rem;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-bottom{margin-top:3rem;padding:1.2rem 0;border-top:1px solid rgb(255 255 255 /.15);color:#b4c7e8}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}
@media(max-width:800px){.nav-wrap{min-height:66px}.menu-toggle{display:grid;gap:4px}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;background:var(--blue-950)}.main-nav{display:none;position:absolute;top:66px;left:0;right:0;padding:1.2rem;background:white;border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch;flex-direction:column;gap:.9rem}.main-nav.is-open{display:flex}.campus-link{width:max-content}.hero{min-height:560px}.hero-content{padding-block:5rem}.section{padding-block:4.5rem}.card-grid.three,.split,.contact-grid,.service-row,.footer-grid{grid-template-columns:1fr}.program-grid{grid-template-columns:1fr 1fr}.service-row,.service-row.reverse{gap:1.6rem}.service-row.reverse img{order:0}.service-row img{height:260px}.service-cards{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .gallery-feature{grid-column:span 2}.gallery-grid .gallery-feature img{height:380px}.footer-grid{gap:1rem}}
@media(max-width:480px){.container{width:min(100% - 2rem,1120px)}.hero-actions{align-items:flex-start;flex-direction:column;gap:1rem}.program-grid,.service-cards,.gallery-grid{grid-template-columns:1fr}.program-grid a{border-right:0}.gallery-grid .gallery-feature{grid-column:auto;grid-row:auto}.gallery-grid .gallery-feature img,.gallery-grid img{height:260px}.contact-form,.info-card,.plain-card{padding:1.5rem}}
