body {
	background-color: rgb(255,255,255);
	/*padding-top: 140px;*/
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	}
	
	/* Typography
	–––––––––––––––––––––––––––––––––––––––––––––––––– */
	h1, h2, h3, h4, h5, h6 {
	margin-top: 0;
	margin-bottom: 1.0rem;
	font-family: "GrundfosTheSans", Helvetica, Arial, sans-serif;
	font-weight: 900;
	color: rgb(9,40,68);
	}
	
	/*h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
	margin-bottom: 0rem;
	}*/
	
	h1 { font-size: 3.5rem; line-height: 1.3; }
	h2 { font-size: 2.75rem; line-height: 1.3; }
	h3 { font-size: 2.5rem; line-height: 1.3; }
	h4 { font-size: 2rem; line-height: 1.2; }
	h5 { font-size: 1.75rem; line-height: 1.2; }
	h6 { font-size: 1.5rem; line-height: 1.2; }
	
	@media (max-width: 800px) {
		h1 { font-size: 3rem; line-height: 1.3; }
		h2 { font-size: 2.25rem; line-height: 1.3; }
		h3 { font-size: 1.8rem; line-height: 1.3; }
		h4 { font-size: 1.6rem; line-height: 1.2; }
		h5 { font-size: 1.5rem; line-height: 1.2; }
		h6 { font-size: 1.4rem; line-height: 1.2; }
	}
	
	p + h1,
	p + h2,
	p + h3,
	p + h4,
	p + h5,
	p + h6 {
		margin-top: 1.25em;
	}
	
	p {
		margin-top: 0px;
	}
	
	/*p:last-child {
	margin-bottom: 0px;
	}*/
	
	p a {
		color: rgb(18,106,243) !important;
		text-decoration: none;
	}
	
	strong {
		font-family: "GrundfosTheSans", Helvetica, Arial, sans-serif;
		font-weight: 700;
	}
	
	.text-align-center {
		text-align: center !important;
	}
	
	/* Links
	–––––––––––––––––––––––––––––––––––––––––––––––––– */
	a {
	color: inherit;
	text-decoration: underline;
	}
	
	a:hover {
	text-decoration: none;
	}
	
	.page-title h1 {
		font-size: 3.2rem;
		color: #333333;
		margin-bottom: 15px;
	}
	
	.quote, .quote-infos {
	padding: 20px 20px 5px 60px;
	}
	
	.quote p {
	font-style: italic;
	}
	
	.quote-infos-block {
	position: relative;
	}
	
	.quote-infos span {
	position:absolute;
	bottom:3px;
	right:15px;
	}
	
	.quote-infos p {
	text-align: right;
	margin-bottom: 0px;
	line-height: 20px;
	font-size: 12px;
	}
	
	.quote-infos-image {
	border-radius: 100%;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	}
	
	.video-wrapper iframe {
	  width: 100%;
	  height: 100%;
	  opacity: 1;
	}


	/*.background-color-on {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	}*/


	.hero-image-deck {
		height: 100vh;
		background-size: cover;
		background-position: center;
		color: rgb(255,255,255);
	}

	.news-page .grid {
		row-gap: 50px;
	}
	
	.fluid-image {
		/*background-image: IT IS SET ON PAGE TEMPLATE */
		height: 100%;
		background-size: cover;
		background-position: center;
	}
	
	.image-with-focal-point {
		height: 100%;
		min-height: 250px;
		position: relative;
	}
	
	.aspect-ratio-3-2 {
		aspect-ratio: 3/2;
		max-width: 100%;
	}
	
	.aspect-ratio-4-3 {
		aspect-ratio: 4/3;
		max-width: 100%;
	}
	
	.aspect-ratio-16-9 {
		aspect-ratio: 16/9;
		max-width: 100%;
	}
	
	.full-width-content .grid {
		column-gap: 0px !important;
		max-width: 100% !important;
		margin: 0 !important;
	}
	
	.full-width-content {
		width: 100%;
	}
	
	/*.full-width-content .fluid-image, .full-width-content .image-with-focal-point {
		height: calc(100% + 200px);
		top: -100px;
		min-height: 250px;
		position: relative;
		width: 100%;
		right: 0%;
	}*/
	

	
	.full-width-content .column {
		margin: 0 10%; 
	}
	
	.fact-box {
		padding: 2rem;
		display: flex;
		flex-direction: column;
		align-items: center;
		row-gap: 1rem;
		height: calc(100% - 4rem);
		position: relative;
		border-radius: 1rem;
	}
	
	.fact-box .button-wrapper {
		margin-top: auto;
	}
	
	.fact-box h1,
	.fact-box h2,
	.fact-box h3,
	.fact-box h4,
	.fact-box h5,
	.fact-box h6 {
		color: rgb(18,106,243) !important;
	}
	
	@media (max-width: 1200px) and (min-width: 801px) {
		.fact-box h4 {
			font-size: 1.6rem !important;
		}
	}
	
	.fact-svg-icon img{
		width: 4rem;
	}
	
	.fact-flex .fact-column h4 {
		margin-bottom: 0px;
	}

