:root{--ink:#173f35;--body:#3d5248;--paper:#faf9f4;--white:#fff;--line:#dce2d8;--green:#dde9d5;--yellow:#f3cd75;--blue:#dfe9ec;--muted:#607064;--serif:Georgia,'Times New Roman',serif;--sans:'Trebuchet MS',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.65}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif)}h1{font-size:clamp(2.8rem,5.6vw,5.25rem);line-height:1.1;letter-spacing:-.04em}h2{font-size:clamp(2rem,3.1vw,2.85rem);line-height:1.2;letter-spacing:-.025em}h3{font-size:1.4rem;line-height:1.35}p{color:var(--body)}a{color:inherit;text-underline-offset:4px}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #966b06;outline-offset:5px;border-radius:4px}button{font:inherit;color:inherit;cursor:pointer}svg{width:1.3rem;height:1.3rem;flex:none;vertical-align:middle}img{max-width:100%;display:block}em{font-weight:400}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:780px}.eyebrow{font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.15em;line-height:1.7;text-transform:uppercase;color:var(--ink);margin-bottom:1rem}.muted{color:var(--muted);font-size:.94rem}.skip-link{position:fixed;top:-100px;left:1rem;z-index:100;background:var(--ink);color:white;padding:1rem}.skip-link:focus{top:1rem}.preview-banner{text-align:center;background:#e8eddf;color:#38513c;padding:6px 16px;font-size:.8rem;letter-spacing:.02em}.preview-banner span{padding:0 8px}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{min-height:107px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.85rem;text-decoration:none;flex-shrink:0}.brand-mark{display:grid;place-items:center;background:var(--ink);color:var(--yellow);font:2.5rem var(--serif);width:53px;height:58px;border-radius:18px 18px 4px 4px}.brand strong{display:block;font:1.9rem var(--serif);line-height:1.2;letter-spacing:-.025em}.brand small{display:block;letter-spacing:.13em;font-size:.75rem;font-weight:bold;margin-top:4px}.main-nav{display:flex;align-items:center;gap:1.8rem;font-size:.94rem}.nav-link{text-decoration:none;position:relative;padding:.8rem 0}.nav-link:after{content:'';position:absolute;bottom:4px;left:0;right:0;background:var(--ink);height:2px;transform:scaleX(0);transition:transform .18s}.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}.nav-contact{background:var(--ink);color:var(--white);padding:.65rem 1.2rem;border-radius:30px;text-decoration:none}.nav-contact:hover{background:#2b5a46}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1.04fr;align-items:center;gap:2.5rem;padding-top:63px;padding-bottom:65px}.hero-copy .eyebrow{font-size:.75rem;margin-bottom:1.5rem;letter-spacing:.15em}.hero h1{margin-bottom:1.6rem}.hero h1 em{color:#697a38}.hero-copy>p:not(.eyebrow){font-size:1.08rem;max-width:400px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:1.7rem;margin-top:1.8rem;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:1rem;padding:.9rem 1.3rem;border:1px solid var(--ink);border-radius:100px;background:var(--ink);color:white;font-size:.95rem;text-decoration:none;line-height:1.5;transition:background .18s,transform .18s}.button:hover{background:#2d5947;transform:translateY(-2px)}.button.secondary{color:var(--ink);background:transparent}.text-link{display:inline-flex;gap:.65rem;align-items:center;font-weight:700;text-decoration:none;font-size:.95rem}.text-link:hover{text-decoration:underline}.hero-hours{display:flex;gap:.7rem;align-items:center;color:var(--muted);font-size:.87rem;margin-top:2rem}.hero-hours strong{font-weight:normal;color:var(--ink);margin-left:.3rem}.hero-art{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-top:5px}.hero-art img{width:100%;aspect-ratio:1.05;object-fit:cover;border-radius:44% 44% 8px 8px}.hero-art figcaption{align-self:center;margin-top:1.15rem;font:italic 1.45rem var(--serif);letter-spacing:.025em}.hero-art figcaption span{padding:0 .5rem;color:#a47718}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white)}.quick-link{display:flex;align-items:center;gap:1rem;text-decoration:none;padding:1.75rem 1.5rem;border-right:1px solid var(--line);transition:background .2s}.quick-link:last-child{border-right:0}.quick-link:hover{background:#edf1e8}.quick-icon{width:43px;height:43px;display:grid;place-items:center;background:#eef2e8;border-radius:50%;flex:none}.quick-link strong,.quick-link small{display:block}.quick-link strong{font-size:.97rem}.quick-link small{font-size:.79rem;color:var(--muted);margin-top:3px}.quick-link>svg{margin-left:auto;width:1rem}.intro-section{padding-block:85px;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}.intro-section>div:last-child{max-width:550px}.intro-section p:not(.eyebrow){margin-bottom:1.1rem;font-size:1.02rem}.intro-section .text-link{margin-top:.5rem}.values-section{background:var(--ink);color:var(--paper)}.values{display:grid;grid-template-columns:repeat(3,1fr);padding-block:44px}.values>div{padding-inline:2.5rem;border-right:1px solid #5a7667}.values>div:first-child{padding-left:0}.values>div:last-child{border:0}.value-no{display:block;font-size:.75rem;font-weight:bold;color:var(--yellow);margin-bottom:1rem;letter-spacing:.1em}.values h2{font-size:2.1rem;margin-bottom:.8rem}.values p{color:#e2e9e0;max-width:250px;font-size:.96rem}.section{padding-block:75px}.section.compact{padding-top:0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2rem}.section-head .eyebrow{margin-bottom:.6rem}.department-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.department{border-radius:4px 4px 36px 4px;padding:1.6rem 1.7rem 1.8rem;text-decoration:none;min-height:250px;display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s}.department:hover{transform:translateY(-5px);box-shadow:0 9px 20px #173f3510}.department-l{background:#e7e9cc}.department-u{background:#f4dfaf}.department-k{background:#d9e6e6}.department-label{display:inline-flex;align-self:flex-start;border:1px solid #173f3550;border-radius:30px;padding:.2rem .7rem;font-size:.75rem;letter-spacing:.1em;font-weight:bold;margin-bottom:4rem}.department h3{font-family:var(--serif);font-size:1.9rem;margin-bottom:.35rem}.department p{font-size:.9rem}.department>div{padding-right:2rem}.round-arrow{position:absolute;right:1.6rem;bottom:2.2rem;width:36px;height:36px;border:1px solid #173f3533;border-radius:50%;display:grid;place-items:center}.news-section{padding-bottom:75px}.news-section .section-head{margin-bottom:1rem}.news-list{margin-top:1.5rem;border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:185px 1fr auto;gap:2rem;align-items:center;padding:1.6rem .2rem;border-bottom:1px solid var(--line);text-decoration:none;transition:background .18s}.news-item:hover{background:#f0f2e8}.news-date{font-size:.88rem;color:var(--muted)}.news-item h3{font-family:var(--serif);font-size:1.65rem}.news-read{display:flex;gap:.65rem;align-items:center;font-size:.84rem}.news-read svg{width:1rem}.welcome-band{background:var(--green);border-radius:6px 60px 6px 6px;padding:3rem 3.5rem;margin-bottom:85px;display:flex;justify-content:space-between;align-items:center;gap:2rem}.welcome-band p:not(.eyebrow){margin-top:.8rem;max-width:540px}.welcome-band .eyebrow{margin-bottom:.7rem}.welcome-band .button{flex-shrink:0}.site-footer{background:#eef0e5;border-top:1px solid var(--line)}.footer-main{padding-block:55px;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}.footer-main h2{font:700 .92rem var(--sans);margin-bottom:1rem}.footer-main p{font-size:.9rem;line-height:1.9;margin-top:.5rem}.footer-brand p{margin-top:1.2rem}.footer-main a:not(.brand){text-decoration:none}.footer-main a:hover{text-decoration:underline}.footer-link{font-size:.83rem;display:inline-flex;align-items:center;gap:.6rem;margin-top:.6rem}.footer-link svg{width:1rem}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:22px;border-top:1px solid #cdd5c7;font-size:.78rem;color:#546a5a}.footer-bottom>div{display:flex;gap:1.5rem}.footer-bottom a{text-decoration:none}.footer-bottom svg{width:.85rem;height:.85rem}.page-heading{padding-block:28px 55px}.breadcrumb{display:flex;flex-wrap:wrap;gap:.7rem;color:var(--muted);font-size:.8rem;margin-bottom:45px}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.page-heading h1{font-size:clamp(2.7rem,4.8vw,4.25rem);max-width:1000px}.page-heading .eyebrow{margin-bottom:.8rem}.lead{font-size:1.2rem;max-width:710px;line-height:1.7;margin-top:1.2rem}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:75px;align-items:start;padding-bottom:85px}.prose{max-width:780px}.prose h2{font-size:2rem;margin-bottom:1.2rem}.prose h2:not(:first-child){margin-top:2.5rem}.prose h3{font-size:1.13rem;font-weight:bold;margin-bottom:.8rem}.prose p{margin-bottom:1.1rem}.prose ul{padding-left:1.2rem;color:var(--body)}.prose li{padding-bottom:.45rem}.prose section{margin-bottom:3.5rem;scroll-margin-top:2rem}.prose .text-link{margin-block:.4rem}.sidebar-card{border:1px solid var(--line);background:#f0f2e8;padding:1.8rem;border-radius:4px 4px 30px 4px}.sidebar-card h2{font-size:1.9rem;margin-bottom:1.1rem}.sidebar-card p{font-size:.95rem;margin-bottom:.8rem}.sidebar-card .eyebrow{font-size:.75rem}.sidebar-card dl{margin:0 0 1.4rem}.sidebar-card dt{font-size:.8rem;color:var(--muted);margin-top:1rem}.sidebar-card dd{font-size:1rem;margin:0}.sidebar-card .text-link{font-size:.86rem}.sidebar-card.sticky{position:sticky;top:1.5rem}.resource{display:flex;justify-content:space-between;gap:1.2rem;align-items:center;text-decoration:none;border-bottom:1px solid #cdd5c7;padding:1rem 0}.resource strong{display:block;font-size:1rem;font-weight:700}.resource small{font-size:.8rem;color:var(--muted);display:block;margin-top:2px}.resource:hover strong{text-decoration:underline}.resource>svg{width:1rem}.source{font-size:.78rem!important;line-height:1.6;color:var(--muted);margin-top:1.1rem!important}.source a{color:var(--muted)}.small-note{font-size:.8rem!important;color:var(--muted);margin-top:1rem}.contact-card{padding:1.5rem 0;display:flex;align-items:center;gap:1.3rem}.contact-card h3{font-weight:700;font-size:1.2rem}.contact-card p{margin-block:.4rem}.initials{font:1.8rem var(--serif);width:76px;height:84px;border-radius:40px 40px 4px 4px;background:#e2e8d5;display:grid;place-items:center}.accordion{margin-block:2rem}.accordion details{border-bottom:1px solid var(--line)}.accordion details:first-child{border-top:1px solid var(--line)}.accordion summary{padding:1.25rem 2.4rem 1.25rem 0;cursor:pointer;position:relative;font-size:1.1rem;font-weight:700;list-style:none}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:'+';position:absolute;right:.4rem;font-size:1.5rem;top:.85rem;font-weight:normal}.accordion details[open] summary:after{content:'−'}.accordion details>div{padding:0 1rem 1.5rem 0}.accordion details>div>p:last-child{margin-bottom:0}.accordion .resource{margin-block:.4rem}.department-banner{padding:2rem;border-radius:5px 50px 5px 5px;margin-bottom:2rem}.department-banner span{font:italic 3rem var(--serif)}.note{border-left:3px solid #a28629;padding:1rem 1.3rem;background:#f2efdf;margin-block:1.5rem}.note p{font-size:.94rem;margin-top:.4rem;margin-bottom:0}.note strong{font-size:.95rem}.hours-large{padding:1.4rem 1.8rem;border-left:3px solid var(--ink);background:var(--green);margin-block:1.5rem}.hours-large span{display:block;font-size:.9rem}.hours-large strong{font:2.5rem var(--serif);display:block;margin-top:.25rem}.packing-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding-block:1rem}.status-panel{border:1px solid var(--line);padding:2.5rem;background:white;border-radius:5px 40px 5px 5px}.status-panel>svg{width:2.3rem;height:2.3rem;margin-bottom:1.8rem}.status-panel h2{margin-top:0!important}.status-panel .eyebrow{margin-bottom:.7rem}.status-panel .button{margin-top:.6rem}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.contact-block{padding:1.5rem 0}.contact-block h2{font-size:1.9rem;margin-block:1.5rem 1.1rem}.contact-block p{margin-top:1rem;font-size:.95rem}.contact-icon{width:56px;height:56px;border-radius:50%;background:var(--green);display:grid;place-items:center}.contact-icon svg{width:1.5rem;height:1.5rem}.large-link{font:2.3rem var(--serif);text-decoration:none}.email-link{font-size:1.06rem;font-weight:bold;overflow-wrap:anywhere}.contact-block .address{font-size:1.1rem}.bottom-space{padding-bottom:80px}
@media(min-width:1500px){.hero-art img{aspect-ratio:1.13}.hero{gap:4rem}.hero h1{font-size:5.4rem}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.main-nav{gap:1.1rem;font-size:.85rem}.brand strong{font-size:1.6rem}.brand small{font-size:.75rem}.brand-mark{width:47px;height:52px}.quick-link{padding:1.4rem 1rem;gap:.65rem}.quick-icon{width:34px;height:34px}.quick-link>svg{display:none}.hero{gap:2rem}.hero-actions{gap:1rem}.hero .button{font-size:.87rem;padding:.8rem 1.05rem}.hero .text-link{font-size:.87rem}.intro-section{gap:3.5rem}.content-layout{gap:40px;grid-template-columns:minmax(0,1fr) 300px}.contact-grid{gap:25px}.email-link{font-size:.97rem}}
@media(max-width:1000px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:87px;flex-wrap:wrap;gap:0;padding-block:18px}.menu-toggle{display:flex;gap:.6rem;align-items:center;background:transparent;border:1px solid #bbc8b5;padding:.6rem .8rem;border-radius:30px;font-size:.88rem}.main-nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:1rem 0 .25rem}.main-nav .nav-link{padding:.9rem 0;border-top:1px solid var(--line)}.main-nav .nav-link:after{display:none}.main-nav .active{font-weight:700}.nav-contact{text-align:center;margin-top:1rem;align-self:flex-start}.js .main-nav:not(.open){display:none}.hero{padding-block:44px;gap:1.5rem}.hero h1{font-size:clamp(3rem,6.5vw,4.5rem)}.hero-copy .eyebrow{font-size:.75rem}.hero-copy>p:not(.eyebrow){font-size:.96rem}.hero-art img{aspect-ratio:.82}.hero-hours{font-size:.8rem;align-items:flex-start}.hero-hours strong{display:block;margin:0}.hero-art figcaption{font-size:1.13rem}.hero-art figcaption span{padding:0 .25rem}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-link{padding:1.4rem}.quick-link:nth-child(2){border-right:0}.quick-link:nth-child(-n+2){border-bottom:1px solid var(--line)}.quick-link>svg{display:block}.intro-section{padding-block:60px;gap:2rem}.values>div{padding-inline:1.5rem}.department-grid{gap:14px}.department{padding:1.3rem;min-height:235px}.department h3{font-size:1.6rem}.department p{font-size:.8rem}.round-arrow{right:1rem;bottom:1.5rem;width:30px;height:30px}.department>div{padding-right:1.4rem}.department-label{margin-bottom:3rem}.section{padding-block:60px}.news-item{grid-template-columns:140px 1fr;gap:1rem}.news-read{grid-column:2;font-size:.8rem}.welcome-band{padding:2.5rem;align-items:flex-start;flex-direction:column;margin-bottom:60px}.content-layout{grid-template-columns:minmax(0,1fr) 260px;gap:25px}.sidebar-card{padding:1.4rem}.sidebar-card h2{font-size:1.6rem}.sidebar-card.sticky{position:static}.footer-main{grid-template-columns:1fr 1fr;gap:2rem}.footer-brand{grid-column:1/-1}.footer-bottom{align-items:flex-start}.contact-grid{grid-template-columns:1fr 1fr}.contact-block:last-child{grid-column:1/-1}.page-heading{padding-bottom:40px}.lead{font-size:1.08rem}.status-panel{padding:1.8rem}}
@media(max-width:620px){.preview-banner{font-size:.75rem}.wrap{width:calc(100% - 36px)}.brand strong{font-size:1.6rem}.brand-mark{width:43px;height:48px;font-size:2.15rem}.brand small{font-size:.75rem;letter-spacing:.1em}.brand{gap:.65rem}.menu-toggle span{font-size:.8rem}.menu-toggle{padding:.5rem .65rem}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:35px;gap:2rem}.hero h1{font-size:3.65rem;letter-spacing:-.045em;line-height:1.08}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:1.25rem}.hero-copy>p:not(.eyebrow){font-size:1.02rem;max-width:95%}.hero-actions{gap:1.3rem}.hero .button{font-size:.94rem}.hero .text-link{font-size:.94rem}.hero-hours{font-size:.85rem;margin-top:1.5rem}.hero-hours strong{display:inline;margin-left:.3rem}.hero-art{padding-top:0}.hero-art img{aspect-ratio:1.25;border-radius:44% 44% 5px 5px}.hero-art figcaption{font-size:1.4rem;margin-top:1rem}.quick-grid{width:100%;padding-inline:18px;border:0;background:#fff}.quick-link{padding:1.1rem .75rem;gap:.65rem}.quick-icon{width:30px;height:30px;background:transparent}.quick-icon svg{width:1.3rem;height:1.3rem}.quick-link strong{font-size:.88rem}.quick-link small{font-size:.75rem}.quick-link>svg{display:none}.intro-section{display:block;padding-block:50px}.intro-section>div:first-child{margin-bottom:1.5rem}.intro-section h2{font-size:2.25rem}.values{padding-block:30px;grid-template-columns:1fr}.values>div{padding:1.2rem 0;border-right:0;border-bottom:1px solid #5a7667;display:grid;grid-template-columns:35px 90px 1fr;gap:.65rem;align-items:start}.values h2{font-size:1.4rem;margin:0}.values p{font-size:.86rem;max-width:none;line-height:1.65}.value-no{margin:0;padding-top:4px;font-size:.75rem}.section{padding-block:50px}.section-head{display:block}.section-head>.text-link{margin-top:1rem}.section-head h2{font-size:2rem}.department-grid{grid-template-columns:1fr}.department{min-height:0;padding:1.4rem;display:grid;grid-template-columns:68px 1fr;gap:1.2rem;align-items:center;border-radius:4px 4px 28px 4px}.department-label{margin:0;font-size:.75rem;padding:.2rem .5rem;align-self:center;justify-self:start}.department h3{font-size:1.8rem}.department p{font-size:.88rem}.department>div{padding-right:1.7rem}.round-arrow{bottom:auto;top:50%;transform:translateY(-50%)}.news-item{grid-template-columns:1fr;gap:.4rem;padding-block:1.2rem}.news-item h3{font-size:1.6rem}.news-read{grid-column:auto;margin-top:.3rem}.news-section{padding-bottom:50px}.welcome-band{padding:2rem 1.5rem;border-radius:4px 40px 4px 4px;gap:1.5rem;margin-bottom:50px}.welcome-band h2{font-size:2rem}.welcome-band p:not(.eyebrow){font-size:.95rem}.welcome-band .button{font-size:.88rem}.footer-main{display:block;padding-block:35px}.footer-main>div+div{margin-top:2rem}.footer-bottom{display:block;padding-block:20px}.footer-bottom>div{margin-top:.9rem;gap:1rem;flex-wrap:wrap}.page-heading{padding-block:20px 30px}.breadcrumb{margin-bottom:30px;font-size:.75rem}.page-heading h1{font-size:2.75rem;line-height:1.1;overflow-wrap:break-word}.page-heading .eyebrow{font-size:.75rem}.content-layout{display:block;padding-bottom:45px}.prose h2{font-size:1.85rem}.prose p{font-size:1rem}.sidebar-card{margin-top:2.5rem;padding:1.6rem}.packing-grid{gap:1rem}.packing-grid h3{font-size:1rem}.packing-grid ul{font-size:.93rem}.hours-large{padding:1.3rem}.hours-large strong{font-size:2.3rem}.contact-grid{display:block;padding-bottom:30px}.contact-block{padding:1.4rem 0;border-bottom:1px solid var(--line)}.contact-block h2{font-size:1.75rem;margin-top:1rem}.email-link{font-size:1.05rem}.bottom-space{padding-bottom:50px}.status-panel{padding:1.7rem}.status-panel h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{.preview-banner,.site-header,.site-footer,.quick-grid,.hero-art,.button,.sidebar-card{display:none}.wrap{width:100%}body{background:white;color:black}.content-layout,.hero,.intro-section{display:block}.page-heading{padding:0}.breadcrumb{display:none}details>div{display:block!important}a{text-decoration:none}.section{padding-block:20px}}

/* Application links are available on every page, including with the mobile menu closed. */
.application-nav{background:#eef2e8;border-bottom:1px solid var(--line)}
.application-links{display:flex;align-items:center;justify-content:flex-end;gap:2rem;flex-wrap:wrap;padding-block:.65rem}
.application-link{display:inline-flex;align-items:center;gap:.55rem;flex-wrap:wrap;text-decoration:none;font-size:.9rem;font-weight:700;line-height:1.6;padding:.2rem 0}
.application-link:hover{text-decoration:underline}
.application-link svg{width:1rem;height:1rem}
.application-service{font-weight:400;color:var(--body)}
@media(max-width:620px){.application-links{justify-content:flex-start;gap:.25rem 1.5rem;padding-block:.65rem}.application-link{font-size:.875rem}.application-service{display:none}}
@media print{.application-nav{display:none}}

/* Original school logo, preserved with its complete wordmark and colours. */
.header-inner{padding-block:12px}
.logo-mat{display:block;padding:5px;background:#fff;border-radius:5px;flex-shrink:0}
.school-logo{display:block;width:88px;height:auto;max-width:none}
.brand-tagline{font:italic 1.15rem/1.45 var(--serif);white-space:nowrap}
.brand .brand-tagline small{font-family:var(--sans);font-style:normal;font-size:.75rem;letter-spacing:.055em;margin-top:6px}
.footer-brand .school-logo{width:94px}
.footer-brand .brand-tagline{white-space:normal;max-width:160px}
@media(max-width:1150px){.school-logo{width:78px}.brand-tagline{font-size:1.05rem}.brand .brand-tagline small{letter-spacing:.01em}}
@media(max-width:620px){.school-logo{width:76px}.header-inner{gap:.75rem}.site-header .brand-tagline{font-size:1rem}.site-header .brand .brand-tagline small{display:none}}
@media(max-width:480px){.site-header .brand-tagline{display:none}}

/* Keep the school architecture visible at its natural image proportions. */
.hero-art--school img{height:auto;aspect-ratio:auto;object-fit:contain;border-radius:12px}

/* School-work navigation: native disclosure supports keyboard and touch. */
.nav-group{position:relative;flex:none}
.nav-submenu-toggle{display:flex;align-items:center;gap:.4rem;list-style:none;cursor:pointer;min-height:44px}
.nav-submenu-toggle::-webkit-details-marker{display:none}
.nav-submenu-toggle svg{width:1rem;height:1rem;transition:transform .18s}
.nav-group[open]>.nav-submenu-toggle svg{transform:rotate(180deg)}
.nav-submenu{position:absolute;top:100%;left:-1rem;z-index:30;width:18rem;max-width:calc(100vw - 2rem);max-height:calc(100dvh - 12rem);overflow-y:auto;overscroll-behavior:contain;padding:.55rem;background:var(--white);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 32px #173f351a}
.nav-submenu a{display:block;padding:.75rem .85rem;border-radius:7px;font-size:1rem;line-height:1.45;text-decoration:none;overflow-wrap:break-word}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:#edf1e8}
.nav-submenu a[aria-current="page"]{font-weight:700;background:#edf1e8}
@media(max-width:1000px){
  .nav-group{width:100%}
  .nav-submenu-toggle{justify-content:space-between}
  .nav-submenu{position:static;width:auto;max-width:none;max-height:none;overflow:visible;margin:0 0 .75rem;padding:.25rem .5rem .25rem .85rem;border:0;border-left:2px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
  .nav-submenu a{padding:.75rem .65rem;font-size:1rem}
}
@media(prefers-reduced-motion:reduce){.nav-submenu-toggle svg{transition:none}}

.staff-list{margin:1.25rem 0 1.5rem}
.staff-list>div{display:grid;grid-template-columns:minmax(7rem,1fr) minmax(0,1.8fr);gap:.75rem 1.5rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.staff-list dt{font-weight:700}
.staff-list dd{margin:0;color:var(--body)}
.school-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:1rem}
.school-topic-links{margin-top:2.5rem}
@media(max-width:620px){.staff-list>div{grid-template-columns:1fr;gap:.2rem}.school-link-grid{grid-template-columns:1fr;gap:0}}

/* Stjórnborð: visible, keyboard-accessible footer button. */
.footer-bottom{flex-wrap:wrap}
.footer-bottom .footer-admin{min-height:44px;padding:.65rem 1.1rem;flex-shrink:0}
@media(max-width:620px){.footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.footer-bottom>div{margin-top:0}}

/* The calendar keeps the school's original print layout at the full page width. */
.calendar-section{padding-bottom:70px}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}
.calendar-toolbar h2{font-family:var(--serif);font-size:2rem;font-weight:400;margin:0 0 .6rem}
.calendar-toolbar p{margin:0;max-width:44rem;color:var(--body)}
.calendar-toolbar .button{flex-shrink:0}
.calendar-toolbar .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.calendar-preview{margin:0 0 1.5rem}
.calendar-preview>a{display:block;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.calendar-preview>a:hover{border-color:var(--green)}
.calendar-preview img{display:block;width:100%;height:auto}
.calendar-preview figcaption{margin-top:.75rem;font-size:.9rem;color:var(--body)}
.calendar-hours{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.5rem;border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2rem;font-size:.95rem}
.calendar-hours strong{font-size:.75rem;letter-spacing:.08em}
@media(max-width:800px){.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-section{padding-bottom:45px}}
@media print{.calendar-toolbar,.calendar-preview figcaption,.calendar-hours{display:none}.calendar-preview>a{border:0}.calendar-section{padding:0}}

/* The preschool bag: a warm, scannable packing guide. */
.bag-section{padding:clamp(18px,3vw,32px);border-radius:26px;background:#fcf5df;scroll-margin-top:110px}.bag-intro{display:flex;gap:20px;align-items:flex-start}.bag-symbol{font-size:clamp(42px,6vw,68px);line-height:1.2}.bag-intro .eyebrow{margin:0 0 8px}.bag-intro h2{margin:0 0 12px}.bag-intro p{margin-bottom:0}.bag-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}.bag-card{padding:22px;border-radius:20px;background:#e5eff4}.bag-change{background:#f6e4db}.bag-card-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.bag-card-heading>span{font-size:32px}.bag-card-heading h3{margin:0;font-size:22px}.bag-card ul{padding:0;margin:0;list-style:none}.bag-card li{display:flex;align-items:center;gap:12px;padding:12px 0;margin:0;border-top:1px solid #173f3518;font-size:16px;line-height:1.5}.bag-card li>span:first-child{font-size:25px;width:30px;flex-shrink:0}.bag-reminders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bag-reminders>div{padding:16px;border-radius:16px;background:#ffffffa8}.bag-reminders>div>span{font-size:26px}.bag-reminders h3{font-size:18px;margin:8px 0}.bag-reminders p{font-size:16px;line-height:1.5;margin:0}.bag-note{font-size:16px;font-weight:600;text-align:center;margin:22px 0 0!important}@media(max-width:700px){.bag-cards,.bag-reminders{grid-template-columns:1fr}.bag-intro{gap:12px}.bag-card{padding:18px}.bag-reminders>div{padding:18px}.bag-intro h2{font-size:26px}}

.menu-weeks{display:grid;grid-template-columns:1fr;gap:20px;margin-top:28px;min-width:0}.prose .menu-week{padding:20px;border-radius:20px;margin:0;background:#e3ede3;min-width:0}.prose .menu-week-2{background:#e3edf4}.prose .menu-week-3{background:#f8ebd0}.prose .menu-week-4{background:#f3e0d8}.prose .menu-week h3{margin:0 0 16px;font-size:23px}.menu-week dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;gap:16px}.menu-week dl>div{padding:12px 0;border-top:1px solid #173f351a;min-width:0}.menu-week dt{font-weight:700;font-size:16px;overflow-wrap:anywhere}.menu-week dt span{display:block;font-weight:400;font-size:14px;white-space:nowrap;margin-top:4px}.menu-week dd{font-size:16px;line-height:1.55;margin:8px 0 0;overflow-wrap:anywhere}.menu-week-scroll{overflow-x:auto}.menu-scroll-hint{display:none}@media(max-width:900px){.menu-week dl{min-width:740px}.menu-scroll-hint{display:block;font-size:14px}.prose .menu-week{padding:16px}}
