:root{--ink:#121212;--muted:#626262;--line:#dcdcdc;--paper:#fff;--soft:#f3f3f1;--wrap:1240px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #808080;outline-offset:5px}p{font-size:1rem;line-height:1.7;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600}h1{font-size:clamp(3rem,5.1vw,4.6rem);line-height:1.08;letter-spacing:-.065em;margin-bottom:25px}h1 span{color:#777}h2{font-size:clamp(2.3rem,3.7vw,3.35rem);line-height:1.13;letter-spacing:-.05em;margin-bottom:24px}h3{font-size:1.35rem;line-height:1.3;letter-spacing:-.035em}::selection{background:#ccc;color:#111}.wrap{width:min(var(--wrap),calc(100% - 96px));margin-inline:auto}.header{width:min(var(--wrap),calc(100% - 96px));margin:auto;height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:1.6rem;line-height:1;font-weight:800;letter-spacing:-.04em;flex-shrink:0}.brand-mark{display:flex;width:43px;height:45px;align-items:center;justify-content:center;background:#111;color:#fff;font-size:2.6rem;letter-spacing:-.12em;padding-right:5px;padding-bottom:6px}.brand-sub{font-size:.63rem;letter-spacing:.15em;display:block;margin-top:6px}.header nav{display:flex;align-items:center;gap:35px;font-size:.9rem}.header nav>a:not(.button):hover{color:#777}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:16px 25px;border:1px solid transparent;font-size:.9rem;font-weight:600;border-radius:3px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.dark{background:#111;color:white}.dark:hover{background:#333}.light{background:#fff;color:#111}.light:hover{background:#ddd}.button.small{min-height:42px;padding:12px 23px}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:35px;padding-block:87px 82px;align-items:center}.eyebrow{font-size:.73rem;letter-spacing:.15em;line-height:1.5;font-weight:600;margin-bottom:25px;color:inherit}.lead{font-size:1.12rem;line-height:1.7}.hero .lead{max-width:465px}.actions{display:flex;gap:29px;align-items:center;margin-top:32px}.text-link{font-size:.9rem;font-weight:600;border-bottom:1px solid #999;padding-bottom:5px;display:inline-block}.text-link:hover{border-color:#111}.hero-note{margin-top:54px;font-size:.78rem;color:#666;display:flex;gap:12px;align-items:center}.tiny-cross{font-size:1.3rem}.hero-visual{position:relative;min-height:440px;background:repeating-linear-gradient(0deg,transparent,transparent 39px,#e9e9e9 39px,#e9e9e9 40px),repeating-linear-gradient(90deg,#f6f6f4,#f6f6f4 39px,#e9e9e9 39px,#e9e9e9 40px);display:flex;align-items:center;padding:30px}.visual-label{position:absolute;top:23px;left:26px;font-size:.65rem;letter-spacing:.15em;color:#777}.mockup{background:#fff;border:1px solid #d6d6d6;box-shadow:0 20px 40px #0000000c;border-radius:5px;overflow:hidden}.browser{width:100%;transform:translateY(-10px) rotate(-3deg)}.browser-bar{display:flex;align-items:center;justify-content:space-between;background:#fafafa;border-bottom:1px solid #e6e6e6;padding:10px 12px;font-size:.5rem;letter-spacing:.09em;color:#777}.dots{font-size:.45rem;letter-spacing:.1em;color:#aaa}.campus-nav{display:flex;align-items:center;justify-content:space-between;padding:18px 18px;font-size:.53rem}.campus-nav b{font-size:.7rem}.campus-hero{background:#202020;color:#fff;padding:27px 20px}.campus-hero p{font-size:.48rem;letter-spacing:.08em;color:#ccc;margin-bottom:13px}.campus-hero strong{display:block;font-size:1.85rem;line-height:1.05;font-weight:500;letter-spacing:-.04em}.mock-button{display:inline-block;margin-top:22px;background:#fff;color:#111;padding:9px 12px;font-size:.55rem}.campus-bottom{display:flex;gap:26px;padding:18px;font-size:.5rem}.campus-bottom b{margin-right:8px;color:#999}.enrollment{position:absolute;width:73%;right:0;bottom:28px;transform:rotate(3deg);padding:21px}.enrollment-title{display:flex;gap:12px;align-items:center}.square-icon{background:#111;color:#fff;width:34px;height:34px;display:grid;place-items:center}.enrollment-title b{display:block;font-size:.85rem}.enrollment-title span:not(.square-icon){font-size:.65rem;color:#777;display:block;margin-top:4px}.progress{display:flex;gap:4px;margin-block:20px 12px}.progress i{display:block;flex:1;height:4px;background:#222}.progress i.muted{background:#ddd}.enrollment-foot{display:flex;justify-content:space-between;gap:10px;font-size:.58rem;color:#666}.concept-note{position:absolute;left:22px;bottom:13px;font-size:.5rem;color:#666;letter-spacing:.1em}.service-strip{background:var(--soft);border-block:1px solid #e6e6e6}.service-strip .wrap{display:flex;justify-content:space-between;gap:15px;padding-block:26px;font-size:.86rem;color:#555}.service-strip span:nth-child(even){color:#aaa}.section{padding-block:100px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:47px}.section-heading h2{margin:0}.section-heading>p{max-width:365px;margin-bottom:4px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service-card{padding:32px 28px}.service-card+.service-card{border-left:1px solid var(--line)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:43px;color:#888;font-size:.75rem}.line-icon{color:#222;font-size:2rem}.service-card p{font-size:.94rem}.service-card ul{list-style:none;padding:5px 0 16px;line-height:1.9;font-size:.86rem;color:#555}.service-card li:before{content:'+';color:#999;margin-right:10px}.service-card .text-link{font-size:.84rem}.school-section{background:#151515;color:#fff;padding-block:90px}.school-grid{display:grid;grid-template-columns:1fr 1fr;gap:115px}.school-grid h2{font-size:clamp(2.6rem,4.2vw,3.7rem)}.school-grid h2 span{color:#999}.school-grid p{color:#aaa;max-width:440px}.school-grid .eyebrow{color:#aaa}.school-grid .button{margin-top:15px}.school-features article{display:flex;gap:27px;padding-block:26px;border-bottom:1px solid #383838}.school-features article:first-child{padding-top:5px}.school-features article>span{color:#777;font-size:.8rem;margin-top:5px}.school-features h3{font-size:1.2rem;margin-bottom:10px}.school-features p{font-size:.94rem;margin:0}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project-preview{position:relative;height:330px;overflow:hidden;padding:45px 30px 40px;display:flex;align-items:center;background:#ededeb}.preview-system{background:#e2e2df}.project-tag{position:absolute;left:18px;bottom:15px;font-size:.62rem;letter-spacing:.1em;color:#555}.mini-site{width:100%;background:#fff;box-shadow:0 20px 30px #0001;transform:rotate(-2deg);padding:18px}.mini-nav{display:flex;justify-content:space-between;gap:10px;font-size:.45rem;margin-bottom:16px}.mini-main{padding:25px 16px;background:#2b2b2b;color:#fff}.mini-main>span{font-size:.4rem;letter-spacing:.07em}.mini-main strong{display:block;font-size:1.65rem;font-weight:500;letter-spacing:-.04em;line-height:1.06;margin-top:12px}.mini-main i{display:inline-block;background:#eee;color:#111;font-size:.45rem;font-style:normal;padding:7px 10px;margin-top:16px}.mini-bottom{display:flex;justify-content:space-between;font-size:.4rem;margin-top:15px;color:#666}.mini-dashboard{width:100%;display:flex;min-height:225px;background:#fff;transform:rotate(2deg);box-shadow:0 20px 30px #0001;border-radius:4px;overflow:hidden}.mini-dashboard aside{width:24%;background:#222;color:#aaa;display:flex;flex-direction:column;padding:15px 8px;gap:14px;font-size:.45rem}.mini-dashboard aside b{color:#fff;font-size:.85rem;margin-bottom:10px}.mini-dashboard aside .selected{background:#444;color:#fff;padding:6px}.dashboard-body{flex:1;padding:18px 13px}.dashboard-title{font-size:.68rem;display:flex;justify-content:space-between;gap:12px}.dashboard-title small{font-size:.4rem;color:#888}.stat-grid{display:flex;gap:6px;margin-block:20px}.stat-grid>span{flex:1;border:1px solid #ddd;padding:9px 6px;font-size:.43rem;color:#777}.stat-grid b{font-size:1.05rem;display:block;margin-top:6px;color:#222}.table-caption{font-size:.48rem;margin-bottom:6px}.mock-row{display:flex;justify-content:space-between;gap:12px;font-size:.44rem;padding:8px 0;border-top:1px solid #eee}.mock-row i{font-style:normal;background:#eee;padding:2px 4px}.project-description{display:flex;justify-content:space-between;gap:15px;padding-top:22px;align-items:start}.project-description h3{font-size:1.15rem;margin-bottom:8px}.project-description p{font-size:.8rem;margin:0}.project-open{border:0;border-bottom:1px solid #aaa;background:transparent;padding:0 0 5px;font-size:.8rem;white-space:nowrap;line-height:1.6}.maintenance{background:var(--soft);padding:55px;display:grid;grid-template-columns:1fr 1.15fr;gap:70px}.maintenance h2{margin:0}.maintenance .text-link{margin-top:8px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border-top:1px solid var(--line);margin-top:40px;padding-top:35px}.process article>span{font-size:.7rem;letter-spacing:.08em;color:#777}.process h3{font-size:1.15rem;margin-top:21px;margin-bottom:12px}.process p{font-size:.92rem;margin:0}.contact-section{padding-block:85px;background:#141414;color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-grid h2{font-size:clamp(2.7rem,4vw,3.6rem)}.contact-grid h2 span{color:#999}.contact-grid p{color:#aaa;max-width:405px}.contact-note{margin-top:45px;border-top:1px solid #444;padding-top:25px}.contact-note b{font-size:.95rem;font-weight:500}.contact-note p{font-size:.88rem;margin-top:10px}.contact-grid form h3{font-size:1.4rem;margin-bottom:24px}.contact-grid form label{display:flex;flex-direction:column;gap:9px;font-size:.8rem;margin-bottom:21px;color:#ddd}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}input,select,textarea{color:#fff;background:#232323;border:1px solid #494949;border-radius:3px;padding:13px;width:100%;font-size:1rem;min-width:0}input::placeholder,textarea::placeholder{color:#999}textarea{resize:vertical}select{color-scheme:dark}.contact-grid .form-note{font-size:.78rem;line-height:1.6;margin-top:-3px}.contact-grid form .button{width:100%}#form-status{font-size:.86rem;margin:15px 0 0}.footer{display:flex;align-items:center;gap:30px;justify-content:space-between;padding-block:35px}.footer .brand{font-size:1.3rem}.footer .brand-mark{width:35px;height:37px;font-size:2.1rem}.footer .brand-sub{font-size:.5rem}.footer p,.footer>span,.footer>a:last-child{font-size:.75rem;color:#666;margin:0}.skip-link{position:fixed;left:16px;top:-100px;padding:14px;background:#fff;z-index:10;border:2px solid #111}.skip-link:focus{top:15px}.menu-toggle{background:none;border:1px solid #aaa;border-radius:2px;padding:10px;font-size:.9rem}.menu-toggle[hidden]{display:none}dialog{width:min(590px,calc(100% - 32px));border:1px solid #ccc;padding:35px;border-radius:4px;color:#111;max-height:85vh;overflow:auto}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;gap:15px;margin-bottom:25px}.dialog-top .eyebrow{margin:0;color:#777}.dialog-top button{background:transparent;border:0;font-size:.9rem;padding:0}dialog h2{font-size:2.2rem}dialog ul{padding-left:20px;line-height:1.8;color:#555}dialog .dialog-disclaimer{font-size:.85rem;border-top:1px solid #ddd;padding-top:18px}
@media(min-width:1450px){.hero{padding-block:105px}.hero-visual{min-height:480px}}
@media(max-width:1050px){.wrap,.header{width:calc(100% - 56px)}.hero{gap:25px}.hero-visual{padding:20px;min-height:390px}.hero h1{font-size:3.5rem}.school-grid,.contact-grid{gap:55px}.service-card{padding:26px 20px}.project-preview{padding:40px 18px;height:290px}.footer{gap:20px}.footer p{display:none}.project-description{display:block}.project-open{margin-top:14px}}
@media(max-width:760px){html{scroll-padding-top:25px}.wrap,.header{width:calc(100% - 40px)}.header{height:auto;min-height:90px;flex-wrap:wrap;gap:20px;padding-block:20px}.brand{font-size:1.4rem}.brand-mark{width:37px;height:39px;font-size:2.3rem}.header nav{width:100%;gap:24px;flex-wrap:wrap}.js .header nav{display:none}.js .header nav.open{display:flex}.js .menu-toggle{display:block}.header nav .button{margin-left:auto}.hero{grid-template-columns:1fr;padding-block:52px 45px;gap:42px}.hero h1{font-size:clamp(2.6rem,8.7vw,4.4rem);letter-spacing:-.055em}.hero .lead{max-width:530px}.hero-note{margin-top:28px}.hero-visual{min-height:390px;max-width:550px;width:100%;margin:auto;padding:36px}.browser{max-width:430px;margin:auto}.enrollment{width:65%;right:15px}.service-strip .wrap{font-size:.7rem;gap:10px;justify-content:center;flex-wrap:wrap;padding-block:20px}.section{padding-block:65px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:24px;max-width:540px}.services-grid{grid-template-columns:1fr}.service-card{padding:28px}.service-card+.service-card{border-left:0;border-top:1px solid var(--line)}.card-top{margin-bottom:25px}.service-card ul{margin-top:0}.school-section{padding-block:60px}.school-grid,.contact-grid,.about-grid{grid-template-columns:1fr;gap:38px}.school-grid p{max-width:540px}.school-grid h2 br:nth-of-type(2){display:none}.school-features article{gap:20px}.projects-grid{grid-template-columns:1fr;gap:36px}.project-preview{height:330px;padding:45px 35px}.project-description{display:flex}.project-open{margin-top:0}.maintenance{padding:35px 27px;grid-template-columns:1fr;gap:25px}.maintenance h2 br{display:none}.process{grid-template-columns:1fr;gap:25px;margin-top:25px}.process article{border-bottom:1px solid #eee;padding-bottom:25px}.process h3{margin-top:15px}.contact-section{padding-block:60px}.contact-note{margin-top:28px}.contact-grid p{max-width:none}.footer{flex-wrap:wrap;justify-content:space-between;gap:25px}.footer>.brand{width:100%}.footer>span{font-size:.7rem}}
@media(max-width:390px){.actions{gap:20px;flex-wrap:wrap}.hero-visual{min-height:345px;padding:28px 17px}.campus-hero strong{font-size:1.65rem}.enrollment{width:80%;bottom:24px;padding:15px}.concept-note{bottom:6px;font-size:.4rem}.form-row{grid-template-columns:1fr;gap:0}.project-preview{padding-inline:18px;height:290px}.project-description{display:block}.project-open{margin-top:12px}.header nav{gap:16px}.header nav .button{padding:10px 16px}.service-strip span:nth-child(even){display:none}.service-strip .wrap{flex-direction:column;align-items:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(min-width:761px){.menu-toggle{display:none}} @media(min-width:761px) and (max-width:1050px){.hero h1{font-size:clamp(2.5rem,4.9vw,3.5rem)}} .footer>a[href^="mailto:"]{font-size:.85rem;overflow-wrap:anywhere}
