/**
 * Single blog post / article page — Figma 1964:7397
 */

body.beaver-is-article,
body.beaver-is-article .site,
body.beaver-is-article .site-content,
#primary.beaver-article-primary {
	background-color: var(--bm-color-bg-page);
}

.beaver-article-page {
	margin: 0;
	padding: 0;
}

.beaver-article-primary {
	margin: 0 !important;
	padding: 0 !important;
}

.beaver-article {
	margin: 0;
	padding: 0 !important;
	background-color: #fff !important;
}

/*
 * Hero: same building blocks as the blog index, but the article design sits image + copy
 * on the light blue sky (no white “card” shell), wavy bottom from blog-hero-sky.svg.
 */
body.beaver-is-article .beaver-blog-hero {
	background: transparent;
}

body.beaver-is-article .beaver-blog-hero__inner {
	padding: 43px 24px 82px;
	box-sizing: border-box;
}

body.beaver-is-article .beaver-blog-featured__card {
	background: transparent;
	margin: 0;
}

/* No white box / drop shadow: content floats on the sky */
body.beaver-is-article .beaver-blog-featured__slide.beaver-blog-featured__slide--active,
body.beaver-is-article .beaver-article-hero__slide {
	background: transparent;
	box-shadow: none;
	border-radius: 0;
	height: auto;
	min-height: 280px;
	max-height: none;
	overflow: visible;
	align-items: center;
}

body.beaver-is-article .beaver-blog-featured__slide.beaver-blog-featured__slide--active {
	grid-template-columns: minmax(0, min(440px, 45%)) minmax(0, 1fr);
	column-gap: clamp(1rem, 2vw, 2rem);
	row-gap: 40px;
}

body.beaver-is-article .beaver-blog-featured__media {
	border-radius: 24px;
	overflow: hidden;
	height: 375px;
}

body.beaver-is-article .beaver-blog-featured__img,
body.beaver-is-article .beaver-blog-featured__img-placeholder {
	height: 375px;
}

body.beaver-is-article .beaver-blog-featured__content.beaver-article-hero__content {
	background: transparent;
	padding: 0;
	gap: 24px;
}

/* Title: 32px / 700 (article hero) */
body.beaver-is-article .beaver-article-hero__content .beaver-blog-featured__title {
	margin: 0 0 8px;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.02em;
	display: block;
	-webkit-line-clamp: unset;
	line-clamp: unset;
	overflow: visible;
}

/* Date + read time: 16px */
body.beaver-is-article .beaver-article-hero__excerpt--date,
body.beaver-is-article .beaver-article-hero__excerpt--read {
	font-size: 16px;
}

body.beaver-is-article .beaver-article-hero__excerpt--date {
	margin: 0 0 16px;
	color: #000000;
}

body.beaver-is-article .beaver-article-hero__excerpt--read {
	margin: 0 0 0.5rem;
	color: var(--bm-color-text-subtle);
}

/* ——— Share row (hero + inline) ——— */
.beaver-article-share {
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
}

.beaver-article-share--hero {
	margin-top: auto;
}

.beaver-article-share__label {
	font-family: var(--bm-font-nav);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.14px;
	color: #000;
	text-transform: uppercase;
	line-height: 1.2;
	margin-right: 8px;
}

.beaver-article-share__link {
	display: inline-flex;
	color: #000;
	line-height: 0;
	text-decoration: none;
	transition: opacity 0.2s ease, transform 0.15s ease;
}

.beaver-article-share__link:hover,
.beaver-article-share__link:focus {
	opacity: 0.85;
}

.beaver-article-share__link:focus-visible {
	outline: 2px solid var(--bm-color-text-heading);
	outline-offset: 2px;
	border-radius: 4px;
}

/* Native Share (navigator.share + clipboard fallback) */
.beaver-article-share__native {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none;
	background: transparent;
	padding: 0;
	cursor: pointer;
	color: #000;
	line-height: 0;
	transition: opacity 0.2s ease, transform 0.15s ease;
}

.beaver-article-share__native:hover,
.beaver-article-share__native:focus {
	opacity: 0.85;
}

.beaver-article-share__native:focus-visible {
	outline: 2px solid var(--bm-color-text-heading);
	outline-offset: 2px;
	border-radius: 4px;
}

/* ——— Main + sidebar (~70% / ~30% — screenshot) ——— */
.beaver-article__body-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 48px 24px 104px;
	box-sizing: border-box;
}

.beaver-article__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
	gap: 40px 96px;
	align-items: start;
}

@media (min-width: 1001px) {
	.beaver-article__grid {
		grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr);
	}
}

.beaver-article__main {
	min-width: 0;
}

.beaver-article__entry-content {
	max-width: 44rem;
}

.beaver-article__entry-content p {
	margin: 0 0 1.5rem;
	font-family: var(--bm-font-nav);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--bm-color-text-main);
}

