/* TGG PDF Resources */
.tgg-pdf-library{
	background:#151718;
	color:#f7f7f4;
}
.tgg-pdf-library .container{
	width:min(1320px,calc(100% - 64px));
	margin:0 auto;
}
.tgg-pdf-library-hero{
	padding:86px 0 74px;
	background:#111314;
	border-bottom:1px solid rgba(255,255,255,.08);
}
.tgg-pdf-library .kicker,
.resources-pdf-entry .kicker{
	display:block;
	margin-bottom:13px;
	color:#ffbd16;
	font-size:13px;
	font-weight:900;
	letter-spacing:.13em;
	text-transform:uppercase;
}
.tgg-pdf-library-hero h1{
	max-width:900px;
	margin:0 0 20px;
	color:#fff;
	font-size:clamp(52px,6vw,86px);
	line-height:.94;
	letter-spacing:-.05em;
}
.tgg-pdf-library-hero p{
	max-width:760px;
	margin:0;
	color:#c0c4c6;
	font-size:19px;
	line-height:1.7;
}
.tgg-pdf-filter{
	padding:34px 0;
	background:#1d1f20;
	border-bottom:1px solid rgba(255,255,255,.08);
}
.tgg-pdf-filter-list{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin:0;
	padding:0;
	list-style:none;
}
.tgg-pdf-filter-list a{
	display:inline-flex;
	align-items:center;
	min-height:42px;
	padding:10px 14px;
	border:1px solid rgba(255,255,255,.16);
	color:#fff;
	font-size:13px;
	font-weight:800;
	text-decoration:none;
}
.tgg-pdf-filter-list a:hover,
.tgg-pdf-filter-list a.is-current{
	border-color:#ffbd16;
	background:#ffbd16;
	color:#111;
}
.tgg-pdf-library-body{
	padding:72px 0 90px;
}
.tgg-pdf-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:18px;
}
.tgg-pdf-card{
	display:flex;
	flex-direction:column;
	min-width:0;
	overflow:hidden;
	border:1px solid rgba(255,255,255,.12);
	background:#202223;
}
.tgg-pdf-cover{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	height:280px;
	overflow:hidden;
	background:#111314;
}
.tgg-pdf-cover img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}
.tgg-pdf-cover-fallback{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:9px;
	color:#fff;
}
.tgg-pdf-cover-fallback strong{
	font-size:48px;
	letter-spacing:-.04em;
}
.tgg-pdf-cover-fallback span{
	color:#8f9496;
	font-size:12px;
	font-weight:800;
	letter-spacing:.12em;
}
.tgg-pdf-card-copy{
	display:flex;
	flex:1;
	flex-direction:column;
	padding:24px;
}
.tgg-pdf-card-meta{
	display:flex;
	flex-wrap:wrap;
	gap:8px 14px;
	margin-bottom:14px;
	color:#ffbd16;
	font-size:12px;
	font-weight:900;
	letter-spacing:.06em;
	text-transform:uppercase;
}
.tgg-pdf-card h2{
	margin:0 0 13px;
	color:#fff;
	font-size:26px;
	line-height:1.08;
	letter-spacing:-.025em;
}
.tgg-pdf-card p{
	margin:0 0 18px;
	color:#c0c4c6;
	font-size:17px;
	line-height:1.65;
}
.tgg-pdf-related{
	margin-top:auto;
	padding-top:14px;
	border-top:1px solid rgba(255,255,255,.09);
	color:#aeb2b4;
	font-size:14px;
}
.tgg-pdf-actions{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:20px;
}
.tgg-pdf-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:11px 15px;
	border:1px solid rgba(255,255,255,.2);
	color:#fff;
	font-size:13px;
	font-weight:900;
	text-decoration:none;
}
.tgg-pdf-btn.primary{
	border-color:#ffbd16;
	background:#ffbd16;
	color:#111;
}
.tgg-pdf-empty{
	padding:40px;
	border:1px solid rgba(255,255,255,.12);
	background:#202223;
}
.tgg-pdf-empty h2{
	margin:0 0 10px;
	color:#fff;
	font-size:30px;
}
.tgg-pdf-empty p{
	margin:0;
	color:#c0c4c6;
	font-size:17px;
}
.tgg-pdf-pagination{
	margin-top:42px;
}
.tgg-pdf-pagination .page-numbers{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin:0;
	padding:0;
	list-style:none;
}
.tgg-pdf-pagination a,
.tgg-pdf-pagination span.current{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:44px;
	min-height:44px;
	padding:10px 14px;
	border:1px solid rgba(255,255,255,.18);
	color:#fff;
	font-size:13px;
	font-weight:800;
	text-decoration:none;
}
.tgg-pdf-pagination a:hover,
.tgg-pdf-pagination span.current{
	border-color:#ffbd16;
	background:#ffbd16;
	color:#111;
}

