@import url(https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;0,900;1,400&family=Montserrat:wght@300;400;500;600;700;800;900&family=Red+Hat+Text:wght@400;500;700&display=swap);:root{--color-navy:#0a192f;--color-navy-light:#172a45;--color-navy-muted:#1e3a5f;--color-orange:#f05a28;--color-orange-hover:#d44516;--color-teal:#0ea5e9;--color-teal-hover:#0284c7;--color-red:#d9383a;--color-red-hover:#b92628;--color-linen:#fafaf9;--color-soft-blue:#f4f8fc;--color-white:#ffffff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-500:#6b7280;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--font-heading:'Montserrat','Inter',sans-serif;--font-subheading:'Red Hat Text','Space Grotesk',sans-serif;--font-body:'Lato','Inter',sans-serif;--shadow-sm:0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1),0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1),0 4px 6px -2px rgba(0, 0, 0, 0.05);--shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.1),0 10px 10px -5px rgba(0, 0, 0, 0.04);--shadow-premium:0 20px 40px rgba(10, 25, 47, 0.08);--glass-bg:rgba(255, 255, 255, 0.75);--glass-border:rgba(255, 255, 255, 0.5);--glass-blur:blur(12px);--transition-fast:all 0.15s ease;--transition-smooth:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);--transition-slow:all 0.5s cubic-bezier(0.4, 0, 0.2, 1)}body{font-family:var(--font-body);background-color:var(--color-linen);color:var(--color-gray-800);overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-navy);font-weight:700;letter-spacing:-.025em}.font-headline,.font-title{font-family:var(--font-heading)}.font-subheading,.font-subtitle{font-family:var(--font-subheading)}.contained{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}@media (max-width:640px){.contained{padding-left:1.25rem;padding-right:1.25rem}}.btn-premium{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-subheading);font-weight:700;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase;padding:1rem 2.25rem;border-radius:4px;transition:var(--transition-smooth);cursor:pointer;position:relative;overflow:hidden;border:none;z-index:1}.btn-orange{background-color:var(--color-orange);color:var(--color-white);box-shadow:0 4px 14px rgba(240,90,40,.3)}.btn-orange:hover{background-color:var(--color-orange-hover);transform:translateY(-2px);box-shadow:0 6px 20px rgba(240,90,40,.4)}.btn-teal{background-color:var(--color-teal);color:var(--color-white);box-shadow:0 4px 14px rgba(14,165,233,.3)}.btn-teal:hover{background-color:var(--color-teal-hover);transform:translateY(-2px);box-shadow:0 6px 20px rgba(14,165,233,.4)}.btn-navy{background-color:var(--color-navy);color:var(--color-white);box-shadow:0 4px 14px rgba(10,25,47,.2)}.btn-navy:hover{background-color:var(--color-navy-light);transform:translateY(-2px);box-shadow:0 6px 20px rgba(10,25,47,.3)}.btn-outline-white{background-color:transparent;color:var(--color-white);border:2px solid var(--color-white)}.btn-outline-white:hover{background-color:var(--color-white);color:var(--color-navy);transform:translateY(-2px)}.btn-outline-navy{background-color:transparent;color:var(--color-navy);border:2px solid var(--color-navy)}.btn-outline-navy:hover{background-color:var(--color-navy);color:var(--color-white);transform:translateY(-2px)}.glass-panel{background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.glass-header{background:rgba(255,255,255,.85);border-bottom:1px solid rgba(255,255,255,.4);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.hover-card{transition:var(--transition-smooth);border-radius:8px;overflow:hidden;background-color:var(--color-white);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-100)}.hover-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--shadow-xl);border-color:var(--color-gray-200)}.hover-card img{transition:var(--transition-slow)}.hover-card:hover img{transform:scale(1.05)}.badge-orange{background-color:rgba(240,90,40,.1);color:var(--color-orange);font-family:var(--font-subheading);font-weight:700;text-transform:uppercase;font-size:.75rem;padding:.35rem .85rem;border-radius:50px;letter-spacing:.05em;display:inline-block}.badge-teal{background-color:rgba(14,165,233,.1);color:var(--color-teal);font-family:var(--font-subheading);font-weight:700;text-transform:uppercase;font-size:.75rem;padding:.35rem .85rem;border-radius:50px;letter-spacing:.05em;display:inline-block}.badge-red{background-color:rgba(217,56,58,.1);color:var(--color-red);font-family:var(--font-subheading);font-weight:700;text-transform:uppercase;font-size:.75rem;padding:.35rem .85rem;border-radius:50px;letter-spacing:.05em;display:inline-block}.underlined-link{position:relative}.underlined-link::after{content:'';position:absolute;width:100%;transform:scaleX(0);height:2px;bottom:-4px;left:0;background-color:currentColor;transform-origin:bottom right;transition:transform .25s ease-out}.underlined-link:hover::after{transform:scaleX(1);transform-origin:bottom left}.fade-up-element{opacity:0;transform:translateY(30px);animation:1s cubic-bezier(.4,0,.2,1) forwards fadeUp}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.gradient-overlay-navy{background:linear-gradient(to bottom,rgba(10,25,47,.2) 0,rgba(10,25,47,.85) 100%)}.gradient-overlay-orange{background:linear-gradient(135deg,rgba(240,90,40,.9) 0,rgba(10,25,47,.95) 100%)}.gradient-beach-sand{background:linear-gradient(to bottom,var(--color-linen) 0,var(--color-soft-blue) 100%)}.interactive-scale{transition:var(--transition-fast)}.interactive-scale:active{transform:scale(.97)}.form-input{width:100%;padding:.85rem 1.25rem;border:1px solid var(--color-gray-200);background-color:var(--color-white);border-radius:4px;font-family:var(--font-body);transition:var(--transition-smooth)}.form-input:focus{outline:0;border-color:var(--color-navy);box-shadow:0 0 0 3px rgba(10,25,47,.08)}.campus-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.hero-title{font-size:clamp(2.5rem, 6vw, 4.5rem);line-height:1.1;font-weight:900;letter-spacing:-.03em}footer a,header a{font-family:var(--font-subheading)}picture img{width:100%;height:100%;object-fit:cover}