/* Section heading e.g. “ALL-INCLUSIVE MOVING” */
.beaver-article__entry-content h2,
.beaver-article__entry-content h3,
.beaver-article__entry-content h4 {
	margin: 1.5rem 0 1rem;
	font-family: var(--bm-font-nav);
	font-weight: 700;
	color: #000;
	line-height: 1.2;
}

.beaver-article__entry-content h2 {
	font-size: clamp(1.25rem, 1.1rem + 0.35vw, 1.5rem);
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.beaver-article__entry-content h3,
.beaver-article__entry-content h4 {
	font-size: 1.25rem;
	text-transform: none;
	color: #000;
}

.beaver-article__entry-content ul,
.beaver-article__entry-content ol {
	margin: 0 0 1.5rem 0;
	padding-left: 1.5rem;
	font-family: var(--bm-font-nav);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--bm-color-text-main);
}

.beaver-article__entry-content ul {
	list-style: disc;
}

.beaver-article__entry-content li {
	margin: 0 0 0.5rem;
}

.beaver-article__entry-content li::marker {
	color: var(--bm-color-text-main);
}

.beaver-article__entry-content a {
	color: var(--bm-color-text-heading);
	text-decoration: underline;
}

.beaver-article__entry-content a:hover,
.beaver-article__entry-content a:focus {
	text-decoration: none;
}

.beaver-article__entry-content blockquote {
	margin: 1.5rem 0;
	padding: 0.75rem 0 0.75rem 1.25rem;
	border-left: 4px solid var(--bm-color-bg-cta);
	font-family: var(--bm-font-nav);
	font-size: 16px;
	color: var(--bm-color-text-body);
}

.beaver-article__entry-content .wp-block-image,
.beaver-article__entry-content figure {
	margin: 1.5rem 0;
}

.beaver-article__entry-content img,
.beaver-article__entry-content .wp-block-image img {
	height: auto;
	border-radius: var(--bm-radius-field);
}

/* ——— Paginated “Read more” ——— */
.beaver-article__page-nav {
	margin: 2rem 0 0;
	font-family: var(--bm-font-nav);
	font-size: 14px;
}

.beaver-article__page-label {
	margin: 0 0 0.5rem;
	font-weight: 600;
}

/* ——— Article footer: share ——— */
.beaver-article__footer {
	margin-top: 53px;
}

.beaver-article-share--inline {
	margin-top: 0.25rem;
}

/* ——— Sidebar: you may also like ——— */
.beaver-article__aside {
	min-width: 0;
}

.beaver-article__aside-title {
	margin: 0 0 24px;
	font-family: var(--bm-font-nav);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.6;
	color: #000;
}

.beaver-article__related {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.beaver-article__related-item {
	margin: 0;
}

.beaver-article__related-link {
	display: grid;
	grid-template-columns: 80px 136px;
	gap: 12px 16px;
	align-items: center;
	text-decoration: none;
	color: #000;
	transition: opacity 0.2s ease;
}

.beaver-article__related-link:hover,
.beaver-article__related-link:focus {
	opacity: 0.9;
}

.beaver-article__related-link:focus-visible {
	outline: 2px solid var(--bm-color-text-heading);
	outline-offset: 2px;
	border-radius: 4px;
}

.beaver-article__related-img {
	width: 80px;
	height: 80px;
	border-radius: var(--bm-radius-field);
	object-fit: cover;
	display: block;
}

.beaver-article__related-img--placeholder {
	background: var(--bm-color-border-light);
}

.beaver-article__related-text {
	margin: 0;
	width: 136px;
	max-width: 100%;
	min-width: 0;
	font-family: var(--bm-font-nav);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ——— Prev / Next (main column, matches article text width) ——— */
.beaver-article__adjacent {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 40px;
	border-top: 1px solid #000;
	max-width: 44rem;
	width: 100%;
	box-sizing: border-box;
}

.beaver-article__footer+.beaver-article__adjacent {
	margin-top: 34px;
}

.beaver-article__adjacent-cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem 2.25rem;
	width: 100%;
	align-items: start;
}

.beaver-article__adjacent-cols--prev-only {
	grid-template-columns: 1fr;
	justify-items: start;
}

.beaver-article__adjacent-cols--next-only {
	grid-template-columns: 1fr;
	justify-items: end;
}

.beaver-article__adjacent-col {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	min-width: 0;
}

.beaver-article__adjacent-col--next {
	align-items: flex-end;
}

.beaver-article__adjacent-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 16px 24px;
	border-radius: var(--bm-radius-pill);
	border: 1px solid #000;
	background: var(--bm-color-bg-page);
	font-family: var(--bm-font-nav);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.14px;
	color: #000;
	text-transform: uppercase;
	text-decoration: none;
	box-sizing: border-box;
	line-height: 1;
	white-space: nowrap;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.beaver-article__adjacent-btn:hover,
.beaver-article__adjacent-btn:focus-visible {
	background: var(--bm-color-bg-cta-hover);
	color: var(--bm-color-cta-text-hover);
	border-color: var(--bm-color-bg-cta-hover);
	outline: none;
}

.beaver-article__adjacent-btn-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1em;
	line-height: 1;
	flex-shrink: 0;
}

