		.bubbly-products {
			width: auto;
			margin: 0;
			padding: 48px 52px 60px;
			color: #586b73;
			box-sizing: border-box;
		}

		.bubbly-products * {
			box-sizing: border-box;
		}

		/* Page heading */

		.products-heading {
			margin: 0 0 38px;
			padding: 0 0 28px;
			border-bottom: 1px solid #d7e1e5;
		}

		.products-eyebrow {
			display: block;
			margin: 0 0 12px;
			color: #1684a5;
			font-size: 12px;
			font-weight: bold;
			line-height: 18px;
			letter-spacing: 2px;
			text-transform: uppercase;
		}

		.products-heading h1 {
			max-width: 820px;
			margin: 0;
			color: #102e3b;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 42px;
			font-weight: bold;
			line-height: 49px;
		}

		.products-heading p {
			max-width: 820px;
			margin: 18px 0 0;
			color: #65777f;
			font-size: 15px;
			line-height: 26px;
		}

		/* Product introduction */

		.products-intro {
			display: table;
			width: 100%;
			table-layout: fixed;
			margin: 0 0 38px;
			padding: 0 0 38px;
			border-bottom: 1px solid #d7e1e5;
		}

		.products-intro-copy,
		.products-intro-panel {
			display: table-cell;
			vertical-align: middle;
		}

		.products-intro-copy {
			width: 58%;
			padding-right: 48px;
		}

		.products-intro-panel {
			width: 42%;
		}

		.products-section-number {
			display: block;
			margin: 0 0 10px;
			color: #1684a5;
			font-size: 12px;
			font-weight: bold;
			letter-spacing: 2px;
		}

		.products-section-label {
			display: block;
			margin: 0 0 10px;
			color: #1684a5;
			font-size: 12px;
			font-weight: bold;
			line-height: 18px;
			letter-spacing: 2px;
			text-transform: uppercase;
		}

		.products-intro-copy h2 {
			margin: 0 0 20px;
			color: #102e3b;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 30px;
			font-weight: bold;
			line-height: 37px;
		}

		.products-intro-copy p {
			margin: 0 0 17px;
			color: #5d6e76;
			font-size: 15px;
			line-height: 26px;
		}

		.products-intro-copy p:last-child {
			margin-bottom: 0;
		}

		.products-highlight {
			padding: 30px;
			border: 1px solid #cad8de;
			border-left: 5px solid #1684a5;
			background: #edf4f6;
		}

		.products-highlight span {
			display: block;
			margin: 0 0 10px;
			color: #1684a5;
			font-size: 12px;
			font-weight: bold;
			letter-spacing: 2px;
			text-transform: uppercase;
		}

		.products-highlight strong {
			display: block;
			margin: 0 0 13px;
			color: #102e3b;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 28px;
			line-height: 35px;
		}

		.products-highlight p {
			margin: 0;
			color: #62747c;
			font-size: 14px;
			line-height: 24px;
		}

		/* Product section */

		.product-category-heading {
			margin: 0 0 24px;
		}

		.product-category-heading span {
			display: block;
			margin: 0 0 9px;
			color: #1684a5;
			font-size: 12px;
			font-weight: bold;
			letter-spacing: 2px;
			text-transform: uppercase;
		}

		.product-category-heading h2 {
			margin: 0;
			color: #102e3b;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 28px;
			font-weight: bold;
			line-height: 35px;
		}

		.product-grid {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 18px;
			margin: 0 0 38px;
		}

		.product-card {
			position: relative;
			min-height: 205px;
			padding: 29px 27px 27px 85px;
			border: 1px solid #d1dce1;
			border-top: 4px solid #1684a5;
			background: #f4f8f9;
			transition:
				transform 0.25s ease,
				box-shadow 0.25s ease,
				background 0.25s ease;
		}

		.product-card:hover {
			transform: translateY(-4px);
			background: #ffffff;
			box-shadow: 0 14px 30px rgba(16, 46, 59, 0.14);
		}

		.product-number {
			position: absolute;
			top: 27px;
			left: 27px;
			width: 39px;
			height: 39px;
			color: #ffffff !important;
			font-size: 13px;
			font-weight: bold;
			line-height: 39px;
			text-align: center;
			border-radius: 50%;
			background: #1684a5;
		}

		.product-card h3 {
			margin: 0 0 12px;
			color: #102e3b !important;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 21px;
			font-weight: bold;
			line-height: 27px;
		}

		.product-card p {
			margin: 0;
			color: #60727a !important;
			font-size: 14px;
			line-height: 23px;
		}

		/* Product standards */

		.product-standards {
			margin: 0 0 38px;
			padding: 30px;
			border: 1px solid #cad8de;
			background: #102e3b;
		}

		.product-standards-heading {
			margin: 0 0 25px;
		}

		.product-standards-heading span {
			display: block;
			margin: 0 0 8px;
			color: #8ec9da !important;
			font-size: 12px;
			font-weight: bold;
			letter-spacing: 2px;
			text-transform: uppercase;
		}

		.product-standards-heading h2 {
			margin: 0;
			color: #ffffff !important;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 27px;
			font-weight: bold;
			line-height: 34px;
		}

		.product-standards-list {
			display: table;
			width: 100%;
			table-layout: fixed;
		}

		.product-standard {
			display: table-cell;
			width: 25%;
			padding: 0 24px;
			vertical-align: top;
			border-right: 1px solid rgba(255, 255, 255, 0.16);
		}

		.product-standard:first-child {
			padding-left: 0;
		}

		.product-standard:last-child {
			padding-right: 0;
			border-right: 0;
		}

		.product-standard span {
			display: block;
			margin: 0 0 10px;
			color: #8ec9da !important;
			font-size: 12px;
			font-weight: bold;
			letter-spacing: 2px;
		}

		.product-standard h3 {
			margin: 0 0 9px;
			color: #ffffff !important;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 17px;
			font-weight: bold;
			line-height: 23px;
		}

		.product-standard p {
			margin: 0;
			color: #dce8ec !important;
			font-size: 13px;
			line-height: 21px;
		}

		/* Gallery heading */

		.gallery-heading {
			margin: 0 0 24px;
		}

		.gallery-heading span {
			display: block;
			margin: 0 0 9px;
			color: #1684a5;
			font-size: 12px;
			font-weight: bold;
			letter-spacing: 2px;
			text-transform: uppercase;
		}

		.gallery-heading h2 {
			margin: 0 0 12px;
			color: #102e3b;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 28px;
			font-weight: bold;
			line-height: 35px;
		}

		.gallery-heading p {
			max-width: 760px;
			margin: 0;
			color: #65777f;
			font-size: 14px;
			line-height: 24px;
		}

		/* Product gallery tabs */

		.gallery-tabs {
			display: flex;
			flex-wrap: wrap;
			gap: 10px;
			margin: 0 0 20px;
			padding: 8px;
			border: 1px solid #d1dce1;
			background: #edf4f6;
		}

		.gallery-tab {
			display: inline-block;
			padding: 12px 20px;
			border: 1px solid transparent;
			background: transparent;
			color: #52666f;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 13px;
			font-weight: bold;
			line-height: 18px;
			letter-spacing: 0.5px;
			text-align: center;
			cursor: pointer;
			transition:
				color 0.2s ease,
				background 0.2s ease,
				border-color 0.2s ease;
		}

		.gallery-tab:hover {
			color: #102e3b;
			background: #ffffff;
			border-color: #cad8de;
		}

		.gallery-tab.active {
			color: #ffffff;
			background: #1684a5;
			border-color: #1684a5;
		}

		.gallery-category {
			display: none;
		}

		.gallery-category.active {
			display: block;
			animation: galleryFadeIn 0.25s ease;
		}

		@keyframes galleryFadeIn {
			from {
				opacity: 0;
				transform: translateY(5px);
			}

			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		/* Equal-sized product grid */

		.product-gallery {
			display: grid;
			grid-template-columns: repeat(4, minmax(0, 1fr));
			gap: 16px;
			margin: 0 0 38px;
			padding: 16px;
			border: 1px solid #d1dce1;
			background: #edf4f6;
		}

		.gallery-item {
			position: relative;
			overflow: hidden;
			min-width: 0;
			aspect-ratio: 1 / 1;
			border: 1px solid #d1dce1;
			background: #ffffff;
		}

		.gallery-item img {
			display: block;
			width: 100%;
			height: 100%;
			padding: 10px;
			object-fit: contain;
			background: #ffffff;
			transition:
				transform 0.3s ease,
				opacity 0.3s ease;
		}

		.gallery-item:hover img {
			transform: scale(1.04);
			opacity: 0.94;
		}

		.gallery-overlay {
			position: absolute;
			right: 0;
			bottom: 0;
			left: 0;
			padding: 11px 12px;
			color: #ffffff !important;
			font-size: 11px;
			font-weight: bold;
			line-height: 16px;
			letter-spacing: 0.8px;
			text-align: center;
			text-transform: uppercase;
			background: rgba(16, 46, 59, 0.86);
			transform: translateY(100%);
			transition: transform 0.25s ease;
		}

		.gallery-item:hover .gallery-overlay {
			transform: translateY(0);
		}

		/* Contact callout */

		.products-contact {
			display: table;
			width: 100%;
			padding: 28px 30px;
			border-left: 5px solid #1684a5;
			background: #edf4f6;
		}

		.products-contact-copy,
		.products-contact-action {
			display: table-cell;
			vertical-align: middle;
		}

		.products-contact-copy {
			padding-right: 30px;
		}

		.products-contact-copy h2 {
			margin: 0 0 9px;
			color: #102e3b;
			font-family: Arial, Helvetica, sans-serif;
			font-size: 24px;
			font-weight: bold;
			line-height: 30px;
		}

		.products-contact-copy p {
			margin: 0;
			color: #60727a;
			font-size: 14px;
			line-height: 23px;
		}

		.products-contact-action {
			width: 190px;
			text-align: right;
		}

		.products-button {
			display: inline-block;
			padding: 13px 21px;
			color: #ffffff !important;
			font-size: 12px;
			font-weight: bold;
			line-height: 18px;
			letter-spacing: 1px;
			text-align: center;
			text-decoration: none;
			text-transform: uppercase;
			border: 1px solid #126f8b;
			background: #1684a5;
			transition:
				background 0.25s ease,
				border-color 0.25s ease;
		}

		.products-button:hover {
			color: #ffffff !important;
			border-color: #102e3b;
			background: #102e3b;
		}

		/* Tablet */

		@media screen and (max-width: 850px) {
			.bubbly-products {
				padding: 40px 30px 50px;
			}

			.products-heading h1 {
				font-size: 35px;
				line-height: 42px;
			}

			.products-intro,
			.products-intro-copy,
			.products-intro-panel {
				display: block;
				width: 100%;
			}

			.products-intro-copy {
				padding: 0 0 28px;
			}

			.product-standards-list {
				display: grid;
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 24px;
			}

			.product-standard {
				display: block;
				width: 100%;
				padding: 0 20px 22px 0;
				border-right: 0;
				border-bottom: 1px solid rgba(255, 255, 255, 0.16);
			}

			.product-standard:nth-child(3),
			.product-standard:nth-child(4) {
				padding-bottom: 0;
				border-bottom: 0;
			}

			.product-gallery {
				grid-template-columns: repeat(3, minmax(0, 1fr));
			}

			.gallery-tab {
				flex: 1 1 calc(50% - 10px);
			}
		}

		/* Mobile */

		@media screen and (max-width: 560px) {
			.bubbly-products {
				padding: 30px 19px 40px;
			}

			.products-heading h1 {
				font-size: 29px;
				line-height: 35px;
			}

			.products-heading p,
			.products-intro-copy p {
				font-size: 14px;
				line-height: 24px;
			}

			.products-intro-copy h2,
			.product-category-heading h2,
			.gallery-heading h2 {
				font-size: 24px;
				line-height: 30px;
			}

			.products-highlight,
			.product-standards,
			.products-contact {
				padding: 24px 22px;
			}

			.product-grid {
				grid-template-columns: 1fr;
			}

			.product-card {
				min-height: 0;
				padding: 25px 21px 24px 70px;
			}

			.product-number {
				top: 24px;
				left: 20px;
				width: 34px;
				height: 34px;
				line-height: 34px;
			}

			.product-standards-list {
				display: block;
			}

			.product-standard,
			.product-standard:nth-child(3),
			.product-standard:nth-child(4) {
				margin: 0 0 22px;
				padding: 0 0 22px;
				border-bottom: 1px solid rgba(255, 255, 255, 0.16);
			}

			.product-standard:last-child {
				margin-bottom: 0;
				padding-bottom: 0;
				border-bottom: 0;
			}

			.gallery-tabs {
				display: grid;
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 7px;
				padding: 7px;
			}

			.gallery-tab {
				width: 100%;
				padding: 11px 8px;
				font-size: 12px;
			}

			.product-gallery {
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 8px;
				padding: 8px;
			}

			.gallery-item img {
				padding: 6px;
			}

			.gallery-overlay {
				padding: 8px 6px;
				font-size: 9px;
				line-height: 13px;
				letter-spacing: 0.4px;
			}

			.products-contact,
			.products-contact-copy,
			.products-contact-action {
				display: block;
				width: 100%;
			}

			.products-contact-copy {
				padding: 0 0 20px;
			}

			.products-contact-action {
				text-align: left;
			}
		}
		/* Language selector */

#language-selector {
  position: fixed;
  top: 18px;
  right: 20px;
  z-index: 99999;
}

