Library/style_full_width.css*{
	box-sizing:border-box
}
html{
	scroll-behavior:smooth
}
body{
	margin:0;
	background:#05070a;
	color:#f4f6f8;
	font-family:Arial,Helvetica,sans-serif;
	line-height:1.55;
	overflow-x:hidden
}
a{
	color:inherit;
	text-decoration:none
}
img{
	display:block;
	max-width:100%
}
:root{
	--gap:5px;
	--gold:#d69a42;
	--panel:#08101a
}
.topbar{
	height:64px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:0 max(24px,4vw);
	background:rgba(5,7,10,.97);
	position:sticky;
	top:0;
	z-index:30;
	border-bottom:1px solid rgba(255,255,255,.09)
}
.brand{
	font-weight:800;
	letter-spacing:.08em
}
.brand small{
	display:block;
	font-size:.52rem;
	letter-spacing:.42em;
	margin-top:1px;
	color:#b9c0c8
}
.nav{
	display:flex;
	gap:1.35rem;
	font-size:.69rem;
	text-transform:uppercase;
	letter-spacing:.11em
}
.eyebrow{
	font-size:.67rem;
	text-transform:uppercase;
	letter-spacing:.22em;
	font-weight:700;
	color:#d1d6db
}
.button{
	display:inline-block;
	margin-top:1.25rem;
	border:1px solid rgba(214,154,66,.75);
	padding:.72rem 1rem;
	text-transform:uppercase;
	letter-spacing:.11em;
	font-size:.67rem;
	font-weight:700;
	color:#f4f6f8
}
.button:hover{
	background:var(--gold);
	color:#07101a
}
.footer{
	padding:2.2rem 5vw;
	text-align:center;
	color:#8f98a3;
	border-top:1px solid rgba(255,255,255,.08);
	font-size:.78rem
}
/* Compact editorial landing page */
.landing-page{
	background:radial-gradient(circle at 15% 20%,#0a263d 0,#07131f 33%,#05070a 72%)
}
.landing-page main{
	max-width:1600px;
	margin:0 auto;
	background:rgba(3,8,13,.62)
}
.landing-hero{
	position:relative;
	height:clamp(420px,54vw,690px);
	overflow:hidden
}
.landing-hero>img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center 43%
}
.landing-hero:after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(0deg,rgba(2,8,14,.92) 0,rgba(2,8,14,.18) 55%,rgba(2,8,14,.08)),linear-gradient(90deg,rgba(2,8,14,.32),transparent 55%)
}
.landing-hero-copy{
	position:absolute;
	z-index:2;
	left:50%;
	bottom:2.6rem;
	transform:translateX(-50%);
	width:min(1100px,90%);
	text-align:center
}
.landing-hero h1{
	font-size:clamp(2.35rem,5vw,5.2rem);
	line-height:1;
	margin:.35rem 0 .65rem;
	letter-spacing:.015em;
	text-transform:uppercase
}
.landing-hero-copy>p:last-child{
	margin:0;
	color:#d7dde3;
	font-size:clamp(.78rem,1.2vw,1rem)
}
.landing-intro{
	text-align:center;
	padding:2.5rem max(24px,6vw) 2.8rem;
	border-bottom:1px solid rgba(255,255,255,.1)
}
.landing-intro h2{
	font-size:clamp(1.7rem,3vw,3rem);
	line-height:1.12;
	margin:0 auto .75rem;
	max-width:1050px
}
.landing-intro p{
	margin:0 auto;
	max-width:870px;
	color:#c0c8d0
}
.landing-category{
	display:grid;
	grid-template-columns:minmax(220px,320px) 1fr;
	gap:2rem;
	padding:1.3rem max(20px,2.2vw);
	border-bottom:1px solid rgba(255,255,255,.11);
	align-items:stretch
}
.landing-copy{
	padding:1rem .4rem;
	display:flex;
	flex-direction:column;
	justify-content:center
}
.landing-copy h2{
	font-size:clamp(1.8rem,3vw,3.2rem);
	line-height:1.02;
	margin:.25rem 0 .75rem
}
.landing-copy p:not(.eyebrow){
	color:#c0c8d0;
	margin:0;
	max-width:290px
}
.landing-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	grid-template-rows:repeat(2,clamp(130px,13vw,225px));
	gap:var(--gap)
}
.landing-grid a{
	overflow:hidden;
	background:#111
}
.landing-grid img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform .35s,filter .35s
}
.landing-grid a:hover img{
	transform:scale(1.025);
	filter:brightness(.9)
}
/* Gallery pages */
.breadcrumbs{
	max-width:1800px;
	margin:auto;
	padding:.8rem 1.25rem;
	color:#9da6af;
	font-size:.75rem
}
.gallery-header{
	max-width:1120px;
	margin:auto;
	text-align:center;
	padding:3rem 1.25rem 2.6rem
}
.gallery-header h1{
	font-size:clamp(2.7rem,5vw,5.6rem);
	line-height:.96;
	margin:0
}
.gallery-header p{
	color:#b6bec7;
	max-width:850px;
	margin:1rem auto 0
}
.justified-gallery{
	width:100vw;
	max-width:none;
	margin-left:calc(50% - 50vw);
	padding:var(--gap);
	display:flex;
	flex-wrap:wrap;
	gap:var(--gap);
	align-items:flex-start
}
.gallery-item{
	margin:0;
	position:relative;
	overflow:hidden;
	background:#111;
	flex:0 0 auto
}
.gallery-link{
	display:block;
	width:100%;
	height:100%;
	cursor:zoom-in
}
.gallery-item img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform .25s,filter .25s
}
.gallery-item:hover img{
	transform:scale(1.025);
	filter:brightness(.9)
}
.gallery-item figcaption{
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip-path:inset(50%);
	white-space:nowrap
}
.lightbox{
	position:fixed;
	inset:0;
	background:rgba(0,0,0,.97);
	z-index:100;
	display:none;
	grid-template-columns:auto 1fr auto;
	align-items:center;
	padding:3rem 1rem 1rem
}
.lightbox.open{
	display:grid
}
.lightbox-stage{
	display:flex;
	flex-direction:column;
	align-items:center
}
.lightbox img{
	max-height:calc(100vh - 8rem);
	max-width:100%;
	object-fit:contain
}
.lightbox-caption{
	margin-top:1rem;
	color:#d0d5da;
	text-align:center;
	max-width:1000px
}
.lightbox button{
	background:none;
	border:0;
	color:white;
	font-size:2.4rem;
	cursor:pointer
}
.lightbox-close{
	position:absolute;
	right:1rem;
	top:.5rem
}
.backlink{
	text-align:center;
	padding:1.8rem
}
.backlink a{
	border-bottom:1px solid #aaa
}
@media(max-width:900px){
	.nav{
		display:none
}
	.landing-category{
		grid-template-columns:1fr
}
	.landing-copy p:not(.eyebrow){
		max-width:none
}
	.landing-grid{
		grid-template-rows:repeat(2,clamp(120px,28vw,220px))
}
}
@media(max-width:600px){
	.landing-hero{
		height:430px
}
	.landing-grid{
		grid-template-columns:repeat(2,1fr);
		grid-template-rows:repeat(3,150px)
}
	.lightbox{
		grid-template-columns:1fr
}
	.lightbox-prev,.lightbox-next{
		position:absolute;
		top:50%
}
	.lightbox-prev{
		left:0
}
	.lightbox-next{
		right:0
}
}