@media (min-width: 1201px) {

	.content-wrapper {
		/*margin-top: 160px;*/
		min-height: 70vh;
	}

	.full-width-content .full-width-inner-content {
		/*padding: 100px 10%;*/
		padding: 100px 0%;
	}
	
	.full-width-content .fluid-image, .full-width-content .image-with-focal-point {
		height: calc(100% + 200px);
		top: -100px;
		min-height: 250px;
		position: relative;
		width: 125%;
		margin: 0 -12.5%;
	}
	
	/*.full-width-content .text-block {
		padding: 0 10%;
		max-width: 700px;
	}*/
	
	/*.full-width-content .six-columns .fluid-image{
		height: calc(100% + 200px);
		top: -100px;
		min-height: 250px;
		position: relative;
		width: calc(100% + 43%);
		right: 0%;
	}
	
	.full-width-content .six-columns .image-with-focal-point {
		height: calc(100% + 200px);
		top: -100px;
		min-height: 250px;
		position: relative;
		width: calc(100% + 43%);
		right: 0%;
	}*/
	
	
	
	/*.full-width-content .six-columns:first-child .fluid-image, .full-width-content .six-columns:first-child .image-with-focal-point {
		left: -43%;
	}

	.full-width-content .six-columns:nth-child(1) .text-block, .full-width-content .six-columns:nth-child(1) .button-wrapper {
		padding-right: 60px;
	}

	.full-width-content .six-columns:nth-child(2) .text-block, .full-width-content .six-columns:nth-child(2) .button-wrapper {
		padding-left: 60px;
	}*/

	.content-header, .content {
		width: 80%;
		padding: 100px 10%;
	}

	.narrow-content {
		width: 60%;
		padding: 100px 20%;
	}
	
	.narrow-content .grid {
		max-width: 960px !important;
	}

	.footer-content {
		width: 80%;
		max-width: 1440px;
		margin: 0px auto;
		padding: 50px 0;
	}
	
	.footer-content .buttons-row {
		margin-top: 0 !important;
	}
	
	.text-block {
		max-width: 60vw !important; /* must be the same as width of narrow-content*/
	}
	
	.fact-flex {
		display: flex;
		flex-direction: row;
		gap: 1.5rem;
	}
}

@media (min-width: 801px) and (max-width: 1200px) {

	.content-wrapper {
		/*margin-top: 60px;*/
		min-height: 70vh;
	}
	
	.full-width-content .full-width-inner-content {
		/*padding: 100px 10%;*/
		padding: 100px 0%;
	}
	
	.full-width-content .fluid-image, .full-width-content .image-with-focal-point {
		height: calc(100% + 200px);
		top: -100px;
		min-height: 250px;
		position: relative;
		width: 125%;
		margin: 0 -12.5%;
	}
	
	/*.full-width-content .text-block {
		padding: 0 10%;
	}*/

	/*.full-width-content {
		width: 100%
	}
	
	.full-width-content .full-width-inner-content {
		padding: 100px 0%;
	}*/
	
	/*.full-width-content .six-columns .fluid-image{
		height: calc(100% + 200px);
		top: -100px;
		position: relative;
		width: calc(100% + 26%);
		right: 0%;
	}
	
	.full-width-content .six-columns:first-child .fluid-image {
		left: -46%;
	}*/

/*	.full-width-content .grid {
		column-gap: 0px !important;
	}*/
	
	.content-header, .content, .narrow-content {
		width: 80%;
		padding: 100px 10%;
	}

	.footer-content {
		width: 80%;
		margin: 0% auto;
		padding: 40px 0;
	}
	
	.footer-content .buttons-row {
		margin-top: 0 !important;
	}
	
	.narrow-content {
		width: 60%;
		padding: 100px 20%;
	}
	
	.narrow-content .grid {
		max-width: 960px !important;
	}
	
	.text-block {
		max-width: 60vw !important; /* must be the same as width of narrow-content*/
	}
	
	.fact-flex {
		display: flex;
		flex-direction: row;
		gap: 1rem;
	}
}

