@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{color-scheme:dark;--bg:#0e1012;--panel:#181b1c;--line:#48443e;--ink:#f0ece2;--muted:#bcb5a8;--gold:#c7a773;--sans:'DM Sans',Arial,sans-serif;--serif:'DM Serif Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}a{color:inherit}img{display:block}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.skip{position:absolute;z-index:40;top:-50px;left:8px;padding:8px;background:var(--gold);color:#12110e}.skip:focus{top:8px}.masthead{height:78px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.wordmark{white-space:nowrap;text-decoration:none;font:25px var(--serif);letter-spacing:-.025em}.wordmark span{color:var(--gold);padding:0 3px}.nav{display:flex;gap:36px;margin-left:auto}.nav a,.header-action,.ribbon,.kicker,.hero-cta,.card-label small,.filters button,.count,.feature-image span,.feature-link,.lightbox small,.lightbox-bottom,footer{font-size:11px;letter-spacing:.15em}.nav a{text-decoration:none;text-transform:uppercase;color:#c5bfb3;white-space:nowrap}.nav a:hover,.hero-cta:hover,.observatory a:hover,footer a:hover{color:var(--gold)}.header-action{border:1px solid #8a795c;padding:13px 18px;text-decoration:none;text-transform:uppercase;white-space:nowrap;margin-left:22px}.header-action:hover{background:var(--gold);color:#161510}.mobile-menu,.mobile-nav{display:none}.ribbon{height:38px;background:#191a18;padding:8px 4.5%;color:var(--gold);display:flex;justify-content:space-between;text-transform:uppercase}.hero{display:grid;grid-template-columns:41% 59%;min-height:590px;border-bottom:1px solid var(--line)}.hero-copy{padding:64px 11% 40px 11%;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.kicker{margin:0;color:var(--gold);text-transform:uppercase;letter-spacing:.23em}.hero h1{font:normal clamp(64px,5.8vw,110px)/.99 var(--serif);letter-spacing:-.065em;margin:29px 0 27px}.hero h1 em,.feature h2 em,.observatory h2 em{font-style:italic;color:var(--gold);font-weight:normal}.hero-lede{max-width:440px;color:#c2baac;line-height:1.85;margin:0}.hero-cta{text-decoration:none;text-transform:uppercase;display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid #776c58;padding-top:20px;color:#d9c8aa}.hero-cta strong{font-weight:600;white-space:nowrap}.hero-art{position:relative;margin:0;overflow:hidden;min-width:0}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0e1012 0%,transparent 25%),linear-gradient(0deg,#08090ccc 0%,transparent 38%);pointer-events:none}.hero-art img{width:100%;height:100%;min-height:590px;object-fit:cover;transition:transform 1.5s}.hero-art:hover img{transform:scale(1.035)}.hero-art figcaption{position:absolute;z-index:1;bottom:36px;right:45px;text-align:right;display:flex;flex-direction:column;line-height:1.4;gap:4px}.hero-art figcaption span{text-transform:uppercase;font-size:11px;letter-spacing:.16em}.hero-art figcaption strong{font:normal 33px var(--serif)}.collection{padding:73px 5% 88px;max-width:1700px;margin:auto}.section-title{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-title h2{font:normal clamp(40px,4.4vw,64px) var(--serif);letter-spacing:-.04em;margin:8px 0 0}.section-description{max-width:330px;color:var(--muted);margin:0 0 8px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:31px 0 24px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters button{background:transparent;color:#c6c0b4;border:1px solid #5d594f;padding:10px 18px;text-transform:uppercase}.filters button:hover,.filters button.active{background:var(--gold);color:#16140f;border-color:var(--gold)}.count{color:#b5aa95;text-transform:uppercase;white-space:nowrap}.artwork-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.artwork-card{display:block;text-decoration:none;position:relative;width:100%;height:325px;padding:0;text-align:left;background:#1a1d1e;border:1px solid #484741;overflow:hidden;color:white;animation:reveal .42s ease both}.artwork-card[hidden]{display:none}.artwork-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s,filter .6s}.artwork-card:hover img,.artwork-card:focus-visible img{transform:scale(1.07);filter:brightness(1.13)}.artwork-card:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#020407d9);pointer-events:none}.card-label{position:absolute;z-index:1;bottom:18px;left:22px;right:50px;line-height:1.35}.card-label small{display:block;color:#e1c69d;text-transform:uppercase;margin-bottom:5px}.card-label strong{font:normal clamp(22px,2.1vw,33px) var(--serif);text-shadow:0 2px 9px #000,0 0 22px #000}.card-arrow{position:absolute;z-index:1;bottom:23px;right:24px;font-size:23px;color:#e4cba3}.feature{display:grid;grid-template-columns:50% 50%;background:#191b1c;border-block:1px solid var(--line);min-height:480px}.feature-image{position:relative;min-width:0;overflow:hidden}.feature-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.feature-image span{position:absolute;bottom:22px;left:5%;background:#101113ba;padding:6px 11px;color:#eedcc0}.feature-copy{padding:80px 13% 55px 10%}.feature h2,.observatory h2{font:normal clamp(42px,4.4vw,69px)/1.05 var(--serif);letter-spacing:-.045em;margin:22px 0}.feature-copy>p:not(.kicker){color:#beb8ad;max-width:540px;line-height:1.9}.feature-link{display:inline-block;text-decoration:none;margin-top:22px;border:0;border-bottom:1px solid var(--gold);padding:0 0 12px;background:none;color:#ead2a6;text-transform:uppercase}.feature-link span{padding-left:25px}.observatory{text-align:center;padding:105px 20px 115px}.observatory h2{margin:20px auto}.observatory>p:not(.kicker){max-width:690px;margin:0 auto 24px;color:var(--muted);line-height:1.9}.observatory>a{font-size:11px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:8px}footer{border-top:1px solid var(--line);display:flex;gap:20px;align-items:center;justify-content:space-between;padding:30px 4.5%;color:#a9a399}footer .wordmark{font-size:20px;color:#eee8dc}footer a:last-child{text-decoration:none;text-transform:uppercase}.lightbox[hidden]{display:none}.lightbox{position:fixed;z-index:30;inset:0;background:#07080afa;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.lightbox-top,.lightbox-bottom{padding:14px 3vw;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#101213}.lightbox-top{border-bottom:1px solid #454039}.lightbox-top small{color:var(--gold);text-transform:uppercase}.lightbox-top h2{font:normal 28px var(--serif);margin:0}.close-viewer,.view-controls button{border:1px solid #6b6255;color:#f1ece2;background:transparent;padding:8px 14px}.close-viewer:hover,.view-controls button:hover{background:#594e3b}.view-stage{min-height:0;min-width:0;position:relative;overflow:hidden;display:grid;place-items:center;cursor:grab;touch-action:none}.view-stage.dragging{cursor:grabbing}.view-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;user-select:none;will-change:transform;transform-origin:center}.lightbox-bottom{border-top:1px solid #454039;color:#bab2a7}.lightbox-bottom p{margin:0}.view-controls{display:flex;align-items:center;gap:10px;white-space:nowrap}.view-controls span{min-width:40px;text-align:center}body.viewer-open{overflow:hidden}@keyframes reveal{from{opacity:.5;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1060px){.nav{gap:16px}.header-action{margin-left:0}.hero-copy{padding-left:8%;padding-right:6%}.hero h1{font-size:72px}.artwork-card{height:280px}}@media(max-width:760px){.masthead{height:69px}.wordmark{font-size:20px}.nav,.header-action{display:none}.mobile-menu{display:block;background:none;border:1px solid #817058;color:#e3d4bb;padding:4px 11px;font-size:20px}.mobile-nav:not([hidden]){display:flex;position:absolute;z-index:9;left:0;right:0;flex-direction:column;background:#191a18;border-bottom:1px solid var(--line);padding:15px 5%;gap:14px}.mobile-nav a{text-decoration:none}.ribbon span:last-child{display:none}.hero{display:flex;flex-direction:column}.hero-copy{min-height:440px;padding:52px 6% 30px}.hero h1{font-size:clamp(66px,11vw,90px)}.hero-art{height:390px}.hero-art img{min-height:0;height:100%}.hero-art:after{background:linear-gradient(0deg,#07090abb,transparent 40%)}.section-title{display:block}.section-description{margin-top:8px}.artwork-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.artwork-card,.artwork-card:nth-child(3n+2){height:245px}.feature{grid-template-columns:1fr}.feature-image{height:290px}.feature-copy{padding:50px 7%}.lightbox-bottom{flex-wrap:wrap}.lightbox-bottom>p:last-child{display:none}}@media(max-width:480px){.wordmark{font-size:18px}.ribbon{font-size:9px}.hero-copy{min-height:390px}.hero h1{font-size:65px}.hero-art{height:300px}.hero-art figcaption{bottom:20px;right:18px}.hero-art figcaption strong{font-size:24px}.collection{padding:55px 4% 70px}.toolbar{display:block}.filters button{padding:8px 10px;font-size:9px}.count{margin:12px 0}.artwork-card,.artwork-card:nth-child(3n+2){height:185px}.card-label{bottom:12px;left:10px;right:12px}.card-label strong{font-size:20px}.card-label small{font-size:8px}.card-arrow{display:none}.lightbox-top h2{font-size:22px}.lightbox-bottom{justify-content:center;padding:10px}.lightbox-bottom>p:first-child{display:none}footer{flex-direction:column;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Small, purely visual notification dot on News in both header and mobile navigation. */
.news-nav-link{position:relative}
.news-nav-link::after{content:"";position:absolute;top:-6px;right:-13px;width:9px;height:9px;border-radius:50%;background:#f9d447;box-shadow:0 0 0 2px var(--bg)}
.mobile-nav .news-nav-link{align-self:flex-start}

.ribbon-home{justify-content:flex-end}
@media(max-width:760px){.ribbon-home span:last-child{display:block}}
/* A fourth homepage link becomes a menu before the desktop header gets cramped. */
@media(min-width:761px) and (max-width:1000px){.home-page .masthead .nav,.home-page .masthead .header-action{display:none}.home-page .mobile-menu{display:block;background:none;border:1px solid #817058;color:#e3d4bb;padding:4px 11px;font-size:20px}.home-page .mobile-nav:not([hidden]){display:flex;position:absolute;z-index:9;left:0;right:0;flex-direction:column;background:#191a18;border-bottom:1px solid var(--line);padding:15px 5%;gap:14px}.home-page .mobile-nav a{text-decoration:none}}

.collection-toggle{display:flex;align-items:center;justify-content:center;gap:18px;margin:34px auto 0;padding:12px 22px;border:1px solid #8a795c;background:transparent;color:#ead2a6;text-transform:uppercase;font-size:11px;letter-spacing:.15em}
.collection-toggle:hover{background:#282620;color:#fff}
.collection-toggle[hidden]{display:none}
.collection-toggle span{font-size:17px;line-height:1}
/* Place the camera and telescope at the center of the visible crop, not the empty upper sky. */
#field-notes .feature-image img{object-position:60% 90%}
@media(max-width:760px){#field-notes .feature-image img{object-position:60% 92%}}
/* Process-led field notes sit beside the observing equipment. */
.process-notes{list-style:none;padding:0;margin:20px 0 0}
.process-notes li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;border-top:1px solid #554f45;padding:16px 0}
.process-notes li:last-child{border-bottom:1px solid #554f45}
.process-number{color:var(--gold);font-size:11px;letter-spacing:.12em;padding-top:2px}
.process-notes h3{margin:0 0 5px;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:#f0e6d5;font-weight:600}
.process-notes p{margin:0;color:#beb8ad;line-height:1.75;font-size:13px}
@media(max-width:760px){.feature-copy{padding-top:45px}.process-notes li{padding:14px 0}}

/* Newsletter invitation: the gold action anchors the far right of the masthead. */
.subscribe-trigger{border:1px solid var(--gold);background:var(--gold);color:#171510;padding:13px 18px;white-space:nowrap;text-transform:uppercase;font-size:11px;letter-spacing:.15em;font-weight:700}
.subscribe-trigger:hover{background:#e3c490;border-color:#e3c490}
.masthead .subscribe-trigger{margin-left:0}
@media(max-width:1220px){.home-page .masthead .nav,.home-page .masthead .header-action{display:none}.home-page .masthead .mobile-menu{display:block;background:none;border:1px solid #817058;color:#e3d4bb;padding:4px 11px;font-size:20px;margin-left:auto}.home-page .mobile-nav:not([hidden]){display:flex;position:absolute;z-index:9;left:0;right:0;flex-direction:column;background:#191a18;border-bottom:1px solid var(--line);padding:15px 5%;gap:14px}.home-page .mobile-nav a{text-decoration:none}.home-page .masthead .subscribe-trigger{order:3}}
@media(max-width:480px){.home-page .masthead{gap:9px;padding-inline:3%}.home-page .masthead .wordmark{font-size:16px}.home-page .masthead .mobile-menu{padding:3px 7px}.home-page .masthead .subscribe-trigger{padding:10px 9px;font-size:9px;letter-spacing:.08em}.home-page .masthead .subscribe-trigger span{display:none}}
.subscribe-dialog{width:min(92vw,540px);max-height:min(90dvh,850px);padding:0;border:1px solid #72634d;background:#171a1a;color:var(--ink);box-shadow:0 24px 100px #000c;overflow-y:auto}
.subscribe-dialog::backdrop{background:rgba(4,6,8,.78);backdrop-filter:blur(5px)}
.subscribe-panel{position:relative;padding:48px clamp(25px,7vw,60px) 36px;background:radial-gradient(circle at 86% 11%,#57452d66,transparent 35%),linear-gradient(140deg,#202321,#141718 72%);border-top:3px solid var(--gold)}
.subscribe-close{position:absolute;top:17px;right:21px;border:0;background:none;color:var(--muted);font-size:30px;line-height:1;width:36px;height:36px}.subscribe-close:hover{color:#fff}
.subscribe-mark{display:block;color:var(--gold);font-size:35px;line-height:1;margin:31px 0 18px}
.subscribe-panel h2{font:clamp(38px,7vw,56px)/1.08 var(--serif);letter-spacing:-.03em;margin:0 0 21px}.subscribe-panel h2 em{color:var(--gold);font-weight:400}
.subscribe-panel #subscribe-description{color:#c5beb2;max-width:390px;margin:0 0 30px;line-height:1.7}
.subscribe-form{display:grid;gap:11px}.subscribe-form label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}
.subscribe-form input{min-width:0;width:100%;padding:15px 16px;border:1px solid #766f62;border-radius:0;background:#0d0f10;color:var(--ink);font:inherit}.subscribe-form input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.subscribe-form button{margin-top:6px;padding:15px;border:1px solid #9a815a;background:#9a815a;color:#161510;text-align:left;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.14em}.subscribe-form button span{float:right}.subscribe-form button:disabled{cursor:not-allowed;opacity:.7}
.subscribe-status{color:#e0c69b;font-size:12px;margin:17px 0 0}.subscribe-fineprint{color:#a8a195;font-size:11px;margin:19px 0 0;border-top:1px solid #4c4942;padding-top:16px}
@media(max-width:480px){.subscribe-panel{padding-top:39px}.subscribe-mark{margin-top:21px}.subscribe-panel #subscribe-description{margin-bottom:22px}}
/* Inner pages retain a collection route when their desktop navigation folds away. */
.places-mobile-return{display:none}
@media(max-width:1220px){.about-page .masthead .nav,.places-page .masthead .nav,.about-page .masthead .header-action,.places-page .masthead .header-action{display:none}.about-page .masthead .about-mobile-return,.places-page .masthead .places-mobile-return{display:block;margin-left:auto;color:var(--gold);text-decoration:none;font-size:11px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}}
@media(max-width:480px){.about-page .masthead,.places-page .masthead{gap:9px;padding-inline:3%}.about-page .masthead .wordmark,.places-page .masthead .wordmark{font-size:16px}.about-page .masthead .about-mobile-return,.places-page .masthead .places-mobile-return{display:none}.about-page .masthead .subscribe-trigger,.places-page .masthead .subscribe-trigger{margin-left:auto;padding:10px 9px;font-size:9px;letter-spacing:.08em}.about-page .masthead .subscribe-trigger span,.places-page .masthead .subscribe-trigger span{display:none}}
