/**

 * Desktop Equipment Appraisal

 * Blog-only styling for Insights archive, category pages,

 * and individual insight posts.

 */



/* --------------------------------------------------

   Blog page foundation

-------------------------------------------------- */



.dea-insights-page {

	--dea-navy: #073b78;

	--dea-blue: #0b63ce;

	--dea-ink: #16263d;

	--dea-muted: #65748a;

	--dea-border: #e5ebf2;

	--dea-soft: #f5f8fc;

	--dea-white: #ffffff;



	background: var(--dea-white);

	color: var(--dea-ink);

}



.dea-insights-container {

	width: min(1180px, calc(100% - 40px));

	margin-inline: auto;

}



/* --------------------------------------------------

   Locked Insights hero section

   Do not change this section

-------------------------------------------------- */



.dea-insights-hero {

	position: relative;

	overflow: hidden;

	padding: 105px 0 90px;

	background:

		radial-gradient(

			circle at 85% 20%,

			rgba(44, 125, 220, 0.16),

			transparent 34%

		),

		linear-gradient(135deg, #f5f9fe 0%, #ffffff 70%);

	border-bottom: 1px solid var(--dea-border);

}



.dea-insights-hero::after {

	content: "";

	position: absolute;

	width: 360px;

	height: 360px;

	right: -170px;

	bottom: -220px;

	border: 1px solid rgba(7, 59, 120, 0.12);

	border-radius: 50%;

	pointer-events: none;

}



.dea-eyebrow {

	margin: 0 0 18px;

	color: var(--dea-blue);

	font-size: 0.78rem;

	font-weight: 700;

	letter-spacing: 0.16em;

	line-height: 1.3;

	text-transform: uppercase;

}



.dea-insights-title {

	max-width: 850px;

	margin: 0;

	color: var(--dea-navy);

	font-family: inherit;

	font-size: clamp(2.25rem, 5vw, 4.4rem);

	font-weight: 700;

	letter-spacing: -0.045em;

	line-height: 1.05;

}



.dea-insights-intro {

	max-width: 690px;

	margin: 25px 0 0;

	color: var(--dea-muted);

	font-size: clamp(1rem, 1.5vw, 1.18rem);

	line-height: 1.8;

}



/* --------------------------------------------------

   Archive content

-------------------------------------------------- */



.dea-insights-content {

	padding: 64px 0 90px;

}



.dea-insights-grid {

	display: grid;

	grid-template-columns: repeat(3, minmax(0, 1fr));

	align-items: stretch;

	gap: 28px;

}



/* --------------------------------------------------

   Article card

-------------------------------------------------- */



.dea-insight-card {

	display: flex;

	min-width: 0;

	height: 100%;

	opacity: 0;

	transform: translateY(14px);

	animation: dea-insight-card-in 0.6s ease forwards;

}



.dea-insight-card:nth-child(2) {

	animation-delay: 0.08s;

}



.dea-insight-card:nth-child(3) {

	animation-delay: 0.16s;

}



.dea-insight-card:nth-child(4) {

	animation-delay: 0.24s;

}



.dea-insight-card:nth-child(5) {

	animation-delay: 0.32s;

}



.dea-insight-card:nth-child(6) {

	animation-delay: 0.4s;

}



.dea-insight-card.is-filtered-out {

	display: none;

}



.dea-insight-card-link {

	display: flex;

	width: 100%;

	height: 100%;

	flex-direction: column;

	overflow: hidden;

	color: inherit;

	background: var(--dea-white);

	border: 1px solid var(--dea-border);

	border-radius: 15px;

	text-decoration: none;

	transition:

		transform 0.3s ease,

		border-color 0.3s ease,

		box-shadow 0.3s ease;

}



.dea-insight-card-link:hover,

.dea-insight-card-link:focus-visible {

	border-color: rgba(11, 99, 206, 0.35);

	box-shadow: 0 14px 34px rgba(20, 55, 95, 0.12);

	transform: translateY(-5px);

}



/* --------------------------------------------------

   Article image



   The image keeps its natural proportions.

   No forced crop and no empty side space.

-------------------------------------------------- */



.dea-insight-image-wrap {

	position: relative;

	overflow: hidden;

	width: 100%;

	background: var(--dea-soft);

	line-height: 0;

}



.dea-insight-image {

	display: block;

	width: 100%;

	height: auto;

	max-width: 100%;

	object-fit: initial;

	object-position: center center;

	background: var(--dea-soft);

	transition:

		transform 0.55s cubic-bezier(0.2, 0.65, 0.25, 1),

		filter 0.3s ease;

}



.dea-insight-card-link:hover .dea-insight-image,

.dea-insight-card-link:focus-visible .dea-insight-image {

	transform: scale(1.025);

}



.dea-insight-image-wrap::after {

	content: "";

	position: absolute;

	inset: 0;

	background: linear-gradient(

		180deg,

		transparent 50%,

		rgba(4, 25, 55, 0.12) 100%

	);

	opacity: 0;

	transition: opacity 0.3s ease;

	pointer-events: none;

}



.dea-insight-card-link:hover .dea-insight-image-wrap::after,

.dea-insight-card-link:focus-visible .dea-insight-image-wrap::after {

	opacity: 1;

}



.dea-insight-image-placeholder {

	display: grid;

	min-height: 190px;

	width: 100%;

	place-items: center;

	padding: 24px;

	color: var(--dea-navy);

	font-size: 0.9rem;

	font-weight: 700;

	line-height: 1.5;

	text-align: center;

}



/* --------------------------------------------------

   Image arrow

-------------------------------------------------- */



.dea-insight-image-arrow {

	position: absolute;

	z-index: 1;

	top: 14px;

	right: 14px;

	display: grid;

	width: 36px;

	height: 36px;

	place-items: center;

	border: 1px solid rgba(255, 255, 255, 0.7);

	border-radius: 50%;

	background: rgba(255, 255, 255, 0.92);

	color: var(--dea-navy);

	font-size: 1rem;

	line-height: 1;

	opacity: 0;

	transform: translate(-4px, 4px);

	transition:

		opacity 0.3s ease,

		transform 0.3s ease;

}



.dea-insight-card-link:hover .dea-insight-image-arrow,

.dea-insight-card-link:focus-visible .dea-insight-image-arrow {

	opacity: 1;

	transform: translate(0, 0);

}



/* --------------------------------------------------

   Card content

-------------------------------------------------- */



.dea-insight-card-body {

	display: flex;

	flex: 1;

	flex-direction: column;

	padding: 21px 22px 23px;

}



.dea-insight-meta {

	display: flex;

	flex-wrap: wrap;

	align-items: center;

	justify-content: space-between;

	gap: 8px;

	margin-bottom: 12px;

	color: var(--dea-muted);

	font-size: 0.68rem;

	font-weight: 600;

	letter-spacing: 0.01em;

	line-height: 1.4;

}



.dea-insight-category {

	color: var(--dea-blue);

	font-size: 0.67rem;

	font-weight: 700;

	text-transform: uppercase;

}



.dea-insight-card-title {

	margin: 0;

	color: #003087;

	font-family: inherit;

	font-size: clamp(1.08rem, 1.25vw, 1.25rem);

	font-weight: 500;

	letter-spacing: -0.018em;

	line-height: 1.3;

}



.dea-insight-excerpt {

	display: -webkit-box;

	overflow: hidden;

	margin: 14px 0 20px;

	color: var(--dea-muted);

	font-size: 0.86rem;

	line-height: 1.65;

	-webkit-box-orient: vertical;

	-webkit-line-clamp: 4;

}



.dea-insight-read-more {

	display: inline-flex;

	align-items: center;

	gap: 7px;

	margin-top: auto;

	padding-top: 4px;

	color: var(--dea-blue);

	font-size: 0.82rem;

	font-weight: 700;

	line-height: 1.4;

}



.dea-insight-read-more span {

	display: inline-block;

}



.dea-insight-read-more span:last-child {

	transition: transform 0.25s ease;

}



.dea-insight-card-link:hover .dea-insight-read-more span:last-child,

.dea-insight-card-link:focus-visible .dea-insight-read-more span:last-child {

	transform: translateX(5px);

}



/* --------------------------------------------------

   Pagination

-------------------------------------------------- */



.dea-insights-page .pagination {

	display: flex;

	flex-wrap: wrap;

	justify-content: center;

	gap: 9px;

	margin: 52px 0 0;

}



.dea-insights-page .pagination .page-numbers {

	display: inline-flex;

	min-width: 40px;

	min-height: 40px;

	align-items: center;

	justify-content: center;

	padding: 7px 12px;

	border: 1px solid var(--dea-border);

	border-radius: 8px;

	color: var(--dea-navy);

	font-size: 0.86rem;

	font-weight: 700;

	text-decoration: none;

	transition:

		background 0.25s ease,

		border-color 0.25s ease,

		color 0.25s ease;

}



.dea-insights-page .pagination .page-numbers:hover,

.dea-insights-page .pagination .page-numbers:focus-visible,

.dea-insights-page .pagination .page-numbers.current {

	border-color: var(--dea-blue);

	background: var(--dea-blue);

	color: #ffffff;

}



/* --------------------------------------------------

   Empty state

-------------------------------------------------- */



.dea-insights-empty {

	padding: 60px 30px;

	border: 1px solid var(--dea-border);

	border-radius: 18px;

	background: var(--dea-soft);

	text-align: center;

}



.dea-insights-empty h2 {

	margin: 0 0 10px;

	color: var(--dea-navy);

}



.dea-insights-empty p {

	margin: 0;

	color: var(--dea-muted);

}



/* --------------------------------------------------

   Entrance animation

-------------------------------------------------- */



@keyframes dea-insight-card-in {

	to {

		opacity: 1;

		transform: translateY(0);

	}

}



/* --------------------------------------------------

   Category filter

-------------------------------------------------- */



.dea-insights-filters {

	display: flex;

	flex-wrap: wrap;

	align-items: center;

	justify-content: center;

	gap: 8px;

	margin: 0 0 34px;

}



.dea-insights-filter {

	display: inline-flex;

	min-height: 36px;

	align-items: center;

	justify-content: center;

	margin: 0;

	padding: 8px 15px;

	border: 1px solid var(--dea-border);

	border-radius: 7px;

	background: var(--dea-white);

	color: var(--dea-navy);

	cursor: pointer;

	font: inherit;

	font-size: 0.78rem;

	font-weight: 700;

	line-height: 1.3;

	text-decoration: none;

	transition:

		background 0.25s ease,

		border-color 0.25s ease,

		color 0.25s ease,

		transform 0.25s ease;

}



.dea-insights-filter:hover,

.dea-insights-filter:focus-visible {

	border-color: var(--dea-blue);

	background: #eef5fd;

	color: var(--dea-blue);

	transform: translateY(-2px);

}



.dea-insights-filter.is-active {

	border-color: var(--dea-blue);

	background: var(--dea-blue);

	color: #ffffff;

}



.dea-insights-filter.is-active:hover,

.dea-insights-filter.is-active:focus-visible {

	background: var(--dea-navy);

	border-color: var(--dea-navy);

	color: #ffffff;

}



.dea-insights-filter:focus-visible {

	outline: 3px solid rgba(11, 99, 206, 0.22);

	outline-offset: 3px;

}



/* --------------------------------------------------

   Tablet archive layout

-------------------------------------------------- */



@media (max-width: 991px) {



	.dea-insights-hero {

		padding: 80px 0 70px;

	}



	.dea-insights-content {

		padding: 55px 0 75px;

	}



	.dea-insights-grid {

		grid-template-columns: repeat(2, minmax(0, 1fr));

		gap: 24px;

	}



	.dea-insight-card-body {

		padding: 21px 21px 23px;

	}



	.dea-insight-card-title {

		font-size: 1.18rem;

	}



	.dea-insight-excerpt {

		font-size: 0.85rem;

	}



}



/* --------------------------------------------------

   Mobile archive layout

-------------------------------------------------- */



@media (max-width: 575px) {



	.dea-insights-container {

		width: min(100% - 30px, 1180px);

	}



	.dea-insights-hero {

		padding: 65px 0 55px;

	}



	.dea-insights-content {

		padding: 40px 0 60px;

	}



	.dea-insights-grid {

		grid-template-columns: 1fr;

		gap: 22px;

	}



	.dea-insight-card-body {

		padding: 21px 20px 24px;

	}



	.dea-insight-card-title {

		font-size: 1.18rem;

		line-height: 1.32;

	}



	.dea-insight-excerpt {

		margin-top: 14px;

		margin-bottom: 21px;

		font-size: 0.88rem;

	}



	.dea-insight-image-arrow {

		opacity: 1;

		transform: none;

	}



	.dea-insights-filters {

		justify-content: flex-start;

		margin-bottom: 26px;

	}



	.dea-insights-filter {

		font-size: 0.75rem;

		padding: 8px 12px;

	}



}



/* --------------------------------------------------

   Reduced motion accessibility

-------------------------------------------------- */



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



	.dea-insight-card {

		opacity: 1;

		transform: none;

		animation: none;

	}



	.dea-insight-card-link,

	.dea-insight-image,

	.dea-insight-image-wrap::after,

	.dea-insight-image-arrow,

	.dea-insight-read-more span:last-child,

	.dea-insights-filter {

		transition: none;

	}



}



