

		body {
			font-size: 100%; /* browser default = 1.0em = 16px ... all other text on homepage is EM ... 100% means full browser text size which is changeable by user */
			font-family: Verdana, sans-serif; 																						/* as stated here: https://www.w3schools.com/css/css_font.asp */
			margin: 0;
		}
		#gtm_logo {
			width: 97%;
			position: relative;
			margin: 7px auto 10px auto; /* top .. right .. bottom .. left */
		}
		#gtm_logo img
		{
			max-width: 65%;
		}
		#product_cat_block { /* width commented in ... navbar_middle_mega.css ... because it is controlled here */
			width: 95%;
		}
		#navbar_top_inner { /* width commented in ... navbar_top_fixed.css ... because it is controlled here */
			width: 95%;
		}
		h1.section_header
		{
			color: #b00202;
			margin: 10px auto 0 2%; /* top .. right .. bottom .. left */
			font-style: italic;
			font-size: 1.9em;
		}
		h2.section_header, h2.section_header_2
		{
			color: #da6702;
			margin: 19px auto 0.5% 3%; /* top .. right .. bottom .. left */
			font-size: 1.6em;
			font-style: italic;
		}
		h2.section_header_2
		{
			margin-left: 1%;
			margin-bottom: 17px;
		}
		h3.section_header
		{
			color: #18017d;
			margin: 12px auto 0 2%; /* top .. right .. bottom .. left */
			font-size: 20px;
			font-style: italic;
		}
		.page_description_content
		{
			width: 95%;
			margin: 0 auto 0 auto; /* top .. right .. bottom .. left */
			border: 1px solid orange;
			padding: 0 5px 5px 5px;
		}
		#Q_and_A_container
		{
			width: 95%;
			margin: 0 auto 0 auto; /* top .. right .. bottom .. left */
			padding: 15px 25px 15px 25px;
			background-color: #d2e2ef;
		}
		#questions_and_answers
		{
			background-color: #FFFEF7;
			padding: 10px;
			/* border: 1px solid orange; */
		}
		#questions_and_answers h2
		{
			margin-left: 30px;
		}
		.question_heading
		{
			font-size: 17px;
			font-weight: bold;
			margin-top: 15px;
			color: #007E04;
		}
		.question
		{
			font-size: 16px;
			margin-left: 25px;
			margin-bottom: 13px;
			text-decoration: underline;
		}
		.answer_heading
		{
			font-size: 15px;
			font-weight: bold;
			color: #000299;
		}
		.answer
		{
			font-size: 14px;
			margin-left: 15px;
		}
		p
		{
			/* border: 1px solid rgb(91, 220, 26); */
			margin: 7px;
			margin-top: 10px;
		}
		ul
		{
			/* border: 1px solid orange; */
			margin-top: 7px; /* the default top margin is way to big */
		}
		ul#book_mark_links
		{
			margin-top: 14px;
		}
		.text_block
		{
			/* font-size: 17px; */
			line-height: 150%;
			font-family: arial;
			/* border: 1px solid blue; */
			/* margin-top: 10px; */
			padding: 0 15px 10px 15px; /* top .. right .. bottom .. left */
		}
		#mounting_options /* this is actually the H2 header */
		{
			margin-left: 40px;
		}
		.content_flex
		{
			display: flex;
			flex-wrap: wrap;
			padding: 0 5px 5px 5px;
			/* border: 1px solid orange; */
		}
		.content_flex > div
		{
			width: 550px;  /* stops the text blocks to the left ... using up more than 50% the width and therefore making the images smaller */
			flex-grow: 1;
		}
		/* ............................................. */

		* {
			box-sizing: border-box;
		}
		#image_block_1, #image_block_2
		{
			display: grid;
			justify-content: space-around; /* THIS is only effective when using: "auto" ... Not! "1fr" */

			/* grid-template-columns: auto auto auto; */ /* set further down */
			/* grid-template-columns: 1fr 1fr 1fr; */
			grid-gap: 30px;

			/* border: 1px solid blue; */

			margin-top: 10px;
			padding: 10px;
		}
		#image_block_1 img, #image_block_2 img
		{
			/* width: 100%; */
			max-width: 100%; /* max-width: 100%; */
			max-height: 475px;
			border: 1px solid red;
		}
		#image_block_2 img { border: none; }

		#image_block_1 { grid-template-columns: auto auto; }
		#image_block_2 { grid-template-columns: auto; }

		figure
		{
			display: table; /* https://stackoverflow.com/questions/28394007/figcaption-no-wider-than-the-image */

			/* border: 2px dotted pink; */
			margin: 0;
		}
		figcaption
		{
			display: table-caption; /* https://stackoverflow.com/questions/28394007/figcaption-no-wider-than-the-image */
			caption-side: bottom;
			text-align: center;
			font-style: italic;
			/* margin-top: 3px; */
			/* border: 2px dotted blue; */
			width: auto;
		}
		.image_block_D
		{
			display: flex;
			flex-wrap: wrap;
			gap: 10px;
			justify-content: space-evenly; /* Does NOT! work in EDGE ... See link above */
			align-content: flex-end;
			/* justify-content: space-around; */
			/* border: 1px solid green; */
			margin-top: 5px;
			padding: 10px;
		}
		.image_block_D figure
		{
			/* Note: the above: "max-width" is set slightly less than 2 (50%) figures instead of using the now commented margin below */
			/* which now makes Edge work the same as Chrome & FF */
			/* ------------------------------------------------- */
			/* max-width: 49.5%; */ /* Important! "img max-width: 100%" ... below is required also ... else the image expands outside the figure */
			/* margin: 0 3px 0 3px; */ /* top .. right .. bottom .. left */
			padding: 2px;
			margin-top: 20px;
			/* border: 1px solid orange; */
		}
		.image_block_D img
		{
			transition: 0.5s;
			max-width: 100%; /* stops image expanding off page ... but does bring transition to sudden stop if page is narrow ... as opposed to smooth stop like you might be expect */
			width: 500px;
			cursor: zoom-in;
			/* border: 1px solid purple; */

			/* transition: 1s; */
		}
		/* Flex doesn't work correctly in EDGE ... even Now! 20-10-2019 ... https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/15947692/ */

		/* @supports (-ms-accelerator: true) ... Edge only ... does Not! work ... this is also commented about in above link */

		/* @supports (-ms-ime-align: auto) ... Edge only: https://stackoverflow.com/questions/32940965/how-to-target-microsoft-edge-with-css */

		/* alternative way ... https://stackoverflow.com/questions/54882531/how-to-detect-partial-support-for-space-evenly-in-edge */

		@supports (-ms-ime-align: auto)
		{
			.image_block_A, .image_block_B, .image_block_C, .image_block_D
			{
				justify-content: space-around;
			}
		}

			* {
				box-sizing: border-box;
			}

			#grid_container_images_parent
			{
				width: 95%; /* set this to 95% the same as "page_description_content" */
				margin: 0 auto 0 auto; /* top .. right .. bottom .. left */
				padding-top: 10px;
				background-color: #d2e2ef;
				/* border: 3px solid green; */
			}
			#select_layout_instruction /* this is the text above the images */
			{
				text-align: center;
				text-decoration: underline;
				color: #6E4319;
				/* border: 1px solid green; */
				margin-top: 0; /* needs to be 0 else the <p> default margin pushes parent <div> downwards which results in white space above parent <div> */
			}

			@media only screen and (min-width: 1600px)
			{ /* Bootstrap breakpoints: (down page a bit) https://getflywheel.com/layout/css-breakpoints-responsive-design-how-to/ */

				#gtm_logo, #product_cat_block, #navbar_top_inner, .page_description_content, #footer_inner, #Q_and_A_container, #grid_container_images_parent
				{
					/* .product_cat_block ... is in ... navbar_product_cat.css ... which is set to different width for ... product_detail_page.css */
					width: 70%;
				}
			}

			.grid-container {
				position: relative;
				/* width: 95%; */ /* 06-06-2024: grid container is now inside "grid_container_images_parent" as above */
				margin: 0 auto;

				display: grid;

				/* grid-template-columns: auto; */ /* Make the grid smaller than the container */
				grid-template-columns: 1fr 1fr;
				justify-content: space-evenly; /* THIS! is most likely ineffective when using "fr" instead of "auto" */
											   /* see homepage ... where you're having to use "auto" to be able to use: "justify-content" */
				grid-gap: 10px;

				background-color: #d2e2ef;
				padding: 10px;
				padding-top: 3px;
			}

			/* Great article ... https://webplatform.github.io/docs/tutorials/understanding-css-units/ */
			/* xxxxxxxxxxxx */
			@media only screen and (min-width: 495px)
			{
				/* Bootstrap breakpoints: (down page a bit) https://getflywheel.com/layout/css-breakpoints-responsive-design-how-to/ */

				/* Absolutely Magic! ... "fr" locks the width to the proportion of available space ... Always! Based on the Number! of "fr"s stated in */
				/* "grid-template-columns:" as below ... similar (if not exactly the same) as Flex's "Grow" */

				/* The cool! thing is that even when an element is removed using JS ... the remaining elements width-proportion doesn't change */
				/* E.G. 1fr / (1fr 1fr 1fr 1fr) = 20% ... and if you remove say 2 elements ... the remaining 3 still have a width of 20% */

				/* "auto" on the other hand as was used before ... expands the remaining elements to fill 100% of the available space */
				/* after any elements have been removed */

				.grid-container_mobile
				{
					/* grid-template-columns: auto; */
					grid-template-columns: 1fr 1fr 1fr;
				}

				#image_block_1 { grid-template-columns: auto auto auto auto; }
			}

			@media only screen and (min-width: 768px) {
				.grid-container_mobile {
					/* grid-template-columns: auto auto; */
					grid-template-columns: 1fr 1fr 1fr;
				}
			}
			@media only screen and (min-width: 992px) {
				.grid-container_mobile {
					/* grid-template-columns: auto auto auto; */
					grid-template-columns: 1fr 1fr 1fr;
				}
			}
			@media only screen and (min-width: 1200px) {
				.grid-container_mobile {
					/* grid-template-columns: auto auto auto auto; */
					grid-template-columns: 1fr 1fr 1fr;
				}
			}
			@media only screen and (min-width: 1350px) { /* Bootstrap's highest is ... 1200px ... according to the above link */
				.grid-container_mobile {
					/* grid-template-columns: auto auto auto auto auto; */
					/* grid-template-columns: 1fr 1fr 1fr 1fr 1fr; */
					grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
				}
			}
			@media only screen and (min-width: 1600px) { /* Adjust the screen width at a separate break point here */
				.grid-container_mobile {
					/* width: 70%; */ /* 06-06-2024: grid container is now inside a "page_description_content_test" */
				}
			}
			.grid-container > div {
				background-color: rgba(255, 255, 255, 0.8);
				text-align: center;
				padding: 20px 10px;
				border: 1px solid red;

				transition: 0.1s;
			}
			.grid-container img {
				padding: 3%;
				/* border: 1px solid green; */

				/* Stops image making parent DIV larger ... becomes effective only when natural image size is larger than calculated via CSS */
				width: 100%;
			}
			.product_title {
				text-decoration: underline;
				margin-bottom: 10px;
			}