@media (max-width: 800px) {

	.content-wrapper {
		/*margin-top: 60px;*/
		/*min-height: 70vh;*/
	}

	.full-width-content {
		width: 100% !important;
	}
	
	/* RESET */
	.full-width-content .grid .column {
	  padding-top: 0;
	  padding-bottom: 0;
	}
	
	
	/* =========================
	   TOP PADDING (lowest order)
	   ========================= */
	
	/* 1 wins */
	.full-width-content .grid:has(.flex-order-one)
	  .column.flex-order-one {
	  padding-top: 50px;
	}
	
	/* 2 */
	.full-width-content .grid:not(:has(.flex-order-one)):has(.flex-order-two)
	  .column.flex-order-two {
	  padding-top: 50px;
	}
	
	/* 3 */
	.full-width-content .grid:not(:has(.flex-order-one)):not(:has(.flex-order-two)):has(.flex-order-three)
	  .column.flex-order-three {
	  padding-top: 50px;
	}
	
	/* 4 */
	.full-width-content .grid:not(:has(.flex-order-one)):not(:has(.flex-order-two)):not(:has(.flex-order-three)):has(.flex-order-four)
	  .column.flex-order-four {
	  padding-top: 50px;
	}
	
	/* 5 */
	.full-width-content .grid:not(:has(.flex-order-one)):not(:has(.flex-order-two)):not(:has(.flex-order-three)):not(:has(.flex-order-four)):has(.flex-order-five)
	  .column.flex-order-five {
	  padding-top: 50px;
	}
	
	
	.full-width-content .grid .column:has(
	  > .image-with-focal-point:first-child,
	  > .fluid-image:first-child,
	  > style + .image-with-focal-point,
	  > style + .fluid-image
	) {
	  padding-top: 0 !important;
	}
	
	
	/* =========================
	   BOTTOM PADDING (highest order)
	   ========================= */
	
	/* 5 wins */
	.full-width-content .grid:has(.flex-order-five)
	  .column.flex-order-five {
	  padding-bottom: 50px;
	}
	
	/* 4 */
	.full-width-content .grid:not(:has(.flex-order-five)):has(.flex-order-four)
	  .column.flex-order-four {
	  padding-bottom: 50px;
	}
	
	/* 3 */
	.full-width-content .grid:not(:has(.flex-order-five)):not(:has(.flex-order-four)):has(.flex-order-three)
	  .column.flex-order-three {
	  padding-bottom: 50px;
	}
	
	/* 2 */
	.full-width-content .grid:not(:has(.flex-order-five)):not(:has(.flex-order-four)):not(:has(.flex-order-three)):has(.flex-order-two)
	  .column.flex-order-two {
	  padding-bottom: 50px;
	}
	
	
	/* Remove BOTTOM padding if column ends with image */
	.full-width-content .grid .column:has(> .image-with-focal-point:last-child),
	.full-width-content .grid .column:has(> .fluid-image:last-child) {
	  padding-bottom: 0 !important;
	}

	/*.full-width-content .text-block {
		padding: 0 10%;
	}*/
	
	/*.full-width-content .full-width-inner-content {
		padding: 0;
	}*/
	
	.full-width-content .image-with-focal-point {
		position: relative;
		width: calc(100% + 25%);
		top: 0px;
		height: 400px;
		left: -12.5%;
	}
	
	.fluid-image {
		position: relative;
		width: 100%;
		top: 0px;
		height: 400px;
	}
	
	/*.full-width-content .six-columns:first-child .fluid-image {
		left: -46%;
	}

	.full-width-content .six-columns .fluid-image {
		
		
	}*/

	/*.full-width-content .six-columns:first-child .fluid-image {
		top: -50px;
	}*/

	.full-width-content .six-columns .fluid-image {
		bottom: 0px;
	}


	.content, .narrow-content {
		 width: 84%;
		padding: 50px 8%;
	}

	.footer-content {
		width: 84%;
		margin: 0% auto;
		padding: 40px 0;
	}
	
	.footer-content .buttons-row {
		margin-top: 35px;
	}
		
	.swiper-slide .grid {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: (1fr)[12];
		grid-template-columns: repeat(12, 1fr);
		margin-bottom: 0px;
	}

	.section-breaker {
		margin-top: 30px;
	}
	
	.mobile-text-align-center {
		text-align: center !important;
	}
	
	.fact-flex {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

}

	/*** CUSTOM STYLES  ***/
	
	/* =========================
	   BACKGROUND COLORS (GROUPED)
	   ========================= */
	
	/* rgb(255,255,255) */
	.white {
	  background-color: rgb(255,255,255) !important;
	}
	
	/* rgb(17,73,123) */
	.grundfos-blue {
	  background-color: rgb(17,73,123) !important;
	}
	
	/* rgb(9,40,68) */
	.dark-blue,
	.blue-four {
	  background-color: rgb(9,40,68) !important;
	}
	
	/* rgb(18,106,243) */
	.attention-blue {
	  background-color: rgb(18,106,243) !important;
	}
	
	.attention-blue-light {
		background-color: rgb(71,166,255) !important;
	}
	
	/* rgb(233,241,247) */
	.blue-one {
	  background-color: rgb(233,241,247) !important;
	}
	
	/* rgb(191,211,227) */
	.blue-two {
	  background-color: rgb(191,211,227) !important;
	}
	
	/* rgb(116,151,178) */
	.blue-three {
	  background-color: rgb(116,151,178) !important;
	}
	
	/* rgb(243,245,247) */
	.neutral-cool-50 {
	  background-color: rgb(243,245,247) !important;
	}
	
	/* rgb(237,240,242) */
	.neutral-cool-100 {
	  background-color: rgb(237,240,242) !important;
	}
	
	/* rgb(12,18,23) */
	.neutral-cool-1000 {
	  background-color: rgb(12,18,23) !important;
	}
	
	
	/* =========================
	   TEXT COLORS (GROUPED)
	   ========================= */
	
	/* rgb(12,18,23) (neutral-cool-1000) */
	.white p a,
	.blue-one p a,
	.blue-two p a,
	.neutral-cool-50 p a,
	.neutral-cool-100 p a {
	  color: rgb(18,106,243) !important;
	}
	
	/* rgb(255,255,255) */
	.grundfos-blue h1,
	.grundfos-blue h2,
	.grundfos-blue h3,
	.grundfos-blue h4,
	.grundfos-blue h5,
	.grundfos-blue h6,
	.grundfos-blue p,
	.grundfos-blue p a,
	.grundfos-blue ul,
	.grundfos-blue li,
	.grundfos-blue li a,
	
	.dark-blue h1,
	.dark-blue h2,
	.dark-blue h3,
	.dark-blue h4,
	.dark-blue h5,
	.dark-blue h6,
	.dark-blue p,
	.dark-blue p a,
	.dark-blue ul,
	.dark-blue li,
	.dark-blue li a,
	
	.attention-blue h1,
	.attention-blue h2,
	.attention-blue h3,
	.attention-blue h4,
	.attention-blue h5,
	.attention-blue h6,
	.attention-blue p,
	.attention-blue p a,
	.attention-blue ul,
	.attention-blue li,
	.attention-blue li a,
	
	.attention-blue-light h1,
	.attention-blue-light h2,
	.attention-blue-light h3,
	.attention-blue-light h4,
	.attention-blue-light h5,
	.attention-blue-light h6,
	.attention-blue-light p,
	.attention-blue-light p a,
	.attention-blue-light ul,
	.attention-blue-light li,
	.attention-blue-light li a,
	
	.blue-three h1,
	.blue-three h2,
	.blue-three h3,
	.blue-three h4,
	.blue-three h5,
	.blue-three h6,
	.blue-three p,
	.blue-three p a,
	.blue-three ul,
	.blue-three li,
	.blue-three li a,
	
	.blue-four h1,
	.blue-four h2,
	.blue-four h3,
	.blue-four h4,
	.blue-four h5,
	.blue-four h6,
	.blue-four p,
	.blue-four p a,
	.blue-four ul,
	.blue-four li,
	.blue-four li a,
	
	.neutral-cool-1000 h1,
	.neutral-cool-1000 h2,
	.neutral-cool-1000 h3,
	.neutral-cool-1000 h4,
	.neutral-cool-1000 h5,
	.neutral-cool-1000 h6,
	.neutral-cool-1000 p,
	.neutral-cool-1000 p a,
	.neutral-cool-1000 ul,
	.neutral-cool-1000 li,
	.neutral-cool-1000 li a {
	  color: rgb(255,255,255) !important;
	}
	
	.attention-blue-font-color {
		color: rgb(18,106,243) !important;
	}
	
	
	/* =========================
	   BASE COLORS
	   ========================= */
	
	.white-button {
	  background-color: rgb(255,255,255) !important;
	  border: 2px solid rgb(255,255,255)!important;
	  color: rgb(12,18,23) !important;
	}
	
	/* Grundfos Blue */
	.grundfos-blue-button {
	  background-color: rgb(17,73,123) !important;
	  border: 2px solid rgb(17,73,123) !important;
	  color: rgb(255,255,255) !important;
	}
	
	/* Dark Blue */
	.dark-blue-button {
	  background-color: rgb(9,40,68) !important;
	  border: 2px solid rgb(9,40,68) !important;
	  color: rgb(255,255,255) !important;
	}
	
	/* Attention Blue */
	.attention-blue-button {
	  background-color: rgb(18,106,243) !important;
	  border: 2px solid rgb(18,106,243) !important;
	  color: rgb(255,255,255) !important;
	}
	
	/* Attention Blue Outline */
	.attention-blue-outline-button {
	  border: 2px solid rgb(18,106,243) !important;
	  color: rgb(12,18,23) !important;
	}
	
	.white-outline-button {
	  border: 2px solid rgb(255,255,255) !important;
	  color: rgb(255,255,255) !important;
	}
	
	.plain-button {
		background: none;
		border: none;
		padding: 0;
		color: rgb(12,18,23) !important;
		cursor: pointer;
		display: block;
	}

	.dark-font-color h1,
	.dark-font-color h2,
	.dark-font-color h3,
	.dark-font-color h4,
	.dark-font-color h5,
	.dark-font-color h6   {
		color: rgb(9,40,68) !important;
		text-shadow: 0 0 5px rgba(255, 255, 255, 0.8);
	}
	
	.light-font-color h1,
	.light-font-color h2,
	.light-font-color h3,
	.light-font-color h4,
	.light-font-color h5,
	.light-font-color h6 {
		color: rgb(255,255,255) !important;
		text-shadow: 0 0 5px rgba(12, 18, 23, 0.3);
	}
	
	
	.swiper-wrapper .white, .swiper-wrapper .pink, .swiper-wrapper .green, .swiper-wrapper .dark-green, .swiper-wrapper .grey, .swiper-wrapper .dark-grey, .swiper-wrapper .blue, .swiper-wrapper .dark-blue, .swiper-wrapper .eggplant, .swiper-wrapper .purple, .swiper-wrapper .yellow, .swiper-wrapper .lime, .swiper-wrapper .olive, .swiper-wrapper .dark-olive, .swiper-wrapper .orange, .swiper-wrapper .dark-orange {
	padding: 0px;
	}

	.section-anchor-link {
	display: block;
	height: 88px; /*same height as header*/
	margin-top: -88px; /*same height as header*/
	visibility: hidden;
	}

	.combine-with-row-above-yes {
	padding-top: 0px !important;
	}

	.combine-with-row-below-yes {
	padding-bottom: 0px !important;
	}

	.buttons-row {
		display: flex;
		gap: 1.5rem;
		/*justify-content: center;*/ /*set in ACF*/
		flex-wrap: wrap;
		margin-top: 2.5rem;
	}
	
	.buttons-row .button-wrapper {
		padding-top: 0 !important;
	}
	
	.button-wrapper {
	padding-top: 2.5rem;
	font-size: 1.125rem;
	}
	
	.button-wrapper a {
		text-decoration: none;
	}
	
	.align-buttons-to-bottom .column {
		display: flex;
		flex-direction: column;
	}
	
	.align-buttons-to-bottom .column .button-wrapper {
		margin-top: auto; /* aligns buttons to the bottom */
	}
	

	.text-block {
	margin: 10px 0;
	}

	.text-block > :first-child {
		margin-top: 0px;
	}
	
	.text-block > :last-child {
		margin-bottom: 0px;
	}

	.anchor-tag:before {
	content:"";
	display: inline-block;
	height:145px;
	}

	.row-margin-bottom {
	margin-bottom: 20px;
	}

	img {
	max-width: 100%;
	display: block;
	}
	
	/* video player */
	
	/* Hero container */
	.bg-video-hero {
		/*top: 160px;*/
	  position: absolute;
	  width: 100%;
	  /*height: 500px; - set in media query*/
	  min-height: 480px; /* optional safeguard */
	  overflow: hidden;
	}
	
	/* Video fills hero */
	#bg-video {
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  display: block;
	}
	
	
	
	/* Pause / Play button */
	#bg-video-toggle {
	  position: absolute;
	  bottom: 24px;
	  right: 24px;
	  width: 48px;
	  height: 48px;
	  border-radius: 999px;
	  border: none;
	  background: rgba(0, 0, 0, 0.5);
	  color: #fff;
	  font-size: 16px;
	  cursor: pointer;
	  z-index: 5;
	}
	
	#bg-video-toggle:hover {
	  background: rgba(0, 0, 0, 0.75);
	}
	
	.hero-content img {
			-webkit-filter: drop-shadow(0 0 5px rgba(12, 18, 23, 0.3));
			filter: drop-shadow(0 0 5px rgba(12, 18, 23, 0.3));
	}

	@media (min-width: 1201px) {
		
		.small-hero-wrapper, .bg-video-hero {
		  height: 500px;
		}
		
		.medium-hero-wrapper, .bg-video-hero {
		  height: 600px;
		}
		
		.large-hero-wrapper, .bg-video-hero {
		  height: 700px;
		}
		
		.small-hero-wrapper, .medium-hero-wrapper, .large-hero-wrapper {
			display: grid;
		}
	
		.small-hero-wrapper,
		.medium-hero-wrapper,
		.large-hero-wrapper {
			display: grid;
			align-items: center;
			justify-content: center;
		}
		
		.hero-content {
			margin-top: 88px;
			z-index: 999;
			position: relative;
			max-width: 45rem;
			width: 100vw;
		}
		
	}

	@media (min-width: 801px) and (max-width: 1200px) {


		.small-hero-wrapper, .bg-video-hero {
		  height: 500px;
		}
		
		.medium-hero-wrapper, .bg-video-hero {
		  height: 600px;
		}
		
		.large-hero-wrapper, .bg-video-hero {
		  height: 700px;
		}
		
		.small-hero-wrapper, .medium-hero-wrapper, .large-hero-wrapper {
			display: grid;
		}
		
		.small-hero-wrapper,
		.medium-hero-wrapper,
		.large-hero-wrapper {
			display: grid;
			align-items: center;
			justify-content: center;
		}
		
		.hero-content {
			margin-top: 60px;
			z-index: 999;
			position: relative;
			max-width: 45rem;
			width: 100vw;
		}
	
	}

	@media (max-width: 800px) {

		.small-hero-wrapper, .medium-hero-wrapper, .large-hero-wrapper, .bg-video-hero {
		  height: 500px;
		}
		
		.small-hero-wrapper, .medium-hero-wrapper, .large-hero-wrapper {
			display: grid;
		}
		
		.small-hero-wrapper,
		.medium-hero-wrapper,
		.large-hero-wrapper {
			display: grid;
			align-items: center;
			justify-content: center;
		}
		
		.hero-content {
			margin-top: 60px;
			z-index: 999;
			position: relative;
			width: 84vw;
		}

	}

	/* BLOG PAGE */

	.posts-intro {
	color: #333333;
	padding-left: 25px;
	padding-right: 25px;
	margin-bottom: 25px;
	}

	/* SWIPER SLIDER */

	.slider-text {
	padding: 25px;
	}


	/* HORIZONTAL + VERTICAL CENTERING */

	.center1 {
	text-align: center;
	}

	.center2 {
	#left: 50%;
	}

	.center3 {
	margin: 0 auto;
	#left: -50%;
	}

	.center1 {
	display: table;
	#display: block;
	#text-align: auto;
	#position: relative;
	}

	.center2 {
	display: table-cell;
	vertical-align: middle;
	#position: absolute;
	#top: 50%;
	}

	.center3 {
	display: block;
	#position: relative;
	#top: -50%;
	}

	.slider-content {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	}



	/* FOOTER */

	.footer {
	clear: both;
	/*margin-top: 150px;*/
	padding-top: 10px;
	padding-bottom: 30px;
	background-color: rgb(0,34,44);
	width: 100%;
	color: #ffffff;
	}
	
	.footer h3 {
		color: #ffffff !important;
	}

	.footer a {
	color: #ffffff;
	}
	
	.footer-content .attention-blue-outline-button {
	  border: 2px solid rgb(255,255,255) !important;
	  color: rgb(255,255,255) !important;
	}
	
	.footer-partner-logo {
		display: flex;
		justify-content: center;
	}
	
	.footer-partner-logo img {
		width: 50%;
	}
	
	@media (max-width: 800px) {
		.footer-partner-logo {
			margin-bottom: 35px;			
		}
	}
	

	/* end FOOTER */

	


	@media screen and (max-width: 800px) {

		.section-anchor-link {
			display: block;
			height: 0px;
			margin-top: 0;
			visibility: hidden;
		}
	}

