/* Latest blog entry card (Blog section) */
.camp-caw-latest-blog {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	min-height: 0;
	height: 100%;
}

.camp-caw-latest-blog__title {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 700;
	text-transform: uppercase;
	line-height: 1.3;
}
.camp-caw-latest-blog__title a {
	color: inherit;
	text-decoration: none;
}
.camp-caw-latest-blog__title a:hover {
	text-decoration: underline;
}
.camp-caw-latest-blog__meta {
	margin: 0;
	font-size: 0.98rem;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: #666;
}
.camp-caw-latest-blog__meta-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}
.camp-caw-latest-blog__meta-author {
	display: inline-flex;
}

/* Home latest-blog card: hide "BY user" author metadata, keep date visible */
body.home .camp-caw-latest-blog .camp-caw-latest-blog__meta-author {
	display: none !important;
}
.camp-caw-latest-blog__thumb {
	margin: 0;
	border-radius: 23px;
	overflow: hidden;
}
.camp-caw-latest-blog__thumb img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}
.camp-caw-latest-blog__excerpt {
	margin: 0 0 0.5rem;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: #444;
	flex: 1 1 auto;
	min-height: 0;
	overflow: hidden;
	position: relative;
	padding-bottom: 1.25rem;
}
.camp-caw-latest-blog__excerpt > *:first-child {
	margin-top: 0;
}
.camp-caw-latest-blog__excerpt > *:last-child {
	margin-bottom: 0;
}

@media (min-width: 782px) {
	.camp-caw-home-blog-staff-row .camp-caw-latest-blog__excerpt {
		-webkit-mask-image: linear-gradient(to bottom, #000 78%, rgba(0, 0, 0, 0));
		mask-image: linear-gradient(to bottom, #000 78%, rgba(0, 0, 0, 0));
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: 100% 100%;
		mask-size: 100% 100%;
	}

	.camp-caw-home-blog-staff-row .camp-caw-latest-blog__excerpt::after {
		content: "...";
		position: absolute;
		right: 0;
		bottom: 0;
		padding-left: 0.6rem;
		background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff 50%);
	}
}
.camp-caw-latest-blog .wp-block-buttons {
	justify-content: center;
	margin-top: auto;
}
.camp-caw-latest-blog .wp-block-button.is-style-camp-caw-primary .wp-block-button__link {
	border-radius: 9999px;
}
.camp-caw-latest-blog__read-more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: auto;
	margin-left: auto;
	margin-right: auto;
	border-radius: 9999px;
	text-decoration: none;
}

/* Blog read-more is a wp-block-read-more anchor, not a .wp-block-button wrapper */
body.home .camp-caw-latest-blog .camp-caw-latest-blog__read-more.wp-block-read-more.wp-element-button {
	background-color: #BC3226 !important;
	color: #fff !important;
	border-radius: 9999px !important;
	padding: 0.6rem 1.5rem !important;
	border: none !important;
	text-transform: uppercase;
	font-family: "Special Gothic Expanded One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	white-space: nowrap;
}

body.home .camp-caw-latest-blog .camp-caw-latest-blog__read-more.wp-block-read-more.wp-element-button:hover,
body.home .camp-caw-latest-blog .camp-caw-latest-blog__read-more.wp-block-read-more.wp-element-button:focus {
	background-color: #9a2820 !important;
	color: #fff !important;
}

@media (max-width: 781px) {
	.camp-caw-latest-blog {
		min-height: 30rem;
		height: auto;
	}
	.camp-caw-latest-blog__excerpt {
		max-height: 13.5em;
		-webkit-mask-image: none;
		mask-image: none;
		padding-bottom: 0;
	}
}

/* Camp CAW home – button styles */
.wp-block-button.is-style-camp-caw-primary .wp-block-button__link {
	background-color: #BC3226;
	color: #fff;
	border-radius: 12px;
	padding: 0.6rem 1.5rem;
	font-weight: 600;
	border: none;
}

.wp-block-button.is-style-camp-caw-primary .wp-block-button__link:hover,
.wp-block-button.is-style-camp-caw-primary .wp-block-button__link:focus {
	background-color: #9a2820;
	color: #fff;
}

.wp-block-button.is-style-camp-caw-secondary .wp-block-button__link {
	background-color: #F8AD36;
	color: #fff;
	border-radius: 206px;
	padding: 0.4rem 1rem;
	font-size: 1.225rem;
	border: none;
}

.wp-block-button.is-style-camp-caw-secondary .wp-block-button__link:hover,
.wp-block-button.is-style-camp-caw-secondary .wp-block-button__link:focus {
	background-color: #e09a2e;
	color: #fff;
}

/* Camp CAW home – countdown circle */
.camp-caw-countdown {
	text-align: center;
	padding: 0;
}

.camp-caw-countdown .camp-caw-countdown-frame {
	margin: 0 auto;
	padding: 1.5rem 1.25rem;
	height: 555px;
	border-radius: 23px;
	background-color: #bc3226;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.08);
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 1rem;
}

.camp-caw-countdown .camp-caw-countdown-frame::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 34.26%, rgba(0, 0, 0, 0.4) 64.31%, rgba(0, 0, 0, 0) 100%);
	pointer-events: none;
}

.camp-caw-countdown .camp-caw-countdown-frame > * {
	position: relative;
	z-index: 1;
}

.camp-caw-countdown .camp-caw-countdown-number {
	font-family: Special Gothic Expanded One;
	margin-top: 20px !important;
	font-weight: 400;
	font-size: 40px !important;
	line-height: 50px;
	letter-spacing: 0%;
	text-align: center;
	vertical-align: middle;
	text-transform: uppercase;
	color: #fff;
	margin: 0;
}

