/* Shared visual refinements after the cross-page design review. */
:root{--navy:#0B1F3A;--green:#A6E01A;--cream:#F5F3ED}
body{min-height:100vh;display:flex;flex-direction:column}body>main{flex:1}
button,input,select,textarea{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #587c0b;outline-offset:4px}
.button,.nav-cta{border-radius:8px;min-height:44px;justify-content:center}
.button{transition:background .18s,box-shadow .18s}.button:hover{box-shadow:0 4px 14px #0b1f3a18}
.site-header nav>a.is-current,.nav-item>a.is-current{color:#365600;box-shadow:inset 0 -3px #A6E01A}
.nav-dropdown a[aria-current="page"]{background:#eef7d8;color:#365600;border-radius:6px}
.nav-dropdown{border-radius:0 0 14px 14px}
.content-hero{padding:38px max(6vw,calc((100% - 1200px)/2)) 42px}
.content-body{max-width:none;padding:28px max(6vw,calc((100% - 1200px)/2)) 64px}
.content-back{display:inline-block;line-height:1.6}
.content-hero h1,.alumni-hero h1{line-height:1.1;letter-spacing:-.04em}
.content-hero p{margin-bottom:0}
.content-section h2,.alumni-intro h2,.business-directory__heading h2{line-height:1.12}
.content-section p{max-width:78ch}
.content-section .section-kicker{margin-bottom:16px}
.content-empty{padding:32px 22px}.content-empty p{line-height:1.7}
.content-card{display:flex;flex-direction:column}.content-card .content-tag{align-self:flex-start}
.content-card .button{align-self:flex-start}
.content-page .section-tabs{gap:10px}.section-tabs a{min-height:44px;display:inline-flex;align-items:center}
.alumni-hero{padding:42px 7vw 48px}.alumni-hero h1{font-size:clamp(36px,4.5vw,68px);margin:18px 0}
.alumni-hero .section-kicker{margin-bottom:18px}.alumni-hero>p:last-child{font-size:18px;max-width:740px}
.alumni-hero::after{font-size:clamp(140px,20vw,270px)}
.alumni-content{padding-top:48px;padding-bottom:64px}.alumni-intro{gap:5vw;margin-bottom:40px}
.alumni-intro h2{font-size:clamp(30px,3.5vw,48px)}
.news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.news-card:first-child{grid-column:auto}
.news-card{display:flex;flex-direction:column}.news-card .text-link{align-self:flex-start;margin-top:auto}
.major-card{min-width:0;gap:18px}.major-card h3{margin:20px 0 0;max-width:none}
.major-card .text-link{align-self:flex-start;margin-top:auto}
footer{gap:32px;padding:48px 6vw 32px}footer .footer-logo{width:62px;height:62px}
footer a{min-height:36px;display:flex;align-items:center;line-height:1.5}
footer a:hover,footer a:focus-visible{color:#A6E01A}
.home-contact-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}
.contact-list .home-contact-actions a{display:inline-flex;align-items:center;gap:8px;padding:15px 18px;font-size:14px}
@media(max-width:1180px){
.site-header{padding-inline:5vw}.site-header .brand{margin-right:0}.site-header .brand>span{display:block;font-size:13px}
.site-header .school-logo{width:48px;height:48px}.site-header nav{font-size:15px;gap:0}
.site-header nav>a,.nav-item>a{min-height:48px}
.menu-button{min-width:48px;min-height:48px;align-content:center;justify-content:center;border-radius:8px}
.site-header nav>a.is-current,.nav-item>a.is-current{box-shadow:none;color:#365600}
.site-header nav{max-height:calc(100dvh - 76px);overscroll-behavior:contain}
.nav-dropdown>a,.dropdown-columns a{min-height:44px;display:flex;align-items:center}
.dropdown-columns a{gap:10px}.nav-dropdown strong{line-height:1.45}
.nav-dropdown>a>span{display:none}.nav-dropdown{border-radius:0}
}
@media(min-width:1181px) and (max-width:1450px){.site-header{padding-inline:2vw;gap:14px}.site-header .brand>span{display:none}.site-header nav{gap:14px;font-size:13px}.site-header .nav-cta{padding:12px}}
@media(max-width:900px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-card:first-child{grid-column:auto}}
@media(max-width:600px){
.hero-copy{padding:52px 6vw 54px}.hero h1{font-size:clamp(38px,10vw,53px);line-height:1.08}
.hero-actions{gap:18px;margin-top:28px}.section{padding-block:56px}.section-kicker{margin-bottom:22px}
.content-hero,.alumni-hero{padding:28px 6vw 32px}.content-hero h1,.alumni-hero h1{font-size:clamp(30px,8.5vw,40px)}
.content-body,.alumni-content{padding:20px 6vw 48px}.content-section{padding:20px 0}
.content-empty{padding:26px 18px}.alumni-intro{grid-template-columns:1fr;gap:18px}
.news-grid{grid-template-columns:1fr}.major-card{padding:26px;min-height:280px}
.contact-list a{gap:12px}.contact-list strong{overflow-wrap:anywhere}
footer{gap:26px;padding:36px 6vw}.business-directory__heading h2{font-size:36px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
