.productOuterContainer {
    display: flex;
	flex-direction: column;
    justify-content: center;
	padding-top: 20px;
	gap: 40px;
    width: 100%;
}

.productRow {
    display: flex;
	gap: 80px;
	padding: 0;
	margin: 0;
	max-width: 1920px;
	width: 100%;
}

.mainColumn {
	flex: 5;
}
.sideColumn {
	flex: 2;
}


.productTopColumnContainer {
	display: flex;
	gap: 40px;
}

.productImageContainer img {
	max-height: 300px;
	max-width: 300px;
}

.ctaButtonDiv {
	margin-top: auto;
}

.contentAndResourcesContainer {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding: 0;
}

.resourcesAndSimilarProductsColumn {
	margin-bottom: 20px;
	background-color: var(--primary-white-color);
}

.productTitleSomeDetailsCtaButtonContainer {
    display: flex;
    flex-direction: column;
	font-family: Raleway, sans-serif;
	gap: 14px;
}

.productH1 {
	padding-bottom: 0;
}

.tagContainer {
	padding: 0;
}

.chemicalFormulaDiv,
.productCodeDiv {
	padding: 0;
}


.mainProductDetailsContainer {
	flex: 3;
}

.sideProductDetailsContainer {
	flex: 1;
	display: flex;
	justify-content: right;
}

.dataSheetUl {
	margin-block-start: 0;
	margin-block-end: 0;
	margin-top: 10px;
	margin-bottom: 10px;
}


/* desktop */
@media only screen and (max-width: 1281px) {
	.productTopRow > div:empty {
		display: none;
	}
}
@media only screen and (min-width: 481px) {

	.contentAndResourcesContainer {
		margin-bottom: 60px;
	}

	.contentColumn {
		width: 80%;
	}

	.sliderContainer {
		width: 30%;
		padding-right: 60px;
	}

	.resourcesAndSimilarProductsColumn {
		width: 20%;
		margin-left: 40px;
	}
}

/* mobile */
@media only screen and (max-width: 480px) {

	h1.productH1 {
		padding-top: 34px;
		padding-bottom: 14px;
	}

	.contentAndResourcesContainer {
		flex-direction: column;
	}

	.contentColumn {
		width: 100%;
	}

	.sliderContainer {
		width: 100%;
	}

	.dataSheetLi {
		text-align: left;
	}

	.resourcesAndSimilarProductsColumn {
		width: 100%;
	}

	.dataSheetUl {
		padding-left: 20px;
	}

	.productImageTitleSomeDetailsCtaButtonRow {
		flex-direction: column;
		padding: 10px 0px;
	}
}



/* mobile portrait */
@media (max-width: 820px) and (orientation: portrait) {
    .productRow,
    .productTopColumnContainer {
        flex-direction: column;
        gap: 20px; /* Optional: smaller gap for stacked layout */
    }

    .mainColumn,
    .sideColumn,
    .productImageContainer,
    .productTitleSomeDetailsCtaButtonContainer {
        flex: none;
        width: 100%;
    }

	.productRow > div:empty {
		display: none;
	}

	.productOuterContainer > .globalContentContainer:last-child > .productRow {
		padding: 0;
	}

	.productImageContainer {
		display: flex;
		justify-content: center;
	}

	.productImageContainer img {
		width: 100%;
		max-width: none;
		max-height: none;
	}

	.productTitleSomeDetailsCtaButtonContainer {
		gap: 10px;
	}

	h1.productH1 {
		padding-top: 14px;
		padding-bottom: 14px;
	}

	.heroContactUsButton {
		width: 100%;
	}

	.datasheetContainer {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.dataSheetLi,
	.dataSheetLi a {
		padding: 6px;
	}
}



.productContainerSimilarProducts {
	width: 20%;
	display: block;
	padding: 10px;
	background-color: white;
}

.descriptionColumn, .additionalInformationColumn {
	width: 50%;
	display: block;
	padding: 10px;
}

.productExcerpt,
.productContent {
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	line-height: 120%;
	color: var(--primary-black-color);
	font-family: Raleway, sans-serif;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
	font-size: 16px;
	margin: 0;
}

.dataSheetLi {
	color: var(--primary-black-color);
	font-family: Raleway, sans-serif;
	font-size: 16px;
	line-height: 120%;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
}

.dataSheetLi > a {
	color: var(--primary-red-color);
	text-decoration: none;
}


/* ql-table-blob class is generated by Salesforce. Need to override a few things. */
.ql-table-blob {
	border-collapse: collapse !important;
	width: 100% !important;
}

.ql-table-blob td {
	border: 1px solid black;
	border-spacing: 0 !important;
	width: auto !important;
	margin: 0 !important;
}

.htmlDetailElementTable {
	width: 100%;
}



.propertyContainer {
	display: flex;
	flex-direction: column;
	font-family: Raleway, sans-serif;
	gap: 8px;
}


.propertyNamePropertyValueTable {
    background-color: var(--primary-white-color);
	font-family: Raleway, sans-serif;
    border-collapse: collapse;
    margin: 0;
    margin-block-end: 0;
    margin-block-start: 0;
    padding: 0;
    width: 100%;
}

.propertyNamePropertyValueTable th {
    background-color: var(--primary-white-color);
    border-color: #BBBBBB;
    border-style: solid;
    border-width: 1px;
    color: #222222;
	font-family: Raleway, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin: 0;
    margin-block-end: 0;
    margin-block-start: 0;
    padding: 1mm 0 1mm 2mm;
    text-align: left;
    vertical-align: middle;
    width: 40%;
}

.propertyNamePropertyValueTable td {
    background-color: var(--primary-white-color);
    border-color: #BBBBBB;
    border-style: solid;
    border-width: 1px;
    color: #222222;
	font-family: Raleway, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin: 0;
    margin-block-end: 0;
    margin-block-start: 0;
    padding: 1mm 0 1mm 2mm;
    text-align: left;
    vertical-align: middle;
    width: 60%;
}





.introCtaContainer {
	padding: 40px 0px;
}

.redBackground {
	background-color: var(--primary-red-color);
}

.introCtaColumnContainer {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	flex-direction: column;
	gap: 20px;
}

.ctaCol {
	width: 50%;
	display: flex;
    align-items: center;  
}

.ctaRowDevider {
	display: none;
}

.textAlignCenter {
	text-align: unset;
}

#ctaText {
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
	color: var(--primary-white-color);
	font-family: Raleway, sans-serif;
	margin: 0;
	line-height: normal;
	font-size: 20px;
}

.heroContactUsButton {
	display: inline-block;

    padding: 12px 24px;

    background-color: var(--primary-red-color);
    color: var(--primary-white-color);

    border-radius: 6px;

}
.heroContactUsButton span {
	display: inline-block;
	text-transform: uppercase;

    background-color: var(--primary-red-color);
    color: var(--primary-white-color);

    font-size: 14px;
    text-decoration: none;
    transition: transform 0.2s ease;
}
.heroContactUsButton:hover span {
	transform: scale(1.05);
}

#bottomContactUsButton {
	background-color: var(--primary-white-color);
	border-color: var(--primary-white-color);
	color: var(--primary-red-color);
}

.footer {
	margin: 0 !important;
}