/* ==========================================================================
   Article page improvements — single nzgeo_archive posts
   ========================================================================== */

/* --------------------------------------------------------------------------
   Reading progress bar (Priority 1)
   -------------------------------------------------------------------------- */

#nzgeo-reading-progress {
	position: fixed;
	top: 0;
	left: 0;
	width: 0;
	height: 3px;
	background: #111;
	z-index: 99999;
	transition: width 0.1s linear;
	pointer-events: none;
}

/* --------------------------------------------------------------------------
   Full-bleed images — break out of the 620px column (Priority 1)
   -------------------------------------------------------------------------- */

.nzgeo_template_single_left .content-block figure.wp-caption.full-bleed,
.nzgeo_template_single_left .content-block p.full-bleed {
	width: 100vw !important;
	max-width: 100vw !important;
	position: relative !important;
	left: 50% !important;
	right: 50% !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
}

.nzgeo_template_single_left .content-block figure.wp-caption.full-bleed img,
.nzgeo_template_single_left .content-block p.full-bleed img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
}

/* --------------------------------------------------------------------------
   Portrait images — cap height so they don't create massive scroll gaps (Priority 3)
   -------------------------------------------------------------------------- */

.nzgeo_template_single_left .content-block figure.wp-caption img[height],
.nzgeo_template_single_left .content-block .wp-caption img {
	max-height: 80vh;
	width: auto !important;
	object-fit: contain;
}

/* Don't constrain full-bleed images with the portrait cap */
.nzgeo_template_single_left .content-block figure.wp-caption.full-bleed img {
	max-height: 100vh;
	object-fit: cover;
	width: 100vw !important;
}

/* --------------------------------------------------------------------------
   Body text — larger size, better line-height (Priority 2)
   -------------------------------------------------------------------------- */

.nzgeo_template_single_left .content-block p:not(.sidebar-right *),
.nzgeo_template_single_left .content-block>p:not(.sidebar-right *) {
	font-family: 'Merriweather', Georgia, serif;
	font-size: 17px;
	line-height: 1.75;
	padding-bottom: 24px;
	color: #1a1a1a;
}

.nzgeo_template_single_left blockquote p {
	font-family: 'proxima-nova';
	font-weight: 300;
	font-size: 2rem;
	padding-top: 20px;
	padding-bottom: 20px;
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	line-height: 1.2em;
	width: 100% !important;
}

.nzgeo_template_single_left blockquote {
	margin-bottom: 20px;
}

/* Lead paragraph — slightly larger as a visual entry point (Priority 2) */
.nzgeo_template_single_left .content-block>p:first-of-type:not(.sidebar-right *) {
	font-size: 19px !important;
	line-height: 1.7 !important;
	font-weight: 400;
	color: #111;
}

/* --------------------------------------------------------------------------
   Image captions — differentiated from body text (Priority 2)
   -------------------------------------------------------------------------- */

.nzgeo_template_single_left .content-block .wp-caption-text,
.nzgeo_template_single_left .content-block figcaption {
	/* font-family: "proxima-nova", sans-serif !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	color: #666 !important;
	font-style: italic;
	padding-top: 6px;
	padding-bottom: 12px !important;
	background: transparent !important;
	width: auto !important; */
}

/* --------------------------------------------------------------------------
   Blockquote — inherit existing style, ensure correct width (Priority 2)
   -------------------------------------------------------------------------- */

.nzgeo_template_single_left .content-block blockquote p {
	font-size: 1.8rem !important;
	line-height: 1.3 !important;
	font-family: 'proxima-nova', sans-serif !important;
	color: #111 !important;
	width: 100% !important;
}

/* --------------------------------------------------------------------------
   Sidebar repositioned after a leading full-bleed image
   -------------------------------------------------------------------------- */

/* When JS detects the first content is full-bleed, it moves the sidebar and
   adds .sidebar-after-bleed. Clear the float so it doesn't overlap the
   pin-spacer, and let it resume normal flow beside the following text. */
.nzgeo_template_single_left .content-block .sidebar-right.sidebar-after-bleed {
	clear: right;
	margin-top: 20px;
}

/* --------------------------------------------------------------------------
   Sticky sidebar (Priority 5)
   -------------------------------------------------------------------------- */

.nzgeo_template_single_left .sidebar-right {
	/* position: sticky; */
	/* top: 100px; */
	/* align-self: flex-start;
	max-height: calc(100vh - 120px);
	overflow-y: auto;
	scrollbar-width: none; */
}

.nzgeo_template_single_left .sidebar-right::-webkit-scrollbar {
	display: none;
}