/* ---------------------------------------------------------

   Single insight post layout

--------------------------------------------------------- */



.dea-single-post-page {

	background: #ffffff;

}



.dea-single-post-container {

	width: min(1180px, calc(100% - 48px));

	margin: 0 auto;

	padding: 64px 0 90px;

}



.dea-single-post-layout {

	display: grid;

	grid-template-columns: minmax(0, 1fr) 320px;

	gap: 64px;

	align-items: start;

}



.dea-single-post-article {

	min-width: 0;

}



.dea-single-post-header {

	margin: 0 0 34px;

}



.dea-single-post-title {

	max-width: 900px;

	margin: 0 0 18px;

	font-size: clamp(2rem, 4vw, 3.7rem);

	line-height: 1.08;

	letter-spacing: -0.035em;

	font-weight: 700;

	color: #123d82;

}



.dea-single-post-meta {

	display: flex;

	flex-wrap: wrap;

	align-items: center;

	gap: 10px;

	font-size: 14px;

	line-height: 1.5;

	color: #667085;

}



/* ---------------------------------------------------------

   Reduced single-post featured image

--------------------------------------------------------- */



.dea-single-post-featured-image {

	width: 100%;

	max-width: 650px;

	margin: 0 0 34px;

	padding: 0;

}



.dea-single-post-featured-image img {

	display: block;

	width: 100%;

	height: auto;

	margin: 0;

	border-radius: 14px;

}



