:root{--navy:#041f4a;--blue:#1577d3;--sky:#63b8e8;--gold:#f5bd19;--cream:#f4f2ec;--white:#fff;--ink:#06142b;--sans:Arial,"Helvetica Neue",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.45;background:var(--white)}img{display:block;max-width:100%}a{color:inherit}.skip-link{position:fixed;left:-1000px;top:1rem;background:var(--gold);color:var(--navy);padding:.85rem 1rem;font-weight:800;z-index:100}.skip-link:focus{left:1rem}
.utility-bar{min-height:35px;padding:.45rem clamp(1rem,4vw,4.5rem);display:flex;justify-content:space-between;align-items:center;background:var(--navy);color:#fff;text-transform:uppercase;letter-spacing:.15em;font-size:.7rem;font-weight:700}.utility-bar p{margin:0}.navigation-wrap{height:112px;padding:1rem clamp(1rem,4vw,4.5rem);display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #d9dde4;position:relative;z-index:20}.logo-link{width:min(390px,52vw)}.logo-link img{width:100%;height:88px;object-fit:contain;object-position:left center}nav ul{display:flex;gap:clamp(1rem,2.5vw,2.7rem);list-style:none;padding:0;margin:0}nav a{text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:.75rem;padding:.5rem 0;border-bottom:3px solid transparent}nav a:hover,nav a:focus{border-color:var(--gold)}.menu-button{display:none}
.hero{min-height:690px;background:var(--gold);display:grid;grid-template-columns:1.05fr .95fr;position:relative;overflow:hidden}.hero::before{content:"";position:absolute;width:40vw;height:40vw;min-width:520px;min-height:520px;border:1px solid rgba(4,31,74,.28);border-radius:50%;right:-12vw;top:-11vw}.hero-copy{padding:clamp(4rem,8vw,9rem) clamp(1.25rem,6vw,7rem);z-index:2;display:flex;flex-direction:column;justify-content:center}.superline,.section-label{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:900;margin:0 0 1.4rem}.hero h1,.exceptional h2,.memories h2,.action-statement h3,.section-intro h2,.schedule-card h2,.activities-card h2{margin:0;text-transform:uppercase;font-size:clamp(4rem,8.6vw,9.4rem);line-height:.79;letter-spacing:-.065em;font-weight:900}.hero h1 strong{color:var(--blue);font-weight:900}.hero-copy>p:not(.superline){max-width:610px;font-size:clamp(1.1rem,1.8vw,1.55rem);line-height:1.35;margin:2.25rem 0}.text-link{text-transform:uppercase;text-decoration:none;font-weight:900;letter-spacing:.11em;font-size:.78rem;display:flex;gap:1rem;align-items:center}.text-link span{font-size:1.5rem}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;padding:5rem 3rem 4rem 0;z-index:1}.hero-art::before{content:"";position:absolute;inset:9% 5% 8% 0;background:var(--white);transform:rotate(-3deg)}.hero-art img{position:relative;width:100%;max-width:780px;mix-blend-mode:multiply;filter:saturate(1.08) contrast(1.02)}.year-mark{position:absolute;right:4%;bottom:1%;font-size:clamp(5rem,11vw,12rem);font-weight:900;line-height:.65;color:var(--navy);opacity:.1;z-index:2;letter-spacing:-.1em}.hero-vertical{position:absolute;right:1.1rem;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.22em;font-size:.62rem;font-weight:900;margin:0;z-index:4}
.exceptional{min-height:720px;padding:clamp(5rem,9vw,10rem) clamp(1.25rem,6vw,7rem);background:var(--navy);color:#fff;position:relative;display:grid;grid-template-columns:1fr 1fr;align-content:center;overflow:hidden}.exceptional::after{content:"TNA";position:absolute;right:-.03em;bottom:-.28em;font-size:clamp(16rem,42vw,46rem);font-weight:900;letter-spacing:-.12em;color:rgba(255,255,255,.035);line-height:1}.exceptional>.section-label{grid-column:1/-1;color:var(--gold)}.exceptional-heading{position:relative;z-index:1}.exceptional-heading span{font-size:clamp(1.5rem,3vw,3.4rem);font-weight:700;text-transform:uppercase;letter-spacing:-.03em}.exceptional h2{color:var(--sky);font-size:clamp(4.5rem,10vw,11rem);margin-top:.2rem}.exceptional-copy{align-self:end;max-width:540px;margin-left:auto;position:relative;z-index:1}.exceptional-copy p{font-size:clamp(1.3rem,2.2vw,2rem);line-height:1.25;font-weight:700}.exceptional-copy strong{display:inline-block;margin-top:1rem;color:var(--gold);font-size:1.05rem;letter-spacing:.08em}
.memories{min-height:750px;display:grid;grid-template-columns:1.1fr .9fr;background:var(--cream)}.memories-lead{padding:clamp(5rem,9vw,10rem) clamp(1.25rem,6vw,7rem);display:flex;flex-direction:column;justify-content:center}.memories h2{font-size:clamp(4rem,8vw,8.7rem)}.memories h2 strong{color:var(--blue)}.memories-lead>p:last-child{max-width:660px;font-size:clamp(1.05rem,1.7vw,1.45rem);margin:2.5rem 0 0}.action-statement{background:var(--blue);color:#fff;padding:clamp(4rem,7vw,7rem);display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.action-statement::before{content:"";position:absolute;width:420px;height:420px;border:90px solid var(--gold);border-radius:50%;right:-220px;top:-190px;opacity:.95}.action-statement p{text-transform:uppercase;letter-spacing:.18em;font-weight:900}.action-statement h3{font-size:clamp(4rem,7vw,7.5rem);position:relative}.action-statement h3 strong{color:var(--gold)}
.calendar-section{padding:clamp(5rem,9vw,10rem) clamp(1rem,4vw,4.5rem);background:#fff}.section-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:end;margin-bottom:4rem}.section-intro h2{color:var(--navy);font-size:clamp(4.4rem,9vw,9rem)}.section-intro>p{max-width:560px;font-size:1.2rem;border-top:5px solid var(--gold);padding-top:1.4rem;margin:0 0 .8rem}.calendar-facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--navy);border-left:1px solid var(--navy)}.calendar-facts div{min-height:180px;border-right:1px solid var(--navy);border-bottom:1px solid var(--navy);padding:1.8rem;display:flex;flex-direction:column;justify-content:space-between}.calendar-facts span{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:800}.calendar-facts strong{font-size:clamp(2rem,4vw,4.2rem);line-height:1;text-transform:uppercase;letter-spacing:-.055em}
.month-tabs{display:flex;overflow-x:auto;margin-top:5rem;border-bottom:1px solid var(--navy);scrollbar-width:thin}.month-tab{appearance:none;border:0;border-bottom:7px solid transparent;background:none;padding:1.2rem clamp(.8rem,2vw,1.8rem);text-transform:uppercase;font-weight:900;letter-spacing:.12em;color:#627087;cursor:pointer;white-space:nowrap;font-size:.78rem}.month-tab[aria-selected="true"]{color:var(--navy);border-color:var(--gold)}.month-tab:hover,.month-tab:focus-visible{color:var(--blue)}.month-panel{display:grid;grid-template-columns:.62fr 1.38fr;background:var(--cream);min-height:580px}.month-summary{padding:clamp(2rem,4vw,4.5rem);background:var(--navy);color:#fff;display:flex;flex-direction:column}.month-summary .section-label{color:var(--gold)}.month-summary h3{font-size:clamp(3.7rem,7vw,7rem);line-height:.85;text-transform:uppercase;letter-spacing:-.06em;margin:0 0 2rem}.month-summary p{font-size:1.15rem;max-width:420px}.month-summary .month-status{margin-top:auto;border-top:1px solid rgba(255,255,255,.35);padding-top:1.5rem;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:900;color:var(--sky)}.calendar-wrap{padding:clamp(1.2rem,3vw,3rem)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--navy);border-top:1px solid var(--navy)}.day-label,.day{border-right:1px solid var(--navy);border-bottom:1px solid var(--navy);padding:.55rem;min-height:5rem}.day-label{min-height:auto;background:var(--blue);color:#fff;text-transform:uppercase;text-align:center;letter-spacing:.08em;font-size:.67rem;font-weight:900}.day.empty{background:#e5e5e3}.day.weekend{color:#8490a1;background:#fbfbf9}.day.off{background:var(--gold);color:var(--navy);font-weight:900}.day.spirit{background:#dcefff;color:var(--navy);box-shadow:inset 0 -5px 0 var(--blue);font-weight:900}.day.milestone{box-shadow:inset 0 0 0 5px var(--sky);font-weight:900}.day small{display:block;font-size:.59rem;line-height:1.1;text-transform:uppercase;margin-top:.35rem;font-weight:800}.calendar-legend{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:1rem;text-transform:uppercase;letter-spacing:.08em;font-size:.69rem;font-weight:800}.calendar-legend i{display:inline-block;width:.85rem;height:.85rem;margin-right:.35rem;vertical-align:-.1rem;border:1px solid var(--navy)}.calendar-legend .spirit-key{background:#dcefff;box-shadow:inset 0 -3px 0 var(--blue)}.calendar-legend .off-key{background:var(--gold)}.calendar-legend .milestone-key{box-shadow:inset 0 0 0 3px var(--sky)}
.spirit-week{margin-top:2rem;border:1px solid var(--navy);background:#fff}.spirit-week-heading{padding:1.5rem;background:var(--blue);color:#fff}.spirit-week-heading .section-label{color:var(--gold);margin-bottom:.45rem}.spirit-week h4{margin:0;font-size:clamp(2.2rem,4vw,4rem);line-height:.9;text-transform:uppercase;letter-spacing:-.05em}.spirit-week ol{list-style:none;margin:0;padding:0}.spirit-week li{display:grid;grid-template-columns:8.2rem 1fr;gap:1.2rem;padding:1rem 1.25rem;border-bottom:1px solid #c8d0dc}.spirit-week li:last-child{border-bottom:0}.spirit-week time{text-transform:uppercase;font-size:.72rem;font-weight:900;letter-spacing:.08em;color:var(--blue)}.spirit-week time span{display:block;color:var(--navy);font-size:.64rem;margin-top:.2rem}.spirit-week strong{display:block;line-height:1.2}.spirit-week p{margin:.3rem 0 0;font-size:.9rem;line-height:1.35}.spirit-date{background:rgba(245,189,25,.15)}.spirit-date small{display:block;margin-top:.18rem;text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;color:var(--gold)}
.key-dates{margin-top:5rem;display:grid;grid-template-columns:.7fr 1.3fr;background:var(--blue);color:#fff}.key-dates-title{padding:clamp(2rem,4vw,4rem);border-right:1px solid rgba(255,255,255,.45)}.key-dates-title .section-label{color:var(--gold)}.key-dates-title h3{font-size:clamp(2.5rem,5vw,5.2rem);line-height:.9;text-transform:uppercase;letter-spacing:-.055em;margin:0}.key-dates ul{list-style:none;padding:0;margin:0}.key-dates li{display:grid;grid-template-columns:10rem 1fr;gap:1rem;padding:1rem 2rem;border-bottom:1px solid rgba(255,255,255,.35);align-items:center}.key-dates li:last-child{border:0}.key-dates time{color:var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.key-dates span{font-size:1.05rem;font-weight:700}
.school-life{display:grid;grid-template-columns:.88fr 1.12fr}.schedule-card,.activities-card{padding:clamp(5rem,8vw,9rem) clamp(1.25rem,5vw,6rem)}.schedule-card{background:var(--gold);color:var(--navy)}.schedule-card h2,.activities-card h2{font-size:clamp(4rem,7vw,7.5rem)}.schedule-time{border-top:7px solid var(--navy);margin-top:4rem;padding-top:1.3rem;display:flex;justify-content:space-between;gap:2rem;align-items:flex-start}.schedule-time span{text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.76rem}.schedule-time strong{font-size:clamp(2rem,3.5vw,4rem);line-height:.96;text-align:right;text-transform:uppercase;letter-spacing:-.04em}.activities-card{background:var(--navy);color:#fff}.activities-card .section-label{color:var(--sky)}.activities-card h2{color:var(--gold)}.activities-card>p:not(.section-label){font-size:1.15rem;max-width:620px;margin:2rem 0}.activities-card ul{list-style:none;padding:0;margin:3rem 0 0;border-top:1px solid rgba(255,255,255,.35)}.activities-card li{display:grid;grid-template-columns:3rem 1fr;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.35);font-weight:800;font-size:1.05rem}.activities-card li span{color:var(--sky);font-size:.75rem;letter-spacing:.1em}
footer{background:#fff;min-height:175px;padding:2rem clamp(1rem,4vw,4.5rem);display:grid;grid-template-columns:minmax(200px,360px) 1fr auto;align-items:center;gap:3rem;border-top:1px solid #d9dde4}footer img{width:100%;max-height:115px;object-fit:contain;object-position:left center}footer p{font-size:1.4rem;font-weight:900;text-transform:uppercase;margin:0}footer span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700}footer a{text-transform:uppercase;text-decoration:none;letter-spacing:.1em;font-size:.72rem;font-weight:900;border-bottom:3px solid var(--gold);padding-bottom:.2rem}
@media(max-width:980px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding-bottom:3rem}.hero-art{min-height:490px;padding:2rem 4rem 4rem}.hero-art::before{inset:3rem 2rem 2rem}.exceptional,.memories,.section-intro,.month-panel,.key-dates,.school-life{grid-template-columns:1fr}.exceptional{gap:4rem}.exceptional-copy{margin:0}.memories{min-height:0}.action-statement{min-height:570px}.section-intro{gap:2rem}.calendar-facts{grid-template-columns:1fr 1fr}.month-summary{min-height:350px}.key-dates-title{border-right:0;border-bottom:1px solid rgba(255,255,255,.45)}footer{grid-template-columns:1fr auto}footer img{grid-column:1/-1}}
@media(max-width:720px){.utility-bar p:last-child{display:none}.navigation-wrap{height:92px}.logo-link{width:72%;max-width:300px}.logo-link img{height:70px}.menu-button{display:flex;width:48px;height:48px;border:0;background:var(--gold);align-items:center;justify-content:center;cursor:pointer}.menu-button span{position:absolute;left:-9999px}.menu-button i,.menu-button i::before,.menu-button i::after{width:22px;height:2px;background:var(--navy);display:block;content:"";position:relative;transition:.2s}.menu-button i::before{position:absolute;top:-7px}.menu-button i::after{position:absolute;top:7px}.menu-button[aria-expanded="true"] i{background:transparent}.menu-button[aria-expanded="true"] i::before{top:0;transform:rotate(45deg)}.menu-button[aria-expanded="true"] i::after{top:0;transform:rotate(-45deg)}nav ul{display:none;position:absolute;top:92px;left:0;right:0;background:#fff;flex-direction:column;gap:0;border-top:1px solid #ddd;box-shadow:0 8px 15px rgba(0,0,0,.12)}nav ul.open{display:flex}nav li{border-bottom:1px solid #ddd}nav a{display:block;padding:1rem 1.25rem;border:0}.hero h1,.exceptional h2,.memories h2,.section-intro h2{font-size:clamp(3.3rem,17vw,5.8rem)}.hero-art{min-height:380px;padding:2rem}.hero-art::before{inset:1rem}.hero-vertical{display:none}.exceptional{padding-top:5rem;padding-bottom:6rem}.exceptional-heading span{font-size:1.25rem}.exceptional-copy p{font-size:1.25rem}.memories-lead{padding-top:5rem;padding-bottom:5rem}.action-statement{min-height:440px;padding:2rem 1.25rem}.calendar-section{padding-top:5rem}.calendar-facts{grid-template-columns:1fr 1fr}.calendar-facts div{min-height:135px;padding:1.1rem}.calendar-facts strong{font-size:1.9rem}.month-tabs{margin-top:3rem}.month-panel{min-height:0}.month-summary{min-height:300px}.calendar-wrap{padding:1rem 0}.day-label,.day{min-height:3.8rem;padding:.3rem;font-size:.8rem}.day small{font-size:.5rem}.key-dates{margin-top:3rem}.key-dates li{grid-template-columns:8.2rem 1fr;padding:1rem}.key-dates span{font-size:.92rem}.schedule-time{flex-direction:column}.schedule-time strong{text-align:left}footer{grid-template-columns:1fr;gap:1.5rem}footer img{grid-column:auto}footer a{justify-self:start}}
@media(max-width:420px){.day small{display:none}.day-label{font-size:.56rem}.day{min-height:3.2rem}.key-dates li,.spirit-week li{grid-template-columns:1fr;gap:.2rem}.calendar-facts strong{font-size:1.55rem}}
@media print{.site-header,.hero,.exceptional,.memories,.school-life,footer,.month-tabs,.section-intro>p{display:none!important}.calendar-section{padding:0}.section-intro{display:block}.calendar-facts,.month-panel,.key-dates{break-inside:avoid}.month-panel{display:grid;grid-template-columns:.55fr 1.45fr}.month-summary{min-height:0}.key-dates{display:grid;grid-template-columns:.7fr 1.3fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