/* On admin bar pages push the sticky down past the bar */
.admin-bar .nzgeo_template_single_left .sidebar-right {
	/* top: 132px; */
	/* max-height: calc(100vh - 152px); */
}

/* --------------------------------------------------------------------------
   Article byline — reading time badge (Priority 4)
   -------------------------------------------------------------------------- */

.nzgeo-reading-time {
	display: inline-block;
	font-family: "proxima-nova", sans-serif;
	font-size: 0.75rem;
	color: #888;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-left: 8px;
}

/* --------------------------------------------------------------------------
   Social sharing buttons — accessible labels (Priority 6)
   -------------------------------------------------------------------------- */

.social a[data-type] {
	position: relative;
}

/* Screen-reader text for icon-only buttons already uses .screen-reader-text —
   this reinforces any button that only has an SVG child */
.social a svg:only-child::after {
	content: attr(aria-label);
}

/* --------------------------------------------------------------------------
   Subscription CTA at article end (Priority 5)
   -------------------------------------------------------------------------- */

.nzgeo-article-subscribe-cta {
	border-top: 2px solid #111;
	margin-top: 40px;
	padding-top: 28px;
	padding-bottom: 32px;
}

.nzgeo-article-subscribe-cta p {
	font-family: "proxima-nova", sans-serif !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
	color: #333 !important;
	margin-bottom: 16px !important;
	padding-bottom: 0 !important;
}

/* --------------------------------------------------------------------------
   Responsive — collapse sidebar below 900 px (Priority 1)
   -------------------------------------------------------------------------- */

@media (max-width: 900px) {
	.nzgeo_template_single_left .sidebar-right {
		position: static;
		max-height: none;
		overflow-y: visible;
	}

	.nzgeo_template_single_left .content-block p:not(.sidebar-right *),
	.nzgeo_template_single_left .content-block>p:not(.sidebar-right *) {
		width: 100% !important;
	}

	.nzgeo_template_single_left .content-block figure.wp-caption {
		width: 100% !important;
	}

	/* Full-bleed images stay full-width on mobile but don't need negative margins */
	.nzgeo_template_single_left .content-block figure.wp-caption.full-bleed,
	.nzgeo_template_single_left .content-block p.full-bleed {
		left: 0 !important;
		right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100% !important;
	}
}

/* --------------------------------------------------------------------------
   Article <time> element (Priority 6)
   -------------------------------------------------------------------------- */

.nzgeo-article-date {
	font-family: "proxima-nova", sans-serif;
	font-size: 0.75rem;
	color: #888;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	display: inline-block;
	margin-left: 8px;
}

.nzgeo_template_single_wrapper .scrollmagic-pin-spacer {
	width: 100vw !important;
}


.nzgeo_template_single_wrapper figcaption.wp-caption-text {
	position: absolute;
	top: 20px;
	left: 20px;
	background: transparent;
	z-index: 2;
	transition: background .5s ease-in-out, opacity .5s ease-in-out, width .5s ease-in-out, height .5s ease-in-out, color .5s ease-in;
	padding: 20px;
	overflow: hidden;
}

.nzgeo_template_single_wrapper .wp-caption-text {
	font-family: "proxima-nova", sans-serif;
	font-size: 0.9rem;
	line-height: 1.2rem;
	padding: 20px;
}

.nzgeo_template_single_wrapper .wp-caption-text.life {
	width: 70%;
	position: static;
	padding: 0;
}

.nzgeo_template_single_wrapper .wp-caption-text.closed {
	width: 20px;
	height: 20px;
	z-index: 2;
	position: relative;
	background: transparent;
	position: absolute;
	top: 20px;
	left: 20px;
	color: transparent;
	overflow: hidden;
}

figcaption {
	padding: 0;
}

figcaption.wp-caption-text {
	padding-top: 10px;
}

.nzgeo_template_single_wrapper figcaption.wp-caption-text.open {
	background-color: rgba(255, 255, 255, 0.8);
}

.portrait .caption-content,
.portrait figcaption.wp-caption-text {
	width: 250px;
}

.caption-content,
figcaption.wp-caption-text {
	width: 450px;
	padding-top: 12px;
}

.caption-content.life,
figcaption.life.wp-caption-text {
	width: 100%;
}

.gallery-caption {
	text-align: left;
	border-left: 1px solid #999;
	padding: 0;
	padding-left: 13px;
	margin-top: 15px;
	padding-right: 13px;
	width: 70%;
}

.toggle {
	width: 20px;
	height: 20px;
	background-size: 100%;
	background-repeat: no-repeat;
}

.closed .toggle {
	background-image: url("/wp-content/themes/southinc-child/images/caption-open.png");
}

.open .toggle {
	background-image: url("/wp-content/themes/southinc-child/images/caption-close.png");
}