@media (min-width:801px) {
	
	.iframe-container {
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
		overflow: hidden;
		max-width: 100%;
	}
	
	.iframe-container-two-columns {
		padding-bottom: 100% !important;
	}
	
	.full-width-content .iframe-container {
		position: relative;
		padding-bottom: 100%;
		height: 0;
		overflow: hidden;
		max-width: 100%;
	}
	
	.iframe-container iframe,
	.iframe-container object,
	.iframe-container iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border: 0;
	}
}

@media (max-width:800px) {
	.iframe-container iframe {
		width: 100%;
		min-height: 90vh;
		min-height: 90dvh;
		max-height: 90vh;
		max-height: 90dvh;
		height: 90vh;
		height: 90dvh;
		border: 1px solid lightgrey;
		border-radius: 2px;
	}
}
			


#header-spacer {
  height: 0;
}


/* =========================================
   partner LOGO SLIDER – FINAL CSS
========================================= */

/* Slider wrapper */
.partner-logo-slider {
  width: 100%;
  overflow: hidden;
  position: relative;
}

/* Track (animated via JS) */
.partner-logo-track {
  display: flex;
  width: max-content;
  will-change: transform;
}

/* -----------------------------------------
   Pause animation ON DESKTOP ONLY
------------------------------------------ */
@media (hover: hover) and (pointer: fine) {
  .partner-logo-slider:hover .partner-logo-track {
	animation-play-state: paused;
  }
}

