:root{--ink:#30283b;--purple:#66507b;--lav:#f0e9f7;--gold:#9e7b32;--line:#dfd5e7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:Arial,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{padding:22px 5%;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line);background:white}.brand{display:flex;align-items:center;gap:13px;font-family:Georgia,serif;font-size:22px;line-height:1.25}.brand small{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:1.7px;margin-top:7px}.seal{border:1px solid var(--gold);color:var(--gold);width:57px;height:62px;text-align:center;padding:7px;flex-shrink:0}.seal small{font-size:12px;margin:0;letter-spacing:1px}nav{margin-left:auto;display:flex;gap:26px;font-size:14px}nav a:hover{color:var(--gold)}.languages{display:flex;gap:8px;font-size:14px}.languages button{border:0;background:none;color:var(--ink);padding:4px}.languages button[aria-pressed=true]{color:var(--purple);border-bottom:2px solid var(--gold)}.hero{display:grid;grid-template-columns:1.1fr 1fr;background:var(--lav);min-height:610px}.hero-copy{padding:72px 9% 30px}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:2.2px;color:var(--gold);margin:0 0 25px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:normal;line-height:1.16;margin:0}h1{font-size:clamp(38px,4.15vw,65px);letter-spacing:-1.5px}h1 em{color:var(--purple);font-weight:normal}h2{font-size:clamp(32px,3vw,46px)}h3{font-size:29px}.intro{max-width:510px;margin:26px 0 32px;font-size:18px}.button{display:inline-block;background:var(--purple);color:white;padding:14px 25px;font-size:15px}.button:hover{background:#48345d}.hero-bottom{margin-top:52px;padding-top:18px;border-top:1px solid #d5c7df;display:flex;gap:24px;font-size:12px;color:var(--purple)}.hero-photo{position:relative;min-height:520px;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:55% center}.photo-caption{position:absolute;bottom:27px;left:25px;right:25px;background:#ffffffed;padding:14px 20px;font-family:Georgia,serif;font-size:20px}.section{padding:85px 7%}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px}.about p:first-child:not(.eyebrow){margin-top:0}.note{border-left:2px solid var(--gold);padding-left:20px;font-style:italic;color:var(--purple)}.activities{background:#faf8fc}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.section-heading p{font-size:15px;color:#746a7e;max-width:250px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.cards article{background:white;border-bottom:2px solid #d4bc85}.cards img{width:100%;height:225px;object-fit:cover}.cards article>div{padding:24px}.cards p{font-size:16px}.number{font-size:13px;color:var(--gold);display:block;margin-bottom:15px}.choir{margin-top:55px;display:grid;grid-template-columns:1fr 1fr;background:var(--lav)}.choir img{width:100%;height:330px;object-fit:cover}.choir>div{padding:40px}.choir .eyebrow{margin-bottom:18px}.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.gallery-grid button{padding:0;border:0;background:var(--lav);overflow:hidden}.gallery-grid img{display:block;width:100%;height:190px;object-fit:cover;transition:transform .3s}.gallery-grid button:hover img{transform:scale(1.05)}.visit{background:var(--lav);display:grid;grid-template-columns:1fr 1fr;gap:90px}.building{border-left:1px solid #cabcda;padding-left:50px}.building>span{font-family:Georgia,serif;color:var(--gold);font-size:55px;line-height:1}.building h3{margin-top:15px}.building p{font-size:16px}footer{padding:30px 7%;display:flex;justify-content:space-between;gap:20px;font-size:13px}dialog{max-width:92vw;max-height:95vh;border:none;padding:45px 20px 15px;background:#fff}dialog::backdrop{background:#201528db}dialog img{display:block;max-width:85vw;max-height:72vh;margin:auto}dialog p{text-align:center;margin:10px 0}#close{position:absolute;right:12px;top:0;background:none;border:0;font-size:32px;color:var(--purple)}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}@media(min-width:1500px){body{max-width:1700px;margin:auto}}@media(max-width:950px){header{flex-wrap:wrap;gap:16px}nav{order:3;width:100%;justify-content:center}.languages{margin-left:auto}.hero-copy{padding:45px 7% 25px}.hero{min-height:550px}h1{font-size:44px}.section{padding:60px 6%}.about{gap:35px}.cards{gap:15px}.cards article>div{padding:18px}.cards img{height:180px}.choir>div{padding:25px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.visit{gap:35px}}@media(max-width:620px){header{padding:17px 5%}.brand{font-size:19px}.brand small{font-size:9px}.seal{width:46px;height:53px}nav{gap:20px;font-size:13px}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6% 28px}h1{font-size:43px}.hero-bottom{margin-top:30px}.hero-photo{min-height:0;height:360px}.section{padding:50px 6%}.about,.choir,.visit{grid-template-columns:1fr;gap:26px}.cards{grid-template-columns:1fr;gap:25px}.cards img{height:250px}.choir img{height:270px}.section-heading{display:block}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid img{height:155px}.building{padding:25px 0 0;border-left:0;border-top:1px solid #cabcda}footer{flex-direction:column;gap:6px}.photo-caption{font-size:17px}}

/* Preserve the complete architectural photograph. */
.hero-photo{min-height:0;align-self:start}.hero-photo>img{display:block;width:100%;height:auto;object-fit:contain}.photo-caption{font-size:17px}.brand>span:last-child{max-width:330px}.hero-copy{align-self:center}@media(max-width:620px){.hero-photo{height:auto}.brand>span:last-child{max-width:220px}.brand{font-size:17px}.photo-caption{bottom:15px;left:15px;right:15px;font-size:15px}}

.activity-details{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:50px}.activity-details h3,.clubs h3,.library h3,.archive h3{font-size:28px}.activity-details ul,.library ul{padding-left:20px}.activity-details li,.library li{padding:7px 0;font-size:16px}.clubs{border-top:1px solid var(--line);margin-top:35px;padding-top:35px}.club-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}h4{font-family:Georgia,serif;font-weight:normal;font-size:23px;margin:25px 0 12px}.club-grid p{font-size:16px}.library{background:white}.library-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:35px 0;padding:30px 0;gap:25px}.library-stats strong{display:block;font-family:Georgia,serif;font-size:48px;color:var(--purple);font-weight:normal;line-height:1.2}.library-stats span{display:block;font-size:15px;margin-top:10px;max-width:260px}.library-body{display:grid;grid-template-columns:1fr 1fr;gap:60px}.library-body p{font-size:16px}.archive{background:var(--lav)}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.archive-grid article{border-top:2px solid #d4bc85;padding-top:25px}.archive-grid p{font-size:16px}nav{flex-wrap:wrap;gap:18px}nav a{white-space:nowrap}@media(max-width:950px){header nav{order:3;width:100%;justify-content:center}.languages{margin-left:auto}.archive-grid{grid-template-columns:1fr}.library-body,.activity-details,.club-grid{gap:30px}}@media(max-width:620px){.activity-details,.club-grid,.library-body{grid-template-columns:1fr}.library-stats{grid-template-columns:1fr;gap:25px}.library-stats>div{display:flex;align-items:center;gap:25px}.library-stats strong{font-size:38px;min-width:135px}.library-stats span{margin:0}nav{column-gap:18px;row-gap:9px}}