.camp-caw-countdown .camp-caw-countdown-label {
	font-family: Inter;
	font-size: 19.6px;
	line-height: 50px;
	margin: 0px;
	letter-spacing: 0%;
	text-align: center;
	text-transform: uppercase;
	color: #fff;
}

.camp-caw-countdown .camp-caw-countdown-sub {
	font-size: clamp(1rem, 2.5vw, 1.25rem);
	color: #fff;
	margin: 0;
	font-family: "Special Gothic Expanded One", sans-serif;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0;
	text-transform: uppercase;
}

/* Centered CHEN-A-WANDA title and supporting copy. */
.camp-caw-countdown .camp-caw-countdown-brand {
	margin: 0.75rem auto 0;
	width: min(100%, 36rem);
	text-align: center;
	padding: 0;
}

.camp-caw-countdown .camp-caw-countdown-copy {
	margin: 0.6rem auto 0;
	max-width: 34rem;
	color: #fff;
	font-family: Special Gothic Expanded One;
	font-weight: 400;
	font-style: Regular;
	font-size: 15px;
	line-height: 30px;
	letter-spacing: 0%;
	text-align: center;
	vertical-align: middle;
}

.camp-caw-countdown .camp-caw-countdown-brand .camp-caw-countdown-sub {
	font-family: Special Gothic Expanded One;
	font-weight: 400;
	font-style: Regular;
	font-size: 40px;
	line-height: 200%;
	letter-spacing: 0%;
	text-align: center;
	vertical-align: middle;
	text-transform: uppercase;
	margin: 0;
}

.camp-caw-countdown .camp-caw-countdown-enroll-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
}

.camp-caw-countdown .camp-caw-countdown-enroll {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.55rem 1.5rem;
	opacity: 1;
	border-width: 2px;
	border-style: dashed;
	border-color: #F8AD36;
	border-radius: 21px;
	background: transparent;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	font-family: "Special Gothic Expanded One", sans-serif;
	font-weight: 400;
	font-size: 0.9rem;
	line-height: 1;
	letter-spacing: 0;
	text-decoration: underline;
}

.camp-caw-countdown .camp-caw-countdown-enroll:hover,
.camp-caw-countdown .camp-caw-countdown-enroll:focus {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

.camp-caw-countdown .camp-caw-countdown-enroll-arrow {
	position: absolute;
	bottom: -40px;
	height: 114.08px;
	width: auto;
	pointer-events: none;
}

.camp-caw-countdown .camp-caw-countdown-enroll-arrow--left {
	right: calc(100% + 6px);
	transform: translateY(-50%);
	transform-origin: center;
}

.camp-caw-countdown .camp-caw-countdown-enroll-arrow--right {
	left: calc(100% + 6px);
	transform: translateY(-50%)  scaleX(-1);
	transform-origin: center;
}

/* Blog sidebar: search + year-grouped titles + "Load More" CTA */
.camp-caw-blog-sidebar__search-form {
	position: relative;
	margin: 0 0 1rem;
}

.camp-caw-blog-sidebar__search-input {
	width: 100%;
	min-height: 44px;
	padding: 0.55rem 1rem 0.55rem 2.5rem;
	border: 1px solid #d8d1c3;
	border-radius: 9999px;
	font-family: "Inter", sans-serif;
	font-size: 19.6px;
	line-height: 1.2;
}

.camp-caw-blog-sidebar__search-btn {
	position: absolute;
	top: 50%;
	left: 0.6rem;
	transform: translateY(-50%);
	border: 0;
	background: transparent;
	color: #3f3826;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	width: 24px;
	height: 24px;
	cursor: pointer;
}

.camp-caw-blog-sidebar__search-btn img {
	display: block;
	width: 16px;
	height: 25px;
}

.camp-caw-blog-sidebar__list {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.camp-caw-blog-sidebar__year {
	margin: 1rem 0 0.35rem;
	font-size: 15px;
	line-height: 1.2;
	color: #3f3826;
}

.camp-caw-blog-sidebar__item {
	margin: 0;
	font-size: 14px;
	line-height: 1.4;
}

.camp-caw-blog-sidebar__item a {
	color: inherit;
	text-decoration: none;
}

.camp-caw-blog-sidebar__item a:hover,
.camp-caw-blog-sidebar__item a:focus {
	text-decoration: underline;
}

.camp-caw-blog-sidebar .wp-block-buttons {
	margin-top: 1rem;
	width: 100%;
}

.camp-caw-blog-sidebar .wp-block-button.is-style-camp-caw-primary {
	width: 100%;
}

.camp-caw-blog-sidebar .wp-block-button.is-style-camp-caw-primary .camp-caw-blog-sidebar__load-more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0.5rem 0rem;
	border-radius: 9999px;
	background-color: #bc3226;
	color: #fff;
	font-family: "Special Gothic Expanded One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	vertical-align: middle;
	text-transform: uppercase;
}

.camp-caw-blog-sidebar .wp-block-button.is-style-camp-caw-primary .camp-caw-blog-sidebar__load-more:hover,
.camp-caw-blog-sidebar .wp-block-button.is-style-camp-caw-primary .camp-caw-blog-sidebar__load-more:focus {
	background-color: #9a2820;
	color: #fff;
}

.camp-caw-blog-sidebar-panel.is-loading {
	opacity: 0.6;
	pointer-events: none;
}