/* -----------------------------------------
   Logo container (single source of sizing)
------------------------------------------ */
.partner-logo {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  /* ✅ Stable logo box — adjust globally here */
  width: 200px;
  height: 100px;

  margin: 0 2.5rem;
  flex-shrink: 0;
  text-decoration: none;
}

/* -----------------------------------------
   BOTH default + hover SVGs
   are locked to the same box
------------------------------------------ */
.partner-logo img {
  position: absolute;
  inset: 0;
  margin: auto;

  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;

  display: block;
  transition: opacity 0.35s ease;
}

/* -----------------------------------------
   Hover SVG behavior
------------------------------------------ */
.partner-logo-hover {
  opacity: 0;
  pointer-events: none;
}

/* Desktop hover swap */
@media (hover: hover) and (pointer: fine) {
  .partner-logo:hover .partner-logo-hover {
	opacity: 1;
  }

  .partner-logo:hover .partner-logo-default {
	opacity: 0;
  }
}

/* -----------------------------------------
   Disable hover visuals on touch devices
------------------------------------------ */
@media (hover: none) {
  .partner-logo-hover {
	display: none;
  }
}

/* -----------------------------------------
   Optional: responsive sizing tweaks
------------------------------------------ */
@media (max-width: 1024px) {
  .partner-logo {
	width: 110px;
	height: 55px;
	margin: 0 2rem;
  }
}

