header{position:relative}.back-link{font-size:10px;letter-spacing:1px}.architecture{padding:65px 5vw 90px;max-width:1600px;margin:auto}.architecture>.kicker{text-align:center}.architecture h1{font-size:clamp(28px,4.4vw,64px);font-weight:400;text-align:center;letter-spacing:-1px;margin:25px 0}.architecture h1 span{color:#8b8f86}.gallery-intro{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:50px}.gallery-intro p{font:17px Georgia,serif;color:#b7bdb2;text-align:center;margin:0}.gallery-intro span{font-size:9px;letter-spacing:1px;color:#8b8f86}.architecture-grid{columns:3;column-gap:18px}.gallery-item{display:inline-block;vertical-align:top;break-inside:avoid;width:100%;padding:0;margin:0 0 18px;border:0;background:transparent;color:inherit;text-align:left;cursor:zoom-in;line-height:0}.gallery-item img{display:block;width:100%;height:auto;object-fit:contain}.gallery-item:focus-visible{outline:2px solid #f7cc8a;outline-offset:4px}.lightbox{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;background:#101110;color:white;border:0;padding:70px 60px 100px;margin:0}.lightbox[open]{display:flex;justify-content:center;align-items:center}.lightbox::backdrop{background:#000e}.full-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.lightbox button{position:absolute;border:0;background:#101110a0;color:#fff;padding:15px;cursor:pointer}.close{top:15px;right:15px;font-size:10px;letter-spacing:1px}.prev{left:5px;top:48%;font-size:24px}.next{right:5px;top:48%;font-size:24px}.lightbox-caption{position:absolute;bottom:22px;left:0;width:100%;text-align:center;pointer-events:none}.country-name{margin:0 0 10px;font-size:13px;letter-spacing:1px;color:#edece7}.counter{margin:0;font-size:10px;color:#aab6a5}body.viewer-open{overflow:hidden}@media(max-width:700px){.logo{font-size:13px}.back-link{font-size:8px;letter-spacing:0}.architecture{padding:45px 5vw 65px}.architecture h1{font-size:clamp(25px,5.5vw,38px);letter-spacing:-.5px}.gallery-intro{margin-bottom:35px}.gallery-intro p{font-size:14px}.architecture-grid{columns:2;column-gap:10px}.gallery-item{margin-bottom:10px}.lightbox{padding:65px 35px 100px}.lightbox button{padding:9px}.lightbox-caption{bottom:28px}.country-name{font-size:12px}}

/* Minimal fullscreen viewer. */
.lightbox{padding:55px 5vw 55px}.lightbox button{background:transparent;color:#b6b9b3}.lightbox .close{font-size:35px;line-height:1;font-weight:200;top:8px;right:14px;padding:8px 12px}.lightbox .prev,.lightbox .next{display:none}.lightbox-caption{left:5vw;bottom:18px;width:auto;text-align:left}.country-name{margin:0;font-size:10px;color:#92968f;letter-spacing:.6px}.lightbox button:focus:not(:focus-visible){outline:none}.lightbox button:focus-visible{outline:1px solid #999;outline-offset:2px}@media(max-width:700px){.lightbox{padding:50px 5vw 50px}.lightbox-caption{left:5vw;bottom:18px}.country-name{font-size:9px}.lightbox .close{right:3vw;top:7px;font-size:32px}}

/* Visible photo navigation and zoom controls. */
.lightbox .prev,.lightbox .next{display:block;top:50%;transform:translateY(-50%);font-size:44px;line-height:1;width:48px;height:64px;padding:0;color:#edece7}
.lightbox .prev{left:10px}.lightbox .next{right:10px}
.lightbox .zoom{left:14px;top:12px;width:44px;height:44px;padding:10px;color:#edece7}
.lightbox .zoom svg{display:block;width:24px;height:24px}
.lightbox .close{color:#edece7}
.lightbox.is-zoomed{overflow:auto;display:block;padding:65px 60px}
.lightbox.is-zoomed .full-image{display:block;max-width:none;max-height:none;width:auto;height:auto;margin:0 auto;cursor:zoom-out}
.lightbox.is-zoomed button,.lightbox.is-zoomed .lightbox-caption{position:fixed;z-index:2;background:#101110dd}
@media(max-width:700px){.lightbox{padding:60px 48px}.lightbox .prev{left:0}.lightbox .next{right:0}.lightbox .prev,.lightbox .next{width:40px;font-size:36px}.lightbox .zoom{left:10px;top:8px}}

/* Match the homepage wordmark and reduce gallery headings. */
header .logo{font-size:14px;font-weight:400;letter-spacing:1.5px}
.architecture h1{font-size:clamp(24px,2.4vw,36px);letter-spacing:-.5px;margin:18px 0 22px}
.gallery-intro p{font-family:Arial,'Helvetica Neue',sans-serif;font-size:12px;line-height:1.7}
@media(max-width:700px){header .logo{font-size:11px;letter-spacing:1px}.architecture h1{font-size:24px}.gallery-intro p{font-size:11px}}

/* Country appears only in the viewer, close to the photograph. */
.lightbox .lightbox-caption{position:fixed;left:5vw;right:auto;bottom:auto;top:auto;width:auto;text-align:left}