/* Entry block on the existing Ringlock Blog / Resources page */
.resources-pdf-entry{
	padding:36px 0;
	background:#181a1b;
	border-top:1px solid rgba(255,255,255,.06);
	border-bottom:1px solid rgba(255,255,255,.08);
}
.resources-pdf-entry-inner{
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	gap:44px;
	align-items:center;
}
.resources-pdf-entry h2{
	margin:8px 0 10px;
	color:#fff;
	font-size:clamp(32px,3.5vw,48px);
	line-height:1;
	letter-spacing:-.035em;
}
.resources-pdf-entry p{
	max-width:760px;
	margin:0;
	color:#c0c4c6;
	font-size:18px;
	line-height:1.65;
}
.resources-pdf-entry .tgg-pdf-btn{
	min-width:190px;
}

/* Single document */
.tgg-pdf-single{
	padding:82px 0 96px;
	background:#151718;
	color:#fff;
}
.tgg-pdf-single-grid{
	display:grid;
	grid-template-columns:.72fr 1.28fr;
	gap:56px;
	align-items:start;
}
.tgg-pdf-single-cover{
	overflow:hidden;
	border:1px solid rgba(255,255,255,.12);
	background:#111314;
}
.tgg-pdf-single-cover img{
	width:100%;
	height:auto;
	display:block;
}
.tgg-pdf-single-copy h1{
	margin:12px 0 18px;
	font-size:clamp(44px,5vw,72px);
	line-height:.96;
	letter-spacing:-.04em;
}
.tgg-pdf-single-copy p{
	color:#c0c4c6;
	font-size:18px;
	line-height:1.7;
}
.tgg-pdf-detail-list{
	margin:28px 0;
	border-top:1px solid rgba(255,255,255,.12);
}
.tgg-pdf-detail-list>div{
	display:grid;
	grid-template-columns:160px 1fr;
	gap:20px;
	padding:14px 0;
	border-bottom:1px solid rgba(255,255,255,.1);
}
.tgg-pdf-detail-list span{
	color:#8f9496;
}
.tgg-pdf-detail-list strong{
	color:#fff;
}

@media(max-width:980px){
	.tgg-pdf-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.tgg-pdf-single-grid{
		grid-template-columns:1fr;
	}
}
@media(max-width:720px){
	.tgg-pdf-library .container{
		width:min(100% - 30px,1320px);
	}
	.tgg-pdf-library-hero{
		padding:62px 0 56px;
	}
	.tgg-pdf-library-hero h1{
		font-size:46px;
	}
	.tgg-pdf-library-hero p,
	.resources-pdf-entry p{
		font-size:17px;
	}
	.tgg-pdf-grid{
		grid-template-columns:1fr;
	}
	.tgg-pdf-cover{
		height:250px;
	}
	.resources-pdf-entry-inner{
		grid-template-columns:1fr;
		gap:22px;
	}
	.resources-pdf-entry .tgg-pdf-btn{
		width:100%;
	}
	.tgg-pdf-detail-list>div{
		grid-template-columns:1fr;
		gap:5px;
	}
}