@media (max-width: 640px) {
  .partner-logo {
	width: 100px;
	height: 48px;
	margin: 0 1.5rem;
  }
}


/* ============================= */
/* 🔵 SHARED FLICKITY STYLING   */
/* ============================= */

.flickity-button {
	background: rgb(18,106,243) !important;
	color: #ffffff !important;
}

.flickity-prev-next-button.next {
	right: -60px !important;
}

.flickity-prev-next-button.previous {
	left: -60px !important;
}

@media (min-width: 800px) {
	.flickity-page-dots {
		display: none;
	}
}

@media (max-width: 799px) {
	.flickity-button {
		display: none;
	}
}

.flickity-button:disabled {
	opacity: 0 !important;
}


/* ============================= */
/* 🟢 RUN CAROUSEL (IMAGE CARD) */
/* ============================= */

.cancelled-carousel {
	position: absolute;
	width: 200%;
	color: rgb(255,255,255) !important;
	background: rgb(18,106,243) !important;
	bottom: 58px;
	z-index: 9999;
	transform: rotate(-8deg);
	left: -50%;
}

.cancelled-single-post {
	position: relative;
	width: calc(100% + 25%);
	color: rgb(255,255,255) !important;
	background: rgb(18,106,243) !important;
	padding: 1rem 0;
	left: -12.5%;
}

.cancelled-carousel h4, .cancelled-single-post h4 {
	color: #ffffff;
	margin-top: 1rem !important;
	margin-bottom: 0px !important;
}



.run-carousel {
	position: relative;
	margin-top: 3rem;
}

.run-carousel .flickity-slider {
	display: flex;
}

.run-carousel .carousel-cell {
	flex: 0 0 auto;
	aspect-ratio: 1 / 1;
	width: 300px;
	margin-right: 24px;

	border-radius: 16px;
	overflow: hidden;
	position: relative;

	background-size: cover;
	background-position: center;

	transition: transform 0.25s ease;
}

.run-carousel .carousel-cell:hover {
	transform: translateY(-4px);
}

.flickity-enabled.is-draggable .carousel-cell:hover {
	transform: none;
}

/* Gradient overlay (only run) */
.run-carousel .carousel-cell::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;

	background: linear-gradient(
		to top,
		rgba(0,0,0,0.75),
		rgba(0,0,0,0.3),
		transparent
	);
}

/* Link overlay */
.run-carousel .overlay-link {
	position: absolute;
	inset: 0;
	z-index: 2;
}

.carousel-content h6 {
  color: rgb(255, 255, 255) !important;
  font-size: 1.25rem;
}

/* Content */
.run-carousel .carousel-content {
	position: absolute;
	bottom: 20px;
	left: 18px;
	right: 18px;
	z-index: 3;
	color: rgb(255, 255, 255) !important;
}



.run-carousel .run-date {
	font-family: "GrundfosTheSans", Helvetica, Arial, sans-serif;
	font-weight: 900;
	position: absolute;
	top: 0;
	left: 0;
	background: rgb(18,106,243);
	width: 60px;
	padding: 1rem;
	font-size: 1.125rem;
	color: #ffffff;

	border-top-left-radius: 1rem;
	border-bottom-right-radius: 1rem;
	z-index: 10;
	text-align: center;
}

/* ============================= */
/* 🟢 RUN GRID VERSION */
/* ============================= */

.run-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	margin-top: 3rem;
}

/* Cards (reusing same markup: carousel-cell) */
.run-grid .carousel-cell {
	flex: 0 0 100%;
	max-width: 100%;

	aspect-ratio: 1 / 1;
	border-radius: 16px;
	overflow: hidden;
	position: relative;

	background-size: cover;
	background-position: center;

	transition: transform 0.25s ease;
}

/* Hover effect */
.run-grid .carousel-cell:hover {
	transform: translateY(-4px);
}

/* ✅ Desktop: 3 columns */
@media (min-width: 1201px) {
	.run-grid .carousel-cell {
		flex: 0 0 calc((100% - 48px) / 3);
		max-width: calc((100% - 48px) / 3);
	}
}

/* ✅ Tablet: 2 columns */
@media (min-width: 801px) and (max-width:1200px) {
	.run-grid .carousel-cell {
		flex: 0 0 calc((100% - 24px) / 2);
		max-width: calc((100% - 24px) / 2);
	}
}

/* ✅ Mobile: 1 column */
@media (max-width: 800px) {
	.run-grid .carousel-cell {
		flex: 0 0 100%;
		max-width: 100%;
	}
}

