
:root{
	--ndjr-max: 1320px;
	--ndjr-text: #141414;
	--ndjr-muted: #6b6b6b;
	--ndjr-line: rgba(20,20,20,.14);
	--ndjr-bg: #fff;
}

.ndjr-wrap{background:var(--ndjr-bg);color:var(--ndjr-text)}
.ndjr-container{width:min(calc(100% - 48px),var(--ndjr-max));margin-inline:auto}

.ndjr-hero{
	position:relative;
	min-height:clamp(520px,72vh,860px);
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
	background:#111 center/cover no-repeat;
	color:#fff;
}
.ndjr-hero:before{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.44) 55%,rgba(0,0,0,.68) 100%);
}
.ndjr-hero__inner{
	position:relative;
	z-index:1;
	width:min(calc(100% - 48px),1000px);
	text-align:center;
	padding:80px 0 70px;
}
.ndjr-hero__wordmark{
	display:block;
	max-width:min(620px,72vw);
	max-height:210px;
	width:auto;
	height:auto;
	object-fit:contain;
	margin:0 auto 26px;
	filter:drop-shadow(0 2px 18px rgba(0,0,0,.20));
}
.ndjr-hero__fallback-title{
	margin:0 0 22px;
	font-size:clamp(52px,8vw,110px);
	line-height:.92;
	letter-spacing:-.055em;
	font-weight:700;
}
.ndjr-hero__year{
	font-size:clamp(20px,2.2vw,30px);
	letter-spacing:.12em;
	font-weight:500;
}
.ndjr-hero__locations{
	margin-top:13px;
	font-size:clamp(14px,1.3vw,18px);
	line-height:1.5;
	white-space:pre-line;
	opacity:.9;
}

.ndjr-intro{padding:clamp(72px,9vw,130px) 0}
.ndjr-intro__caption{
	max-width:940px;
	margin:0 0 30px;
	font-size:clamp(25px,3.3vw,48px);
	line-height:1.1;
	letter-spacing:-.035em;
	font-weight:500;
}
.ndjr-prose{
	max-width:900px;
	font-size:clamp(17px,1.3vw,21px);
	line-height:1.75;
}
.ndjr-prose > *:first-child{margin-top:0}
.ndjr-prose > *:last-child{margin-bottom:0}

.ndjr-program{padding:0 0 clamp(80px,10vw,150px)}
.ndjr-section-kicker{
	margin:0 0 28px;
	font-size:12px;
	font-weight:700;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--ndjr-muted);
}
.ndjr-program__row{
	display:grid;
	grid-template-columns:minmax(130px,180px) minmax(125px,160px) minmax(280px,1fr) minmax(200px,300px);
	gap:26px;
	align-items:center;
	padding:27px 0;
	border-top:1px solid var(--ndjr-line);
	text-decoration:none!important;
	color:inherit!important;
	transition:opacity .18s ease;
}
.ndjr-program__row:last-child{border-bottom:1px solid var(--ndjr-line)}
.ndjr-program__row:hover{opacity:.62}
.ndjr-program__art img{
	display:block;
	max-width:135px;
	max-height:54px;
	width:auto;
	height:auto;
	object-fit:contain;
}
.ndjr-program__art-label{
	font-size:12px;
	letter-spacing:.12em;
	text-transform:uppercase;
	font-weight:700;
}
.ndjr-program__when{
	font-size:14px;
	line-height:1.45;
	font-variant-numeric:tabular-nums;
}
.ndjr-program__title{
	font-size:clamp(20px,2vw,31px);
	line-height:1.1;
	letter-spacing:-.025em;
	font-weight:600;
}
.ndjr-program__subtitle{
	display:block;
	margin-top:7px;
	font-size:14px;
	line-height:1.45;
	font-weight:400;
	color:var(--ndjr-muted);
}
.ndjr-program__location{
	font-size:14px;
	line-height:1.5;
}
.ndjr-program__source{
	display:block;
	margin-top:6px;
	font-size:10px;
	text-transform:uppercase;
	letter-spacing:.12em;
	color:var(--ndjr-muted);
}

.ndjr-recognitions{padding:clamp(75px,9vw,130px) 0;background:#f5f5f2}
.ndjr-video{padding:clamp(75px,9vw,130px) 0}
.ndjr-video__embed{position:relative;aspect-ratio:16/9;background:#111;overflow:hidden}
.ndjr-video__embed iframe,.ndjr-video__embed video{width:100%;height:100%;display:block;border:0}
.ndjr-video__link{font-size:18px}

.ndjr-archive{padding:clamp(72px,8vw,120px) 0 clamp(100px,10vw,160px)}
.ndjr-archive__header{margin-bottom:clamp(70px,8vw,110px)}
.ndjr-archive__eyebrow{
	margin:0 0 18px;
	font-size:12px;
	letter-spacing:.18em;
	text-transform:uppercase;
	font-weight:700;
	color:var(--ndjr-muted);
}
.ndjr-archive__title{
	margin:0;
	font-size:clamp(54px,9vw,130px);
	line-height:.88;
	letter-spacing:-.065em;
	font-weight:650;
}
.ndjr-edition{margin-top:clamp(72px,9vw,130px)}
.ndjr-edition:first-of-type{margin-top:0}
.ndjr-edition__heading{
	display:flex;
	justify-content:space-between;
	align-items:end;
	gap:20px;
	padding-bottom:20px;
	border-bottom:1px solid var(--ndjr-line);
	margin-bottom:34px;
}
.ndjr-edition__title{
	margin:0;
	font-size:clamp(30px,4vw,58px);
	letter-spacing:-.045em;
	line-height:1;
}
.ndjr-edition__link{font-size:13px;text-decoration:none}
.ndjr-cards{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:22px;
}
.ndjr-card{
	position:relative;
	display:block;
	min-height:470px;
	background:#171717 center/cover no-repeat;
	color:#fff!important;
	text-decoration:none!important;
	overflow:hidden;
}
.ndjr-card:before{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.67));
	transition:background .2s ease;
}
.ndjr-card:hover:before{background:linear-gradient(180deg,rgba(0,0,0,.19),rgba(0,0,0,.78))}
.ndjr-card__inner{
	position:absolute;
	inset:0;
	z-index:1;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	padding:30px;
}
.ndjr-card__wordmark{
	position:absolute;
	left:30px;
	right:30px;
	top:50%;
	transform:translateY(-50%);
	max-width:calc(100% - 60px);
	max-height:120px;
	width:auto;
	height:auto;
	object-fit:contain;
	object-position:left center;
}
.ndjr-card__title{
	margin:0;
	font-size:clamp(28px,3vw,44px);
	line-height:1;
	letter-spacing:-.04em;
}
.ndjr-card__meta{
	margin-top:11px;
	font-size:13px;
	line-height:1.45;
	opacity:.8;
	white-space:pre-line;
}
.ndjr-empty{padding:40px 0;color:var(--ndjr-muted)}

@media(max-width:980px){
	.ndjr-program__row{grid-template-columns:130px 125px 1fr}
	.ndjr-program__location{grid-column:3}
	.ndjr-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
	.ndjr-container{width:min(calc(100% - 30px),var(--ndjr-max))}
	.ndjr-hero{min-height:580px}
	.ndjr-hero__inner{width:calc(100% - 30px)}
	.ndjr-program__row{grid-template-columns:1fr;gap:10px;padding:24px 0}
	.ndjr-program__location{grid-column:auto}
	.ndjr-program__art{margin-bottom:8px}
	.ndjr-cards{grid-template-columns:1fr}
	.ndjr-card{min-height:430px}
}
