@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Newsreader:wght@400;500&display=swap');
*{box-sizing:border-box}body{margin:0;background:#edf3f8;color:#173c56;font:17px/1.65 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #378cc1;outline-offset:5px}header{display:flex;justify-content:space-between;align-items:center;padding:30px 5%;background:#f5f4ef;border-bottom:1px solid #bfd0df}header img{width:360px;filter:none}.gallery-intro{text-align:center;max-width:1000px;margin:65px auto 40px;padding:0 25px}.eyebrow{font-size:13px;letter-spacing:2px;color:#357096}h1{font:400 clamp(48px,6vw,80px)/1.06 Newsreader,Georgia,serif;margin:22px 0;color:#123c58}h1 em{color:#367fae;font-weight:400}.gallery-intro>p:not(.eyebrow){font-size:19px;color:#54738a}.gold-rule{display:block;width:80px;height:2px;background:#74a9cf;margin:28px auto}.gallery-intro .archive-note{font-size:14px!important;color:#57758a!important;max-width:650px;margin:auto}.gallery-controls{display:flex;align-items:end;gap:25px;max-width:1180px;margin:0 auto 25px;padding:24px 0;border-block:1px solid #bfd0df}.gallery-controls label{font-size:15px;display:grid;gap:8px;flex:1}input,select{font:16px Inter,Arial,sans-serif;background:#fff;color:#224a65;border:1px solid #a9c2d4;padding:13px;min-width:0}option{background:#fff;color:#224a65}.gallery-controls p{font-size:15px;color:#476c87;min-width:150px;margin-bottom:12px}.portrait-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 55px;padding:0 30px}.portrait{display:flex;flex-direction:column;align-items:center;position:relative;padding:40px 0 45px;border-bottom:1px solid #bfd0df}.frame{width:100%;aspect-ratio:4/5;display:block;padding:13px;position:relative;background:linear-gradient(135deg,#123c59,#527d9c 23%,#b4ccdf 24%,#1c4c6e 27%,#102e49 75%,#7da8c9);box-shadow:0 10px 22px #173d5626,inset 0 0 0 2px #8cb2d0;transition:transform .25s,box-shadow .25s}.frame:before{content:'';position:absolute;inset:5px;border:1px solid #b0cce0;pointer-events:none}.frame:after{content:'';position:absolute;inset:12px;border:2px solid #163c55;pointer-events:none}.portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 25%;border:7px solid #e1edf5;background:#e1edf5}.portrait:hover .frame{transform:translateY(-4px);box-shadow:0 14px 28px #123b5833}.corner{display:none}.nameplate{display:block;text-align:center;min-height:80px;padding:17px 12px 12px;margin-top:20px;width:100%;background:#f9fcff;color:#173d59;border:1px solid #b7ccdc;box-shadow:0 3px 8px #204a6110;font:400 25px/1.2 Newsreader,Georgia,serif}.nameplate small{display:block;font:500 12px/1.4 Inter,Arial,sans-serif;letter-spacing:1px;margin-top:10px;color:#35749e}.no-photo{height:100%;border:7px solid #e1edf5;background:linear-gradient(135deg,#d9e8f3,#aecbdf);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:20px;text-align:center;color:#285d80}.no-photo span{font:70px Newsreader,Georgia,serif}.no-photo small{font-size:12px;letter-spacing:1px;margin-top:20px}#empty{text-align:center;padding:60px}footer{text-align:center;margin-top:50px;padding:50px 20px;background:#12374f;color:#d9e8f3;border-top:4px solid #7ba8ca;font-size:14px;letter-spacing:1px}footer a{display:block;font:30px Newsreader,Georgia,serif;margin:20px}footer small{display:block;font-size:13px;letter-spacing:.2px;color:#b8d0e2}@media(max-width:1100px){.gallery-controls{margin-inline:40px}.portrait-grid{column-gap:35px}.nameplate{font-size:23px}}@media(max-width:800px){.portrait-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.gallery-controls{flex-wrap:wrap}.gallery-controls p{width:100%;margin:0}.gallery-intro{margin-top:40px}}@media(max-width:520px){.portrait-grid{grid-template-columns:1fr;max-width:390px;padding:0 35px}.portrait{padding-top:35px}.gallery-controls{margin-inline:25px;gap:16px}.gallery-controls label{flex-basis:100%}.gallery-intro>p:not(.eyebrow){font-size:17px}.gallery-intro h1{font-size:56px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