/* Remove the default details arrow */
#language-selector summary {
  list-style: none;
}

#language-selector summary::-webkit-details-marker {
  display: none;
}

#language-selector summary::marker {
  display: none;
  content: "";
}

/* Globe button */
#language-selector summary {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 46px;
  height: 46px;
  padding: 0;

  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;

  background: rgba(20, 20, 20, 0.85);
  color: white;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  font-size: 1.35rem;
  cursor: pointer;
  user-select: none;

  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

#language-selector summary:hover {
  transform: translateY(-2px);
  background: rgba(20, 20, 20, 1);
}

#language-selector summary:focus-visible {
  outline: 3px solid rgba(255, 255, 255, 0.5);
  outline-offset: 3px;
}

/* Dropdown */
.language-menu {
  position: absolute;
  top: 56px;
  right: 0;

  display: flex;
  flex-direction: column;

  width: 170px;
  padding: 8px;

  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 12px;

  background: #181818;
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.4);
}

/* Optional opening animation */
#language-selector[open] .language-menu {
  animation: languageMenuOpen 0.18s ease-out;
}

@keyframes languageMenuOpen {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.language-menu button {
  width: 100%;
  padding: 11px 14px;

  border: none;
  border-radius: 8px;

  background: transparent;
  color: white;

  font-family: inherit;
  font-size: 0.95rem;
  text-align: left;

  cursor: pointer;
}

.language-menu button:hover,
.language-menu button:focus-visible {
  background: rgba(255, 255, 255, 0.14);
  outline: none;
}

.language-menu button[dir="rtl"] {
  text-align: right;
}

@media (max-width: 760px) {
  #language-selector {
    top: 12px;
    right: 12px;
  }

  #language-selector summary {
    width: 42px;
    height: 42px;
  }

  .language-menu {
    top: 51px;
  }
}