/*
Theme Name: concealednation2024
Theme URI: http://concealednation2024wp.com
Author: Radley Sustaire
Author URI: https://radleysustaire.com/
Version: 1.0.5f
*/

/* CSS Reset
---------------------------------------------------------------------------- */

*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

a,
a:focus,
a:hover {
	text-decoration: underline;
}

b,
strong {
	font-weight: var(--wp--custom--font-weight--semi-bold);
}

ol,
ul {
	padding: 0;
}

ol:where(:not([class*="wp-block"])),
ol:where(.wp-block-list),
ul:where(:not([class*="wp-block"])),
ul:where(.wp-block-list) {
	padding-inline-start: var(--wp--preset--spacing--large);
}

:where(body main .is-layout-constrained) > * {
	margin-block-start: var(--wp--preset--spacing--large);
}

@media ( max-width: 782px ) {
	ol:where(:not([class*="wp-block"])),
	ol:where(.wp-block-list),
	ul:where(:not([class*="wp-block"])),
	ul:where(.wp-block-list) {
		padding-inline-start: var(--wp--preset--spacing--x-large);
	}

	:where(body main .is-layout-constrained) > * {
		margin-block-start: var(--wp--preset--spacing--x-large);
	}
}

:where(body main .is-layout-constrained) > .wp-block-query {
	margin-block-start: 0;
}

div[class*="wp-block-"] figcaption {
	color: var(--wp--preset--color--secondary);
	font-size: var(--wp--preset--font-size--small);
	margin-bottom: 0;
	margin-top: 20px;
	text-align: center;
}


/* Body font size (rem)
--------------------------------------------- */
html {
	font-size: var( --wp--preset--font-size--base, clamp(20px, 1.25rem + ((1vw - 3.2px) * -0.789), 14px) );
}

body.front-end {
	font-size: inherit;
}

/* Standardize form styling
--------------------------------------------- */

input,
button,
textarea,
select {
	font: inherit;
}

input[type="button"],
input[type="email"],
input[type="search"],
input[type="submit"],
input[type="text"],
textarea {
	-webkit-appearance: none;
}

input:not([type="submit"]),
select,
textarea,
.wp-block-post-comments-form input:not([type="submit"]):not([type="checkbox"]),
.wp-block-post-comments-form textarea {
	color: var(--wp--preset--color--main);
	border-radius: 5px;
	border: solid 1px var(--wp--preset--color--main-accent);
	padding: .5em 1em;
	font-size: var(--wp--preset--font-size--small);
	width: 100%;
}

input:focus-visible,
textarea:focus-visible {
	outline-color: var(--wp--preset--color--primary);
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

label {
	width: 100%;
	display: block;
}

::placeholder {
	color: var(--wp--preset--color--secondary);
	font-size: var(--wp--preset--font-size--small);
	opacity: 0.75;
}

/* Helper styles that can't be done via theme.json
---------------------------------------------------------------------------- */

/* Admin bar */
body { --admin-bar-height: 0; }
body.admin-bar { --admin-bar-height: 32px; }
@media (max-width: 782px) { body { --admin-bar-height: 46px; } }

/* Read more link */
a.more-link {
	display: block;
}

/* Inline code */
*:not(.wp-block-code) > code {
	background-color: var(--wp--preset--color--tertiary);
	font-weight: var(--wp--custom--font-weight--medium);;
	padding: 3px 5px;
	position: relative;
	border-radius: 3px;
}

/* Adjust terms at bottom of posts */
.single .wp-block-group .wp-block-post-terms,
.blog .wp-block-group .wp-block-post-terms {
	margin-bottom: -8px !important;
}

/* Remove margin on term description on archive pages */
.wp-block-term-description p:last-child {
	margin-bottom: 0;
}

/* Remove last separator on post list */
.remove-border-and-padding .wp-block-post-template li:last-child .wp-block-separator {
	display: none;
}

/* Hide post meta div if no tags assigned */
.single .wp-block-group:has(> .post-meta:empty) {
	display: none;
}

/* Sticky Header
---------------------------------------------------------------------------- */
body.front-end header.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: #fff;
}

@media ( min-width: 600.1px ) {
	body.front-end header.site-header {
		top: var(--admin-bar-height);
	}
}

/* Fixed header when set up by main.js */
body.front-end.fixed-nav header.site-header {
	position: fixed;
	left: 0;
	right: 0;
}

/* Move header separator down 1px to prevent anti-aliasing */
.site-header .wp-block-group.has-secondary-background-color {
	transform: translateY(1px);
}

/* Mobile menu button styles
---------------------------------------------------------------------------- */
html button.rs-mobile-menu-button {
	aspect-ratio: 1;
}

@media ( min-width: 782px ) {
	.rs-mobile-menu-button svg {
		width: 30px;
		height: 30px;
	}
}

/* Mobile menu styles
---------------------------------------------------------------------------- */
body:has(.rs-mobile-menu--container.open) {
	overflow: hidden;
}