.dea-single-post-content {

	max-width: 900px;

	color: #4d5b6b;

	font-size: 17px;

	line-height: 1.85;

}



.dea-single-post-content > *:first-child {

	margin-top: 0;

}



.dea-single-post-content p {

	margin: 0 0 22px;

}



.dea-single-post-content h2,

.dea-single-post-content h3,

.dea-single-post-content h4 {

	margin: 42px 0 14px;

	color: #123d82;

	line-height: 1.25;

}



.dea-single-post-content h2 {

	font-size: clamp(1.65rem, 3vw, 2.2rem);

}



.dea-single-post-content h3 {

	font-size: 1.45rem;

}



.dea-single-post-content h4 {

	font-size: 1.2rem;

}



.dea-single-post-content ul,

.dea-single-post-content ol {

	margin: 0 0 24px;

	padding-left: 24px;

}



.dea-single-post-content li {

	margin-bottom: 8px;

}



.dea-single-post-content a {

	color: #1457a6;

	text-decoration: underline;

	text-underline-offset: 3px;

}



.dea-single-post-content blockquote {

	margin: 32px 0;

	padding: 22px 26px;

	border-left: 4px solid #1457a6;

	background: #f4f7fb;

	color: #344054;

	border-radius: 0 12px 12px 0;

}