.beaver-article__adjacent-card-link {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 16px;
	width: 248px;
	max-width: 100%;
	text-decoration: none;
	color: #000;
}

.beaver-article__adjacent-col--next .beaver-article__adjacent-card-link {
	align-items: flex-end;
}

.beaver-article__adjacent-card-link:hover .beaver-article__adjacent-title,
.beaver-article__adjacent-card-link:focus .beaver-article__adjacent-title {
	text-decoration: underline;
}

.beaver-article__adjacent-card-link:focus-visible {
	outline: 2px solid var(--bm-color-text-heading);
	outline-offset: 4px;
	border-radius: 4px;
}

.beaver-article__adjacent-img,
.beaver-article__adjacent-img--placeholder {
	width: 248px;
	max-width: 100%;
	height: 200px;
	border-radius: 12px;
	object-fit: cover;
	display: block;
}

.beaver-article__adjacent-img--placeholder {
	background: var(--bm-color-border-light);
}

.beaver-article__adjacent-title {
	margin: 0;
	width: 100%;
	font-family: var(--bm-font-nav);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.1;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/*
 * Article hero: stack at 736px and under. Base article rules use higher specificity for
 * the two-column grid; we must set grid-template-columns here so it isn’t overridden.
 */
@media (max-width: 736px) {
	body.beaver-is-article .beaver-blog-featured__card {
		max-width: min(100%, 600px);
		margin: 0 auto;
	}

	body.beaver-is-article .beaver-blog-featured__slide.beaver-blog-featured__slide--active,
	body.beaver-is-article .beaver-article-hero__slide {
		grid-template-columns: 1fr;
		height: auto;
		min-height: 0;
		align-items: stretch;
		gap: 32px;
	}

	body.beaver-is-article .beaver-blog-featured__content.beaver-article-hero__content {
		padding: 0 0 16px;
		gap: 16px;
	}

	body.beaver-is-article .beaver-blog-featured__media {
		max-height: none;
		min-height: 220px;
	}
}

@media (max-width: 600px) {

	/* blog-page mobile inner — tighter than article desktop 52/76 */
	body.beaver-is-article .beaver-blog-hero__inner {
		padding: 24px 12px 48px;
	}

	body.beaver-is-article .beaver-blog-featured__card {
		max-width: 100%;
	}

	body.beaver-is-article .beaver-blog-featured__slide.beaver-blog-featured__slide--active,
	body.beaver-is-article .beaver-article-hero__slide {
		height: auto;
		min-height: 0;
		grid-template-rows: auto;
	}

	body.beaver-is-article .beaver-blog-featured__content.beaver-article-hero__content {
		padding: 0;
		gap: 18px;
	}

	body.beaver-is-article .beaver-article-hero__content .beaver-blog-featured__title {
		font-size: 16px;
		font-weight: 700;
		margin-bottom: 0;
		line-height: 1;
		display: block;
		-webkit-line-clamp: unset;
		line-clamp: unset;
		overflow: visible;
	}

	body.beaver-is-article .beaver-article-hero__excerpt--date,
	body.beaver-is-article .beaver-article-hero__excerpt--read {
		font-size: 14px;
		line-height: normal;
		margin-bottom: 8px;
	}

	.beaver-article-share__label {
		font-size: 16px;
		line-height: 24px;
	}
}

@media (max-width: 1000px) {
	.beaver-article__grid {
		grid-template-columns: 1fr;
	}

	.beaver-article__aside {
		margin-top: 0.5rem;
	}
}

@media (max-width: 600px) {
	.beaver-article__body-wrap {
		padding: 24px 12px 48px;
	}

	/* One row: previous | next (left | right) for all adjacent variants. */
	.beaver-article__adjacent-cols--both,
	.beaver-article__adjacent-cols--prev-only,
	.beaver-article__adjacent-cols--next-only {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		justify-items: stretch;
	}

	.beaver-article__adjacent-cols--next-only .beaver-article__adjacent-col--next {
		grid-column: 2;
		justify-self: end;
	}

	.beaver-article__adjacent-cols--prev-only .beaver-article__adjacent-col--prev {
		grid-column: 1;
		justify-self: start;
	}

	.beaver-article__adjacent-col--next {
		align-items: flex-end;
	}

	.beaver-article__adjacent-col--next .beaver-article__adjacent-title {
		text-align: right;
	}

	.beaver-article__adjacent-card-link {
		display: none;
	}

	.beaver-article__adjacent {
		max-width: none;
		padding-top: 24px;
		margin-top: 24px;
	}

	.beaver-article__footer {
		margin-top: 8px;
	}

	.beaver-article__related-link {
		grid-template-columns: 80px minmax(0, 1fr);
	}

	.beaver-article__related-text {
		width: auto;
		max-width: none;
	}
}

@media (prefers-reduced-motion: reduce) {

	.beaver-article-share__link,
	.beaver-article-share__native,
	.beaver-article__related-link,
	.beaver-article__adjacent-btn {
		transition: none;
	}
}