body:has(.rs-mobile-menu--container.open) :where(main, footer) {
	opacity: 0.8;
	filter: blur(2px);
}

body:has(.rs-mobile-menu--container.open) :where(main, footer) {
}

body.front-end .rs-mobile-menu--container {
	position: absolute;
	right: 0;
	z-index: 100;
	max-height: calc( 100vh - 64px );
	overflow: auto;

	transform: translateX( 100% );
	transition: transform 0.3s ease;
}

@supports ( var(--admin-bar-height) ) {
	body.front-end .rs-mobile-menu--container {
		max-height: calc( 100vh - 64px - var(--admin-bar-height) );
	}
}

body.front-end .rs-mobile-menu--container.open {
	transform: translateX( 0% );
}

body.front-end .rs-mobile-menu--inner {
	padding-right: var(--wp--preset--spacing--large);
}

@media ( min-width: 1080px ) {
	body.front-end .rs-mobile-menu--container {
		--rs-menu-width: 350px;
		width: calc( 50vw - ( var(--wp--style--global--wide-size) / 2 ) + var(--rs-menu-width) +  var(--wp--preset--spacing--large) );
	}

	body.front-end .rs-mobile-menu--inner {
		max-width: calc( var(--rs-menu-width) - var(--wp--preset--spacing--large) );
		padding-right: 0;
	}
}

@media ( max-width: 782px ) {
	body.front-end .rs-mobile-menu--container nav.has-small-font-size {
		color: #fffa;
	}
}

/* Hide sticky ad when menu is open
---------------------------------------------------------------------------- */
body:has(.rs-mobile-menu--container.open) #d_IL_INSEARCH {
	display: none !important;
}

/* Sidebar
---------------------------------------------------------------------------- */
/*
.main-columns
.content-column
.sidebar-column
*/

@media ( min-width: 782px ) {
	.main-columns {
		gap: var(--wp--preset--spacing--x-large) !important;
	}

	.sidebar-column {
		max-width: 300px;
		box-sizing: content-box;

		border-left: 1px solid #0002;
		padding-left: var(--wp--preset--spacing--x-large);
		border-radius: 0;
	}
}

@media ( max-width: 781.9px ) {
	.sidebar-column {
		/*margin-left: calc( -1 * var(--wp--style--root--padding-right) ) !important;*/
		/*margin-right: calc( -1 * var(--wp--style--root--padding-right) ) !important;*/
		margin-left: auto !important;
		margin-right: auto !important;

		padding-top: var(--wp--preset--spacing--x-large);
		padding-bottom: var(--wp--preset--spacing--x-large);
	}

	.sidebar-stack {
		gap: var(--wp--preset--spacing--x-large) !important;
	}

	.sidebar-recommended-posts {
		padding-left: var(--wp--preset--spacing--large);
		padding-right: var(--wp--preset--spacing--large);
	}

	.sidebar-recommended-posts .wp-block-columns {
		display: grid;
		grid-template-columns: 3fr 1fr;
		gap: var(--wp--preset--spacing--large);
	}
}

/* All pages
---------------------------------------------------------------------------- */
@media ( max-width: 782px ) {
	body main.has-global-padding {
		padding-left: 0;
		padding-right: 0;
	}

	.singular-recommended-posts {
		padding-left: var(--wp--preset--spacing--medium);
		padding-right: var(--wp--preset--spacing--medium);
	}
}

/* Single posts and pages
---------------------------------------------------------------------------- */
body.single main .display-field--featured_image img {
	max-width: 100%;
	height: auto;
	display: block;
}

.cn_post_date {
	display: flex;
	flex-direction: column;
	/*align-items: flex-end;*/
}

.entry-content a:not(.button):not(:hover, :focus-visible) {
	/* Links within an article should be red, per Brandon */
	color: var(--wp--preset--color--primary);
}

.entry-content .has-link-color a:not(.button):not(:hover, :focus-visible) {
	/* But not if another color is defined */
	color: inherit;
}

@media ( max-width: 782px ) {
	body.single main .entry-content > .wp-block-image {
		margin-left: calc( (-1 * var(--wp--preset--spacing--medium)) - 0.5px ) !important;
		margin-right: calc( -1 * var(--wp--preset--spacing--medium) ) !important;
	}

	body.single main .entry-content > .wp-block-image .wp-element-caption {
		margin-left: var(--wp--preset--spacing--medium);
		margin-right: var(--wp--preset--spacing--medium);
	}
}

/* Featured Video in post content
---------------------------------------------------------------------------- */
.entry-content > .wp-block-embed {
	max-width: 100vw;
}

.wp-block-embed iframe {
	width: 100%;
}

@media ( max-width: 782px ) {
	.entry-content > .wp-block-embed {
		margin-left: calc( -1 * var(--wp--preset--spacing--medium) ) !important;
		margin-right: calc( -1 * var(--wp--preset--spacing--medium) ) !important;
	}
}

