/* Critical styles for the header and first screen; style.css adds the rest. */
:root{--ink:#211039;--muted:#756b83;--purple:#722bdd;--blue:#098ee0;--line:#e6e0ed;--gradient:linear-gradient(120deg,#7f28e4,#5132d6 55%,#079ce5)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:#fff;color:var(--ink);font:16px/1.9 Tahoma,Arial,sans-serif}
button,input,select{font:inherit}
button,a,input,select,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #16a4ee;outline-offset:4px}
button:disabled{opacity:.6;cursor:wait}
.wrap{max-width:1240px;margin:auto;padding-inline:36px}
.header{display:flex;align-items:center;justify-content:space-between;height:102px;gap:25px}
.brand{width:195px;height:85px;display:flex;align-items:center}
.brand img{width:195px;height:auto}
.header nav{display:flex;gap:35px;font-size:14px;font-weight:bold}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:54px;padding:14px 24px;background:var(--gradient);color:white;border:0;border-radius:9px;font-weight:bold;font-size:15px;transition:transform .2s,box-shadow .2s}
.button.small{font-size:14px;padding:10px 18px;min-height:43px}
.outline{background:#f1eafb;color:#6225bd}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.6}
h2 em{font-style:normal;color:var(--purple)}
.eyebrow{display:block;color:var(--purple);font-size:13px;font-weight:bold;letter-spacing:1px;margin-bottom:17px}
.hero-shell{background:radial-gradient(ellipse at 90% 10%,#532484 0%,transparent 60%),linear-gradient(110deg,#15103c,#351156 75%);color:#fff;overflow:hidden}
.hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:60px;padding-top:48px;padding-bottom:40px}
.hero .eyebrow{color:#6ed2ff;letter-spacing:3px}
.hero h1{font-size:clamp(40px,4.3vw,62px);line-height:1.5;letter-spacing:-1.5px;margin-bottom:22px}
.hero h1 em{font-style:normal;color:#bc8bff}
.hero-promise{font-size:22px;font-weight:bold;margin-bottom:9px}
.hero .lead{color:#d3c7e3;max-width:510px;margin-bottom:24px;font-size:16px}
.hero .button{background:linear-gradient(100deg,#a039f0,#5842ec,#0b92da);padding-inline:30px;box-shadow:0 10px 40px #8f32ef3b}
.hero-meta{display:flex;gap:22px;color:#d3c7e3;font-size:13px;margin-top:22px}
.hero-meta span:before{content:'✓';color:#73d5ff;margin-left:8px}
.campus-hero{margin:0;position:relative;height:560px;padding:7px;border-radius:130px 24px 24px 24px;background:linear-gradient(140deg,#a345ef,#4833d5,#5bc9f6);box-shadow:0 25px 65px #0f062b50}
.campus-hero>img{display:block;width:100%;height:100%;object-fit:cover;object-position:53% 50%;border-radius:124px 18px 18px 18px}
.campus-hero:after{content:'';position:absolute;inset:7px;border-radius:124px 18px 18px 18px;background:linear-gradient(180deg,transparent 40%,#150b36da)}
.campus-hero figcaption{position:absolute;bottom:34px;right:32px;left:30px;z-index:1}
.campus-hero figcaption>span{font-size:13px;color:#d9dcff}
.campus-hero figcaption strong{display:block;font-size:30px;line-height:1.5;margin:8px 0}
.campus-hero figcaption a{display:inline-block;font-size:13px;border-bottom:1px solid #c8b9dc}
.photo-label{position:absolute;top:28px;right:24px;z-index:1;color:#2e1751;background:#fffffff0;padding:6px 13px;border-radius:30px;font-size:12px}
.hero-bottom{display:flex;justify-content:space-between;gap:20px;padding-block:20px;border-top:1px solid #ffffff25;direction:ltr;font:11px/1.7 Arial;letter-spacing:2px;color:#d3c5e6}
.mobile-cta{position:fixed;bottom:12px;left:16px;right:16px;background:var(--gradient);color:white;border:1px solid #bda0f0;box-shadow:0 5px 25px #31145230;border-radius:12px;font-size:16px;font-weight:bold;padding:13px;z-index:20;text-align:center;width:auto;max-width:460px;margin:auto}
@media(max-width:960px){.hero{gap:30px}.campus-hero{height:520px}.hero h1{font-size:46px}}
@media(max-width:650px){
.wrap{padding-inline:21px}
.header{height:80px;gap:10px}
.brand,.brand img{width:155px}
.header nav{display:none}
.header .button{font-size:12px;padding:8px 13px;min-height:40px}
.hero{grid-template-columns:1fr;padding-top:28px;gap:30px}
.hero h1{font-size:41px;line-height:1.5;margin-bottom:16px}
.hero-promise{font-size:18px}
.hero .lead{font-size:15px}
.hero .eyebrow{font-size:12px}
.hero .button{width:100%;font-size:14px}
.hero-meta{font-size:12px;gap:13px;margin-top:17px}
.campus-hero{height:380px;border-top-left-radius:90px}
.campus-hero>img,.campus-hero:after{border-top-left-radius:84px}
.campus-hero figcaption{right:26px;bottom:25px}
.campus-hero figcaption strong{font-size:26px}
.hero-bottom{display:block;font-size:10px;letter-spacing:1px;padding-block:15px}
.hero-bottom span{display:block}
.mobile-cta{font-size:14px}
}
