.hero {
	width: 100%;
	min-height: 70vh;
	position: relative;
	overflow: hidden;
}
.hero .c1 {
	background-color: rgb(133, 154, 174);
}

.hero.special25 {
	background-size: cover;
	background-position: center center;
}
.hero.fall01 {
	background-image: url(../jpg/25-fall01.jpg);
}
.hero.fall02 {
	background-image: url(../jpg/25-fall02.jpg);
}
.hero.fall03 {
	background-image: url(../jpg/25-fall03.jpg);
}
.hero.fall04 {
	background-image: url(../jpg/25-fall04.jpg);
}
.hero.halloween01 {
	background-image: url(../jpg/25-halloween01.jpg);
}
.hero.halloween02 {
	background-image: url(../jpg/25-halloween02.jpg);
}
.hero.halloween03 {
	background-image: url(../jpg/25-halloween03.jpg);
}
.hero.halloween04 {
	background-image: url(../jpg/25-halloween04.jpg);
}

@media screen and (max-width: 768px) and (orientation: portrait) {
	.hero.special25 {
		background-position: right center;
	}
}
@media only screen and (max-width: 844px) and (orientation: landscape) {
	.hero {
		height: 80vw;
	}
}
@media only screen and (min-width: 901px) {
	.hero {
		min-height: 66vh;
	}
}
.hero article {
	width: 100%;
	max-width: 100%;
	height: 100%;
	padding: 2rem 0;
}

.hero article > .wrapper {
	display: flex;
	flex-direction: column;
}
.hero article > .wrapper > * > .wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.special25 article > .wrapper > * > .wrapper {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	margin-top: 15%;
}

@media screen and (max-width: 768px) and (orientation: portrait) {
	.hero.special25 article > .wrapper > * > .wrapper {
		margin-top: 0%;
	}
}

@media (min-width: 768px) {
	.hero article > .wrapper {
		height: 100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: stretch;
	}
	.hero article.c1 > .wrapper {
		height: 100%;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
}

.hero .content {
	position: relative;
	color: var(--white);
	background: transparent;
}
.hero .product-images .wrapper,
.hero .content .wrapper {
	width: 90%;
	min-height: 100%;
	max-height: 100%;
	margin: 0 auto;
	padding: 2rem 0;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
}

.hero .content .text {
	height: auto;
	max-height: 30%;
	text-align: center;
}
.hero .content .text > * {
	margin: 0 0 2rem 0;
}
@media (min-width: 768px) {
	.hero article > .wrapper > * {
		width: 50%;
	}
}
@media only screen and (min-width: 901px) {
}

.hero .prod-images img:nth-child(1) {
	display: none;
}

section .cta {
	color: var(--white);
	border-color: var(--white);
	background-color: var(--black);
}

.hero .cta {
	color: var(--black);
	background-color: var(--white);
}

.product {
	text-align: center;
}

.product article .content {
	padding: 4rem 2rem;
	text-align: center;
	color: var(--black);
	background-color: var(--white);
}

.product article .text div > * {
	margin-bottom: 2rem;
}

.product .product-image {
	padding: 2rem 0;
}

.product .product-image img {
	width: 90%;
	max-width: 20rem;
}

.bulletin-support article {
	height: 45vh;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	gap: 3rem;
}
.bulletin-support article div {
	display: flex;
	flex-direction: column; /* Stack content vertically within each div */
	justify-content: space-between; /* Space between content items */
	flex-basis: 30%;
}

/* For tablets (601px to 900px) */
@media only screen and (min-width: 601px) and (aspect-ratio: 3 / 4) {
	.hero {
		height: 66vh;
	}
}
@media only screen and (min-width: 601px) {
	.product {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		align-items: baseline;
	}
	.product article {
		width: 50%;
	}

	.product .fz55 img,
	.product .fz45 img {
		width: 60%;
	}
	.product .az425 img,
	.product .az255 img {
		width: 70%;
	}
	.support article div {
		width: 70%;
	}
}

section.bulletin-support {
	text-align: center;
	color: var(--white);
	background-color: var(--black);
}

section.bulletin-support article > div {
	margin: 0 auto;
	padding: 2rem 0;
}

section.bulletin-support article > div p {
	margin: 2rem 0;
}

section.bulletin-support .cta {
	color: var(--white);
	border-color: var(--white);
}

/* For desktops (901px and above) */
@media only screen and (min-width: 901px) {
	.bulletin-support article {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: flex-start;
	}
}