.entry-content > .wp-block-embed iframe {
	max-width: 100%;
	height: auto;
	aspect-ratio: calc(1920/1080);
}

/* Featured Video with aspect ratio option
---------------------------------------------------------------------------- */
body .is-layout-flex > .display-field--featured_image {
	width: 100%;
}

.cn-featured-video-embed {
	width: 100%;
}

.cn-featured-video-embed.has-aspect-ratio {
	height: 100%;
}

.cn-featured-video-embed iframe {
	display: block;
	width: 100%;
}

.cn-featured-video-embed.has-aspect-ratio iframe {
	height: 100%;
}

/* Front Page
---------------------------------------------------------------------------- */
.category-section-heading .wp-block-heading a:not(:hover, :focus-visible) {
	text-decoration: none;
}

@media ( max-width: 782px ) {
	.singular-recommended-posts .wp-block-columns {
		display: grid;
		grid-template-columns: 3fr 1fr;
	}

	.wp-block-columns.fp-secondary-post {
		display: grid;
		grid-template-columns: 3fr 1fr;
	}

	/* Mobile front page, secondary post layout */
	.wp-block-post:has(.fp-secondary-post) {
		margin-top: var(--wp--preset--spacing--small);
		margin-bottom: var(--wp--preset--spacing--small);
	}

	.wp-block-post:has(.fp-secondary-post):not(:last-child) {
		padding-bottom: var(--wp--preset--spacing--medium);
		border-bottom: 1px dashed #c4c4c4;
	}

	.fp-secondary-post .mobile-featured-image {
		display: grid;
		grid-template-columns: 3fr 1fr;
		gap: 8px;
	}

	.fp-secondary-post figure.wp-block-post-featured-image {
		order: 2;
	}
}

/* Read more buttons
---------------------------------------------------------------------------- */
p.cn-read-more {
	width: fit-content;
	text-transform: uppercase;
	font-size: 15px;
	font-weight: 700;
}

p.cn-read-more > a {
	text-decoration: none;
}

p.cn-read-more > a::after {
	position: relative;
	margin-left: 0.5ch;
	top: 2px;
	left: 0;
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' viewBox='0 0 16 16'%3E%3Cpath fill='%23DA380A' d='M0 8a8.001 8.001 0 0016 0A8.001 8.001 0 000 8zm3.636-.727h5.819L7.273 5.09l1.454-1.438L13.091 8l-4.364 4.364-1.454-1.455 2.182-2.182H3.636V7.273z' fill-rule='nonzero'%3E%3C/path%3E%3C/svg%3E");
	transition: margin-left 0.15s linear;
}

p.cn-read-more:has(a:hover, a:focus-visible) > a::after {
	margin-left: 1ch;
}

/* Social links
---------------------------------------------------------------------------- */
.wp-block-social-links {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 15px 5px !important;
}
.wp-block-social-links > .wp-social-link.wp-block-social-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	background: none !important;
}

.wp-block-social-links > li.wp-social-link a {
	padding: 0 !important;
}

.wp-block-social-links > li.wp-social-link a img {
	width: 100%;
	height: auto;
	max-width: 60px;
}

.wp-block-social-links:has(>li:nth-child(2)) {
	grid-template-columns: repeat(2, 1fr);
}
.wp-block-social-links:has(>li:nth-child(3)) {
	grid-template-columns: repeat(3, 1fr);
}

/* Footer
---------------------------------------------------------------------------- */
footer .wp-block-navigation a.wp-block-navigation-item__content:where(:hover, :focus-visible) {
	color: #fff !important;
}

@media ( max-width: 782px ) {
	footer .footer-row {
		display: flex;
		flex-direction: column;
		text-align: center;
	}

	/* Center footer on mobile */
	footer .wp-block-group.is-layout-flex {
		text-align: center;
	}

	footer .wp-block-group.is-layout-flex,
	footer .wp-block-group.alignwide {
		display: flex;
		flex-direction: column;
		gap: var(--wp--preset--spacing--x-large);
		margin: 0;
	}

	footer .wp-block-group.alignwide {
		padding-top: var(--wp--preset--spacing--x-large);
		padding-bottom: var(--wp--preset--spacing--x-large);
	}
}

/* Comment Count
---------------------------------------------------------------------------- */
.cn-comment-count a {
	text-decoration: none;
}

.cn-comment-count svg {
	width: 2ch;
	margin-right: 0.5ch;
}

.cn-comment-count svg path {
	fill: currentColor;
}

/* Rank Math SEO
---------------------------------------------------------------------------- */
#rank-math-analytics-stats-wrapper {
	overflow: hidden;
}

/* Advanced Ads
---------------------------------------------------------------------------- */
.conce-sidebar-1,
.conce-sidebar-2 {
	text-align: center;
}

.conce-content {
	max-width: calc( 100vw - (2 *var(--wp--preset--spacing--medium) ) );
}

/* Unused
---------------------------------------------------------------------------- */

/* Unused
---------------------------------------------------------------------------- */