/* ==========================================================================
   MMX-ACC-DIAMOND-BANNER
   Card-style banner with a heading and a row of diamond milestone items,
   reproducing the Accessotronik "Our Story" ready-theme section. Each item
   has an image or inline SVG graphic with a center-overlaid text and a
   description, connected by a keyline. Background supports both a color and
   an image. Items stack vertically with a horizontal internal layout on
   tablet & mobile (from the "Our Story" section's own breakpoint).
   ========================================================================== */

.mmx-acc-diamond-banner {
	box-sizing: border-box;
	position: relative;
	box-shadow: var(--mmxadb-shadow, none);
	border-radius: var(--mmxadb-radius, 0px);
	padding: var(--mmxadb-padding, 32px);
	background-color: var(--mmxadb-bg-color, #ffffff);
	/* --mmxadb-bg-color is also applied here so a gradient function (e.g.
	   linear-gradient(...)) typed into the Background Color field renders as
	   a background-image layer; a plain color value is invalid in this
	   position and is simply ignored, leaving background-color above in
	   effect instead. */
	background-image: var(--mmxadb-bg-image, none), var(--mmxadb-bg-color, none);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.mmx-acc-diamond-banner *,
.mmx-acc-diamond-banner *::before,
.mmx-acc-diamond-banner *::after {
	box-sizing: border-box;
}

/* Background responsive images
   ========================================================================== */

@media screen and (max-width: 39.999em) {
	.mmx-acc-diamond-banner {
		background-image: var(--mmxadb-bg-image-mobile, var(--mmxadb-bg-image, none)), var(--mmxadb-bg-color, none);
	}
}

@media screen and (min-width: 40em) and (max-width: 59.999em) {
	.mmx-acc-diamond-banner {
		background-image: var(--mmxadb-bg-image-tablet, var(--mmxadb-bg-image, none)), var(--mmxadb-bg-color, none);
	}
}

/* Heading
   ========================================================================== */

.mmx-acc-diamond-banner__heading {
	display: block;
	margin: 0 0 var(--mmxadb-heading-margin-bottom, 25px);
	font-family: var(--mmxadb-heading-font-family, "Electrolize", sans-serif);
	font-size: var(--mmxadb-heading-font-size, 36px);
	font-weight: var(--mmxadb-heading-font-weight, 400);
	color: var(--mmxadb-heading-color, #D81313);
	line-height: 1.187;
}

.mmx-acc-diamond-banner[data-align="left"] .mmx-acc-diamond-banner__heading {
	text-align: left;
}

.mmx-acc-diamond-banner[data-align="center"] .mmx-acc-diamond-banner__heading {
	text-align: center;
}

.mmx-acc-diamond-banner[data-align="right"] .mmx-acc-diamond-banner__heading {
	text-align: right;
}

/* Content / Keyline
   ========================================================================== */

.mmx-acc-diamond-banner__content {
	position: relative;
	z-index: 1;
}

.mmx-acc-diamond-banner__content .c-keyline {
	/* position: absolute;
	height: 0;
	width: 83%;
	margin: 0;
	border: 0;
	background: none;
	transform: translate(-50%);
	left: 50%;
	top: 66px;
	border-bottom: 1px solid var(--mmxadb-keyline-color, #D81313);
	border-left: 1px solid var(--mmxadb-keyline-color, #D81313); */

	width: 60px;
	height: 67px;
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	border-bottom: 1px solid var(--mmxadb-keyline-color, #D81313);
}

/* Items Row
   ========================================================================== */

.mmx-acc-diamond-banner__items {
	/* display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: nowrap;
	gap: 15px; */

	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 15px 0;
}

.abus_our-story_year {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	gap: 12px;
	flex: 1 1 0%;

	max-width: 250px;
	min-width: 230px;
}

/* Media (image / svg) with center-overlaid text
   ========================================================================== */

.mmx-acc-diamond-banner__media {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 174px;
	min-width: 174px;
	max-width: 100%;
	height: auto;
	background: var(--mmxadb-item-bg-color, #ffffff);
	padding: 0 20px;
}

.mmx-acc-diamond-banner__media img,
.mmx-acc-diamond-banner__media svg {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

.mmx-acc-diamond-banner__media-text {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--mmxadb-item-text-font-family, "Open Sans", sans-serif);
	font-size: var(--mmxadb-item-text-font-size, 32px);
	font-weight: var(--mmxadb-item-text-font-weight, 700);
	line-height: 1;
	color: var(--mmxadb-item-text-color, #1c1c1c);
}

/* Description
   ========================================================================== */

.mmx-acc-diamond-banner__description {
	font-family: var(--mmxadb-item-desc-font-family, "Electrolize", sans-serif);
	font-size: var(--mmxadb-item-desc-font-size, 24px);
	font-weight: var(--mmxadb-item-desc-font-weight, 400);
	text-align: center;
	color: var(--mmxadb-item-desc-color, #1c1c1c);
	line-height: 1.333;
	padding: 0 10px;
}

/* Decorative Corner Images
   ========================================================================== */

.mmx-acc-diamond-banner .bg-bottom-left,
.mmx-acc-diamond-banner .bg-top-right {
	position: absolute;
}

.mmx-acc-diamond-banner .bg-bottom-left {
	bottom: 0;
	left: 0;
	opacity: var(--mmxadb-bg-bottom-left-opacity, 1);
}

.mmx-acc-diamond-banner .bg-top-right {
	top: 0;
	right: 0;
	opacity: var(--mmxadb-bg-top-right-opacity, 1);
}

/* ==========================================================================
   Responsive — breakpoints follow the "Our Story" ready-theme section
   ========================================================================== */

@media screen and (max-width: 1300px) {
	.mmx-acc-diamond-banner__content .c-keyline {
		/* top: 61px; */

		height: 62px;
	}

	.mmx-acc-diamond-banner__media {
		width: 160px;
		min-width: 160px;
	}

	.mmx-acc-diamond-banner__media-text {
		font-size: calc(var(--mmxadb-item-text-font-size, 32px) * 0.9375);
	}

	.mmx-acc-diamond-banner__description {
		font-size: calc(var(--mmxadb-item-desc-font-size, 24px) * 0.8333);
	}
}

@media screen and (max-width: 1200px) {
	.mmx-acc-diamond-banner__description {
		font-size: calc(var(--mmxadb-item-desc-font-size, 24px) * 0.75);
	}
}

@media screen and (max-width: 960px) {
	.mmx-acc-diamond-banner__items {
		flex-direction: column;
		gap: 0;
	}

	.abus_our-story_year {
		flex-direction: row;
		max-width: none;
	}

	.mmx-acc-diamond-banner__media {
		width: 88px;
		min-width: 88px;
		padding: 5px 0;
	}

	.mmx-acc-diamond-banner__content .c-keyline {
		/* width: 0;
		height: 83%;
		left: 44px;
		transform: none; */

		width: 45px;
		height: 15px;
		border: 0;
		border-right: 1px solid var(--mmxadb-keyline-color, #D81313);
	}

	.mmx-acc-diamond-banner__media-text {
		font-size: calc(var(--mmxadb-item-text-font-size, 32px) * 0.65625);
	}

	.mmx-acc-diamond-banner__description {
		font-size: calc(var(--mmxadb-item-desc-font-size, 24px) * 0.9167);
		text-align: left;
	}
}

@media screen and (max-width: 550px) {
	.mmx-acc-diamond-banner__description {
		font-size: calc(var(--mmxadb-item-desc-font-size, 24px) * 0.6667);
	}
}

@media screen and (max-width: 500px) {
	.mmx-acc-diamond-banner__heading {
		font-size: calc(var(--mmxadb-heading-font-size, 36px) * 0.889);
	}
}