/* Gradient overlay */
.run-grid .carousel-cell::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;

	background: linear-gradient(
		to top,
		rgba(0,0,0,0.75),
		rgba(0,0,0,0.3),
		transparent
	);
}

/* Clickable overlay */
.run-grid .overlay-link {
	position: absolute;
	inset: 0;
	z-index: 2;
}

/* Content */
.run-grid .carousel-content {
	position: absolute;
	bottom: 20px;
	left: 18px;
	right: 18px;
	z-index: 3;
	color: #fff;
}

.run-grid .carousel-content h6 {
	color: #fff !important;
	font-size: 1.25rem;
}

/* Date badge */
.run-grid .run-date {
	font-family: "GrundfosTheSans", Helvetica, Arial, sans-serif;
	font-weight: 900;
	position: absolute;
	top: 0;
	left: 0;
	background: rgb(18,106,243);
	width: 60px;
	padding: 1rem;
	font-size: 1.125rem;
	color: #ffffff;
	border-top-left-radius: 1rem;
	border-bottom-right-radius: 1rem;
	z-index: 10;
	text-align: center;
}


/* ============================= */
/* 🟣 CASE CAROUSEL (FINAL)     */
/* ============================= */

.case-carousel {
	position: relative;
	margin-top: 3rem;
}

.case-carousel .flickity-slider {
	display: flex;
	align-items: stretch;
}

.case-carousel .carousel-cell {
	display: flex;
	align-items: stretch;
	flex: 0 0 auto;
	width: 300px;
	margin-right: 24px;
}

.case-content h3 {
  font-size: 1.25rem;
}

/* Card */
.case-carousel .case-card {
	display: flex;
	flex-direction: column;

	background: #ffffff;
	border-radius: 16px;
	overflow: hidden;

	height: 100%;
}

/* ✅ Remove all overlay traces */
.case-carousel .carousel-cell::after {
	display: none !important;
}

/* ✅ Image is now clickable */
.case-carousel .case-image {
	display: block; /* ✅ makes <a> behave correctly */

	width: 100%;
	aspect-ratio: 3 / 2;

	background-size: cover;
	background-position: center;

	text-decoration: none;
}

/* Content */
.case-carousel .case-content {
	display: flex;
	flex-direction: column;

	padding: 20px;
	flex: 1;
}

/* Description */
.case-carousel .case-description {
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 16px;
}

/* ✅ Button always at bottom */
.case-carousel .button-wrapper {
	margin-top: auto;
	padding-top: 0 !important;
}

/* Button */
/*.case-carousel .case-button {
	display: inline-block;
	padding: 10px 18px;
	border-radius: 999px;

	background: #000;
	color: #fff;
	text-decoration: none;

	font-size: 14px;
	transition: background 0.2s ease;
}

.case-carousel .case-button:hover {
	background: #333;
}*/

/* ✅ Optional hover (nice polish) */
/*.case-carousel .case-card:hover .case-image {
	transform: scale(1.02);
}

.case-carousel .case-image {
	transition: transform 0.3s ease;
}*/

/* ============================= */
/* 🟠 SUMMIT GRID               */
/* ============================= */

.summit-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	margin: 3rem auto 0;
}

.summit-card {
	aspect-ratio: 3 / 2;
	border-radius: 16px;
	overflow: hidden;
	position: relative;

	background-size: cover;
	background-position: center;

	transition: transform 0.25s ease;
}

/* Responsive grid */
@media (min-width: 1201px) {
	.summit-card {
		flex: 0 0 calc((100% - 48px) / 3);
		max-width: calc((100% - 48px) / 3);
	}
}

@media (min-width: 801px) and (max-width:1200px) {
	.summit-card {
		flex: 0 0 calc((100% - 24px) / 2);
		max-width: calc((100% - 24px) / 2);
	}
}

@media (max-width: 800px) {
	.summit-card {
		flex: 0 0 100%;
	}
}

/* Gradient */
.summit-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;

	background: linear-gradient(
		to top,
		rgba(0,0,0,0.7),
		rgba(0,0,0,0.3),
		transparent
	);
}

/* Overlay link */
.summit-grid .overlay-link {
	position: absolute;
	inset: 0;
	z-index: 2;
}

/* Content */
.summit-content {
	position: absolute;
	bottom: 20px;
	left: 18px;
	right: 18px;
	z-index: 3;
	color: #fff !important;
}

.summit-content .run-details-flex {
	margin-bottom: 5px !important;
}

.summit-content h6 {
	color: #fff !important;
}

/* Date badge */
.summit-date {
	font-family: "GrundfosTheSans", Helvetica, Arial, sans-serif;
	font-weight: 900;
	position: absolute;
	top: 0;
	left: 0;
	background: rgb(18,106,243);
	width: 60px;
	padding: 1rem;
	font-size: 1.125rem;
	color: #ffffff;
	border-top-left-radius: 1rem;
	border-bottom-right-radius: 1rem;
	z-index: 10;
	text-align: center;
}


/* ============================= */
/* 🔧 GENERIC CONTENT (UNCHANGED) */
/* ============================= */

.run-details-flex {
	display: flex;
	flex-direction: row;
	gap: 0.5rem;
	align-items: start;
	margin-bottom: 1rem;
}

.run-grid .run-details-flex {
	margin-bottom: 5px !important;
}



.run-details-svg-icon {
	width: 1rem;
	margin-top: 3px;
}


/* 0 - 2000 counter line */
.progress-container {
  position: relative;
  width: 100%;
  height: 1.5rem;
  margin-bottom: 80px;
  display: flex;
  align-items: center;
}