/* ---------------------------------------------------------

   Single-post sidebar

--------------------------------------------------------- */



.dea-single-post-sidebar {

	position: sticky;

	top: 30px;

	min-width: 0;

}



.dea-appraisal-cta {

	padding: 30px;

	background: linear-gradient(145deg, #123d82 0%, #0a2d68 100%);

	border-radius: 20px;

	color: #ffffff;

	box-shadow: 0 16px 35px rgba(18, 61, 130, 0.16);

}



.dea-appraisal-cta-label {

	display: inline-block;

	margin-bottom: 16px;

	font-size: 12px;

	font-weight: 700;

	line-height: 1.3;

	letter-spacing: 0.12em;

	text-transform: uppercase;

	color: #bcd4f5;

}



.dea-appraisal-cta h2 {

	margin: 0 0 16px;

	color: #ffffff;

	font-size: 1.65rem;

	line-height: 1.2;

	letter-spacing: -0.025em;

}



.dea-appraisal-cta p {

	margin: 0 0 24px;

	color: #e4edfa;

	font-size: 15px;

	line-height: 1.7;

}



.dea-appraisal-cta-button {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 14px;

	width: 100%;

	padding: 14px 16px;

	border-radius: 10px;

	background: #ffffff;

	color: #123d82;

	font-size: 14px;

	font-weight: 700;

	line-height: 1.3;

	text-decoration: none;

	transition:

		background-color 180ms ease,

		transform 180ms ease;

}



.dea-appraisal-cta-button:hover {

	background: #edf4ff;

	color: #123d82;

	transform: translateY(-2px);

}



.dea-appraisal-cta-button:focus-visible,

.dea-recent-post-link:focus-visible {

	outline: 3px solid #8db8ed;

	outline-offset: 4px;

}



.dea-recent-posts {

	margin-top: 42px;

}



.dea-sidebar-heading {

	margin: 0 0 18px;

	padding-bottom: 14px;

	border-bottom: 1px solid #dce3ec;

	color: #123d82;

	font-size: 1.35rem;

	line-height: 1.25;

}



.dea-recent-posts-list {

	display: flex;

	flex-direction: column;

}



.dea-recent-post-link {

	display: flex;

	align-items: flex-start;

	gap: 14px;

	padding: 17px 0;

	border-bottom: 1px solid #e5eaf0;

	color: inherit;

	text-decoration: none;

}



.dea-recent-post-link:first-child {

	padding-top: 0;

}



.dea-recent-post-link:hover strong {

	color: #1457a6;

}



.dea-recent-post-image {

	flex: 0 0 76px;

	width: 76px;

	height: 76px;

	overflow: hidden;

	border-radius: 10px;

	background: #edf2f7;

}



.dea-recent-post-image img {

	display: block;

	width: 100%;

	height: 100%;

	object-fit: cover;

}



.dea-recent-post-details {

	display: flex;

	flex: 1;

	min-width: 0;

	flex-direction: column;

	gap: 7px;

}



.dea-recent-post-details strong {

	color: #344054;

	font-size: 14px;

	line-height: 1.45;

	transition: color 180ms ease;

}



.dea-recent-post-details time {

	color: #7a8797;

	font-size: 12px;

	line-height: 1.4;

}



.dea-recent-posts-empty {

	margin: 0;

	color: #667085;

	font-size: 14px;

	line-height: 1.6;

}



/* ---------------------------------------------------------

   Single-post tablet layout

--------------------------------------------------------- */



@media (max-width: 980px) {



	.dea-single-post-container {

		padding: 50px 0 70px;

	}



	.dea-single-post-layout {

		grid-template-columns: minmax(0, 1fr) 280px;

		gap: 38px;

	}



	.dea-single-post-title {

		font-size: clamp(2rem, 5vw, 3rem);

	}



	.dea-single-post-featured-image {

		max-width: 600px;

	}



}



/* ---------------------------------------------------------

   Single-post mobile layout

--------------------------------------------------------- */



@media (max-width: 767px) {



	.dea-single-post-container {

		width: min(100% - 32px, 680px);

		padding: 36px 0 55px;

	}



	.dea-single-post-layout {

		display: block;

	}



	.dea-single-post-header {

		margin-bottom: 25px;

	}



	.dea-single-post-title {

		font-size: clamp(2rem, 9vw, 2.8rem);

		line-height: 1.12;

	}



	.dea-single-post-featured-image {

		max-width: 100%;

		margin-bottom: 28px;

	}



	.dea-single-post-featured-image img {

		border-radius: 12px;

	}



	.dea-single-post-content {

		font-size: 16px;

		line-height: 1.75;

	}



	.dea-single-post-sidebar {

		position: static;

		margin-top: 48px;

	}



	.dea-appraisal-cta {

		padding: 26px;

		border-radius: 16px;

	}



	.dea-appraisal-cta h2 {

		font-size: 1.5rem;

	}



	.dea-recent-posts {

		margin-top: 36px;

	}



}