/* Work case custom widgets — same markup/classes as the theme case-study CSS. */
:root {
	--pink: #ee3c83;
	--ink: #111;
	--grey: #77756f;
	--line: #d8d4cb;
}

.elementor-widget-desketing-work-case-hero,
.elementor-widget-desketing-work-case-cover,
.elementor-widget-desketing-work-case-overview,
.elementor-widget-desketing-work-case-opportunity,
.elementor-widget-desketing-work-case-gallery {
	width: 100%;
}

.elementor-widget-desketing-work-case-hero > .elementor-widget-container,
.elementor-widget-desketing-work-case-cover > .elementor-widget-container,
.elementor-widget-desketing-work-case-overview > .elementor-widget-container,
.elementor-widget-desketing-work-case-opportunity > .elementor-widget-container,
.elementor-widget-desketing-work-case-gallery > .elementor-widget-container {
	padding: 0;
}

.case-page .elementor > .e-con.e-parent,
.elementor-editor-active .elementor > .e-con.e-parent,
.elementor-editor-preview .elementor > .e-con.e-parent {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 0px;
	max-width: 100%;
	width: 100%;
	padding: 0;
}

.case-hero {
	padding: 48px 5vw 70px;
}

.case-kicker {
	border-top: 1px solid var(--line);
	text-transform: uppercase;
	letter-spacing: 1.3px;
	color: var(--grey);
	justify-content: space-between;
	margin-bottom: 70px;
	padding-top: 17px;
	font-size: 10px;
	display: flex;
}

.case-hero h1 {
	max-width: 1200px;
	margin: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: clamp(62px, 7.1vw, 112px);
	font-weight: 800;
	letter-spacing: -0.055em;
	line-height: 1.08;
	color: var(--ink);
}

.case-hero > p {
	color: var(--grey);
	margin: 34px 0 0;
	font-size: 20px;
}

.case-cover {
	background: #ddd;
	height: min(78vw, 900px);
	overflow: hidden;
}

.case-cover img {
	object-fit: cover;
	width: 100%;
	height: 100%;
	display: block;
}

.case-overview {
	grid-template-columns: 1.35fr 0.65fr;
	gap: 10vw;
	padding: 120px 5vw;
	display: grid;
}

.case-overview h2 {
	max-width: 900px;
	margin: 0;
	font-size: clamp(42px, 5vw, 76px);
}

.case-overview dl {
	border-top: 1px solid var(--line);
	margin: 0;
}

.case-overview dl div {
	border-bottom: 1px solid var(--line);
	grid-template-columns: 110px 1fr;
	padding: 20px 0;
	font-size: 12px;
	display: grid;
}

.case-overview dt {
	color: var(--grey);
}

.case-overview dd {
	margin: 0;
}

.case-statement {
	background: var(--pink);
	color: #fff;
	padding: 100px 9vw;
}

.case-statement span,
.case-note > span {
	text-transform: uppercase;
	letter-spacing: 1.5px;
	font-size: 10px;
}

.case-statement p {
	max-width: 1200px;
	margin: 35px 0 0;
	font-family: Georgia, Times New Roman, serif;
	font-size: clamp(34px, 5vw, 74px);
	line-height: 1.15;
}

.case-gallery {
	background: #ece9e1;
	grid-template-columns: 1.25fr 0.75fr;
	display: grid;
}

.case-gallery figure {
	margin: 0;
}

.case-gallery figure img {
	object-fit: cover;
	width: 100%;
	height: 800px;
	display: block;
}

.case-gallery figcaption {
	color: var(--grey);
	padding: 12px 18px;
	font-size: 10px;
}

.case-note {
	flex-direction: column;
	justify-content: center;
	padding: 90px 5vw;
	display: flex;
}

.case-note h2 {
	margin: 35px 0;
	font-size: clamp(40px, 5vw, 76px);
}

.case-note h2 em {
	color: var(--pink);
	font-family: Georgia, Times New Roman, serif;
	font-weight: 400;
}

.case-note p {
	color: var(--grey);
	line-height: 1.7;
	margin: 0;
}

.case-note a {
	border-bottom: 1px solid;
	width: max-content;
	margin-top: 30px;
	padding-bottom: 5px;
	font-size: 12px;
	font-weight: 800;
}

@media (width <= 800px) {
	.case-overview,
	.case-gallery {
		grid-template-columns: 1fr;
	}

	.case-kicker {
		gap: 20px;
	}

	.case-gallery figure img {
		height: 500px;
	}
}

@media (width <= 520px) {
	.case-hero,
	.case-overview {
		padding-left: 6vw;
		padding-right: 6vw;
	}

	.case-cover {
		height: 70vh;
	}

	.case-statement {
		padding: 75px 6vw;
	}
}