/* line */
.line {
  height: 10px;
  width: 0%;
  background: #ffffff;
  transform: translateX(0%);
  opacity: 1;
  transition: opacity 0.3s ease;

  /* ✅ rounded ends */
  border-radius: 999px;
}

/* counter */
.counter {
  font-family: "GrundfosTheSans", Helvetica, Arial, sans-serif;
  font-weight: 900;
  font-size: 1.5rem;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(10px, -50%);
  color: #fff;
  white-space: nowrap;
  opacity: 1;
  transition: opacity 0.3s ease;
}

/* ✅ hidden state (prevents layout jump) */
.progress-container.hidden .line,
.progress-container.hidden .counter {
  opacity: 0;
}

/* SoMe Icons */

.some-icons-wrapper {
	display: flex;
	justify-content: center;
}

.some-icons {
  display: flex;
}

.some-icons--horizontal {
	flex-direction: row;
	align-items: center;
	gap: 3rem;
	flex-wrap: wrap;
	justify-content: center;
}

.some-icons--vertical {
  flex-direction: column;
  gap: 1rem;
}

/* Row layout */
.some-item {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Hide titles in horizontal */
.some-icons--horizontal .some-item__title {
  display: none;
}

.some-item__title {
  font-size: 14px;
}

/* Icon wrapper */
.some-icon {
  width: 64px;
  height: 64px;
  display: block;
}

/* Image */
.some-icon__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: transform 0.25s ease; /* 👈 smooth animation */
}

/* ✅ Hover effect (desktop only) */
@media (min-width: 800px) {
  .some-icon:hover .some-icon__img {
	transform: scale(1.1);
  }
}

/* ✅ Disable hover scale on mobile */
@media (max-width: 799px) {
  .some-icon__img {
	transform: none !important;
  }
}

/* bullets, Numbers or Dates List */

.list-dates, .list-download {
	list-style: none;
	padding-left: 0;
}

.list-dates li, .list-download li  {
	margin-bottom: 0.5em;
}

.item-row {
	display: grid;
	grid-template-columns: 100px 1fr;
	margin-bottom: 10px;
}

.item-description {
	font-size: 0.75rem;
}

@media (min-width: 1200px) {
	
	.item-content {
		display: flex;
		flex-direction: column;
		max-width: 800px;
	}
}

/*@media (min-width:801px){
	.item-date {
		width: 110px;
		display: inline-block;
	}
}

@media (max-width:800px){
	.item-date {
		width: 100%;
		display: inline-block;
	}
}*/

.list-download .is-download {
	position: relative;
	padding-right: 20px;
}

.download-icon::after {
	position: relative;
	left: 5px;
	top: 4px;
	content: '';
	display: inline-block;
	width: 1rem;
	height: 1rem;
	background-image: url('data:image/svg+xml,%3Csvg%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M16%2022.414L7.293%2013.707L8.707%2012.293L15%2018.586V2H17V18.586L23.293%2012.293L24.707%2013.707L16%2022.414ZM26%2021V26H6V21H4V28H28V21H26Z%22%20fill%3D%22%23126AF3%22%2F%3E%3C%2Fsvg%3E');
	background-size: contain;
	background-repeat: no-repeat;
}

.external-link-icon::after {
	position: relative;
	left: 5px;
	top: 4px;
	content: '';
	display: inline-block;
	width: 1rem;
	height: 1rem;
	background-image: url('data:image/svg+xml,%3Csvg%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M19%203V5H25.586L15.293%2015.293L16.707%2016.707L27%206.414V13H29V3H19Z%22%20fill%3D%22%23126AF3%22%2F%3E%3Cpath%20d%3D%22M24%2026H6V8H14V6H4V28H26V18H24V26Z%22%20fill%3D%22%23126AF3%22%2F%3E%3C%2Fsvg%3E');
	background-size: contain;
	background-repeat: no-repeat;
}

/* ACF Gallery */
.acf-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 24px;
	margin-top: 2rem;
}

.acf-gallery-item {
	text-align: center;
}

.acf-gallery-item img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 16px;
	display: block;
}

.acf-gallery .button-wrapper {
	padding-top: 1rem;
}

/* floating back-to-top button */
#floating-btn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;

  padding: 12px 20px;
  font-size: 14px;
  background-color: #0078D4;
  color: white;
  border: none;
  border-radius: 999px;
  cursor: pointer;

  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
}

#floating-btn.visible {
  opacity: 1;
  pointer-events: auto;
}


/* HACKs INAVII SOME POSTS */
.inavii-view__grid {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.inavii-loader {
  text-align: center;
  padding: 40px;
  font-size: 16px;
}

@media (max-width:800px) {
	.inavii-view__item:nth-child(n+4) {
	  display: none;
	}
}


/* days countdown */

.days-countdown-hero {
	text-align: center;
	font-size: 2rem;
	font-weight: 900;
	color: #fff;
}


/* Brochure animation */
#brochure-animation {
	display: flex;
	justify-content: center;
	perspective: 2000px;
	overflow: visible;
}

.brochure-cover {
	/*width: min(420px, 100%);*/
	aspect-ratio: 8.5 / 11;
	object-fit: cover;
	border-radius: 8px;
	box-shadow:
		0 40px 80px rgba(0,0,0,.18),
		0 15px 30px rgba(0,0,0,.12);
	transform-style: preserve-3d;
	will-change: transform, opacity;
	transform:
		translateX(120px)
		rotateY(-35deg)
		rotateX(8deg)
		scale(.9);
}

@media (min-width: 801px) {
	.brochure-cover {
		width: min(420px, 100%);
	}
} 

@media (max-width: 800px) {
	.brochure-cover {
		width: min(285px, 100%);
	}
} 