/* NateDaniels.net editorial design and contextual cross-site connections. */

.tcs-modern-blog .elementor-element-05d5ebf {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.tcs-modern-blog .elementor-element-05d5ebf::before {
	content: "";
	position: absolute;
	inset: 8% auto auto 44%;
	width: min(44vw, 650px);
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(87, 188, 227, 0.16), rgba(87, 188, 227, 0) 68%);
	pointer-events: none;
	z-index: -1;
}

.tcs-modern-blog .elementor-element-188530a h1 {
	max-width: 12ch;
	text-wrap: balance;
}

.tcs-modern-blog .elementor-element-3b5a0ca h2 {
	margin: 0 0 0.85rem;
	color: #69c5e9;
	font-size: clamp(1.4rem, 2.5vw, 2.15rem);
	line-height: 1.15;
	text-wrap: balance;
}

.tcs-modern-blog .elementor-element-3b5a0ca p {
	max-width: 62ch;
	margin-bottom: 0;
}

.tcs-modern-blog .elementor-element-bb835ae .elementor-nav-menu {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.tcs-modern-blog .elementor-element-bb835ae .menu-item a {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 0.65rem 1rem;
	border: 1px solid rgba(123, 177, 222, 0.38);
	border-radius: 999px;
	background: rgba(29, 57, 91, 0.74);
	color: #f7fbff;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.15;
	text-decoration: none;
	transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.tcs-modern-blog .elementor-element-bb835ae .menu-item a:hover,
.tcs-modern-blog .elementor-element-bb835ae .menu-item a:focus-visible,
.tcs-modern-blog .elementor-element-bb835ae .current-menu-item a {
	border-color: #ffd21c;
	background: rgba(255, 210, 28, 0.12);
	color: #ffd21c;
	transform: translateY(-1px);
}

.tcs-modern-blog .elementor-element-bb835ae .menu-item a:focus-visible,
.tcs-modern-blog .elementor-post__read-more:focus-visible,
.tcs-modern-blog .tcs-article-category:focus-visible,
.tcs-editorial-cta__button:focus-visible {
	outline: 3px solid #f7fbff;
	outline-offset: 3px;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-posts-container {
	align-items: stretch;
	gap: clamp(1.1rem, 2vw, 1.75rem);
}

.tcs-modern-blog .elementor-element-7fa7792 article.elementor-post {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border: 1px solid rgba(123, 177, 222, 0.34);
	border-radius: 22px;
	background: linear-gradient(145deg, rgba(36, 69, 107, 0.92), rgba(19, 47, 80, 0.9));
	box-shadow: 0 22px 54px rgba(0, 10, 30, 0.2);
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.tcs-modern-blog .elementor-element-7fa7792 article.elementor-post:hover {
	border-color: rgba(105, 197, 233, 0.68);
	box-shadow: 0 26px 60px rgba(0, 10, 30, 0.28);
	transform: translateY(-4px);
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__thumbnail__link {
	margin-bottom: 0;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__thumbnail {
	background: #102b4a;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__text {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	padding: clamp(1.35rem, 2.5vw, 1.85rem);
}

.tcs-modern-blog .tcs-article-categories {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-bottom: 1rem;
}

.tcs-modern-blog .tcs-article-category {
	display: inline-flex;
	padding: 0.38rem 0.65rem;
	border: 1px solid rgba(255, 210, 28, 0.42);
	border-radius: 999px;
	background: rgba(255, 210, 28, 0.08);
	color: #ffd21c;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.055em;
	line-height: 1.15;
	text-decoration: none;
	text-transform: uppercase;
}

.tcs-modern-blog .tcs-article-category:hover {
	background: rgba(255, 210, 28, 0.17);
	color: #fff0a1;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__title {
	margin: 0 0 0.8rem;
	font-size: clamp(1.35rem, 2vw, 1.75rem);
	line-height: 1.14;
	text-wrap: balance;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__title a {
	color: #ffffff;
	text-decoration: none;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__title a:hover {
	color: #69c5e9;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__excerpt {
	margin: 0 0 1.2rem;
	color: #d7e4f4;
	font-size: 0.98rem;
	line-height: 1.68;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__meta-data {
	order: -1;
	margin: 0 0 0.65rem;
	color: #b9cce3;
	font-size: 0.78rem;
	letter-spacing: 0.03em;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__meta-data .elementor-post-avatar,
.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__meta-data .elementor-post-date::after,
.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__meta-data .elementor-post-comments {
	display: none;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__read-more {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	margin-top: auto;
	padding: 0.62rem 0.95rem;
	border: 1px solid rgba(105, 197, 233, 0.5);
	border-radius: 999px;
	background: rgba(105, 197, 233, 0.1);
	color: #dff6ff;
	font-size: 0.86rem;
	font-weight: 800;
	text-decoration: none;
}

.tcs-modern-blog .elementor-element-7fa7792 .elementor-post__read-more:hover {
	border-color: #ffd21c;
	background: rgba(255, 210, 28, 0.13);
	color: #ffd21c;
}

.tcs-modern-blog .elementor-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	justify-content: center;
	margin-top: clamp(2rem, 4vw, 3.5rem);
}

.tcs-modern-blog .elementor-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	padding: 0.5rem 0.75rem;
	border: 1px solid rgba(123, 177, 222, 0.38);
	border-radius: 12px;
	color: #edf6ff;
	text-decoration: none;
}

.tcs-modern-blog .elementor-pagination .page-numbers.current,
.tcs-modern-blog .elementor-pagination .page-numbers:hover,
.tcs-modern-blog .elementor-pagination .page-numbers:focus-visible {
	border-color: #ffd21c;
	background: rgba(255, 210, 28, 0.12);
	color: #ffd21c;
}

.tcs-editorial-cta {
	position: relative;
	overflow: hidden;
	margin: clamp(2.25rem, 5vw, 4rem) 0;
	padding: clamp(1.5rem, 4vw, 2.5rem);
	border: 1px solid rgba(105, 197, 233, 0.42);
	border-radius: 22px;
	background: linear-gradient(145deg, rgba(30, 64, 103, 0.94), rgba(13, 39, 70, 0.96));
	box-shadow: 0 24px 58px rgba(0, 10, 30, 0.25);
}

.tcs-editorial-cta::after {
	content: "";
	position: absolute;
	inset: auto -50px -80px auto;
	width: 220px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(105, 197, 233, 0.18), transparent 70%);
	pointer-events: none;
}

.tcs-editorial-cta__eyebrow {
	display: inline-flex;
	margin-bottom: 0.85rem;
	color: #ffd21c;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.tcs-editorial-cta h2 {
	margin: 0 0 0.8rem;
	color: #ffffff;
	font-size: clamp(1.55rem, 3vw, 2.25rem);
	line-height: 1.14;
}

.tcs-editorial-cta p {
	max-width: 62ch;
	margin: 0 0 1.25rem;
	color: #d7e4f4;
}

.tcs-editorial-cta__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0.72rem 1.15rem;
	border: 1px solid #ffd21c;
	border-radius: 999px;
	background: #ffd21c;
	color: #061a31;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
}

.tcs-editorial-cta__button:hover {
	background: #ffe36e;
	color: #061a31;
}

@media (max-width: 767px) {
	.tcs-modern-blog .elementor-element-bb835ae .elementor-nav-menu {
		justify-content: flex-start;
	}

	.tcs-modern-blog .elementor-element-bb835ae .menu-item a {
		min-height: 40px;
		padding: 0.58rem 0.82rem;
		font-size: 0.8rem;
	}

	.tcs-modern-blog .elementor-element-7fa7792 article.elementor-post:hover {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.tcs-modern-blog .elementor-element-bb835ae .menu-item a,
	.tcs-modern-blog .elementor-element-7fa7792 article.elementor-post {
		transition: none;
	}
}
