﻿@charset "UTF-8";
/** Theme Colors */
/** Fonts */
/** Fonts **/
@font-face {
  font-family: "Peerless Sans Regular";
  src: url("/Assets/fonts/PeerlessSans-Regular.ttf") format("truetype");
  font-style: normal;
}
@font-face {
  font-family: "Peerless Sans Bold";
  src: url("/Assets/fonts/PeerlessSans-Bold.ttf") format("truetype");
  font-style: normal;
}
@font-face {
  font-family: "Space Mono Regular";
  src: url("/Assets/fonts/SpaceMono-Regular.ttf") format("truetype");
  font-style: normal;
}
.product-card:hover {
  z-index: 1;
}

.news-story .news-story__section-divider {
  width: min(100% - 2 * var(--space-8), 1344px);
  height: 3px;
  margin: var(--space-8) auto;
  background-color: var(--color-lime-500, #c6dc19);
}

.news-story__hero .news-story__hero-media {
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
  aspect-ratio: 16/9 !important;
}

.news-story__hero .news-story__hero-media img,
.news-story__hero .news-story__hero-media video {
  height: 100% !important;
}

@media (max-width: 1024px) {
  .news-story__hero .news-story__hero-media {
    aspect-ratio: 16/10 !important;
  }
}
@media (max-width: 768px) {
  .news {
    overflow-x: clip;
  }
  .news .news__shell {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding-inline: var(--space-5) !important;
  }
}
.scene-explorer__img {
  object-fit: var(--scene-explorer-object-fit, contain);
  object-position: var(--scene-explorer-object-x, 100%) var(--scene-explorer-object-y, 50%);
}

@media (max-width: 768px) {
  .scene-explorer__img[data-slide-preset=default].is-active {
    left: auto;
    transform: none;
  }
}
.scene-explorer {
  background-color: var(--color-structural-black-500, #0f121d);
  transition: background-color 0.6s ease;
}

.scene-explorer[data-background=structural-black] {
  background-color: var(--color-structural-black-500, #0f121d);
}

.scene-explorer[data-background=none] {
  background-color: var(--color-structural-black-500, #0f121d);
}

.scene-explorer:before {
  opacity: 0;
  transition: opacity 0.6s ease;
}

@media (min-width: 769px) {
  .scene-explorer > .pdp-video-controls {
    bottom: calc(var(--space-6) + var(--header-size) + env(safe-area-inset-bottom, 0px));
  }
}
.scene-explorer[data-background=none]:before {
  opacity: 1;
}

/** Mega Nav Product Cards */
#megaMenuProductCards {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  margin: 40px;
}
#megaMenuProductCards .product-card__overlay a {
  overflow: hidden;
}

/** Navigation Panel Module */
.navigation-panel-module.verticals-display-panel {
  width: 100%;
  height: 100%;
}
.navigation-panel-module .thumb-gallery {
  height: 100%;
}
.navigation-panel-module .thumb-gallery__thumbs {
  width: auto;
  flex: 1;
}

/** START Video Embed Component (VideoPeerless.cshtml) */
.peerless-video-embed-wrapper {
  position: relative;
  width: 100%;
}

.peerless-video-embed {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  background: var(--color-structural-black-500, #0f121d);
}
.peerless-video-embed iframe,
.peerless-video-embed video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
  object-fit: cover;
  display: block;
}

#megaMenuDisplay > .peerless-video-embed-wrapper {
  flex: 1;
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}

#megaMenuDisplay > .peerless-video-embed-wrapper > .peerless-video-embed {
  flex: 1;
  min-height: 0;
  height: 100%;
  aspect-ratio: auto;
}

.peerless-video-embed-wrapper > .peerless-video-embed--fixed-height,
#megaMenuDisplay > .peerless-video-embed-wrapper > .peerless-video-embed--fixed-height {
  flex: 0 0 auto;
  aspect-ratio: auto;
}

.peerless-video-embed__cta {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  padding: var(--space-5, 20px);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
  color: #fff;
  pointer-events: none;
}
.peerless-video-embed__cta a {
  pointer-events: auto;
}
.peerless-video-embed__cta p,
.peerless-video-embed__cta h1, .peerless-video-embed__cta h2, .peerless-video-embed__cta h3, .peerless-video-embed__cta h4, .peerless-video-embed__cta h5, .peerless-video-embed__cta h6 {
  margin: 0 0 var(--space-3, 12px);
  color: inherit;
}
.peerless-video-embed__cta p:last-child,
.peerless-video-embed__cta h1:last-child, .peerless-video-embed__cta h2:last-child, .peerless-video-embed__cta h3:last-child, .peerless-video-embed__cta h4:last-child, .peerless-video-embed__cta h5:last-child, .peerless-video-embed__cta h6:last-child {
  margin-bottom: 0;
}

/** END Video Embed Component (VideoPeerless.cshtml) */
/** award-card__decoration overide */
.award-card__decoration {
  background: none;
}

/** Category List Peerless Component */
.product-categories-panel__item--empty {
  cursor: revert;
}

.product-categories-panel__list > li:has(> a.product-categories-panel__item) {
  display: contents;
}

.product-categories-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-block: var(--space-6);
  flex-shrink: 0;
}

.product-categories-panel__title {
  font-size: 20px;
  font-weight: 400;
  color: var(--pcp-text);
  margin: 0;
  letter-spacing: -0.01em;
}

.product-categories-panel__cta {
  flex-shrink: 0;
}
.product-categories-panel__cta .fa-arrow-up-right {
  display: inline-block;
  transition: transform 0.25s ease;
}
.product-categories-panel__cta:hover .fa-arrow-up-right {
  transform: rotate(45deg);
}

/** Two-Column Layout */
.two-col-layout-peerless {
  display: flex;
  margin: 64px 0;
  max-height: 406px;
}
.two-col-layout-peerless.has-padding {
  padding: 0 64px;
}
.two-col-layout-peerless > div {
  flex-grow: 1;
}
.two-col-layout-peerless > div.col-md-2 {
  flex-basis: 16.6667%;
  max-width: 16.6667%;
}
.two-col-layout-peerless > div.col-md-3 {
  flex-basis: 25%;
  max-width: 25%;
}
.two-col-layout-peerless > div.col-md-4 {
  flex-basis: 33.3333%;
  max-width: 33.3333%;
}
.two-col-layout-peerless > div.col-md-5 {
  flex-basis: 41.6667%;
  max-width: 41.6667%;
}
.two-col-layout-peerless > div.col-md-6 {
  flex-basis: 50%;
  max-width: 50%;
}
.two-col-layout-peerless > div.col-md-7 {
  flex-basis: 58.3333%;
  max-width: 58.3333%;
}
.two-col-layout-peerless > div.col-md-8 {
  flex-basis: 66.6667%;
  max-width: 66.6667%;
}
.two-col-layout-peerless > div.col-md-9 {
  flex-basis: 75%;
  max-width: 75%;
}
.two-col-layout-peerless > div.col-md-10 {
  flex-basis: 83.3333%;
  max-width: 83.3333%;
}
@media (max-width: 900px) {
  .two-col-layout-peerless {
    flex-direction: column;
  }
}

/** Search Page -- Product Cards */
.CoveoResult .product-card {
  position: relative;
  isolation: isolate;
  overflow: clip;
  width: 100%;
  max-width: 790px;
  min-width: 375px;
  display: flex;
  flex-direction: column;
  background: var(--color-structural-cream-500, #f5f2ec);
  box-shadow: 0 24px 24px -12px rgba(14, 63, 126, 0.04), 0 12px 12px rgba(14, 63, 126, 0.04), 0 6px 6px -3px rgba(42, 51, 70, 0.04), 0 3px 3px rgba(42, 51, 70, 0.04), 0 1px 1px -0.5px rgba(42, 51, 69, 0.04), 0 0 0 1px rgba(14, 63, 126, 0.04), 0 0 1px rgba(0, 0, 0, 0.18);
  transition: box-shadow 0.35s ease;
}
.CoveoResult .product-card[data-state=open] {
  z-index: 7;
}
.CoveoResult .product-card a:hover, .CoveoResult .product-card a:hover a, .CoveoResult .product-card a:focus, .CoveoResult .product-card a:focus a {
  text-decoration: none;
}
.CoveoResult .product-card a:visited {
  color: var(--color-structural-cream-25);
}
.CoveoResult .product-card a:visited:hover {
  color: var(--color-structural-blue-400);
}
.CoveoResult .product-card a.item-action-row__label:visited:hover {
  color: var(--color-structural-cream-25);
}
.CoveoResult .product-card .product-card__title:visited {
  color: var(--color-structural-black-600, #0e101a);
}
.CoveoResult .product-card .product-card__title:visited:hover {
  color: var(--color-structural-black-600, #0e101a);
}
.CoveoResult .product-card__media {
  display: flex;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  aspect-ratio: 1/1;
}
.CoveoResult .product-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.CoveoResult .product-card__image[data-img-position=top] {
  object-position: top;
}
.CoveoResult .product-card__image[data-img-position=bottom] {
  object-position: bottom;
}
.CoveoResult .product-card__image[data-img-position=left] {
  object-position: left;
}
.CoveoResult .product-card__image[data-img-position=right] {
  object-position: right;
}
.CoveoResult .product-card__image[data-img-position=top-left] {
  object-position: top left;
}
.CoveoResult .product-card__image[data-img-position=top-right] {
  object-position: top right;
}
.CoveoResult .product-card__image[data-img-position=bottom-left] {
  object-position: bottom left;
}
.CoveoResult .product-card__image[data-img-position=bottom-right] {
  object-position: bottom right;
}
.CoveoResult .product-card__image[data-img-position=center-left] {
  object-position: center left;
}
.CoveoResult .product-card__image[data-img-position=center-right] {
  object-position: center right;
}
.CoveoResult .product-card:hover {
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.29);
}
.CoveoResult .product-card:hover .product-card__image {
  transform: scale(1.04);
}
.CoveoResult .product-card__meta {
  display: flex;
  align-items: stretch;
  height: 100px;
  margin-top: auto;
  background: #fff;
  z-index: 1;
}
.CoveoResult .product-card__summary {
  flex: 1;
  min-width: 0;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--space-2_5) var(--space-4) var(--space-2) var(--space-4);
}
.CoveoResult .product-card__family {
  margin: 0 0 var(--space-1);
  font-family: var(--font-sans);
  font-size: 1.125rem;
  line-height: normal;
  font-weight: 400;
  opacity: 0.65;
  color: var(--color-structural-black-500, #0f121d);
}
.CoveoResult .product-card__title {
  margin: 0;
  max-width: 100%;
  font-family: var(--font-sans);
  color: var(--color-structural-black-600, #0e101a);
  font-size: 0.875rem;
  line-height: 1.75rem;
  height: 4rem;
  font-weight: 400;
  opacity: 0.8;
  text-decoration: none;
  transition: color 0.2s ease;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.CoveoResult .product-card__title.text-md {
  font-size: 1.25rem;
}
.CoveoResult .product-card__toggle {
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  aspect-ratio: 1;
  height: 100%;
  border: none;
  background: var(--color-structural-black-400, #202938);
  color: var(--color-structural-cream-25);
  cursor: pointer;
  font-size: 1.5rem;
  transition: background 0.2s ease, color 0.2s ease;
}
.CoveoResult .product-card__toggle-icon--close, .CoveoResult .product-card[data-state=open] .product-card__toggle-icon--plus {
  display: none;
}
.CoveoResult .product-card[data-state=open] .product-card__toggle-icon--close {
  display: inline;
}
.CoveoResult .product-card:hover .product-card__toggle {
  background: var(--color-structural-blue-500);
  color: #fff;
}
.CoveoResult .product-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  background: color-mix(in srgb, var(--color-structural-black-500, #0f121d) 94%, transparent);
  color: var(--color-structural-cream-25);
  pointer-events: none;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.CoveoResult .product-card__overlay a {
  color: inherit;
}
.CoveoResult .product-card__overlay-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-7) var(--space-8) var(--space-4);
  font-size: 1.4rem;
}
.CoveoResult .product-card__close {
  position: absolute;
  top: 0;
  right: 0;
  width: 3.125rem;
  height: 3.125rem;
  border: none;
  background: var(--color-structural-blue-500, #0061FE);
  color: #fff;
  cursor: pointer;
  font-size: 1.2rem;
}
.CoveoResult .product-card__overlay-body {
  padding: var(--space-0) var(--space-8) var(--space-8);
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  overflow: hidden;
}
.CoveoResult .product-card__overlay-heading {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.CoveoResult .product-card__family--light {
  color: color-mix(in srgb, var(--color-structural-cream-25) 70%, transparent);
  margin-bottom: 0;
}
.CoveoResult .product-card__title--light {
  font-family: var(--font-sans);
  color: var(--color-structural-cream-25);
  max-width: 100%;
  min-height: 0;
  height: auto;
  -webkit-line-clamp: unset;
  overflow: visible;
}
.CoveoResult .cta-link > .product-card__title--light {
  color: inherit;
}
.CoveoResult .product-card__variants {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-6);
}
.CoveoResult .product-card__variant {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1_5);
  color: var(--color-structural-cream-25);
  text-decoration: none;
  text-transform: capitalize;
  font-size: 0.875rem;
  font-family: var(--font-mono);
  transition: color 0.2s ease;
}
.CoveoResult .product-card__variant i {
  display: inline-block;
  transition: transform 0.25s ease;
}
.CoveoResult .product-card__variant-code {
  text-transform: uppercase;
}
.CoveoResult .product-card__tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid color-mix(in srgb, var(--color-structural-cream-25) 20%, transparent);
}
.CoveoResult .product-card__tab {
  border: none;
  background: transparent;
  color: var(--color-structural-cream-25);
  height: 2.25rem;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-family: var(--font-mono);
  cursor: pointer;
}
.CoveoResult .product-card__tab.is-active {
  color: var(--color-structural-blue-400);
  border-bottom: 3px solid var(--color-structural-blue-400);
}
.CoveoResult .product-card__files {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-px);
  overflow: hidden;
}
.CoveoResult .product-card__files .product-card__tab-panel {
  overflow: auto scroll;
}
.CoveoResult .product-card__files .product-card__tab-panel::-webkit-scrollbar {
  width: 4px;
}
.CoveoResult .product-card__files .product-card__tab-panel::-webkit-scrollbar-track {
  background: transparent;
}
.CoveoResult .product-card__files .product-card__tab-panel::-webkit-scrollbar-thumb {
  background: rgba(15, 18, 29, 0.12);
  border-radius: 4px;
}
.CoveoResult .product-card__file {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-structural-cream-25);
  text-decoration: none;
  opacity: 0.9;
  font-size: 1rem;
  transition: color 0.2s ease, opacity 0.2s ease;
}
.CoveoResult .product-card__file:hover {
  color: var(--color-structural-blue-400);
  opacity: 1;
}
.CoveoResult .product-card__tab-panel {
  display: none;
}
.CoveoResult .product-card__tab-panel.is-active {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.CoveoResult .product-card__download-all {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1_5);
  align-self: flex-end;
  color: var(--color-structural-cream-25);
  text-decoration: none;
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0.8;
}
.CoveoResult .product-card__download-all:hover {
  opacity: 1;
}
.CoveoResult .product-card[data-state=open] .product-card__overlay {
  pointer-events: auto;
  transform: translateY(0);
}
.CoveoResult .product-card[data-state=open] .product-card__summary {
  visibility: hidden;
}
.CoveoResult .product-card[data-state=open] .product-card__toggle {
  opacity: 0;
  pointer-events: none;
}
.CoveoResult .item-action-row {
  position: relative;
  width: 100%;
}
.CoveoResult .item-action-row__surface {
  --item-action-row-bg: transparent;
  --item-action-row-fg: rgba(15, 18, 29, 0.88);
  --item-action-row-muted: rgba(15, 18, 29, 0.45);
  --item-action-row-hover: rgba(0, 97, 254, .1);
  --item-action-row-hover-strong: rgba(0, 97, 254, .12);
  --item-action-row-accent: var(--color-structural-blue-500, #0061fe);
  --item-action-row-selected-bg: var(--color-structural-blue-500, #0061fe);
  --item-action-row-selected-fg: var(--color-structural-cream-25, #fffefd);
  --item-action-row-selected-hover: rgba(15, 18, 29, .1);
  --item-action-row-divider: rgba(15, 18, 29, .12);
  --item-action-row-selected-divider: rgba(255, 255, 255, .22);
  display: flex;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
  gap: 0;
  min-height: 40px;
  background: var(--item-action-row-bg);
  color: var(--item-action-row-fg);
  transition: background 0.15s ease, color 0.15s ease;
}
.CoveoResult .item-action-row__surface a {
  overflow: hidden;
}
.CoveoResult .item-action-row--dark .item-action-row__surface {
  --item-action-row-fg: rgba(255, 255, 255, .8);
  --item-action-row-muted: rgba(255, 255, 255, .26);
  --item-action-row-hover: rgba(0, 97, 254, .14);
  --item-action-row-hover-strong: rgba(0, 97, 254, .16);
  --item-action-row-accent: var(--color-structural-cream-25, #fffefd);
  --item-action-row-selected-bg: var(--color-structural-blue-500, #0061fe);
  --item-action-row-selected-fg: var(--color-structural-cream-25, #fffefd);
  --item-action-row-divider: rgba(255, 255, 255, .08);
  --item-action-row-selected-divider: rgba(255, 255, 255, .2) ;
}
.CoveoResult .item-action-row__checkbox {
  display: none !important;
  position: absolute;
  width: 0;
  height: 0;
  padding: 0;
  margin: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  appearance: none;
  -webkit-appearance: none;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.CoveoResult .item-action-row:hover .item-action-row__surface, .CoveoResult .item-action-row:focus-within .item-action-row__surface {
  background: var(--item-action-row-hover);
}
.CoveoResult .item-action-row.is-selected .item-action-row__surface, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface, .CoveoResult .item-action-row.is-added .item-action-row__surface {
  background: var(--item-action-row-selected-bg);
  color: var(--item-action-row-selected-fg);
}
.CoveoResult .item-action-row.is-selected:hover .item-action-row__surface, .CoveoResult .item-action-row.is-selected:focus-within .item-action-row__surface, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface:hover, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface:focus-within, .CoveoResult .item-action-row.is-added:hover .item-action-row__surface, .CoveoResult .item-action-row.is-added:focus-within .item-action-row__surface {
  background: var(--item-action-row-selected-bg);
}
.CoveoResult .item-action-row__toggle, .CoveoResult .item-action-row__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--item-action-row-muted);
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  transition: color 0.15s ease, background 0.15s ease;
}
.CoveoResult .item-action-row__toggle:hover, .CoveoResult .item-action-row__toggle:focus-visible, .CoveoResult .item-action-row__action:hover, .CoveoResult .item-action-row__action:focus-visible {
  background: var(--item-action-row-hover-strong);
  color: var(--item-action-row-accent);
  outline: none;
}
.CoveoResult .item-action-row.is-selected .item-action-row__toggle, .CoveoResult .item-action-row.is-selected .item-action-row__action, .CoveoResult .item-action-row.is-selected .item-action-row__label, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__toggle, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__action, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__label, .CoveoResult .item-action-row.is-added .item-action-row__toggle, .CoveoResult .item-action-row.is-added .item-action-row__action, .CoveoResult .item-action-row.is-added .item-action-row__label {
  color: var(--item-action-row-selected-fg);
}
.CoveoResult .item-action-row.is-selected .item-action-row__toggle:hover, .CoveoResult .item-action-row.is-selected .item-action-row__toggle:focus-visible, .CoveoResult .item-action-row.is-selected .item-action-row__action:hover, .CoveoResult .item-action-row.is-selected .item-action-row__action:focus-visible, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__toggle:hover, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__toggle:focus-visible, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__action:hover, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__action:focus-visible, .CoveoResult .item-action-row.is-added .item-action-row__toggle:hover, .CoveoResult .item-action-row.is-added .item-action-row__toggle:focus-visible, .CoveoResult .item-action-row.is-added .item-action-row__action:hover, .CoveoResult .item-action-row.is-added .item-action-row__action:focus-visible {
  background: var(--item-action-row-selected-hover);
  color: var(--item-action-row-selected-fg);
}
.CoveoResult .item-action-row__toggle {
  border-left: 1px solid var(--item-action-row-divider);
}
.CoveoResult .item-action-row.is-selected .item-action-row__toggle, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__toggle, .CoveoResult .item-action-row.is-added .item-action-row__toggle {
  border-left-color: var(--item-action-row-selected-divider);
}
.CoveoResult .item-action-row__label {
  flex: 1;
  min-width: 0;
  display: block;
  text-align: left;
  padding: 8px 10px 8px 12px;
  font-family: var(--font-sans, sans-serif);
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
.CoveoResult .item-action-row__label--lg {
  font-size: 1rem;
  text-transform: none;
  letter-spacing: normal;
}
.CoveoResult .item-action-row__label--link {
  color: inherit;
  text-decoration: none;
  align-items: center;
  gap: 0.35em;
  cursor: pointer;
}
.CoveoResult .item-action-row__label--link:hover {
  color: var(--item-action-row-accent);
}
.CoveoResult .item-action-row__label-arrow {
  flex-shrink: 0;
  font-size: 0.8em;
  transition: transform 0.25s ease;
}
.CoveoResult .item-action-row__label--link:hover .item-action-row__label-arrow {
  transform: rotate(45deg);
}
.CoveoResult .item-action-row__actions {
  display: inline-flex;
  align-items: center;
  margin-left: auto;
  flex-shrink: 0;
}
.CoveoResult .item-action-row__toggle-icon {
  display: block;
  transition: transform 0.22s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.18s ease;
}
.CoveoResult .item-action-row.is-selected .item-action-row__toggle-icon, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__toggle-icon, .CoveoResult .item-action-row.is-added .item-action-row__toggle-icon {
  transform: rotate(45deg);
}
.CoveoResult .item-action-row__action--download {
  border-left: 1px solid var(--item-action-row-divider);
}
.CoveoResult .item-action-row__action--download:hover, .CoveoResult .item-action-row__action--download:focus-visible {
  border-left-color: rgba(0, 97, 254, 0.35);
}
.CoveoResult .item-action-row.is-selected .item-action-row__action--download, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__action--download, .CoveoResult .item-action-row.is-added .item-action-row__action--download {
  border-left-color: var(--item-action-row-selected-divider);
}
.CoveoResult .item-action-row.is-selected .item-action-row__action--download:hover, .CoveoResult .item-action-row.is-selected .item-action-row__action--download:focus-visible, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__action--download:hover, .CoveoResult .item-action-row__checkbox:checked + .item-action-row__surface .item-action-row__action--download:focus-visible, .CoveoResult .item-action-row.is-added .item-action-row__action--download:hover, .CoveoResult .item-action-row.is-added .item-action-row__action--download:focus-visible {
  border-left-color: rgba(255, 255, 255, 0.32);
}

@media (max-width: 768px) {
  .product-card {
    min-height: 27rem;
  }
  .product-card .product-card__files {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-px);
    overflow: hidden;
  }
  .product-card .product-card__files .product-card__tab-panel::-webkit-scrollbar-track {
    background: var(--color-structural-black-500, #0f121d);
  }
  .product-card .product-card__files .product-card__tab-panel::-webkit-scrollbar-thumb {
    background: var(--color-structural-black-500, #0f121d);
  }
  .product-card__overlay-body {
    padding: var(--space-2) var(--space-4) var(--space-5);
  }
  .product-card__overlay-header {
    padding: var(--space-4);
  }
  .product-card__files {
    grid-template-columns: 1fr;
  }
}
/** (Mobile) Responsive adjustments for photometry links on PDP docs **/
@media (max-width: 960px) {
  .pdp-docs [data-category=photometry] .pdp-docs__legacy-row-links .display-inherit-mobile > a {
    white-space: normal;
    overflow-wrap: anywhere;
  }
}
.cta-link .fa-arrow-up-right {
  display: inline-block;
  flex-shrink: 0;
  transition: transform 0.25s ease, color 0.25s ease;
}

.cta-link:hover .fa-arrow-up-right {
  transform: rotate(45deg);
}

/** Search results content cards (Family, Projects, Content) */
.CoveoResult .content-card {
  --cc-radius: 0;
  --cc-text: var(--color-structural-cream-50, #ffffff);
  --cc-bg: var(--color-structural-black-500, #111);
  --cc-fade-from: rgba(0, 0, 0, 0);
  --cc-fade-to: rgba(0, 0, 0, .7);
  --cc-pad: var(--space-6, 24px);
  --cc-body-pad-block: var(--space-8, 32px);
  --cc-body-pad-inline: var(--space-8, 32px);
  --cc-bg-translucent: rgba(7, 55, 40, 0.55);
  --cc-text-translucent: rgba(255, 255, 255, 0.92);
  --cc-border-translucent: rgba(255, 255, 255, 0.14);
  position: relative;
  display: flex;
  flex-direction: column;
  isolation: isolate;
  border-radius: var(--cc-radius);
  background: var(--cc-bg);
  color: var(--cc-text);
  text-decoration: none;
  transition: transform 0.4s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.CoveoResult .content-card a, .CoveoResult .content-card span {
  color: var(--color-structural-cream-50, #ffffff);
}
.CoveoResult .content-card:visited, .CoveoResult .content-card:visited:hover {
  color: var(--color-structural-cream-50, #fff);
}
.CoveoResult .content-card:hover, .CoveoResult .content-card:focus {
  text-decoration: none;
}
.CoveoResult .content-card span.content-card__featured-label {
  font-family: var(--font-sans);
  font-size: 0.625rem;
  font-weight: 400;
  color: #c6dc19;
  text-align: center;
  white-space: nowrap;
  height: 0;
  padding-bottom: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.2s ease, height 0.2s ease, padding-bottom 0.2s ease;
}
.CoveoResult .content-card .content-card__featured-cta {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 0.5625rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #48cef7;
  display: flex;
  align-items: center;
  gap: var(--space-1);
}
.CoveoResult .content-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.CoveoResult .content-card__media {
  position: absolute;
  inset: 0;
  margin: 0;
  overflow: hidden;
}
.CoveoResult .content-card__gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, var(--cc-fade-from) 40%, var(--cc-fade-to) 100%);
  pointer-events: none;
}
.CoveoResult .content-card__display {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  padding: var(--cc-pad);
}
.CoveoResult .content-card__display-content {
  width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  background: #fff;
  display: grid;
  place-items: center;
  padding: var(--space-3, 12px);
}
.CoveoResult .content-card__display-content img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.CoveoResult .content-card__body {
  position: relative;
  z-index: 2;
  margin-top: 0;
  padding: var(--cc-body-pad-block) var(--cc-body-pad-inline);
  display: flex;
  flex-direction: column;
  gap: var(--space-2, 8px);
  background: none;
}
.CoveoResult .content-card__eyebrow {
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.85;
}
.CoveoResult .content-card__title {
  margin: 0;
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: clamp(1.125rem, var(--fluid-unit, 1vw) * 0.6 + 0.75rem, 1.375rem);
  line-height: 1.2;
  letter-spacing: -0.01em;
  display: flex;
  align-items: baseline;
  gap: var(--space-2, 8px);
  flex-wrap: nowrap;
}
.CoveoResult .content-card__title-text {
  flex: 0 1 auto;
}
.CoveoResult .content-card__arrow {
  flex: 0 0 auto;
  font-size: 0.8rem;
  font-weight: 500;
  padding-left: var(--space-2);
  display: inline-block;
  transition: transform 0.25s ease, color 0.25s ease;
}
.CoveoResult .content-card__desc {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 0.875rem;
  line-height: 1.45;
  opacity: 0.85;
}
.CoveoResult a.content-card:hover .content-card__image {
  transform: scale(1.04);
}
.CoveoResult a.content-card:hover .content-card__arrow {
  transform: rotate(45deg);
}
.CoveoResult a.content-card:focus-visible {
  outline: 2px solid var(--color-structural-blue-cta, #1f6feb);
  outline-offset: 3px;
}
.CoveoResult .content-card--ratio-16-10 {
  aspect-ratio: 16/10;
}
.CoveoResult .content-card--ratio-1-1 {
  aspect-ratio: 1/1;
}
.CoveoResult .content-card--no-aspect-ratio {
  aspect-ratio: unset;
}
.CoveoResult .content-card.has-title-gradient .content-card__title-text {
  background: linear-gradient(131deg, #c6dc19, #fff);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
.CoveoResult .content-card--body-pad-extra {
  --cc-body-pad-inline: var(--space-16, 64px) ;
}
.CoveoResult .content-card--standard {
  --cc-fade-from: rgba(0, 0, 0, 0);
  --cc-fade-to: rgba(0, 0, 0, .75) ;
}
.CoveoResult .content-card--standard .content-card__body {
  margin-top: auto;
}
.CoveoResult .content-card--spotlight {
  --cc-fade-from: rgba(0, 0, 0, 0);
  --cc-fade-to: rgba(0, 0, 0, .75) ;
}
.CoveoResult .content-card--spotlight.content-card--has-display-content {
  --cc-bg: var(--color-structural-black-400, #2b2b2b) ;
}
.CoveoResult .content-card--spotlight.content-card--has-display-content .content-card__image {
  opacity: 0.55;
  filter: blur(2px);
}
.CoveoResult .content-card--editorial {
  --cc-bg: var(--color-green-500, #154734);
  --cc-text: var(--color-structural-cream-50, #ffffff);
  --cc-pad: var(--space-8, 32px) ;
}
.CoveoResult .content-card--editorial .content-card__icon {
  font-size: 1.5rem;
  color: currentColor;
  flex: 0 0 auto;
  margin-bottom: var(--space-1, 4px);
}
.CoveoResult .content-card--editorial .content-card__title {
  font-size: clamp(1.5rem, var(--fluid-unit) + 1rem, 2.25rem);
  font-weight: 400;
}
.CoveoResult .content-card--editorial .content-card__body {
  margin-top: 0;
  height: 100%;
  justify-content: center;
}
.CoveoResult .content-card--editorial .content-card__desc {
  font-size: 1rem;
  opacity: 0.9;
  max-width: 38ch;
}
.CoveoResult .content-card--editorial.is-translucent {
  background: var(--cc-bg-translucent);
  color: var(--cc-text-translucent);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid var(--cc-border-translucent);
}
.CoveoResult .content-card--editorial.is-translucent.is-translucent-default {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.CoveoResult .content-card--editorial-color-ignition-green {
  --cc-bg: var(--color-green-500, #073728);
  --cc-text: var(--color-lime-500, #c6dc19) ;
}
.CoveoResult .content-card--editorial-color-blue-alliance {
  --cc-bg: var(--color-blue-alliance-500, #005465);
  --cc-text: var(--color-lime-500, #c6dc19) ;
}
.CoveoResult .content-card--editorial-color-blue-reliance {
  --cc-bg: var(--color-blue-reliance-500, #48cef7);
  --cc-text: var(--color-structural-black-500, #0f121d) ;
}
.CoveoResult .content-card--editorial-color-playleaf {
  --cc-bg: var(--color-lime-500, #c6dc19);
  --cc-text: var(--color-green-500, #073728) ;
}
.CoveoResult .content-card--editorial-color-flash-orange {
  --cc-bg: var(--color-orange-500, #ff5c00);
  --cc-text: var(--color-green-500, #073728) ;
}
.CoveoResult .content-card--editorial-color-momentum-red {
  --cc-bg: var(--color-red-500, #a80000);
  --cc-text: var(--color-structural-cream-50, #ffffff) ;
}
.CoveoResult .content-card--editorial-color-structural-blue {
  --cc-bg: var(--color-structural-blue-500, #0061fe);
  --cc-text: var(--color-structural-cream-50, #ffffff) ;
}
.CoveoResult .content-card--editorial-color-structural-black {
  --cc-bg: var(--color-structural-black-400, #202938);
  --cc-text: var(--color-structural-cream-50, #ffffff) ;
}
.CoveoResult .content-card--editorial-color-structural-cream {
  --cc-bg: var(--color-structural-cream-500, #f5f2ec);
  --cc-text: var(--color-structural-black-500, #0f121d) ;
}
.CoveoResult .content-card--editorial-color-midnight {
  --cc-bg: var(--color-structural-black-500, #0f121d);
  --cc-text: var(--color-structural-cream-50, #ffffff) ;
}
.CoveoResult .content-card.content-card--thumbnail {
  cursor: pointer;
}
.CoveoResult .content-card.content-card--thumbnail > .content-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}
.CoveoResult .content-card.content-card--thumbnail:after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 55%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  pointer-events: none;
  z-index: 1;
}
.CoveoResult .content-card.content-card--thumbnail .content-card__body {
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding: var(--cc-body-pad-block) var(--cc-body-pad-inline);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  pointer-events: none;
}
.CoveoResult .content-card.content-card--thumbnail .content-card__eyebrow {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5490196078);
  opacity: 1;
}
.CoveoResult .content-card.content-card--thumbnail .content-card__title {
  font-family: var(--font-sans);
  font-size: 1.375rem;
  font-weight: 400;
  color: #fff;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: nowrap;
}
.CoveoResult .content-card.content-card--thumbnail .content-card__arrow {
  font-size: 0.875rem;
}
.CoveoResult .content-card.content-card--thumbnail .content-card__meta {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4509803922);
}
.CoveoResult .content-card.content-card--thumbnail:hover > .content-card__image {
  transform: none;
}
.CoveoResult .content-card.content-card--thumbnail:hover .content-card__arrow {
  transform: none;
}
.CoveoResult .content-card__featured {
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 0;
  display: inline-flex;
  flex-direction: row;
  align-items: stretch;
  background: #005465;
  z-index: 3;
  overflow: hidden;
  max-width: 117px;
  transition: max-width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.CoveoResult .content-card__featured:hover {
  z-index: 4;
  max-width: 320px;
  padding: var(--space-3);
}
.CoveoResult .content-card__featured:hover .content-card__featured-body {
  width: 16ch;
  opacity: 1;
}
.CoveoResult .content-card__featured:hover .content-card__featured-label {
  height: auto;
  padding-bottom: var(--space-1);
  opacity: 1;
}
.CoveoResult .content-card__featured:hover .content-card__featured-media {
  padding-left: 0;
}
.CoveoResult .content-card__featured-body {
  flex: 0 0 auto;
  min-width: 0;
  width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: center;
  padding: 0;
  opacity: 0;
  white-space: nowrap;
  overflow: hidden;
  transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease 0.2s;
}
.CoveoResult .content-card__featured-content {
  padding-top: var(--space-1);
  padding-left: var(--space-2);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  margin: auto;
}
.CoveoResult .content-card__featured-media {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
}
.CoveoResult .content-card__featured-img {
  width: 105px;
  height: 105px;
  object-fit: contain;
  background: rgba(255, 255, 255, 0.0784313725);
  padding: var(--space-1);
  flex-shrink: 0;
}
.CoveoResult .content-card__featured-name {
  font-family: var(--font-sans);
  font-size: 0.625rem;
  font-weight: 400;
  color: #fff;
  margin: 0;
  padding-bottom: 0;
  line-height: 1.3;
}
.CoveoResult .content-card__featured-desc {
  font-family: var(--font-sans);
  font-size: 0.5625rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.6);
  margin: 0;
  padding: 0 8px 0 0;
  line-height: 1.4;
  width: 100%;
  display: -webkit-box;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
}
.CoveoResult .content-card__featured-cta i {
  font-size: 0.5rem;
  transform: rotate(-45deg);
  transition: transform 0.25s ease;
}
.CoveoResult .content-card__featured-cta:hover i {
  transform: rotate(0);
}
.CoveoResult .content-card--fallback {
  background: var(--color-neutral-200, #e4e4e7);
  color: var(--color-structural-black-400, #2a2d3a);
  display: grid;
  place-items: center;
  padding: var(--space-6, 24px);
  text-align: center;
}
.CoveoResult .content-card--fallback .content-card__fallback-label {
  font-family: var(--font-sans);
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0.6;
}
.CoveoResult .content-card--demo-frame {
  width: 680px;
  height: 520px;
  background: #0f121d;
}

.v2-search-peerless-sitecontent .CoveoResult .content-card__display-content {
  width: min(clamp(100px, 22%, 180px), 100%);
}

/** Search Product Cards */
#best-matched .CoveoResult a.CoveoResultLink {
  color: var(--color-structural-cream-25);
}

.CoveoResult .product-card__tab-indicator {
  display: none;
}

/** Search Family/Project/Content Cards */
#related-projects .content-carousel__track.coveo-result-list-container.coveo-card-layout-container, #browse-family .content-carousel__track.coveo-result-list-container.coveo-card-layout-container {
  overflow: visible;
}
#related-projects .content-carousel__track.coveo-result-list-container.coveo-card-layout-container .coveo-card-layout.CoveoResult, #browse-family .content-carousel__track.coveo-result-list-container.coveo-card-layout-container .coveo-card-layout.CoveoResult {
  display: flex;
}

.search-results__info-stack .search-results__section:has(.CoveoSearchInterface .coveo-no-results) {
  display: none;
}

/** Search Page Facets */
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet {
  border: none;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-header {
  background: none;
  padding: 0;
  cursor: pointer;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-header .coveo-facet-header-settings-section .coveo-facet-header-eraser,
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-header .coveo-facet-header-settings-section .coveo-facet-header-settings {
  display: none;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-header .coveo-facet-header-settings-section .search-results__filter-cat-count {
  font-size: var(--font-size-text-md, 0.8125rem);
  color: var(--color-structural-black-500);
  margin-right: var(--space-1);
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-header .coveo-facet-header-title {
  font-family: var(--font-mono);
  font-size: var(--font-size-text-xl, 1rem);
  font-weight: 400;
  color: var(--color-structural-black-500);
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-header i.fa-chevron-right {
  font-size: var(--font-size-text-xs, 0.6875rem);
  color: var(--color-structural-black-500);
  flex-shrink: 0;
  transition: transform 0.2s;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-header[aria-expanded=true] i {
  transform: rotate(90deg);
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values {
  max-height: 0px;
  transition: max-height 0.3s;
  overflow: hidden;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values.coveo-facet-values--open {
  max-height: 100%;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values .coveo-facet-value {
  padding: var(--space-2, 8px) 0 var(--space-2, 8px) var(--space-3, 12px);
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values .coveo-facet-value .coveo-facet-value-checkbox {
  border-radius: 0;
  border-color: var(--color-structural-black-500);
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values .coveo-facet-value .coveo-facet-value-caption, #best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values .coveo-facet-value .coveo-facet-value-count {
  font-family: var(--font-mono);
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 22px;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values .coveo-facet-value .coveo-facet-value-caption {
  text-overflow: unset;
  text-wrap: wrap;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .CoveoFacet .coveo-facet-values .coveo-facet-value .coveo-facet-value-exclude {
  display: none;
}
#best-matched .CoveoSearchInterface .coveo-facet-column .coveo-topSpace {
  display: none;
}

#best-matched .search-results__section-tab-spacer {
  max-height: 0 !important;
}

.search-results__filters .search-results__filters-inner {
  display: flex;
}
.search-results__filters .CoveoDynamicFacet {
  display: block !important;
}
.search-results__filters .CoveoDynamicFacet .coveo-dynamic-facet-header {
  display: none;
}
.search-results__filters .CoveoDynamicFacet .coveo-dynamic-facet-values {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  --tag-group-color: var(--gradient-playleaf, linear-gradient(131deg, #c6dc19 0%, #edf4b8 100%));
  --tag-group-color-alpha: linear-gradient(131deg, #c6dc1933 0%, #edf4b833 100%);
  --tag-group-active-border: var(--color-structural-black-500, #0f121d);
  --tag-group-hover-color: var(--color-playleaf-500, #c6dc19);
  --tag-group-hover-text-color: var(--color-structural-black-500, #0f121d);
  --tag-group-default-fg: var(--color-structural-black-500, #0f121d);
  --tag-group-active-fg: var(--color-structural-black-500, #0f121d);
  --tag-group-hover-opacity: .2;
  --tag-group-default-border: var(--color-structural-black-500, #0f121d);
  --tag-group-hover-color: var(--color-playleaf-500, #c6dc19);
  --tag-group-hover-text-color: var(--color-structural-black-500, #0f121d);
}
.search-results__filters .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value .coveo-checkbox-button {
  display: none;
}
.search-results__filters .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value .coveo-checkbox-label {
  border-color: var(--tag-group-default-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--color-structural-black-500, #0f121d);
  font-family: var(--font-mono);
  font-size: var(--font-size-tag, 0.6875rem);
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.06em;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
  gap: var(--space-1_5, 6px);
  padding: var(--space-2, 8px) var(--space-4, 16px);
  border: 1px solid var(--color-structural-black-500, #0f121d);
  background: transparent;
  white-space: nowrap;
  border-radius: 0px;
  transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}
.search-results__filters .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value .coveo-checkbox-label:hover .coveo-checkbox-span-label {
  color: var(--tag-group-hover-text-color);
  opacity: 1;
}
.search-results__filters .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value.coveo-selected .coveo-checkbox-label {
  color: var(--tag-group-active-fg);
  background: var(--tag-group-color);
  border-color: var(--tag-group-active-border);
}
.search-results__filters .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value:hover:not(.coveo-selected) .coveo-checkbox-label {
  color: var(--tag-group-hover-text-color);
  background: var(--tag-group-color-alpha);
  border-color: var(--tag-group-hover-color);
}
.search-results__filters .CoveoDynamicFacet.coveo-dynamic-facet-collapsed .coveo-dynamic-facet-header i {
  transform: rotate(0deg);
}
.search-results__filters .CoveoDynamicFacet.coveo-dynamic-facet-collapsed .coveo-dynamic-facet-values {
  max-height: 0;
}

.search-results__section--products .search-results__section-tab.is-fixed {
  z-index: 11;
}

@media (max-width: 768px) {
  #best-matched {
    --section-padding: 2rem;
  }
  #best-matched .search-results__product-grid {
    grid-template-columns: 1fr;
  }
  #best-matched .search-results__header {
    padding-block-end: var(--section-padding);
  }
  #best-matched .search-results__filters-inner {
    flex-direction: column;
  }
  #best-matched .search-results__header-inner, #best-matched .search-results__filters-inner, #best-matched .search-results__section-tab-inner, #best-matched .search-results__section-inner, #best-matched .search-results__section-label-inner, #best-matched .search-results__section.editorial-card .editorial-card__header-inner {
    padding-inline: var(--section-padding);
  }
  #best-matched .search-results__section-inner {
    padding-block: var(--section-padding);
    margin-block-end: 0;
  }
  #best-matched .search-results__section-label {
    padding-block: var(--section-padding) var(--space-4);
  }
  #best-matched .search-results__section--discover.editorial-card .editorial-card__body {
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
  #best-matched .search-results__section--discover .search-results__section-inner {
    padding-block: var(--space-4);
  }
  #best-matched .search-results__discover-grid[data-grid] {
    width: 100%;
    --attr-grid-columns: 1;
    --attr-grid-col-gap: 0px;
    --attr-grid-row-gap: var(--space-4);
    grid-template-columns: minmax(0, 1fr);
    column-gap: 0;
    row-gap: var(--space-4);
  }
  #best-matched .search-results__discover-grid[data-grid] > [data-grid-item] {
    grid-column: 1/-1;
  }
  #best-matched .search-results__section--discover .content-card--editorial {
    --cc-pad: var(--space-5);
  }
  #best-matched .search-results__section--discover .content-card--editorial .content-card__desc {
    font-size: var(--font-size-text-lg, 0.9375rem);
    max-width: none;
  }
  #best-matched .search-results__section--discover .content-card--spotlight .content-card__body {
    padding: var(--space-6) var(--space-5) var(--space-5);
  }
  #best-matched .coveo-main-section {
    flex-direction: column;
  }
  #best-matched .coveo-main-section .coveo-facet-column {
    position: absolute;
    --filter-sheet-top: -108px;
    top: var(--filter-sheet-top, calc(var(--header-size, 64px) + 60px));
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 40;
    width: 100%;
    max-width: none;
    background: var(--bg-primary);
    background-color: var(--bg-primary) !important;
    overflow-y: auto;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column;
    max-height: 0;
  }
  #best-matched .coveo-main-section .coveo-facet-column .CoveoBreadcrumb {
    position: fixed;
    right: 2rem;
    margin-top: -30px;
    display: none;
  }
  #best-matched .search-results__filters-inner, #best-matched search-results__section-tab-inner {
    padding-inline: var(--section-padding);
  }
  #best-matched .CoveoResult .product-card__variants {
    gap: 4px;
  }
  #best-matched.is-filters-open .coveo-main-section .coveo-facet-column {
    padding: var(--space-5) var(--section-padding) !important;
    max-height: unset;
    --filter-sheet-top: 148px;
    position: fixed;
  }
  #best-matched.is-filters-open .coveo-main-section .coveo-facet-column .CoveoBreadcrumb {
    margin-top: -50px;
    display: block;
  }
  #best-matched.is-filters-open .coveo-main-section .coveo-facet-column .search-results__filter-footer {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1rem;
    background: var(--color-structural-cream-50, #ffffff);
  }
  #best-matched:not(.is-filters-open) div.coveo-main-section {
    padding-inline: 16px !important;
  }
  #browse-family .content-carousel .coveo-card-layout.CoveoResult {
    width: 100% !important;
    flex: 0 0 100% !important;
  }
  #related-projects .content-carousel .coveo-card-layout.CoveoResult {
    width: 100% !important;
    flex: 0 0 100% !important;
  }
  #related-projects .content-carousel .coveo-card-layout.CoveoResult .content-card--thumbnail .content-card__featured {
    display: none;
  }
  #discover-more .v2-search-peerless-sitecontent .coveo-result-list-container.coveo-card-layout-container {
    display: flex !important;
  }
}
/** Search Page View More */
#best-matched .CoveoSearchInterface.search-results .coveo-result-list-container:not([data-view-more]) .CoveoResult:nth-child(n+4) {
  display: none;
}
#best-matched .CoveoSearchInterface.search-results:not(:has(.CoveoResult:nth-child(4))) .search-results__view-more-wrap {
  display: none;
}

.CoveoLogo {
  display: none !important;
}

/** Cross-brand Search Page Utilities */
.text-on-dark.p-section.search-page__crossbrand {
  padding-top: 128px;
  padding-bottom: 128px;
}

.search-page__crossbrand {
  width: 100%;
  box-sizing: border-box;
}
.search-page__crossbrand .gradient-blue-alliance {
  background: linear-gradient(131deg, #005465 0%, #48cef7 100%) !important;
}
.search-page__crossbrand .gradient-blue-reliance {
  background: linear-gradient(131deg, #48cef7 0%, #76d8f5 100%) !important;
}
.search-page__crossbrand .gradient-ignition-green {
  background: linear-gradient(131deg, #073728 0%, #008968 100%) !important;
}
.search-page__crossbrand .gradient-playleaf {
  background: linear-gradient(131deg, #c6dc19 0%, #edf4b8 100%) !important;
}
.search-page__crossbrand .gradient-flash-orange {
  background: linear-gradient(131deg, #ff5c00 0%, #ff9254 100%) !important;
}
.search-page__crossbrand .gradient-momentum-red {
  background: linear-gradient(131deg, #a80000 0%, #d93a3a 100%) !important;
}
.search-page__crossbrand .gradient-structural-blue {
  background: linear-gradient(131deg, #0061fe 0%, #76a2e9 100%) !important;
}
.search-page__crossbrand .text-on-dark {
  color: var(--text-on-dark, var(--color-structural-cream-25, #FFFEFD)) !important;
}
.search-page__crossbrand .text-on-dark * {
  color: inherit;
}
.search-page__crossbrand .text-on-brand {
  color: var(--text-on-brand, #FFFFFF) !important;
}
.search-page__crossbrand .text-on-brand * {
  color: inherit;
}
.search-page__crossbrand .text-on-surface {
  color: var(--text-on-surface, var(--color-structural-black-500, #0F121D)) !important;
}
.search-page__crossbrand .text-on-surface * {
  color: inherit;
}
.search-page__crossbrand .p-section {
  padding: var(--space-8, 32px) var(--space-6, 24px) !important;
}
@media (min-width: 768px) {
  .search-page__crossbrand .p-section {
    padding: var(--space-10, 40px) var(--space-8, 32px) !important;
  }
}
@media (min-width: 1024px) {
  .search-page__crossbrand .p-section {
    padding: var(--space-12, 48px) var(--space-10, 40px) !important;
  }
}
.search-page__crossbrand .d-flex {
  display: flex !important;
}
.search-page__crossbrand .flex-col {
  flex-direction: column !important;
}
.search-page__crossbrand .gap-1 {
  gap: var(--space-1, 4px) !important;
}
.search-page__crossbrand .gap-2 {
  gap: var(--space-2, 8px) !important;
}
.search-page__crossbrand .gap-3 {
  gap: var(--space-3, 12px) !important;
}
.search-page__crossbrand .gap-4 {
  gap: var(--space-4, 16px) !important;
}
.search-page__crossbrand .gap-5 {
  gap: var(--space-5, 20px) !important;
}
.search-page__crossbrand .gap-6 {
  gap: var(--space-6, 24px) !important;
}
.search-page__crossbrand .gap-7 {
  gap: var(--space-7, 28px) !important;
}
.search-page__crossbrand .gap-8 {
  gap: var(--space-8, 32px) !important;
}
.search-page__crossbrand .p-1 {
  padding: var(--space-1, 4px) !important;
}
.search-page__crossbrand .p-2 {
  padding: var(--space-2, 8px) !important;
}
.search-page__crossbrand .p-3 {
  padding: var(--space-3, 12px) !important;
}
.search-page__crossbrand .p-4 {
  padding: var(--space-4, 16px) !important;
}
.search-page__crossbrand .p-5 {
  padding: var(--space-5, 20px) !important;
}
.search-page__crossbrand .p-6 {
  padding: var(--space-6, 24px) !important;
}
.search-page__crossbrand .p-7 {
  padding: var(--space-7, 28px) !important;
}
.search-page__crossbrand .p-8 {
  padding: var(--space-8, 32px) !important;
}
.search-page__crossbrand .bg-blue-reliance-500 {
  background-color: var(--color-blue-reliance-500, #48cef7) !important;
}
.search-page__crossbrand .bg-blue-alliance-500 {
  background-color: var(--color-blue-alliance-500, #005465) !important;
}
.search-page__crossbrand .bg-ignition-green-500 {
  background-color: var(--color-green-500, #073728) !important;
}
.search-page__crossbrand .bg-playleaf-500 {
  background-color: var(--color-lime-500, #c6dc19) !important;
}
.search-page__crossbrand .bg-flash-orange-500 {
  background-color: var(--color-orange-500, #ff5c00) !important;
}
.search-page__crossbrand .bg-momentum-red-500 {
  background-color: var(--color-red-500, #a80000) !important;
}
.search-page__crossbrand .bg-structural-black-500 {
  background-color: var(--color-structural-black-500, #0f121d) !important;
}
.search-page__crossbrand .bg-structural-cream-500 {
  background-color: var(--color-structural-cream-500, #f5f2ec) !important;
}
.search-page__crossbrand .bg-structural-blue-500 {
  background-color: var(--color-structural-blue-500, #0061fe) !important;
}
.search-page__crossbrand .product-card__title.cta-link.abl-search-link {
  text-align: right;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.double-zero-section {
  padding-top: 128px;
  padding-bottom: 128px;
  /** Complete Brand Color Background Utilities */
}
.double-zero-section .bg-orange-500 {
  background-color: var(--color-orange-500, #ff5c00) !important;
}
.double-zero-section .bg-orange-400 {
  background-color: #ff7a33 !important;
}
.double-zero-section .bg-orange-600 {
  background-color: #e65200 !important;
}
.double-zero-section .double-zero-section {
  display: none;
  width: 100%;
  min-height: 200px;
  box-sizing: border-box;
  position: relative;
}
.double-zero-section .double-zero-section[style*="display: block"] {
  display: block !important;
}
.double-zero-section .bg-orange-500.text-on-dark {
  background-color: var(--color-orange-500, #ff5c00) !important;
  color: var(--text-on-dark, var(--color-structural-cream-25, #FFFEFD)) !important;
}
.double-zero-section .bg-orange-500.text-on-dark * {
  color: inherit;
}
.double-zero-section .bg-orange-500.text-on-dark h1, .double-zero-section .bg-orange-500.text-on-dark h2, .double-zero-section .bg-orange-500.text-on-dark h3, .double-zero-section .bg-orange-500.text-on-dark h4, .double-zero-section .bg-orange-500.text-on-dark h5, .double-zero-section .bg-orange-500.text-on-dark h6 {
  color: inherit;
}
.double-zero-section .bg-orange-500.text-on-dark a {
  color: var(--color-structural-cream-25, #FFFEFD);
}
.double-zero-section .bg-orange-500.text-on-dark a:hover {
  color: var(--color-playleaf-500, #c6dc19);
}
.double-zero-section .bg-orange-500.p-section {
  padding: var(--space-8, 32px) var(--space-6, 24px);
}
@media (min-width: 768px) {
  .double-zero-section .bg-orange-500.p-section {
    padding: var(--space-10, 40px) var(--space-8, 32px);
  }
}
@media (min-width: 1024px) {
  .double-zero-section .bg-orange-500.p-section {
    padding: var(--space-12, 48px) var(--space-10, 40px);
  }
}
.double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: var(--space-6, 24px);
}
.double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section h2, .double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section h3 {
  margin: 0;
  font-family: var(--font-sans);
  font-weight: 400;
}
.double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section p {
  margin: var(--space-4, 16px) 0;
  font-family: var(--font-sans);
  max-width: 60ch;
}
.double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section ul, .double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section ol {
  list-style: none;
  padding: 0;
  margin: var(--space-6, 24px) 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3, 12px);
  justify-content: center;
}
.double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section ul li a, .double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section ol li a {
  display: inline-block;
  padding: var(--space-2, 8px) var(--space-4, 16px);
  border: 1px solid var(--color-structural-cream-25, #FFFEFD);
  color: var(--color-structural-cream-25, #FFFEFD);
  text-decoration: none;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  transition: all 0.2s ease;
}
.double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section ul li a:hover, .double-zero-section .double-zero-section.bg-orange-500.text-on-dark.p-section ol li a:hover {
  background-color: var(--color-structural-cream-25, #FFFEFD);
  color: var(--color-orange-500, #ff5c00);
}
.double-zero-section .bg-flash-orange {
  background-color: var(--color-orange-500, #ff5c00) !important;
}
.double-zero-section .bg-momentum-red {
  background-color: var(--color-red-500, #a80000) !important;
}
.double-zero-section .bg-momentum-red-500 {
  background-color: var(--color-red-500, #a80000) !important;
}
.double-zero-section .bg-ignition-green {
  background-color: var(--color-green-500, #073728) !important;
}
.double-zero-section .bg-green-500 {
  background-color: var(--color-green-500, #073728) !important;
}
.double-zero-section .bg-playleaf {
  background-color: var(--color-lime-500, #c6dc19) !important;
}
.double-zero-section .bg-lime-500 {
  background-color: var(--color-lime-500, #c6dc19) !important;
}
.double-zero-section .bg-structural-black-500.text-on-dark,
.double-zero-section .bg-orange-500.text-on-dark,
.double-zero-section .bg-momentum-red-500.text-on-dark,
.double-zero-section .bg-green-500.text-on-dark {
  color: var(--text-on-dark, var(--color-structural-cream-25, #FFFEFD)) !important;
}
.double-zero-section .bg-structural-black-500.text-on-dark *,
.double-zero-section .bg-orange-500.text-on-dark *,
.double-zero-section .bg-momentum-red-500.text-on-dark *,
.double-zero-section .bg-green-500.text-on-dark * {
  color: inherit;
}

/** accessibility */
.skip-link {
  position: absolute;
  top: -60px;
  left: 0;
  background-color: #000;
  color: #fff;
  padding: 12px 18px;
  z-index: 1000;
  text-decoration: none;
  font-size: 1rem;
  border-radius: 4px;
  transition: top 0.2s ease-in-out;
  overflow: hidden;
  white-space: nowrap;
}

.skip-link:focus {
  top: 0;
}

.peerless-video-embed-wrapper > .peerless-video-embed--fixed-height,
#megaMenuDisplay > .peerless-video-embed-wrapper > .peerless-video-embed--fixed-height {
  flex: 0 0 auto;
  aspect-ratio: auto;
}

.CoveoResultList .coveo-card-layout.category-page__grid-cell {
  display: block;
}

/** Mega Nav Product Cards */
#megaMenuProductCards {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
#megaMenuProductCards .product-card__overlay a {
  overflow: hidden;
}

/** Accordion Container + Editorial Cards (Generic) */
.peerless-accordion-container {
  width: 100%;
}
.peerless-accordion-container .editorial-card {
  position: absolute;
  width: 100%;
}

.editorial-card {
  z-index: 2;
}
.editorial-card .editorial-card__bg {
  width: 100%;
  height: 100%;
  position: absolute;
}
.editorial-card .editorial-card__header, .editorial-card .editorial-card__body {
  z-index: 1;
}

/** BEGIN Content Carousel Edits */
/* "Where we play" / Architectural Spaces carousel (ContentCarouselPeerless with
   Layout=fill-2, Bleed=true): vendor scopes its fill-2 1-up-mobile/2-up-desktop
   slide sizing to a `.where-we-play` ancestor wrapper class that our
   EditorialCardSection rendering has no field to add (its model is compiled
   outside this repo). Target the same unique class combination this instance
   actually renders (fill-2 + bleed) directly instead, replicating vendor's
   BaseLayout.css rules 1:1. */
.content-carousel--fill-2.content-carousel--bleed .content-carousel__track > * {
  width: calc((100% - var(--carousel-gap, 0px)) / 2);
}

@media (max-width: 768px) {
  .content-carousel--fill-2.content-carousel--bleed {
    height: auto !important;
    aspect-ratio: 1/1;
  }
  .content-carousel--fill-2.content-carousel--bleed .content-carousel__track {
    height: calc(100% - 56px);
  }
  .content-carousel--fill-2.content-carousel--bleed .content-carousel__track > * {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
  }
}
.peerless-coveo-content-carousel .CoveoSearchInterface .CoveoResult {
  display: contents;
}
.peerless-coveo-content-carousel .CoveoSearchInterface .coveo-results-column .content-carousel {
  padding-bottom: calc(var(--header-size) + 56px);
}
.peerless-coveo-content-carousel .CoveoSearchInterface .coveo-results-column .content-carousel .content-carousel__progress {
  bottom: calc(var(--header-size) + var(--carousel-progress-bottom));
}
.peerless-coveo-content-carousel .CoveoSearchInterface.v2-search-peerless-families .coveo-results-column > div {
  background-color: var(--bg-ignition-green);
}
.peerless-coveo-content-carousel .content-carousel__track {
  flex-wrap: nowrap;
}
.peerless-coveo-content-carousel > div {
  height: 100%;
}

#related-projects .peerless-coveo-content-carousel .CoveoSearchInterface.v2-search-peerless-projects .coveo-results-column > div {
  background: radial-gradient(at left center, rgb(0, 84, 101) 0%, rgb(13, 100, 120) 23%, rgb(26, 115, 138) 46%, rgb(51, 146, 175) 92%);
}
#related-projects .peerless-coveo-content-carousel .CoveoSearchInterface.v2-search-peerless-projects .coveo-results-column > div .CoveoResult {
  min-height: 0 !important;
}
#related-projects .peerless-coveo-content-carousel .CoveoSearchInterface.v2-search-peerless-projects .coveo-results-column > div .CoveoResult .content-card--thumbnail-project {
  min-height: 0;
}

#main-content-peerless [data-info-stack] > #discover-more.editorial-card.search-results__section--discover {
  height: fit-content !important;
  min-height: calc(100% - 180px);
}
#main-content-peerless [data-info-stack] > #discover-more.editorial-card.search-results__section--discover .editorial-card__header {
  z-index: 2;
  background-color: var(--bg-playleaf);
}

#main-content-peerless .search-results__info-stack[data-info-stack] {
  height: 100vh !important;
  max-height: 100vh !important;
}
#main-content-peerless .search-results__info-stack[data-info-stack]:has(.editorial-card .coveo-no-results) {
  height: calc(100vh - 70px) !important;
  max-height: calc(100vh - 70px) !important;
}
#main-content-peerless .search-results__info-stack[data-info-stack]:has(.editorial-card .coveo-no-results) .search-results__section {
  height: calc(100vh - 110px) !important;
}
#main-content-peerless .search-results__info-stack[data-info-stack]:has(.editorial-card .coveo-no-results) .search-results__section#discover-more.search-results__section--discover {
  min-height: calc(100vh - 110px);
}
#main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--projects .coveo-no-results), #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--discover .coveo-no-results) #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--projects .coveo-no-results):has(.search-results__section--discover .coveo-no-results) {
  height: 100vh !important;
  max-height: 100vh !important;
}
#main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--projects .coveo-no-results) .search-results__section, #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--discover .coveo-no-results) #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--projects .coveo-no-results):has(.search-results__section--discover .coveo-no-results) .search-results__section {
  height: calc(100vh - 145px) !important;
}
#main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--projects .coveo-no-results) .search-results__section#discover-more.search-results__section--discover, #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--discover .coveo-no-results) #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--projects .coveo-no-results):has(.search-results__section--discover .coveo-no-results) .search-results__section#discover-more.search-results__section--discover {
  min-height: calc(100vh - 60px);
}
#main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--projects .coveo-no-results):not(:has(.editorial-card .coveo-results-column:not(.coveo-no-results))), #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--family .coveo-no-results):has(.search-results__section--discover .coveo-no-results) #main-content-peerless .search-results__info-stack[data-info-stack]:has(.search-results__section--projects .coveo-no-results):has(.search-results__section--discover .coveo-no-results):not(:has(.editorial-card .coveo-results-column:not(.coveo-no-results))) {
  height: 0 !important;
  max-height: 0 !important;
}
#main-content-peerless .search-results__info-stack[data-info-stack] .search-results__section {
  height: calc(100vh - 180px) !important;
}
#main-content-peerless .search-results__info-stack[data-info-stack] .search-results__section#discover-more.search-results__section--discover {
  min-height: calc(100vh - 180px);
}

.content-carousel__track > *, .content-carousel__track .CoveoResult > * {
  flex-shrink: 0;
  height: 100%;
  overflow: hidden;
}

.content-carousel--peek .content-carousel__track > *, .content-carousel--peek .content-carousel__track .CoveoResult > * {
  width: 75%;
}

.content-carousel--scroll .content-carousel__track > *, .content-carousel--scroll .content-carousel__track .CoveoResult > * {
  scroll-snap-align: start;
}

/** END Content Carousel Edits */
.category-page__search.CoveoSearchInterface .CoveoFacet:has(.coveo-facet-values:empty) {
  display: none !important;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .category-page__grid-cell {
  display: contents;
  width: auto;
  margin: 0;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .category-page__grid {
  display: grid;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .family-card__preview-grid > :nth-child(n+4) {
  display: none;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .family-card__preview-grid[data-expanded=true] > :nth-child(n+4) {
  display: flex;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container {
  background: var(--color-structural-cream-50, #ffffff);
}
@media (max-width: 480px) {
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container {
    padding-inline: var(--layout-padding) !important;
    padding-block: var(--space-8);
  }
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child {
  display: block !important;
  position: sticky;
  top: 0px;
  z-index: 10;
  background: var(--color-structural-cream-50, #ffffff);
  padding-block: var(--space-4);
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row {
  display: grid;
  width: 100%;
  align-items: center;
  grid-template-columns: minmax(180px, 240px) 1fr 304px;
  gap: 28px;
}
@media (max-width: 768px) {
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--space-8);
  }
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .product-filter__filter-toggle {
  flex-grow: 1;
  display: flex;
  justify-content: left;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .coveo-tab-section {
  width: auto;
  min-height: 0;
  background: none;
  border: none;
  justify-self: right;
  margin-left: auto;
  flex: 0 0 auto;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .coveo-tab-section .kw-tab-track {
  position: relative;
  display: inline-grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  background: var(--color-structural-black-500, #1c2230);
  padding: 2px;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .coveo-tab-section .kw-tab-track .CoveoTab {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-sans);
  font-weight: 400;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
  cursor: pointer;
  user-select: none;
  transition: color 0.25s;
  font-size: var(--font-size-text-md, 0.8125rem);
  padding: var(--space-2) var(--space-3);
  height: auto;
  min-width: 150px;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .coveo-tab-section .kw-tab-track .CoveoTab.coveo-selected {
  color: var(--color-structural-black-500, #1c2230);
  background-color: white;
  border: none;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .coveo-tab-section .kw-tab-track .CoveoTab .kw-tab-label {
  line-height: 19.5px;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .CoveoDynamicFacet, .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container > div:first-child .kw-filter-tabs-row .CoveoDynamicFacet#coveodb691f101z {
  margin: 0 !important;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section {
  gap: 28px !important;
  grid-template-columns: minmax(180px, 240px) 1fr !important;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column {
  position: unset !important;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column .coveo-facet-value-caption {
  text-overflow: unset;
  text-wrap: wrap;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column.product-filter__sidebar > div:not(.coveo-topSpace):not(.coveo-bottomSpace):not(.coveo-facet-header-filter-by-container):not(.category-filter-sidebar__footer) {
  display: block !important;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column .coveo-topSpace {
  display: none;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section.product-filter__body--no-sidebar {
  grid-template-columns: 1fr !important;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section.product-filter__body--no-sidebar .coveo-facet-column {
  display: none !important;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet {
  display: block !important;
  background: transparent;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet .coveo-dynamic-facet-header {
  display: none;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet .coveo-dynamic-facet-values {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  --tag-group-color: var(--gradient-playleaf, linear-gradient(131deg, #c6dc19 0%, #edf4b8 100%));
  --tag-group-color-alpha: linear-gradient(131deg, #c6dc1933 0%, #edf4b833 100%);
  --tag-group-active-border: var(--color-structural-black-500, #0f121d);
  --tag-group-hover-color: var(--color-playleaf-500, #c6dc19);
  --tag-group-hover-text-color: var(--color-structural-black-500, #0f121d);
  --tag-group-default-fg: var(--color-structural-black-500, #0f121d);
  --tag-group-active-fg: var(--color-structural-black-500, #0f121d);
  --tag-group-hover-opacity: .2;
  --tag-group-default-border: var(--color-structural-black-500, #0f121d);
  --tag-group-hover-color: var(--color-playleaf-500, #c6dc19);
  --tag-group-hover-text-color: var(--color-structural-black-500, #0f121d);
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value .coveo-checkbox-button {
  display: none;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value .coveo-checkbox-label {
  border-color: var(--tag-group-default-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--color-structural-black-500, #0f121d);
  font-family: var(--font-mono);
  font-size: var(--font-size-tag, 0.6875rem);
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.06em;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
  gap: var(--space-1_5, 6px);
  padding: var(--space-2, 8px) var(--space-4, 16px);
  border: 1px solid var(--color-structural-black-500, #0f121d);
  background: transparent;
  white-space: nowrap;
  border-radius: 0px;
  transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value .coveo-checkbox-label:hover .coveo-checkbox-span-label {
  color: var(--tag-group-hover-text-color);
  opacity: 1;
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value.coveo-selected .coveo-checkbox-label {
  color: var(--tag-group-active-fg);
  background: var(--tag-group-color);
  border-color: var(--tag-group-active-border);
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet .coveo-dynamic-facet-values .coveo-dynamic-facet-value:hover:not(.coveo-selected) .coveo-checkbox-label {
  color: var(--tag-group-hover-text-color);
  background: var(--tag-group-color-alpha);
  border-color: var(--tag-group-hover-color);
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet.coveo-dynamic-facet-collapsed .coveo-dynamic-facet-header i {
  transform: rotate(0deg);
}
.category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .CoveoDynamicFacet.coveo-dynamic-facet-collapsed .coveo-dynamic-facet-values {
  max-height: 0;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .coveo-result-list-container {
  display: grid;
  grid-template-columns: repeat(var(--grid-cols, 3), 1fr);
  gap: var(--space-8);
  align-items: stretch;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .coveo-result-list-container .CoveoResult {
  margin: 0;
  width: 100%;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .coveo-result-list-container .CoveoResult .product-card {
  min-width: 300px;
}
.category-page__search.CoveoSearchInterface .CoveoResultList .coveo-result-list-container .CoveoResult .product-card a.CoveoResultLink {
  color: var(--color-structural-cream-25);
}
.category-page__search.CoveoSearchInterface .CoveoResultList[data-tab=peerlessCategoryLandingTabFamily],
.category-page__search.CoveoSearchInterface .CoveoResultList.category-page__grid--families {
  grid-template-columns: unset;
}
.category-page__search.CoveoSearchInterface .CoveoResultList[data-tab=peerlessCategoryLandingTabFamily] .coveo-result-list-container,
.category-page__search.CoveoSearchInterface .CoveoResultList.category-page__grid--families .coveo-result-list-container {
  grid-template-columns: repeat(2, 1fr);
  grid-auto-flow: dense;
  width: 100%;
}
@media (max-width: 768px) {
  .category-page__search.CoveoSearchInterface .CoveoResultList[data-tab=peerlessCategoryLandingTabFamily] .coveo-result-list-container,
  .category-page__search.CoveoSearchInterface .CoveoResultList.category-page__grid--families .coveo-result-list-container {
    grid-template-columns: unset;
  }
}
.category-page__search.CoveoSearchInterface .CoveoResultList[data-tab=peerlessCategoryLandingTabFamily] .coveo-result-list-container .CoveoResult,
.category-page__search.CoveoSearchInterface .CoveoResultList.category-page__grid--families .coveo-result-list-container .CoveoResult {
  display: contents !important;
}
.category-page__search.CoveoSearchInterface .CoveoResultList[data-tab=peerlessCategoryLandingTabFamily] .coveo-result-list-container .CoveoResult .family-card__preview,
.category-page__search.CoveoSearchInterface .CoveoResultList.category-page__grid--families .coveo-result-list-container .CoveoResult .family-card__preview {
  margin-top: 16px;
}

.category-page__search.CoveoSearchInterface:not(.v2-search-peerless-products):not(.v2-search-peerless-families) .coveo-results-column .CoveoResultList:not(.coveo-hidden) {
  display: flex;
  gap: 0;
}

.category-page__search .category-filter-sidebar__filter-opt.coveo-selected .category-filter-sidebar__filter-opt-check i,
.category-page__search .search-results__filter-opt.coveo-selected .search-results__filter-opt-check i {
  visibility: visible !important;
}

.category-filter-sidebar__filter-opt .coveo-facet-value-label,
.category-filter-sidebar__filter-opt .coveo-facet-value-label-wrapper,
.search-results__filter-opt .coveo-facet-value-label,
.search-results__filter-opt .coveo-facet-value-label-wrapper {
  pointer-events: auto !important;
}

.category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container > div:not(.coveo-main-section),
.category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) {
  padding: 0;
  margin: 0;
}
.category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) section,
.category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) section {
  display: grid !important;
  gap: 28px !important;
  grid-template-columns: minmax(180px, 240px) 1fr !important;
}
.category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) section > div,
.category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) section > div {
  grid-column: 2;
}
.category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) section .category-page__count,
.category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) section .category-page__count {
  margin: 0;
}
.category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column,
.category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column {
  top: 0 !important;
}
.category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container .coveo-main-section .coveo-results-column .CoveoResultList,
.category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container .coveo-main-section .coveo-results-column .CoveoResultList {
  display: block;
}

.editorial-card:not(#related-projects) .v2-search-peerless-projects .coveo-main-section {
  max-width: 100%;
  margin: 0;
}
.editorial-card:not(#related-projects) .v2-search-peerless-projects .coveo-main-section .coveo-results-column {
  padding: 0;
}
.editorial-card:not(#related-projects) .v2-search-peerless-projects .coveo-main-section .coveo-results-column .CoveoResultList.content-carousel {
  margin: 0;
  height: 700px;
  background: radial-gradient(ellipse at left center, #005465, #0d6478, #1a738a 46%, #3392af 92%);
}
.editorial-card:not(#related-projects) .v2-search-peerless-projects .coveo-main-section .coveo-results-column .CoveoResultList.content-carousel .content-carousel__progress {
  bottom: 24px;
}
.editorial-card:not(#related-projects) .v2-search-peerless-projects .coveo-main-section .coveo-results-column .CoveoResultList.content-carousel .content-carousel__track {
  height: 644px;
  margin-left: 4rem;
  margin-right: 4rem;
}
.editorial-card:not(#related-projects) .v2-search-peerless-projects .coveo-main-section .coveo-results-column .CoveoResultList.content-carousel .content-carousel__track .CoveoResult .content-card {
  max-width: 75%;
}
.editorial-card:not(#related-projects):has(.v2-search-peerless-projects):not(:has(.CoveoResult)) {
  display: none;
}

.category-page__search .coveo-facet-column.product-filter__sidebar > div:not(.coveo-topSpace):not(.coveo-bottomSpace):not(.coveo-facet-header-filter-by-container).category-filter-sidebar__footer {
  display: none !important;
}

@media (max-width: 960px) {
  .category-page__grid {
    --grid-cols: 2;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section.product-filter__body {
    --grid-cols: 2;
  }
}
@media (max-width: 768px) {
  .category-page .CoveoResult .product-card__variants {
    gap: 4px;
  }
  .category-page .coveo-facet-column.product-filter__sidebar[data-state=expanded] > div:not(.coveo-topSpace):not(.coveo-bottomSpace):not(.coveo-facet-header-filter-by-container).category-filter-sidebar__footer {
    display: block !important;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1rem;
    background: var(--color-structural-cream-50, #ffffff);
  }
  .category-page .coveo-facet-column.product-filter__sidebar > div:not(.coveo-topSpace):not(.coveo-bottomSpace):not(.coveo-facet-header-filter-by-container):not(.category-filter-sidebar__footer):has(+ .category-filter-sidebar__footer) {
    margin-bottom: 4rem;
  }
  .category-page:has(.v2-search-peerless-families) .page-tabs-sticky {
    height: 0;
  }
  .category-page .category-page__body-wrap .category-page__grid {
    --grid-cols: 1;
    padding-inline: var(--space-4) !important;
  }
  .category-page__grid--categories .content-card, .category-page__grid--categories .content-card--compact, .category-page__grid--mounting .content-card, .category-page__grid--mounting .content-card--compact, .category-page__grid--light-distribution .content-card, .category-page__grid--light-distribution .content-card--compact {
    width: 100%;
    min-width: 0;
    aspect-ratio: 16/9;
  }
  .category-page__body {
    grid-template-columns: 1fr;
    --sidebar-col: 1fr;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section.product-filter__body {
    --grid-cols: 1;
    grid-template-columns: 100% !important;
  }
}
@media (max-width: 480px) {
  .category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container {
    padding-inline: var(--layout-padding) !important;
    gap: var(--space-6);
  }
  .category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) > section {
    flex-direction: column;
    align-items: flex-start;
    margin-block-end: 0;
  }
  .category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) > section .container-fluid {
    grid-column: 1;
  }
  .category-page__search.CoveoSearchInterface.v2-search-peerless-products .coveo-for-sitecore-frame-container > div:not(.coveo-main-section) > section .container-fluid .category-page__count {
    margin-bottom: var(--space-4);
  }
}
@media (max-width: 600px) {
  .category-filter-sidebar {
    position: static;
    width: 100%;
    top: auto;
  }
  .category-filter-sidebar__toggle {
    display: inline-flex;
  }
  .category-filter-sidebar[data-state=collapsed] .category-filter-sidebar__toggle span {
    display: inline;
  }
}
@media (max-width: 768px) {
  .category-filter-sidebar[data-state=expanded] {
    position: fixed;
    top: var(--filter-sheet-top, var(--header-size, 64px));
    right: 0;
    bottom: auto;
    left: 0;
    z-index: 50;
    width: 100%;
    max-width: none;
    height: var(--filter-sheet-height, calc(100svh - var(--header-size, 64px)));
    min-height: 0;
    background: var(--color-structural-cream-50, #ffffff);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: var(--space-5) var(--layout-padding, var(--space-4));
    box-shadow: none;
    display: flex;
    flex-direction: column;
  }
}
@media (min-width: 600px) {
  .category-filter-sidebar[data-hide-toggle=true] .category-filter-sidebar__toggle {
    display: none;
  }
  .category-filter-sidebar[data-hide-toggle=true] .category-filter-sidebar__toolbar {
    margin-bottom: 0;
  }
  .category-filter-sidebar[data-hide-toggle=true] .category-filter-sidebar__toolbar:has(.category-filter-sidebar__clear-all:not([hidden])) {
    margin-bottom: var(--space-4);
  }
}
@media (prefers-reduced-motion: reduce) {
  .category-filter-sidebar__filter-cat-btn i, .category-filter-sidebar__filter-cat-options {
    transition: none;
  }
}
.product-filter .category-filter-sidebar__toolbar {
  display: none;
}

.category-page__search.CoveoSearchInterface .category-filter-sidebar-toggle,
.category-page__search.CoveoSearchInterface .category-filter-sidebar-toggle {
  display: none;
  align-items: center;
  gap: var(--space-2);
  width: 200px;
  background: none;
  border-width: medium;
  border-style: none;
  border-color: currentcolor;
  border-image: initial;
  color: var(--color-structural-black-500);
  font-family: var(--font-mono);
  font-size: 0.875rem;
  font-weight: 400;
  cursor: pointer;
  padding: var(--space-1) 0;
  white-space: nowrap;
}

.category-filter-sidebar-toggle .fa-bars-filter {
  font-size: 1rem;
}

.coveo-dropdown-header-wrapper {
  display: none !important;
}

@media (max-width: 768px) {
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .category-filter-sidebar[data-state=collapsed] {
    max-height: 24px !important;
    overflow: hidden !important;
    width: 100% !important;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .category-filter-sidebar[data-state=collapsed] > div:not(.coveo-topSpace):not(.coveo-bottomSpace):not(.coveo-facet-header-filter-by-container):not(.category-filter-sidebar__footer):not(:has(.CoveoBreadcrumb)) {
    display: none !important;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .category-filter-sidebar[data-state=collapsed] > div:has(.CoveoBreadcrumb) {
    margin-bottom: 0 !important;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .category-filter-sidebar-toggle {
    display: inline-flex;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .category-filter-sidebar[data-state=expanded] {
    --filter-sheet-top: 128px;
    --filter-sheet-height: 570px;
    position: fixed !important;
    top: var(--filter-sheet-top, var(--header-size, 64px)) !important;
    right: 0;
    bottom: auto;
    left: 0;
    z-index: 50;
    width: 100% !important;
    max-width: none;
    height: var(--filter-sheet-height, calc(100svh - var(--header-size, 64px)));
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    padding: var(--space-5) var(--layout-padding, var(--space-4)) !important;
    box-shadow: none;
    background: var(--color-structural-cream-50, #ffffff);
    color: var(--color-structural-black-500);
    min-height: calc(100vh - 128px);
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .category-filter-sidebar[data-state=expanded] .coveo-breadcrumb-clear-all {
    font-size: 0.875rem;
    display: none;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column.product-filter__sidebar > div:not(.coveo-topSpace):not(.coveo-bottomSpace):not(.coveo-facet-header-filter-by-container):has(.coveo-facet-values:empty):not(.category-filter-sidebar__footer) {
    display: none !important;
  }
  .category-page__search.CoveoSearchInterface .coveo-for-sitecore-frame-container .coveo-main-section .coveo-facet-column.product-filter__sidebar > div:has(.CoveoBreadcrumb) {
    width: fit-content;
    justify-self: end;
    margin-bottom: var(--space-4);
    margin-left: auto;
  }
  .category-page[data-filters-open] .category-filter-sidebar__footer, .product-filter[data-filters-open] .category-filter-sidebar__footer {
    display: block;
    position: sticky;
    bottom: 0;
    z-index: 1;
    margin-top: auto;
    padding-top: var(--space-4);
    padding-bottom: var(--space-2);
    background: var(--color-structural-cream-50, #ffffff);
  }
  .product-filter__sidebar[data-filters-open] .category-filter-sidebar__footer {
    display: block;
    position: sticky;
    top: 100%;
    bottom: 0;
    z-index: 1;
    margin-top: auto;
    padding-top: var(--space-4);
    padding-bottom: var(--space-2);
    background: var(--color-structural-cream-50, #ffffff);
  }
  .coveo-for-sitecore-frame-container:has(.product-filter__sidebar[data-state=expanded]) .no-background-color-content-area {
    padding-top: 10px;
  }
  .coveo-for-sitecore-frame-container:has(.product-filter__sidebar[data-state=expanded]) .kw-filter-tabs-row .product-filter__filter-toggle {
    padding-top: calc(var(--space-2) - 5px);
    padding-left: 0;
  }
  .category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container {
    padding-inline: var(--space-4) !important;
  }
  .category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container .coveo-main-section .category-filter-sidebar[data-state=collapsed] {
    max-height: 64px !important;
  }
  .category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container .coveo-main-section .CoveoResultList.category-page__grid--families {
    margin: 0;
  }
  .category-page__search.CoveoSearchInterface.v2-search-peerless-families .coveo-for-sitecore-frame-container .coveo-main-section .CoveoResultList.category-page__grid--families .coveo-result-list-container {
    grid-template-columns: 1fr;
  }
}
/** Mega Nav Product Cards */
#megaMenuProductCards {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  margin: 40px;
}
#megaMenuProductCards .product-card__overlay a {
  overflow: hidden;
}
#megaMenuProductCards .product-card__overlay-body {
  overflow: auto;
}

/** Heroes -- Hero Peerless */
.category-page .cover-hero__content,
.story-article .cover-hero__content {
  display: contents;
}

.cover-hero__content .story-article__hero-shell {
  z-index: 2;
}
.cover-hero__content .title-group__eyebrow {
  font-family: var(--font-sans);
  font-size: clamp(0.95rem, 1.35vw, 1.25rem);
  letter-spacing: 0;
  text-transform: none;
  margin-bottom: var(--space-1);
}

/** Heroes -- Hero With Cards Module */
.family-landing-hero img.content-card__icon-img {
  max-height: 30px;
  max-width: 30px;
}

.explore-content-area {
  /* Options hidden by faceted narrowing (app.gallery.js syncFilterUi) */
}
.explore-content-area .explore-content-area__dropdown-item[hidden] {
  display: none !important;
}

.reveal-card__title-group.title-group--text-structural-light {
  --title-group-text-color: var(--text-on-dark);
}

/* Restore the base .type-label size on media title-group eyebrows; the
   enlarging rule in explore-build.css is dead on the Astro site (unmatched
   [data-astro-cid] scoping), so the vendor site renders the base size. */
.reveal-card .reveal-card__title-group--media .type-label {
  font-size: clamp(0.64rem, var(--fluid-unit) * 0.3 + 0.5rem, 0.8rem);
  line-height: inherit;
}

/** PDP About Component */
.billboard .billboard__body {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.7;
  margin: 0 0 24px;
}

@media (max-width: 960px) {
  .context-nav-bar {
    will-change: auto;
  }
}
.pdp-docs__cat-selection-action:disabled,
.pdp-docs__photometry-selection-action:disabled {
  --btn-color: color-mix(in srgb, var(--color-structural-black-500) 45%, transparent);
  border-color: transparent;
  color: var(--btn-color);
  cursor: not-allowed;
  pointer-events: none;
}

@media (max-width: 960px) {
  .pdp-docs__row-download {
    display: none;
  }
  .pdp-docs__cat-selection-action--download {
    display: none;
  }
}
.pdp-docs__photometry-selection-label--mobile {
  display: none;
}

@media (max-width: 960px) {
  .pdp-docs__photometry-selection-label--desktop {
    display: none;
  }
  .pdp-docs__photometry-selection-label--mobile {
    display: inline;
  }
}
.pdp-docs__photometry-content .search-results__options {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  margin-bottom: 8px;
}

.pdp-docs__photometry-content .search-results__options__results {
  margin-bottom: 0;
}

.pdp-docs__photometry-selection-actions {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
}

@media (max-width: 575px) {
  .pdp-docs__photometry-content .search-results__options {
    align-items: flex-start;
    flex-direction: column;
  }
}
/** Rich Text Peerless — theme background + text color */
/** Note: background and text color mapping referenced from vendor code: _navbar.scss */
.rich-text--theme-blue-alliance {
  background: var(--color-blue-alliance-500, #005465);
  color: var(--text-on-brand, #fff);
}
.rich-text--theme-blue-reliance {
  background: var(--color-blue-reliance-500, #48cef7);
  color: var(--text-on-surface, var(--color-structural-black-500, #0f121d));
}
.rich-text--theme-ignition-green {
  background: var(--color-green-400, #005941);
  color: var(--text-on-brand, #fff);
}
.rich-text--theme-flash-orange {
  background: var(--color-orange-500, #ff5c00);
  color: var(--text-on-brand, #fff);
}
.rich-text--theme-playleaf {
  background: var(--color-lime-500, #c6dc19);
  color: var(--text-on-lime, var(--color-structural-black-500, #0f121d));
}
.rich-text--theme-momentum-red {
  background: var(--bg-momentum-red, var(--color-red-500, #a80000));
  color: var(--text-on-brand, #fff);
}
.rich-text--theme-structural-blue {
  background: var(--color-structural-blue-500, #0061fe);
  color: var(--text-on-brand, #fff);
}
.rich-text--theme-structural-black {
  background: var(--color-structural-black-400, #202938);
  color: var(--text-on-brand, #fff);
}
.rich-text--theme-structural-cream {
  background: var(--color-structural-cream-500, #f5f2ec);
  color: var(--text-on-surface, var(--color-structural-black-500, #0f121d));
}
.rich-text--theme-white {
  background: var(--color-structural-cream-50, #fff);
  color: var(--text-on-surface, var(--color-structural-black-500, #0f121d));
}

/* Peerless RTE — font weights */
.peerless-weight-400 {
  font-weight: 400;
}

.peerless-weight-700 {
  font-weight: 700;
}

/* Peerless RTE — exact font sizes */
.peerless-size-10 {
  font-size: 10px;
}

.peerless-size-13 {
  font-size: 13px;
}

.peerless-size-16 {
  font-size: 16px;
}

.peerless-size-18 {
  font-size: 18px;
}

.peerless-size-22 {
  font-size: 22px;
}

.peerless-size-30 {
  font-size: 30px;
}

.peerless-size-90 {
  font-size: 90px;
}

/* Peerless RTE — quote icon (IsQuote rendering parameter) */
.rich-text--quote .rich-text__content {
  position: relative;
  padding-left: 2.75rem;
}
.rich-text--quote .rich-text__quote-icon {
  color: currentColor;
  line-height: 1;
}
.rich-text--quote .rich-text__quote-icon--open {
  position: absolute;
  left: 0;
  top: 0.1em;
  font-size: 1.5rem;
}
.rich-text--quote .rich-text__quote-icon--close {
  display: inline;
  margin-left: 0.4rem;
  font-size: 1.5rem;
  vertical-align: -0.15em;
  white-space: nowrap;
}
.rich-text--quote .rich-text__content br:has(+ .rich-text__quote-icon--close) {
  display: none;
}

/** Sitecore content cards */
.content-cards__grid .content-card {
  --cc-radius: 0;
  --cc-text: var(--color-structural-cream-50, #ffffff);
  --cc-bg: var(--color-structural-black-500, #111);
  --cc-fade-from: rgba(0, 0, 0, 0);
  --cc-fade-to: rgba(0, 0, 0, .7);
  --cc-pad: var(--space-6, 24px);
  --cc-body-pad-block: var(--space-8, 32px);
  --cc-body-pad-inline: var(--space-8, 32px);
  --cc-bg-translucent: rgba(7, 55, 40, 0.55);
  --cc-text-translucent: rgba(255, 255, 255, 0.92);
  --cc-border-translucent: rgba(255, 255, 255, 0.14);
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  isolation: isolate;
  border-radius: var(--cc-radius);
  background: var(--cc-bg);
  color: var(--cc-text);
  text-decoration: none;
  transition: transform 0.4s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.content-cards__grid .content-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.content-cards__grid .content-card__media {
  position: absolute;
  inset: 0;
  margin: 0;
  overflow: hidden;
}
.content-cards__grid .content-card__gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, var(--cc-fade-from) 40%, var(--cc-fade-to) 100%);
  pointer-events: none;
}
.content-cards__grid .content-card__display {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  padding: var(--cc-pad);
}
.content-cards__grid .content-card__display-content {
  width: min(clamp(100px, 22%, 180px), 100%);
  max-height: 100%;
  aspect-ratio: 1;
  background: #fff;
  display: grid;
  place-items: center;
  padding: var(--space-3, 12px);
}
.content-cards__grid .content-card__display-content img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.content-cards__grid .content-card__body {
  position: relative;
  z-index: 2;
  margin-top: 0;
  padding: var(--cc-body-pad-block) var(--cc-body-pad-inline);
  display: flex;
  flex-direction: column;
  gap: var(--space-2, 8px);
}
.content-cards__grid .content-card__eyebrow {
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.85;
}
.content-cards__grid .content-card__title {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(1.125rem, var(--fluid-unit, 1vw) * 0.6 + 0.75rem, 1.375rem);
  line-height: 1.2;
  letter-spacing: -0.01em;
  display: flex;
  align-items: baseline;
  gap: var(--space-2, 8px);
  flex-wrap: nowrap;
}
.content-cards__grid .content-card__title-text {
  flex: 0 1 auto;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.content-cards__grid .content-card__arrow {
  flex: 0 0 auto;
  font-size: 0.8rem;
  font-weight: 500;
  padding-left: var(--space-2);
  display: inline-flex;
  align-items: center;
  line-height: 1;
  position: relative;
  transform: translateY(-0.26em);
  transition: transform 0.25s ease, color 0.25s ease;
}
.content-cards__grid .content-card__desc {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 0.875rem;
  line-height: 1.45;
  opacity: 0.85;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.content-cards__grid .content-card:where(a):hover .content-cards__grid .content-card__image {
  transform: scale(1.04);
}
.content-cards__grid .content-card:where(a):hover .content-cards__grid .content-card__arrow {
  transform: translateY(-0.26em) rotate(45deg);
}
.content-cards__grid .content-card:where(a):focus-visible {
  outline: 2px solid var(--color-structural-blue-cta, #1f6feb);
  outline-offset: 3px;
}
.content-cards__grid .content-card--ratio-16-10 {
  aspect-ratio: 16/10;
}
.content-cards__grid .content-card--ratio-1-1 {
  aspect-ratio: 1/1;
}
.content-cards__grid .content-card--no-aspect-ratio {
  aspect-ratio: unset;
}
.content-cards__grid .content-card.has-title-gradient .content-card__title-text {
  background: linear-gradient(131deg, #c6dc19, #fff);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
.content-cards__grid .content-card--body-pad-extra {
  --cc-body-pad-inline: var(--space-16, 64px);
}
.content-cards__grid .content-card--compact {
  --cc-fade-from: rgba(0, 0, 0, 0);
  --cc-fade-to: rgba(0, 0, 0, .75);
  overflow: hidden;
}
.content-cards__grid .content-card--compact .content-card__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.content-cards__grid .content-card--compact .content-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.content-cards__grid .content-card--compact .content-card__body {
  position: absolute;
  bottom: var(--space-4, 16px);
  left: var(--space-4, 16px);
  right: var(--space-4, 16px);
  margin-top: 0;
  padding: var(--space-2, 8px) 0;
}
.content-cards__grid .content-card--compact .content-card__title {
  color: var(--cc-text);
}
.content-cards__grid .content-card--compact .content-card__eyebrow {
  color: var(--cc-text);
  opacity: 0.85;
}
.content-cards__grid .content-card--compact.content-card--no-aspect-ratio {
  aspect-ratio: unset;
  width: 100%;
  height: 100%;
  min-height: 0;
}
.content-cards__grid .content-card--spotlight {
  --cc-fade-from: rgba(0, 0, 0, 0);
  --cc-fade-to: rgba(0, 0, 0, .75);
}
.content-cards__grid .content-card--spotlight.content-card--has-display-content {
  --cc-bg: var(--color-structural-black-400, #2b2b2b);
}
.content-cards__grid .content-card--spotlight.content-card--has-display-content .content-card__image {
  opacity: 0.55;
  filter: blur(2px);
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight {
  --awards-badge-inset: 10px;
  --awards-badge-size: min(20%, 78px);
  --awards-copy-reserved-width: 0px;
  overflow: hidden;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight .content-card__image {
  opacity: 1;
  filter: none;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight .content-card__gradient {
  background: linear-gradient(to top, rgba(15, 18, 29, 0.72) 0%, rgba(15, 18, 29, 0.34) 58%, rgba(15, 18, 29, 0) 100%);
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight.content-card--has-display-content {
  --awards-copy-reserved-width: calc(var(--awards-badge-inset) + var(--awards-badge-size));
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight.content-card--has-display-content .content-card__display {
  position: absolute;
  bottom: var(--awards-badge-inset);
  right: var(--awards-badge-inset);
  top: auto;
  left: auto;
  z-index: 3;
  width: var(--awards-badge-size);
  aspect-ratio: 1;
  padding: 0;
  transform: none;
  pointer-events: none;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight.content-card--has-display-content .content-card__display-content {
  width: 100%;
  height: 100%;
  background: #fff;
  padding: 1px;
  box-shadow: 0 4px 12px rgba(15, 18, 29, 0.28);
  overflow: hidden;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight.content-card--has-display-content .content-card__display-content img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(1.08);
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight .content-card__body {
  position: absolute;
  inset: auto var(--awards-copy-reserved-width) 0 0;
  min-height: 42%;
  z-index: 2;
  justify-content: flex-end;
  padding: var(--space-10) var(--space-6) var(--space-6);
  background: none;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight .content-card__title-group {
  max-width: 24ch;
  gap: var(--space-1);
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight .content-card__eyebrow {
  font-size: 0.6875rem;
  letter-spacing: 0.12em;
  opacity: 1;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight .content-card__title {
  font-size: clamp(0.95rem, 1.35vw, 1.22rem);
  line-height: 1.08;
  letter-spacing: -0.02em;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight .content-card__arrow {
  font-size: 0.9em;
  transform: translateY(-0.12em);
  transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), color 0.28s ease;
}
.content-cards__grid .content-card--award-spotlight.content-card--spotlight:hover .content-card__arrow, .content-cards__grid .content-card--award-spotlight.content-card--spotlight:focus-visible .content-card__arrow {
  transform: translateX(2px) translateY(-0.12em) rotate(45deg);
}
.content-cards__grid .content-card--editorial {
  --cc-bg: var(--color-green-500, #154734);
  --cc-text: var(--color-structural-cream-50, #ffffff);
  --cc-pad: var(--space-8, 32px);
}
.content-cards__grid .content-card--editorial .content-card__icon {
  font-size: 1.5rem;
  color: currentColor;
  flex: 0 0 auto;
  margin-bottom: var(--space-1, 4px);
}
.content-cards__grid .content-card--editorial .content-card__title {
  font-size: clamp(1.5rem, var(--fluid-unit, 1vw) + 1rem, 2.25rem);
  font-weight: 400;
}
.content-cards__grid .content-card--editorial .content-card__body {
  margin-top: 0;
  height: 100%;
  justify-content: center;
}
.content-cards__grid .content-card--editorial .content-card__desc {
  font-size: 1rem;
  opacity: 0.9;
  max-width: 38ch;
}
.content-cards__grid .content-card--editorial.is-translucent {
  background: var(--cc-bg-translucent);
  color: var(--cc-text-translucent);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid var(--cc-border-translucent);
}
.content-cards__grid .content-card--editorial.is-translucent.is-translucent-default {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.content-cards__grid .content-card--editorial-color-ignition-green {
  --cc-bg: var(--color-green-500, #073728);
  --cc-text: var(--color-lime-500, #c6dc19);
}
.content-cards__grid .content-card--editorial-color-blue-alliance {
  --cc-bg: var(--color-blue-alliance-500, #005465);
  --cc-text: var(--color-lime-500, #c6dc19);
}
.content-cards__grid .content-card--editorial-color-blue-reliance {
  --cc-bg: var(--color-blue-reliance-500, #48cef7);
  --cc-text: var(--color-structural-black-500, #0f121d);
}
.content-cards__grid .content-card--editorial-color-playleaf {
  --cc-bg: var(--color-lime-500, #c6dc19);
  --cc-text: var(--color-green-500, #073728);
}
.content-cards__grid .content-card--editorial-color-flash-orange {
  --cc-bg: var(--color-orange-500, #ff5c00);
  --cc-text: var(--color-green-500, #073728);
}
.content-cards__grid .content-card--editorial-color-momentum-red {
  --cc-bg: var(--color-red-500, #a80000);
  --cc-text: var(--color-structural-cream-50, #ffffff);
}
.content-cards__grid .content-card--editorial-color-structural-blue {
  --cc-bg: var(--color-structural-blue-500, #0061fe);
  --cc-text: var(--color-structural-cream-50, #ffffff);
}
.content-cards__grid .content-card--editorial-color-structural-black {
  --cc-bg: var(--color-structural-black-400, #202938);
  --cc-text: var(--color-structural-cream-50, #ffffff);
}
.content-cards__grid .content-card--editorial-color-structural-cream {
  --cc-bg: var(--color-structural-cream-500, #f5f2ec);
  --cc-text: var(--color-structural-black-500, #0f121d);
}
.content-cards__grid .content-card--editorial-color-midnight {
  --cc-bg: var(--color-structural-black-500, #0f121d);
  --cc-text: var(--color-structural-cream-50, #ffffff);
}
.content-cards__grid .content-card--standard {
  --cc-bg: var(--color-structural-black-500, #0f121d);
  --cc-text: var(--color-structural-cream-50, #ffffff);
  overflow: hidden;
}
.content-cards__grid .content-card--standard .content-card__meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3, 12px);
  width: 100%;
}
.content-cards__grid .content-card--standard .content-card__meta-item {
  font-family: var(--font-mono, "Space Mono", monospace);
  font-size: 1rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0.82;
  white-space: nowrap;
}
.content-cards__grid .content-card--standard.content-card--standard-body-third .content-card__media {
  aspect-ratio: 1/1;
}
.content-cards__grid .content-card--standard.content-card--standard-body-half .content-card__media {
  aspect-ratio: 2/1;
}
.content-cards__grid .content-card--standard .content-card__media {
  position: relative;
  inset: unset;
  width: 100%;
  flex: 0 0 auto;
  overflow: hidden;
}
.content-cards__grid .content-card--standard .content-card__media .content-card__gradient {
  display: none;
}
.content-cards__grid .content-card--standard .content-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.content-cards__grid .content-card--standard .content-card__body {
  flex: 0 0 auto;
  overflow: hidden;
  background: #fff;
  color: var(--cc-text);
  --cc-body-pad-block: var(--space-5, 20px);
  --cc-body-pad-inline: var(--space-6, 24px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.content-cards__grid .content-card--standard .content-card__title-group {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.content-cards__grid .content-card--standard .content-card__title .content-card__arrow {
  white-space: nowrap;
}
.content-cards__grid .content-card--standard .content-card__desc {
  font-size: 1rem;
  opacity: 0.85;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
.content-cards__grid .content-card--standard .content-card__cta {
  pointer-events: none;
  margin-top: auto;
  padding-top: var(--space-2, 8px);
}
.content-cards__grid .content-card--standard:hover .content-card__image, .content-cards__grid .content-card--standard:focus-visible .content-card__image {
  transform: scale(1.04);
}
.content-cards__grid .content-card--standard.content-card--standard-orientation-inline {
  flex-direction: row;
  align-items: stretch;
}
.content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__media {
  flex: 1 1 auto;
  aspect-ratio: unset;
  min-height: 100%;
}
.content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__body {
  flex: 0 0 clamp(360px, 34%, 620px);
  aspect-ratio: unset;
  min-height: fit-content;
  justify-content: flex-start;
  gap: var(--space-5, 20px);
  --cc-body-pad-block: var(--space-8, 32px);
  --cc-body-pad-inline: var(--space-8, 32px);
}
.content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__title {
  align-items: flex-start;
}
.content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__title .content-card__arrow {
  font-size: 0.95rem;
  transform: translateY(0.1em);
}
.content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__desc {
  font-size: clamp(1.125rem, 0.95rem + 0.5vw, 1.5rem);
  line-height: 1.6;
  opacity: 1;
  -webkit-line-clamp: unset;
  line-clamp: unset;
  overflow: visible;
  max-width: 28ch;
}
.content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__cta {
  margin-top: auto;
  align-self: flex-end;
}
.content-cards__grid .content-card--standard-theme-playleaf {
  --cc-bg: var(--color-lime-500, #c6dc19);
  --cc-text: var(--color-green-500, #073728);
}
.content-cards__grid .content-card--standard-theme-flash-orange {
  --cc-bg: var(--color-orange-500, #ff5c00);
  --cc-text: var(--color-green-500, #073728);
}
.content-cards__grid .content-card--standard-theme-ignition-green {
  --cc-bg: var(--color-green-500, #073728);
  --cc-text: var(--color-lime-500, #c6dc19);
}
.content-cards__grid .content-card--standard-theme-blue-alliance {
  --cc-bg: var(--color-blue-alliance-500, #005465);
  --cc-text: var(--color-lime-500, #c6dc19);
}
.content-cards__grid .content-card--standard-theme-structural-dark {
  --cc-bg: var(--color-structural-black-500, #0f121d);
  --cc-text: var(--color-structural-cream-50, #ffffff);
}
.content-cards__grid .content-card--standard-theme-white {
  --cc-bg: var(--color-structural-cream-100, #f6f5ef);
  --cc-text: var(--color-structural-black-500, #0f121d);
}
.content-cards__grid .content-card--label {
  --cc-text: var(--color-structural-cream-50, #ffffff);
  cursor: pointer;
  background: var(--cc-bg);
  color: var(--cc-text);
}
.content-cards__grid .content-card--label .content-card__body {
  margin-top: auto;
  padding: var(--cc-body-pad-block) var(--cc-body-pad-inline);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  pointer-events: none;
}
.content-cards__grid .content-card--label .content-card__eyebrow {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
  opacity: 1;
}
.content-cards__grid .content-card--label .content-card__title {
  font-family: var(--font-sans);
  font-size: 1.375rem;
  font-weight: 400;
  color: currentColor;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: nowrap;
}
.content-cards__grid .content-card--label .content-card__arrow {
  font-size: 0.875rem;
}
.content-cards__grid .content-card--label .content-card__meta {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
}
.content-cards__grid .content-card--label:hover .content-card__title {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.content-cards__grid .content-card--label:hover .content-card__arrow {
  transform: translateX(2px) translateY(-0.26em) rotate(45deg);
}
.content-cards__grid .content-card--thumbnail {
  cursor: pointer;
}
.content-cards__grid .content-card--thumbnail > .content-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}
.content-cards__grid .content-card--thumbnail:after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 55%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
  pointer-events: none;
  z-index: 1;
}
.content-cards__grid .content-card--thumbnail .content-card__body {
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding: var(--cc-body-pad-block) var(--cc-body-pad-inline);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  pointer-events: none;
}
.content-cards__grid .content-card--thumbnail .content-card__eyebrow {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
  opacity: 1;
}
.content-cards__grid .content-card--thumbnail .content-card__title {
  font-family: var(--font-sans);
  font-size: 1.375rem;
  font-weight: 400;
  color: white;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: nowrap;
}
.content-cards__grid .content-card--thumbnail .content-card__arrow {
  font-size: 0.875rem;
}
.content-cards__grid .content-card--thumbnail .content-card__meta {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
}
.content-cards__grid .content-card--thumbnail:hover > .content-card__image {
  transform: none;
}
.content-cards__grid .content-card--thumbnail:hover .content-card__arrow {
  transform: translateY(-0.26em);
}
.content-cards__grid .content-card--contact {
  display: grid;
  align-content: start;
  width: 100%;
  max-width: 100%;
  min-height: 100%;
  border-radius: 0;
  background: rgba(15, 18, 29, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(2px);
  color: #fff;
  box-shadow: none;
  overflow: hidden;
}
.content-cards__grid .content-card--contact .content-card__contact-body {
  display: grid;
  align-content: start;
  gap: var(--space-3);
  padding: var(--space-8) var(--space-6) var(--space-7);
}
.content-cards__grid .content-card--contact .content-card__contact-name {
  margin: 0;
  font-family: var(--font-family-secondary);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: #fff;
}
.content-cards__grid .content-card--contact .content-card__contact-role,
.content-cards__grid .content-card--contact .content-card__contact-region {
  margin: 0;
  font-family: var(--font-family-secondary);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.3;
  color: #fff;
}
.content-cards__grid .content-card--contact .content-card__contact-region {
  margin: 0 0 var(--space-2);
  color: rgba(255, 255, 255, 0.55);
}
.content-cards__grid .content-card--contact .content-card__contact-link-row {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  min-height: 2rem;
  width: fit-content;
  text-decoration: none;
  color: #fff;
}
.content-cards__grid .content-card--contact .content-card__contact-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}
.content-cards__grid .content-card--contact .content-card__contact-value {
  font-family: var(--font-family-secondary);
  font-size: 14px;
  line-height: 1.3;
  color: #fff;
  white-space: nowrap;
}
.content-cards__grid .content-card--contact .content-card__contact-arrow {
  margin-left: var(--space-1);
  transition: transform 0.3s ease;
  transform-origin: center;
}
.content-cards__grid .content-card--contact .content-card__contact-link-row:hover .content-card__contact-arrow,
.content-cards__grid .content-card--contact .content-card__contact-link-row:focus-visible .content-card__contact-arrow {
  transform: rotate(45deg);
}
@media (max-width: 767px) {
  .content-cards__grid .content-card--contact {
    max-width: 100%;
    min-height: auto;
    height: auto;
  }
  .content-cards__grid .content-card--contact .content-card__contact-body {
    padding: var(--space-5) var(--space-4) var(--space-6);
  }
  .content-cards__grid .content-card--contact .content-card__contact-role,
  .content-cards__grid .content-card--contact .content-card__contact-region,
  .content-cards__grid .content-card--contact .content-card__contact-value {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .content-cards__grid .content-card {
    --cc-body-pad-block: var(--space-5, 20px);
    --cc-body-pad-inline: var(--space-5, 20px);
  }
  .content-cards__grid .content-card .content-card__title {
    font-size: clamp(1rem, 0.9rem + 0.5vw, 1.2rem);
    line-height: 1.18;
  }
  .content-cards__grid .content-card .content-card__desc {
    font-size: clamp(0.8125rem, 0.76rem + 0.25vw, 0.9375rem);
    line-height: 1.4;
  }
  .content-cards__grid .content-card--standard .content-card__meta-item {
    font-size: 0.8125rem;
    letter-spacing: 0.03em;
  }
  .content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__body {
    --cc-body-pad-block: var(--space-6, 24px);
    --cc-body-pad-inline: var(--space-6, 24px);
  }
  .content-cards__grid .content-card--standard.content-card--standard-orientation-inline .content-card__desc {
    max-width: 100%;
  }
  .content-cards__grid .content-card--thumbnail .content-card__title,
  .content-cards__grid .content-card--label .content-card__title {
    font-size: clamp(1.05rem, 0.95rem + 0.45vw, 1.2rem);
  }
}

/** Content Cards */
.content-cards__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: var(--space-6);
  row-gap: var(--space-7);
  margin: 20px 8%;
}
.content-cards__grid.content-cards__grid--under-three {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 430px), 430px));
  justify-content: center;
}
.content-cards__grid:not(.content-cards__grid--under-three) > .content-card:nth-child(3n+1):last-child {
  transform: translateX(calc(100% + var(--space-6)));
}
.content-cards__grid:not(.content-cards__grid--under-three) > .content-card:nth-child(3n+1):nth-last-child(2),
.content-cards__grid:not(.content-cards__grid--under-three) > .content-card:nth-child(3n+2):last-child {
  transform: translateX(calc((100% + var(--space-6)) / 2));
}
.content-cards__grid .content-card {
  min-height: 250px;
}
.content-cards__grid .content-card.content-card--spotlight {
  min-height: auto;
}
.content-cards__grid .content-card__contact-icon {
  color: var(--color-blue-alliance-300);
}
@media (max-width: 767px) {
  .content-cards__grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin: 20px 5%;
  }
  .content-cards__grid:not(.content-cards__grid--under-three) > .content-card:nth-child(3n+1):last-child,
  .content-cards__grid:not(.content-cards__grid--under-three) > .content-card:nth-child(3n+1):nth-last-child(2),
  .content-cards__grid:not(.content-cards__grid--under-three) > .content-card:nth-child(3n+2):last-child {
    transform: none;
  }
}

/** START How to buy */
#how-to-buy-container.location-map {
  background: transparent;
  padding: 80px 5%;
  width: 100%;
  box-sizing: border-box;
}

#how-to-buy-container .row {
  display: grid;
  grid-template-columns: minmax(380px, 520px) 1fr;
  gap: 40px;
  max-width: 1400px;
  margin: 0 auto;
  align-items: start;
}

#how-to-buy-container .options {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid #d5d0cb;
  padding: 32px 28px;
  background: #fff;
}

#how-to-buy-container .options h2 {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 400;
  line-height: 1.1;
  color: #1a1a1a;
  margin: 0 0 16px 0;
  padding-bottom: 16px;
  border-bottom: 2px solid #1a1a1a;
}

#how-to-buy-container .filterby {
  display: flex;
  flex-direction: column;
  gap: 0;
}

#how-to-buy-container .filterby .title {
  font-family: "Space Mono Regular", monospace;
  font-size: 0.7rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #555;
  padding: 16px 0 12px;
  margin-bottom: 0;
}

#how-to-buy-container .filter-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 12px;
  border: 1px solid #d5d0cb;
  border-bottom: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

#how-to-buy-container .filter-row:last-child {
  border-bottom: 1px solid #d5d0cb;
}

#how-to-buy-container .filter-row:hover {
  background-color: #f9f7f5;
}

#how-to-buy-container .filter-row.selected {
  background-color: #f0edea;
}

#how-to-buy-container .filter-row .icon {
  flex-shrink: 0;
  width: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  order: 0;
}

#how-to-buy-container .filter-row .icon svg {
  width: 18px;
  height: 24px;
}

/* Color-coded pin icons — matched by data-type attribute */
#how-to-buy-container .filter-row[data-type*="U.S."] .icon svg path {
  fill: #ff5c00;
}

#how-to-buy-container .filter-row[data-type*=Canada] .icon svg path {
  fill: #0061fe;
}

#how-to-buy-container .filter-row[data-type*=International] .icon svg path {
  fill: #005941;
}

#how-to-buy-container .filter-row[data-type*=Mexico] .icon svg path {
  fill: #a80000;
}

/* Reorder: icon (0) → radio (1) → name (2) */
#how-to-buy-container .filter-row .name {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.95rem;
  color: #333;
  flex: 1;
  order: 2 !important;
}

/* Radio button — custom styled, reordered, override inline hiding */
#how-to-buy-container .filter-row input[type=radio] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 1.5px solid #bbb;
  border-radius: 50%;
  flex-shrink: 0;
  position: relative !important;
  cursor: pointer;
  transition: border-color 0.2s ease;
  left: auto !important;
  margin: 0;
  background: #fff;
  order: 1 !important;
}

#how-to-buy-container .filter-row input[type=radio]:checked {
  border-color: #1a1a1a;
}

#how-to-buy-container .filter-row input[type=radio]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  background: #1a1a1a;
  border-radius: 50%;
}

/* Search area — always-visible simple search bar */
#how-to-buy-container .searchby {
  margin-top: 16px;
  border-top: 1px solid #d5d0cb;
  padding-top: 12px;
}

#how-to-buy-container .search-dropdown {
  border: 1px solid #d5d0cb;
  border-radius: 0;
  padding: 0;
  position: relative;
  background: #fff;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 12px;
}

#how-to-buy-container .search-dropdown .selected-search-type {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.9rem;
  padding: 12px 16px;
  color: #333;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#how-to-buy-container .search-dropdown > svg {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

#how-to-buy-container .search-dropdown svg path {
  stroke: #666;
}

#how-to-buy-container .search-dropdown ul {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 1px solid #eee;
  background: #fff;
  position: absolute;
  left: -1px;
  right: -1px;
  top: 100%;
  z-index: 100;
  max-height: 250px;
  overflow-y: auto;
  display: none;
  border: 1px solid #d5d0cb;
  border-top: none;
}

#how-to-buy-container .search-dropdown.open ul {
  display: block;
}

#how-to-buy-container .search-dropdown .dropdown-item {
  padding: 10px 16px;
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.85rem;
  color: #333;
  cursor: pointer;
  transition: background 0.15s ease;
}

#how-to-buy-container .search-dropdown .dropdown-item:hover {
  background: #f5f5f5;
}

/* Search input boxes */
#how-to-buy-container .search-more {
  margin-top: 0;
}

#how-to-buy-container .form-group.type-block {
  display: flex;
  align-items: stretch;
  border: 1px solid #d5d0cb;
  border-radius: 0;
  overflow: visible;
  background: #fff;
  transition: border-color 0.2s ease;
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

#how-to-buy-container .form-group.type-block:focus-within {
  border-color: #1a1a1a;
}

#how-to-buy-container .form-group .form-control {
  flex: 1;
  min-height: 58px;
  border: none;
  padding: 0 16px;
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.95rem;
  outline: none;
  background: transparent;
  color: #333;
  box-sizing: border-box;
}

#how-to-buy-container .form-group .form-control::placeholder {
  color: #999;
}

/* Search button — light tinted square, matches Luminis proportions */
#how-to-buy-container .search-button {
  flex-shrink: 0;
  width: 58px;
  min-height: 58px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f0ede8;
  border-left: 1px solid #d5d0cb;
  border-radius: 0;
  transition: background 0.2s ease;
}

#how-to-buy-container .search-button:hover {
  background: #fff;
}

#how-to-buy-container .search-button img {
  width: 22px;
  height: 22px;
  filter: none;
  opacity: 1;
}

/* Sub-dropdown (state/province/radius) */
#how-to-buy-container .sub-dropdown {
  position: relative;
  flex: 1;
  border-left: 1px solid #d5d0cb;
  cursor: pointer;
}

#how-to-buy-container .sub-dropdown .selected-sub {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.9rem;
  min-height: 58px;
  padding: 10px 32px 10px 16px;
  color: #666;
  white-space: normal;
  line-height: 1.3;
  display: flex;
  align-items: center;
  gap: 8px;
  box-sizing: border-box;
}

#how-to-buy-container .sub-dropdown .selected-sub.changed {
  color: #333;
}

#how-to-buy-container .sub-dropdown svg {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 6px;
  flex-shrink: 0;
  pointer-events: none;
  transition: transform 0.2s ease;
}

#how-to-buy-container .sub-dropdown.open svg {
  transform: translateY(-50%) rotate(180deg);
}

#how-to-buy-container .sub-dropdown svg path {
  stroke: #666;
}

/* City/State and City/Province — separate bordered fields with gaps, matching Luminis layout */
#how-to-buy-container #city-state-searchbox.type-block,
#how-to-buy-container #city-province-searchbox.type-block {
  gap: 12px;
  border: none;
  background: transparent;
}

#how-to-buy-container #city-state-searchbox .form-control,
#how-to-buy-container #city-province-searchbox .form-control {
  border: 1px solid #d5d0cb;
  background: #fff;
  font-size: 0.85rem;
  flex: 0 1 calc(50% - 20px);
}

#how-to-buy-container #city-state-searchbox .sub-dropdown,
#how-to-buy-container #city-province-searchbox .sub-dropdown {
  border: 1px solid #d5d0cb;
  border-left: 1px solid #d5d0cb;
  background: #fff;
}

#how-to-buy-container #city-state-searchbox .sub-dropdown .selected-sub,
#how-to-buy-container #city-province-searchbox .sub-dropdown .selected-sub {
  font-size: 0.85rem;
}

#how-to-buy-container #city-state-searchbox .search-button,
#how-to-buy-container #city-province-searchbox .search-button {
  border: 1px solid #d5d0cb;
}

/* State-only / Province-only mode — hide the City field, sub-dropdown takes full width */
#how-to-buy-container #city-state-searchbox.state-only-mode .how-to-buy-2__search-input-city,
#how-to-buy-container #city-province-searchbox.province-only-mode .how-to-buy-2__search-input-city {
  display: none;
}

#how-to-buy-container #city-state-searchbox.state-only-mode .sub-dropdown,
#how-to-buy-container #city-province-searchbox.province-only-mode .sub-dropdown {
  flex: 1 1 auto;
}

#how-to-buy-container .sub-dropdown ul {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  min-width: 180px;
  background: #fff;
  border: 1px solid #d5d0cb;
  border-radius: 0;
  max-height: 200px;
  overflow-y: auto;
  z-index: 100;
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#how-to-buy-container .sub-dropdown.open ul {
  display: block;
}

#how-to-buy-container .sub-dropdown ul li {
  padding: 8px 16px;
  cursor: pointer;
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.85rem;
  color: #333;
}

#how-to-buy-container .sub-dropdown ul li:hover {
  background: #f5f5f5;
}

/* Messages */
#how-to-buy-container .how-to-buy-search-result-indicator {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.85rem;
  color: #666;
  padding: 8px 0;
}

/* Map panel */
#how-to-buy-container .map-container {
  border-radius: 0;
  overflow: hidden;
  min-height: 500px;
  background: #f5f5f5;
  position: sticky;
  top: 0;
}

/* Address list styling */
#how-to-buy-container .how-to-buy-2__list__addresses {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
}

#how-to-buy-container .how-to-buy-2__list__addresses li {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.85rem;
  color: #333;
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}

/* Responsive */
@media (max-width: 900px) {
  #how-to-buy-container .row {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  #how-to-buy-container .map-container {
    position: static;
    min-height: 400px;
  }
  #how-to-buy-container.location-map {
    padding: 60px 5%;
  }
}
@media (max-width: 600px) {
  #how-to-buy-container.location-map {
    padding: 40px 4%;
  }
  #how-to-buy-container .options h2 {
    font-size: 1.75rem;
  }
  #how-to-buy-container .options {
    padding: 24px 20px;
  }
}
/* Google Maps Info Window (pin card) */
.gm-style .gm-style-iw-c {
  border-radius: 8px !important;
  padding: 0 !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12) !important;
}

.gm-style .gm-style-iw-d {
  overflow: hidden !important;
  padding: 20px 24px !important;
}

.gm-style .gm-style-iw-c li {
  list-style: none;
  padding: 0;
  margin: 0;
}

.gm-style .gm-style-iw-c .place-name.list-business-name {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.95rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin-bottom: 6px;
}

.gm-style .gm-style-iw-c .address {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.82rem;
  color: #555;
  line-height: 1.6;
  margin: 2px 0;
}

.gm-style .gm-style-iw-c .address a.email {
  color: #2E86C1;
  text-decoration: none;
}

.gm-style .gm-style-iw-c .address a.email:hover {
  text-decoration: underline;
}

.gm-style .gm-style-iw-c .navigate {
  margin-top: 8px;
  padding-top: 4px;
}

.gm-style .gm-style-iw-c .navigate a {
  font-family: "Peerless Sans Regular", sans-serif;
  font-size: 0.82rem;
  color: #2E86C1;
  text-decoration: none;
}

.gm-style .gm-style-iw-c .navigate a:hover {
  text-decoration: underline;
}

.gm-style .gm-style-iw-c li.us-agents .list-business-name {
  color: #ff5c00;
}

.gm-style .gm-style-iw-c li.canada-agents .list-business-name {
  color: #0061fe;
}

.gm-style .gm-style-iw-c li.international-agents .list-business-name {
  color: #005941;
}

.gm-style .gm-style-iw-c li.mexico-agents .list-business-name {
  color: #a80000;
}

/** END How to buy */
/** PDP Discover Component */
.scene-explorer__youtube {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 56.25vw;
  min-width: 177.78vh;
  min-height: 100%;
  border: 0;
  opacity: 0;
  pointer-events: none;
  z-index: 2;
  transform: translate(-50%, -50%);
  transition: opacity 0.45s ease;
}
.scene-explorer__youtube.is-active {
  opacity: 1;
}

/** LeftRightImageCTAPeerless — full-bleed split backgrounds
    The shared .align-feature__text / .align-brochure__media rules in
    BaseLayout.css center content within the grid row (align-items: center)
    rather than stretching it, so a background color applied directly to
    those elements only wraps the content box instead of filling the full
    column height. These overrides stretch each half to the row's full
    height so Model.TextBackgroundColor / Model.ImageBackgroundColor read
    as full-bleed color blocks, while keeping their inner content centered. */
.align-brochure .align-feature__text {
  align-self: stretch;
  align-content: center;
  max-width: none;
  padding-block: var(--space-8);
  padding-inline-start: var(--space-16);
  padding-inline-end: var(--space-6);
}

/* .align-feature__text's own max-width: 52ch (for readable line length) was
   capping the full-bleed background too, since the color lives on that same
   element — leaving a blank gap between the text color block and the media
   column. Move the readability cap onto the inner .title-group instead, so
   the background can stretch the full column width while the text content
   itself still wraps at a comfortable measure. */
.align-brochure .align-feature__text .title-group {
  max-width: 52ch;
}

.align-brochure__media-wrap {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-block: var(--space-8);
}

/* .align-brochure also ships with a fixed 4rem section padding (via
   .align-band + the .p-16 utility) and a static 50/50 cream/lime-200
   gradient background, both meant for its default (non full-bleed) variant.
   That padding/background sat behind our full-bleed columns above, showing
   up as a pale ring around the darker dynamic color blocks. Zero both out
   here, scoped to this component only, so the dynamic colors reach the
   section's true outer edges. */
.align-brochure.align-band {
  padding: 0;
  background: none;
}

/* The default .align-feature grid reserves a column-gap between the text
   and media halves. That gap was invisible before because .align-brochure's
   removed default background painted straight through it; now that each
   half paints its own full-bleed color, the gap shows as a bare (page
   background) seam between them. The two-tone design (per the reference
   storybook layout) expects the colors to butt up against each other with
   no seam, so remove the gap for this component only. */
.align-brochure .align-feature--split {
  column-gap: 0;
}

/* Even with column-gap:0, CSS Grid can still leave a hairline (1-2px) seam
   between the two full-bleed color tracks — a subpixel rounding artifact
   when the container width doesn't divide evenly across "1fr 1fr", letting
   the page background peek through as a thin dark line. Pull each half 1px
   into the shared boundary so they overlap slightly and fully hide the
   seam. Whichever half sits on the left/right physically flips with
   .align-feature--reverse, so the overlap direction is flipped to match. */
.align-brochure .align-feature--split .align-feature__text {
  margin-inline-end: -1px;
}

.align-brochure .align-feature--split .align-brochure__media-wrap {
  margin-inline-start: -1px;
}

.align-brochure .align-feature--split.align-feature--reverse .align-feature__text {
  margin-inline-end: 0;
  margin-inline-start: -1px;
}

.align-brochure .align-feature--split.align-feature--reverse .align-brochure__media-wrap {
  margin-inline-start: 0;
  margin-inline-end: -1px;
}

/* The CTATheme Sitecore field's "Themes" folder includes structural-black,
   structural-blue, and structural-cream options, and the CTA markup builds
   its class from that DisplayName (e.g. "btn--structural-black"). But
   BaseLayout.css never defines those three .btn--* variants (it only has
   an unrelated single-dash .btn-structural-blue leftover), so selecting
   them in Sitecore renders a class with no matching CSS rule — no curtain
   color, no hover color, no border. Add the three missing theme variants
   here, following the same custom-property pattern as the other .btn--*
   theme classes already defined in BaseLayout.css. */
.btn--structural-black {
  --btn-bg: transparent;
  --btn-curtain: var(--color-structural-black-500);
  --btn-color: var(--color-structural-black-500);
  --btn-hover-color: #fff;
  border-color: var(--color-structural-black-500);
}

.btn--structural-blue {
  --btn-bg: transparent;
  --btn-curtain: var(--color-structural-blue-500, #0061FE);
  --btn-color: var(--color-structural-blue-500, #0061FE);
  --btn-hover-color: #fff;
  border-color: var(--color-structural-blue-500, #0061FE);
}

.btn--structural-cream {
  --btn-bg: transparent;
  --btn-curtain: var(--color-structural-cream-500);
  --btn-color: var(--color-structural-cream-500);
  --btn-hover-color: var(--color-structural-black-500);
  border-color: var(--color-structural-cream-500);
}

/* LeftRightCarouselPeerless.cshtml's CarouselTheme field builds its classes
   from a different naming scheme than the CTA buttons above — it uses
   ".content-carousel--{theme}" for the carousel's progress bar/accent and
   ".btn-icon--{theme}" for its prev/next nav arrows (not ".btn--{theme}").
   BaseLayout.css defines both families for structural-black, structural-blue,
   and structural-blue-solid, but never for structural-cream, so choosing
   that theme in Sitecore renders classes with no matching CSS — no accent
   color and no themed nav-arrow styling. Add the two missing variants,
   following the same pattern as BaseLayout.css's existing themed pairs
   (modeled on .content-carousel--white / .btn-icon--white since cream, like
   white, is a light background needing dark text/accent for contrast). */
.content-carousel--structural-cream {
  --carousel-accent: var(--color-structural-cream-500, #F5F2EC);
  --carousel-accent-border: var(--color-structural-black-500, #0F121D);
  --cc-featured-bg: var(--color-structural-cream-500, #F5F2EC);
}

.btn-icon--structural-cream {
  --btn-bg: var(--color-structural-cream-500, #F5F2EC);
  --btn-color: var(--color-structural-black-500, #0F121D);
  --btn-curtain: var(--color-structural-black-500, #0F121D);
  --btn-hover-color: var(--color-structural-cream-500, #F5F2EC);
  border: none;
}

/* The carousel's wrapping div also carries a "text-{TextColor}" class (e.g.
   text-playleaf) from the component's separate TextColor Sitecore field.
   BaseLayout.css defines a global reset for every ".text-{color}" utility:
     .text-playleaf *:not([class*=text-]){color:inherit!important}
   This forces ANY descendant without a class containing "text-" to inherit
   the wrapper's text color, with !important. The nav-arrow <button> (class
   "btn-icon btn-icon--40 btn-icon--{CarouselTheme}") has no "text-" class,
   so this rule was overriding its own themed --btn-color/--btn-hover-color
   and making every icon render in whatever color TextColor happened to be
   (commonly playleaf) instead of the color matching its brand button theme.
   Same root cause + fix pattern as the earlier ghost-black CTA bug: beat
   the reset's specificity ((0,2,0) class+:not(class)) with a more specific,
   !important override scoped to this carousel's nav buttons. */
.content-carousel__nav button.btn-icon {
  color: var(--btn-color, #fff) !important;
}

.content-carousel__nav button.btn-icon:hover {
  color: var(--btn-hover-color, var(--btn-bg, #0F121D)) !important;
}

/* ContentCarouselPeerless.cshtml wraps each slide in a
   <div class="content-carousel__slide">, but BaseLayout.css never defines
   any CSS for ".content-carousel__slide" — it only sizes DIRECT children
   of .content-carousel__track via the ".content-carousel--{fill-2|peek|
   single|scroll} .content-carousel__track>*" width rules. The component now
   renders with the "peek" + "scroll" modifiers (see .content-carousel--peek
   .content-carousel__track>* {width:75%} above), matching the vendor
   "Where We Play" reference: each slide takes ~75% of the viewport width,
   so the next slide partially peeks in from the right, and the track
   scrolls horizontally with snap points.

   Fix: give .content-carousel__slide its own positioning context and a
   height (100%, matching --carousel-height dynamically) so it behaves as
   a proper flex item sized to the track height, with its image filling
   the full slide box via object-fit: cover (matching vendor behavior). */
.content-carousel__slide {
  position: relative;
  flex-shrink: 0;
  height: 100%;
  overflow: hidden;
}

.content-carousel__slide > .content-carousel__card {
  z-index: 2;
  display: block;
  visibility: visible;
  opacity: 1;
}

.content-carousel__slide img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transition: transform 0.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.content-carousel__slide:hover img {
  transform: scale(1.04);
}

.content-carousel__media {
  height: 100%;
}

.content-carousel__card {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem 1rem 1rem;
  background: linear-gradient(180deg, transparent 0%, rgba(15, 18, 29, 0.78) 48%, rgba(15, 18, 29, 0.92) 100%);
}

.content-carousel__card-title {
  display: flex;
  align-items: baseline;
  flex-wrap: nowrap;
  gap: var(--space-2, 0.5rem);
  margin: 0;
  color: #fff;
  font-family: var(--font-sans);
  font-size: clamp(1.125rem, 0.75rem + 1vw, 1.375rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.content-carousel__card-title-text {
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.content-carousel__card-title-icon {
  flex: 0 0 auto;
  font-size: var(--font-size-text-md, 0.8rem);
  font-weight: 500;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  position: relative;
  transform: translateY(-0.26em);
  transition: transform 0.25s ease, color 0.25s ease;
}

.content-carousel__slide:hover .content-carousel__card-title-icon {
  transform: translateY(-0.26em) rotate(45deg);
}

/* Defensive fix: ensure nav arrows always sit above the new slide/card
   overlay stacking context introduced above. */
.content-carousel__nav {
  z-index: 5;
}

/* BaseLayout.css defines two independent families of utility classes that
   both set `color` with !important at equal (single-class) specificity:
   the brand ".text-{color}" utilities (e.g. .text-playleaf) and the
   typography-scale ".type-*" utilities (e.g. .type-body-sm, which also
   forces its own gray text color). When an element carries both classes
   (as RichTextComponentPeerless's rendered <p class="text-playleaf
   type-body-sm"> does), the winner is whichever rule appears LATER in
   BaseLayout.css's source order — not whichever class was added later in
   markup. The .type-* rules happen to be defined after the brand .text-*
   rules, so the brand color is silently lost to the generic type-scale
   color on every element combining the two. Fix: re-assert each brand
   text color for the specific .text-{color}.type-{scale} pairings likely
   to occur, using a two-class compound selector (specificity (0,2,0))
   which beats the single-class type-* rule (0,1,0) regardless of source
   order, reusing the exact same CSS custom properties as BaseLayout.css's
   own .text-{color} definitions. */
.text-playleaf.type-body {
  color: var(--color-lime-500) !important;
}

.text-playleaf.type-body-sm {
  color: var(--color-lime-500) !important;
}

.text-playleaf.type-body-lg {
  color: var(--color-lime-500) !important;
}

.text-playleaf.type-eyebrow {
  color: var(--color-lime-500) !important;
}

.text-playleaf.type-caption {
  color: var(--color-lime-500) !important;
}

.text-playleaf.type-overline {
  color: var(--color-lime-500) !important;
}

.text-ignition-green.type-body {
  color: var(--color-green-500) !important;
}

.text-ignition-green.type-body-sm {
  color: var(--color-green-500) !important;
}

.text-ignition-green.type-body-lg {
  color: var(--color-green-500) !important;
}

.text-ignition-green.type-eyebrow {
  color: var(--color-green-500) !important;
}

.text-ignition-green.type-caption {
  color: var(--color-green-500) !important;
}

.text-ignition-green.type-overline {
  color: var(--color-green-500) !important;
}

.text-blue-alliance.type-body {
  color: var(--color-blue-alliance-500) !important;
}

.text-blue-alliance.type-body-sm {
  color: var(--color-blue-alliance-500) !important;
}

.text-blue-alliance.type-body-lg {
  color: var(--color-blue-alliance-500) !important;
}

.text-blue-alliance.type-eyebrow {
  color: var(--color-blue-alliance-500) !important;
}

.text-blue-alliance.type-caption {
  color: var(--color-blue-alliance-500) !important;
}

.text-blue-alliance.type-overline {
  color: var(--color-blue-alliance-500) !important;
}

.text-flash-orange.type-body {
  color: var(--color-orange-500) !important;
}

.text-flash-orange.type-body-sm {
  color: var(--color-orange-500) !important;
}

.text-flash-orange.type-body-lg {
  color: var(--color-orange-500) !important;
}

.text-flash-orange.type-eyebrow {
  color: var(--color-orange-500) !important;
}

.text-flash-orange.type-caption {
  color: var(--color-orange-500) !important;
}

.text-flash-orange.type-overline {
  color: var(--color-orange-500) !important;
}

.text-blue-reliance.type-body {
  color: var(--color-blue-reliance-500) !important;
}

.text-blue-reliance.type-body-sm {
  color: var(--color-blue-reliance-500) !important;
}

.text-blue-reliance.type-body-lg {
  color: var(--color-blue-reliance-500) !important;
}

.text-blue-reliance.type-eyebrow {
  color: var(--color-blue-reliance-500) !important;
}

.text-blue-reliance.type-caption {
  color: var(--color-blue-reliance-500) !important;
}

.text-blue-reliance.type-overline {
  color: var(--color-blue-reliance-500) !important;
}

.text-momentum-red.type-body {
  color: var(--color-red-500) !important;
}

.text-momentum-red.type-body-sm {
  color: var(--color-red-500) !important;
}

.text-momentum-red.type-body-lg {
  color: var(--color-red-500) !important;
}

.text-momentum-red.type-eyebrow {
  color: var(--color-red-500) !important;
}

.text-momentum-red.type-caption {
  color: var(--color-red-500) !important;
}

.text-momentum-red.type-overline {
  color: var(--color-red-500) !important;
}

.text-structural-black.type-body {
  color: var(--color-structural-black-500) !important;
}

.text-structural-black.type-body-sm {
  color: var(--color-structural-black-500) !important;
}

.text-structural-black.type-body-lg {
  color: var(--color-structural-black-500) !important;
}

.text-structural-black.type-eyebrow {
  color: var(--color-structural-black-500) !important;
}

.text-structural-black.type-caption {
  color: var(--color-structural-black-500) !important;
}

.text-structural-black.type-overline {
  color: var(--color-structural-black-500) !important;
}

.text-structural-blue.type-body {
  color: var(--color-structural-blue-500) !important;
}

.text-structural-blue.type-body-sm {
  color: var(--color-structural-blue-500) !important;
}

.text-structural-blue.type-body-lg {
  color: var(--color-structural-blue-500) !important;
}

.text-structural-blue.type-eyebrow {
  color: var(--color-structural-blue-500) !important;
}

.text-structural-blue.type-caption {
  color: var(--color-structural-blue-500) !important;
}

.text-structural-blue.type-overline {
  color: var(--color-structural-blue-500) !important;
}

.text-structural-cream.type-body {
  color: var(--color-structural-cream) !important;
}

.text-structural-cream.type-body-sm {
  color: var(--color-structural-cream) !important;
}

.text-structural-cream.type-body-lg {
  color: var(--color-structural-cream) !important;
}

.text-structural-cream.type-eyebrow {
  color: var(--color-structural-cream) !important;
}

.text-structural-cream.type-caption {
  color: var(--color-structural-cream) !important;
}

.text-structural-cream.type-overline {
  color: var(--color-structural-cream) !important;
}

.text-midnight.type-body {
  color: var(--color-structural-black-500) !important;
}

.text-midnight.type-body-sm {
  color: var(--color-structural-black-500) !important;
}

.text-midnight.type-body-lg {
  color: var(--color-structural-black-500) !important;
}

.text-midnight.type-eyebrow {
  color: var(--color-structural-black-500) !important;
}

.text-midnight.type-caption {
  color: var(--color-structural-black-500) !important;
}

.text-midnight.type-overline {
  color: var(--color-structural-black-500) !important;
}

.text-cta.type-body {
  color: var(--color-structural-blue-cta) !important;
}

.text-cta.type-body-sm {
  color: var(--color-structural-blue-cta) !important;
}

.text-cta.type-body-lg {
  color: var(--color-structural-blue-cta) !important;
}

.text-cta.type-eyebrow {
  color: var(--color-structural-blue-cta) !important;
}

.text-cta.type-caption {
  color: var(--color-structural-blue-cta) !important;
}

.text-cta.type-overline {
  color: var(--color-structural-blue-cta) !important;
}

.text-explore-cta.type-body {
  color: var(--color-structural-blue-500) !important;
}

.text-explore-cta.type-body-sm {
  color: var(--color-structural-blue-500) !important;
}

.text-explore-cta.type-body-lg {
  color: var(--color-structural-blue-500) !important;
}

.text-explore-cta.type-eyebrow {
  color: var(--color-structural-blue-500) !important;
}

.text-explore-cta.type-caption {
  color: var(--color-structural-blue-500) !important;
}

.text-explore-cta.type-overline {
  color: var(--color-structural-blue-500) !important;
}

.text-surface.type-body {
  color: var(--color-structural-cream) !important;
}

.text-surface.type-body-sm {
  color: var(--color-structural-cream) !important;
}

.text-surface.type-body-lg {
  color: var(--color-structural-cream) !important;
}

.text-surface.type-eyebrow {
  color: var(--color-structural-cream) !important;
}

.text-surface.type-caption {
  color: var(--color-structural-cream) !important;
}

.text-surface.type-overline {
  color: var(--color-structural-cream) !important;
}

/* The CTATheme "Themes" folder was later corrected to the real list of
   button variants used across the site: blue-alliance, blue-reliance,
   flash-orange, ghost-black, ignition-green, inv-blue-reliance,
   inv-blue-alliance, inv-flash-orange, inv-ignition-green, inv-playleaf,
   playleaf, structural, structural-black, structural-blue,
   structural-blue-solid, structural-blue-solid-inv, structural-dark.
   BaseLayout.css is still missing the "inv-*", "structural" (bare),
   "structural-blue-solid(-inv)", and "structural-dark" variants. There's
   no Figma spec for these, so each is derived by pattern-matching the
   existing "-inverted" pairs already in BaseLayout.css (e.g.
   .btn--flash-orange / .btn--flash-orange-inverted), where the inverted
   variant swaps --btn-bg <-> --btn-curtain and shifts --btn-color /
   --btn-hover-color to match. Verify visually and adjust if the design
   intent differs. */
/* inv-* = the "-inverted" counterpart of an existing solid color button,
   using the same bg/curtain-swap pattern already established by
   .btn--flash-orange-inverted and .btn--playleaf-inverted. */
.btn--inv-blue-reliance {
  --btn-bg: var(--color-structural-black-500);
  --btn-curtain: var(--color-blue-reliance-500);
  --btn-color: var(--color-blue-reliance-500);
  --btn-hover-color: var(--color-structural-black-500);
  border: none;
}

.btn--inv-blue-alliance {
  --btn-bg: var(--color-structural-black-500);
  --btn-curtain: var(--color-blue-alliance-500);
  --btn-color: var(--color-blue-alliance-500);
  /* Blue Alliance's only approved foregrounds (per the brandkit
     Color Combinations table) are Playleaf, Blue Reliance, and White —
     Structural Black text on Blue Alliance fails contrast (~2.2:1,
     needs 4.5:1), the same dark-on-dark-teal issue seen elsewhere in
     this component. Use white for the hover-state text instead. */
  --btn-hover-color: #fff;
  border: none;
}

.btn--inv-flash-orange {
  --btn-bg: var(--color-structural-black-500);
  --btn-curtain: var(--color-orange-500);
  --btn-color: var(--color-orange-500);
  --btn-hover-color: var(--color-structural-black-500);
  border: none;
}

.btn--inv-ignition-green {
  --btn-bg: var(--color-lime-500);
  --btn-curtain: var(--color-green-500);
  --btn-color: var(--color-green-500);
  --btn-hover-color: var(--color-lime-500);
  border: none;
}

.btn--inv-playleaf {
  --btn-bg: var(--color-structural-black-500);
  --btn-curtain: var(--color-lime-500);
  --btn-color: var(--color-lime-500);
  --btn-hover-color: var(--color-structural-black-500);
  border: none;
}

/* "structural" (bare, no color suffix) — treated as the default neutral
   outline CTA, matching .btn--ghost-black's already-established pattern. */
.btn--structural {
  --btn-bg: transparent;
  --btn-curtain: var(--color-structural-black-500);
  --btn-color: var(--color-structural-black-500);
  --btn-hover-color: #fff;
  border-color: var(--color-structural-black-500);
}

/* "structural-blue-solid" — the filled counterpart of the outline
   .btn--structural-blue above, matching the existing .btn--primary
   pattern (solid structural-blue bg, black curtain on hover). */
.btn--structural-blue-solid {
  --btn-bg: var(--color-structural-blue-500, #0061FE);
  --btn-curtain: var(--color-structural-black-500);
  --btn-color: #fff;
  --btn-hover-color: var(--color-structural-blue-500, #0061FE);
  border-color: var(--color-structural-blue-500, #0061FE);
}

/* "structural-blue-solid-inv" — inverted counterpart of the solid variant
   above, using the same bg/curtain-swap pattern. */
.btn--structural-blue-solid-inv {
  --btn-bg: var(--color-structural-black-500);
  --btn-curtain: var(--color-structural-blue-500, #0061FE);
  --btn-color: var(--color-structural-blue-500, #0061FE);
  --btn-hover-color: var(--color-structural-black-500);
  border: none;
}

/* "structural-dark" — solid filled dark/black CTA, staying within the
   structural (black/blue) family for its hover curtain accent rather than
   reusing an unrelated brand color. */
.btn--structural-dark {
  --btn-bg: var(--color-structural-black-500);
  --btn-curtain: var(--color-structural-blue-500, #0061FE);
  --btn-color: #fff;
  --btn-hover-color: #fff;
  border: none;
}

/* This CTA link sits inside a colored-text wrapper (e.g.
   .title-group__description.text-structural-black) and BaseLayout.css's
   ".text-{color} *:not([class*=text-]){color:inherit!important}" rule
   forces ANY descendant without a "text-" class to inherit that color,
   with !important — including this link, since none of its classes
   (btn, btn--*, btn--md, cta-link) contain "text-". That !important
   silently overrides both the button's own text color and its
   :hover color (e.g. ghost-black's hover stayed black instead of
   switching to white), and beats a plain ".btn.cta-link:hover" rule
   with no !important regardless of specificity.
   Fix: match !important and use higher specificity than the global
   reset selector (0,2,0) by adding the element type, giving (0,2,1)/
   (0,3,1), so this always wins regardless of source order. */
a.btn.cta-link {
  color: var(--btn-color, inherit) !important;
}

a.btn.cta-link:hover {
  color: var(--btn-hover-color, var(--btn-color, inherit)) !important;
}

/* BaseLayout.css's .btn:hover sweeps in its curtain color via two
   background gradients that each grow to background-size:51% 100% from
   opposite sides, meant to overlap in the middle (51%+51%=102%) and
   fully cover the transparent button background. The two layers'
   percentages are each resolved against the button's rendered width
   independently every animation frame; when that width isn't an exact
   multiple that divides evenly, the two layers can round to different
   sub-pixel widths from each other *during* the transition (not just at
   rest), producing a brief flash/sliver of the transparent background
   (and whatever full-bleed section color is behind it) partway through
   the hover-in animation, even though the final resting state overlaps
   fine. A bigger fixed overlap percentage (e.g. 55%) doesn't fully
   solve this because it's still two independently-rounded values that
   can momentarily disagree mid-transition.

   Fix: grow BOTH curtain layers to 100% (not just past 51%). Since
   100% always resolves to the exact same pixel value as the button's
   own width for both layers, they can never round apart from each
   other at any point in the transition — eliminating the rounding
   mismatch instead of just papering over it with more overlap margin.
   The sweep-in visual (each side still animates from 0 -> full width
   independently) is unchanged; only the guaranteed-equal end value
   differs. Scoped to this component only. */
.align-brochure .btn:hover {
  background-size: 100% 100%, 100% 100%, 100% 100%;
}

/* The remaining momentary "flash" of a pixel is a one-frame compositing
   glitch some browsers exhibit when a background-size transition
   crosses a repaint/layer-promotion boundary mid-animation, not a
   layout/rounding issue. Forcing the button onto its own stable GPU
   layer for the whole transition (instead of letting the browser
   promote/demote it mid-sweep) prevents that repaint flash. */
.align-brochure .btn {
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: background-size;
}

.reveal-popover--theme-flash-orange .type-eyebrow {
  color: white !important;
}

/* LeftRightScrollPeerless (.scroll-feature-group / .scroll-feature): the
   per-slide media images should stack on top of one another so the GSAP
   timeline (app.main.js / the component's inline script) can slide the
   incoming/outgoing image vertically (gsap.set(image, { yPercent: ... }))
   to crossfade between slides as the section is scrolled/pinned.

   BaseLayout.css's .scroll-feature__media-item only sets
   { margin:0; width:100% } — with no positioning, each <figure> stays in
   normal document flow, so instead of overlapping, every slide after the
   first just stacks further down the page. The yPercent translate then
   moves each slide relative to its own (already-offset) flow position
   instead of sliding it in/out over the first slide, so the component
   never visually "scrolls" between slides even though the underlying
   ScrollTrigger timeline is progressing correctly.

   Fix: absolutely position each media item within its already-relative,
   overflow:hidden .scroll-feature__media container so all slides sit in
   the same spot and the yPercent-based slide transitions work as
   intended.

   Scoped to `.scroll-feature.is-animated`, matching the existing
   `.scroll-feature.is-animated .scroll-feature__copy { position: absolute; }`
   rule already in BaseLayout.css. The grouping script only adds the
   `is-animated` class when it actually builds the GSAP timeline; when
   `prefers-reduced-motion: reduce` (or the <=768px mobile query) is
   active, the script intentionally skips animating and leaves the
   section un-classed so it falls back to BaseLayout.css's static,
   non-overlapping stacked-in-flow layout. An unscoped rule here would
   force every media item absolute regardless, breaking that
   accessible/mobile fallback by making the images overlap instead of
   stacking in flow. */
.scroll-feature.is-animated .scroll-feature__media-item {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

/** HeaderPeerless (HeaderPeerless.cshtml) — .header-bar / data-header-solid
    These rules were missing entirely from the compiled peerless2 stylesheet,
    so app.main.js / app.category-page.js toggling `data-header-solid` between
    "true"/"false" on <header class="header-bar"> had no visual effect — the
    header always rendered with whatever unstyled default the browser applied.
    Ported from the Peerless design system's compiled header component so the
    solid/two-tone states actually respond to the attribute. */
.header-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--header-size, 64px);
  z-index: 2000001;
  display: flex;
  justify-content: space-between;
  transition: transform 0.3s ease, background-color 0.3s ease, backdrop-filter 0.3s ease;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  pointer-events: none;
  font-weight: 400;
  color: #fff;
  --hb-left-bg: var(--color-blue-alliance-500, #005465);
  --hb-left-color: #fff;
  --hb-menu-bg: #fff;
  --hb-menu-icon: var(--color-structural-black-500, #0f121d);
  --hb-right-strip: var(--color-blue-alliance-500, #005465);
  --hb-solid-bg: var(--color-blue-alliance-500, #005465);
  --hb-search-bg: transparent;
  --hb-search-icon: #fff;
  --hb-action-bg: transparent;
  --hb-action-icon: #fff;
}

.header-bar[data-header-theme=ignition-green] {
  background: #005941;
  --hb-left-bg: #005941;
  --hb-left-color: #fff;
  --hb-menu-bg: #005941;
  --hb-menu-icon: #fff;
  --hb-right-strip: #005941;
  --hb-solid-bg: #005941;
  --hb-search-bg: transparent;
  --hb-search-icon: #fff;
  --hb-action-bg: transparent;
  --hb-action-icon: #fff;
}

.header-bar[data-header-theme=momentum-red] {
  background: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-left-bg: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-left-color: #fff;
  --hb-menu-bg: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-menu-icon: #fff;
  --hb-right-strip: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-solid-bg: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-search-bg: transparent;
  --hb-search-icon: #fff;
  --hb-action-bg: transparent;
  --hb-action-icon: #fff;
}

.header-bar[data-header-theme=translucent] {
  --hb-left-bg: rgba(0, 0, 0, .25);
  --hb-left-color: #fff;
  --hb-menu-bg: rgba(0, 0, 0, .25);
  --hb-menu-icon: #fff;
  --hb-right-strip: transparent;
  --hb-solid-bg: var(--color-structural-black-500, #0f121d);
  --hb-search-bg: rgba(0, 0, 0, .25);
  --hb-search-icon: #fff;
  --hb-action-bg: rgba(0, 0, 0, .25);
  --hb-action-icon: #fff;
}

.header-bar[data-header-theme=structural-black] {
  background: transparent;
  --hb-left-bg: var(--color-structural-black-400, #202938);
  --hb-left-color: #fff;
  --hb-menu-bg: #fff;
  --hb-menu-icon: var(--color-structural-black-400, #202938);
  --hb-right-strip: var(--color-structural-black-400, #202938);
  --hb-solid-bg: var(--color-structural-black-400, #202938);
  --hb-search-bg: transparent;
  --hb-search-icon: #fff;
  --hb-action-bg: transparent;
  --hb-action-icon: #fff;
}

.header-bar[data-header-theme=structural-black-story] {
  background: transparent;
  --hb-left-bg: var(--color-structural-black-400, #202938);
  --hb-left-color: #fff;
  --hb-menu-bg: var(--color-structural-black-400, #202938);
  --hb-menu-icon: #fff;
  --hb-right-strip: var(--color-structural-black-400, #202938);
  --hb-solid-bg: var(--color-structural-black-400, #202938);
  --hb-search-bg: transparent;
  --hb-search-icon: #fff;
  --hb-action-bg: transparent;
  --hb-action-icon: #fff;
}

.header-bar[data-header-theme=search] {
  --hb-left-bg: #005941;
  --hb-left-color: #fff;
  --hb-menu-bg: #005941;
  --hb-menu-icon: #fff;
  --hb-right-strip: transparent;
  --hb-search-bg: #fff;
  --hb-search-icon: #005941;
  --hb-action-bg: #005941;
  --hb-action-icon: #fff;
}

.header-bar[data-header-state=open][data-header-theme=blue-alliance] {
  background: var(--color-blue-alliance-500, #005465);
}
.header-bar[data-header-state=open][data-header-theme=ignition-green] {
  background: #005941;
  --hb-left-bg: #005941;
  --hb-menu-bg: #005941;
  --hb-right-strip: #005941;
  --hb-action-bg: transparent;
  --hb-search-bg: transparent;
}
.header-bar[data-header-state=open][data-header-theme=momentum-red] {
  background: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-left-bg: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-menu-bg: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-right-strip: var(--bg-momentum-red, var(--color-red-500, #a80000));
  --hb-action-bg: transparent;
  --hb-search-bg: transparent;
}
.header-bar[data-header-state=open][data-header-theme=translucent] {
  background: var(--color-structural-black-500, #0f121d);
}
.header-bar[data-header-state=open][data-header-theme=structural-black], .header-bar[data-header-state=open][data-header-theme=structural-black-story] {
  background: transparent;
}
.header-bar[data-header-state=open][data-header-theme=search] {
  background: transparent;
}

.header-bar[data-header-state=closed] {
  background: rgba(246, 242, 236, 0);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.header-bar[data-header-state=closed][data-header-theme=ignition-green], .header-bar[data-header-state=closed][data-header-theme=momentum-red], .header-bar[data-header-state=closed][data-header-theme=structural-black] {
  background: transparent;
  --hb-menu-bg: #fff;
  --hb-menu-icon: var(--color-structural-black-500, #0f121d);
}
.header-bar[data-header-state=closed][data-header-theme=structural-black-story] {
  background: transparent;
  --hb-menu-bg: var(--color-structural-black-400, #202938);
  --hb-menu-icon: #fff;
}

.header-bar[data-state=hidden] {
  transform: translateY(-100%);
}

.header-bar[data-state=visible] {
  transform: translateY(0);
}

.header-bar[data-header-solid=true][data-header-theme] {
  background: var(--hb-solid-bg, var(--hb-left-bg));
}
.header-bar[data-header-solid=true][data-header-theme] .header-bar__left,
.header-bar[data-header-solid=true][data-header-theme] .header-bar__right {
  background: transparent;
}

.header-bar__left {
  display: flex;
  pointer-events: auto;
}

.header-bar__logo {
  display: flex;
  height: var(--header-size, 64px);
}
.header-bar__logo .peerless-logo {
  height: var(--header-size, 64px);
}

.header-bar__menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: var(--header-size, 64px);
  height: var(--header-size, 64px);
  background-color: var(--hb-menu-bg);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: opacity 0.2s ease;
}
.header-bar__menu:hover .header-bar__menu-line {
  opacity: 0.7;
}
.header-bar__menu[aria-disabled=true] {
  opacity: 0.45;
  cursor: not-allowed;
}
.header-bar__menu[aria-disabled=true]:hover {
  opacity: 0.45;
}

.header-bar__menu-line {
  display: block;
  width: 31px;
  height: 2px;
  background-color: var(--hb-menu-icon);
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.header-bar__menu[aria-expanded=true] .header-bar__menu-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
.header-bar__menu[aria-expanded=true] .header-bar__menu-line:nth-child(2) {
  opacity: 0;
}
.header-bar__menu[aria-expanded=true] .header-bar__menu-line:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.header-bar__right {
  display: flex;
  background: var(--hb-right-strip);
  pointer-events: auto;
}

.header-bar__action {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--header-size, 64px);
  height: var(--header-size, 64px);
  background: var(--hb-action-bg);
  border: none;
  cursor: pointer;
  padding: 0;
  color: var(--hb-action-icon);
  font-size: var(--font-size-text-4xl, 1.5rem);
  transition: opacity 0.2s ease;
}
.header-bar__action:hover {
  opacity: 0.7;
}
.header-bar__action[data-header-action=product] {
  background: var(--hb-search-bg);
  color: var(--hb-search-icon);
}

.header-bar__project {
  position: relative;
}

.header-bar__project-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: var(--color-red-500, #a80000);
  color: #fff;
  font-family: var(--font-mono, "Space Mono", monospace);
  font-size: var(--font-size-text-xs, 0.6875rem);
  font-weight: 400;
  line-height: 18px;
  text-align: center;
  pointer-events: none;
}
.header-bar__project-badge[hidden] {
  display: none;
}

.pdp-integrated-tech__card:nth-child(n+3) .flip-card__logo-wrap {
  opacity: 1;
}

.pdp-integrated-tech__card .flip-card__face--back {
  background-image: none;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-blue-alliance {
  background-color: color-mix(in srgb, var(--color-blue-alliance-500) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-blue-reliance {
  background-color: color-mix(in srgb, var(--color-blue-reliance-500) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-momentum-red {
  background-color: color-mix(in srgb, var(--color-red-500) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-playleaf {
  background-color: color-mix(in srgb, var(--color-lime-500) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-structural-cream {
  background-color: color-mix(in srgb, var(--color-structural-cream) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-flash-orange {
  background-color: color-mix(in srgb, var(--color-orange-500) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-ignition-green {
  background-color: color-mix(in srgb, var(--color-green-500) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-structural-black {
  background-color: color-mix(in srgb, var(--color-structural-black-500) 65%, transparent) !important;
}

.pdp-integrated-tech__card .flip-card__face--front.bg-structural-black:before {
  background-color: var(--color-structural-black-500);
}

.g3-lb__product-media {
  background: var(--color-structural-cream-500, #F5F2EC);
}

.pdp-family__inner {
  position: relative;
  z-index: 2;
}

.content-carousel--fill-3 .content-carousel__track > * {
  width: 33.3333%;
}

.content-carousel--fill-3 .content-carousel__placeholder {
  width: 33.3333%;
}

@media (max-width: 767.98px) {
  .content-carousel--fill-3 .content-carousel__track > * {
    width: 85%;
  }
}
.pdp-family__content-carousel.content-carousel--scroll {
  height: auto;
  padding-top: var(--space-16, 64px);
  padding-bottom: calc(var(--space-8, 32px) * 2.5);
}
.pdp-family__content-carousel.content-carousel--scroll .content-carousel__track {
  position: static;
  height: auto;
}
.pdp-family__content-carousel.content-carousel--scroll .content-carousel__nav {
  position: static;
  justify-content: flex-end;
  margin-bottom: var(--space-4, 16px);
}
.pdp-family__content-carousel.content-carousel--scroll .content-carousel__progress {
  display: none;
}

.pdp-family__content-slide {
  display: flex;
  align-items: center;
  padding-right: var(--space-4, 16px);
}

.pdp-family__campaign-btn {
  max-width: none;
  width: 100%;
}

/** Search IFrame for Search Box - START */
.item-action-row__label {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.product-card__file--empty {
  pointer-events: none;
}

.product-card__tabs:has(> .product-card__tab:nth-child(2):nth-last-child(2)) {
  column-gap: var(--space-4, 1rem);
}

/* ── Design tokens (TagGroup flash-orange) ───────────────── */
.v2-search-peerless-iframe {
  /* Mirrors TagGroup theme="flash-orange" (Search Overlay) */
  --tag-group-color: linear-gradient(131deg, #ff9254 0%, #ff5c00 100%);
  --tag-group-active-border: #0f121d;
  --tag-group-hover-color: #ff5c00;
  --tag-group-hover-text-color: #0f121d;
  --tag-group-default-border: #0f121d;
  --tag-group-default-fg: #0f121d;
  --tag-group-active-fg: #0f121d;
  --tag-group-hover-opacity: 0.2;
}
.v2-search-peerless-iframe .coveo-results-header {
  display: none;
}

.v2-search-peerless-iframe .coveo-for-sitecore-frame-container {
  display: block;
  margin-bottom: 8px;
}

.v2-search-peerless-iframe .coveo-header,
.v2-search-peerless-iframe .coveo-main-section,
.v2-search-peerless-iframe .container-fluid,
.v2-search-peerless-iframe .row,
.v2-search-peerless-iframe .col-12 {
  width: 100% !important;
  max-width: none !important;
}

.v2-search-peerless-iframe .coveo-for-sitecore-frame-container > div:first-child {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 56px;
  row-gap: 14px;
}
.v2-search-peerless-iframe .coveo-for-sitecore-frame-container > div:first-child > div:has(.CoveoFacet .coveo-facet-values:empty) {
  display: none;
}

.v2-search-peerless-iframe .CoveoFacet {
  display: block !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

.v2-search-peerless-iframe .coveo-main-section {
  grid-column: 1/-1;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.v2-search-peerless-iframe .CoveoFacet > .coveo-facet-header {
  border: 0 !important;
  background: transparent !important;
  padding: 0 0 8px 0 !important;
  min-height: 22px;
}

.v2-search-peerless-iframe .CoveoFacet > .coveo-facet-header .coveo-facet-header-title {
  font-family: var(--font-mono, "Space Mono", monospace);
  font-size: var(--font-size-text-xl, 1rem);
  font-weight: 400;
  line-height: 14px;
  text-transform: uppercase;
  color: #0f121d;
}

.v2-search-peerless-iframe .coveo-facet-header-settings-section,
.v2-search-peerless-iframe .coveo-facet-header-wait-animation,
.v2-search-peerless-iframe .coveo-facet-footer {
  display: none !important;
}

/* Hide duplicate facet content injected by Coveo's static snapshot */
.v2-search-peerless-iframe .CoveoFacet > .coveo-facet-footer + .coveo-facet-header,
.v2-search-peerless-iframe .CoveoFacet > .coveo-facet-footer + .coveo-facet-header + .coveo-facet-values,
.v2-search-peerless-iframe .CoveoFacet > .coveo-facet-footer + .coveo-facet-header + .coveo-facet-values + .coveo-facet-footer {
  display: none !important;
}

.v2-search-peerless-iframe .coveo-facet-values {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 0;
  position: relative;
  isolation: isolate;
}

/* Sliding hover indicator — ports TagGroup .tag-group__hover-indicator */
.v2-search-peerless-iframe .tg-hover-indicator {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  opacity: 0;
  background: var(--tag-group-color);
  will-change: transform, width, opacity;
  transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1), width 0.24s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.15s ease;
}

.v2-search-peerless-iframe .tg-hover-indicator.is-visible {
  opacity: var(--tag-group-hover-opacity);
}

.v2-search-peerless-iframe .coveo-facet-value {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  opacity: 1 !important;
  border: 1px solid var(--tag-group-default-border);
  border-radius: 0;
  background: transparent;
  color: var(--tag-group-default-fg);
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

/* Hover (unselected): border+text shift; orange fill comes from sliding indicator */
.v2-search-peerless-iframe .coveo-facet-value:hover:not(:has(input[type=checkbox]:checked)):not(.coveo-selected) {
  background: transparent;
  border-color: var(--tag-group-hover-color);
  color: var(--tag-group-hover-text-color);
}

.v2-search-peerless-iframe .coveo-facet-value-label {
  display: flex;
  align-items: center;
  flex: 1;
  margin: 0;
  padding: 0 !important;
  cursor: pointer;
}

.v2-search-peerless-iframe .coveo-facet-value-label-wrapper {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  position: relative;
  flex: 1;
  min-width: 0;
}

.v2-search-peerless-iframe .coveo-facet-value-label input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
  padding: 0;
}

.v2-search-peerless-iframe .coveo-facet-value-checkbox {
  display: none !important;
}

.v2-search-peerless-iframe .coveo-facet-value-checkbox svg {
  display: none;
}

/* Selected: solid orange gradient fill — ports TagGroup multiselect selected */
.v2-search-peerless-iframe .coveo-facet-value:has(input[type=checkbox]:checked),
.v2-search-peerless-iframe .coveo-facet-value.coveo-selected {
  background: var(--tag-group-color) !important;
  border: 1px solid var(--tag-group-active-border) !important;
  color: var(--tag-group-active-fg) !important;
}

.v2-search-peerless-iframe .coveo-facet-value:has(input[type=checkbox]:checked) .coveo-facet-value-caption,
.v2-search-peerless-iframe .coveo-facet-value:has(input[type=checkbox]:checked) .coveo-facet-value-count,
.v2-search-peerless-iframe .coveo-facet-value.coveo-selected .coveo-facet-value-caption,
.v2-search-peerless-iframe .coveo-facet-value.coveo-selected .coveo-facet-value-count {
  color: var(--tag-group-active-fg) !important;
}

.v2-search-peerless-iframe .coveo-facet-value-label-wrapper:has(input[type=checkbox]:checked) {
  box-shadow: none !important;
  border: 0 !important;
  margin: 0 !important;
}

.v2-search-peerless-iframe .coveo-facet-value-exclude {
  display: none !important;
}

.v2-search-peerless-iframe .coveo-facet-value-caption {
  position: relative;
  z-index: 1;
  font-family: var(--font-mono, "Space Mono", monospace);
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: inherit;
}

.v2-search-peerless-iframe .coveo-facet-value-caption::before {
  content: "↗";
  margin-right: 6px;
  font-size: 10px;
}

.v2-search-peerless-iframe .coveo-facet-value-count {
  position: relative;
  z-index: 1;
  font-family: var(--font-mono, "Space Mono", monospace);
  font-size: 0.75rem;
  line-height: 1rem;
  color: inherit;
  opacity: 0.75;
}

.v2-search-peerless-iframe .coveo-facet-value:has(input[type=checkbox]:focus-visible) {
  outline: 2px solid #ff5c00;
  outline-offset: 2px;
}

.v2-search-peerless-iframe .search-overlay__assist-divider {
  margin-top: 24px;
}

.v2-search-peerless-iframe .search-overlay__assist-results-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 14px 0 24px;
}

.v2-search-peerless-iframe .search-overlay__assist-count {
  font-family: var(--font-sans, "Suisse Int'l", "Helvetica Neue", Arial, sans-serif);
  font-size: 16px;
  font-weight: 400;
  color: #0f121d;
}

.v2-search-peerless-iframe .search-overlay__view-all {
  font-family: var(--font-mono, "Space Mono", monospace);
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.02em;
  color: #0f121d;
  text-decoration: none;
}

.v2-search-peerless-iframe .search-overlay__view-all:hover {
  color: #ff5c00;
}

.v2-search-peerless-iframe .coveo-results-column {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.v2-search-peerless-iframe .CoveoResultList,
.v2-search-peerless-iframe .CoveoResultList > div {
  width: 100% !important;
}

.v2-search-peerless-iframe .coveo-result-list-container.coveo-card-layout-container {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
  align-items: start;
  width: 100% !important;
}

.v2-search-peerless-iframe .coveo-card-layout.CoveoResult,
.v2-search-peerless-iframe [data-assist-product-card] {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.v2-search-peerless-iframe .coveo-card-layout.CoveoResult {
  border: 0 !important;
  box-shadow: none !important;
}

.v2-search-peerless-iframe .product-card {
  max-width: none;
  min-width: 0;
  min-height: 416px;
  box-shadow: 0 24px 24px -12px rgba(14, 63, 126, 0.04), 0 12px 12px 0 rgba(14, 63, 126, 0.04), 0 6px 6px -3px rgba(42, 51, 70, 0.04), 0 3px 3px 0 rgba(42, 51, 70, 0.04), 0 1px 1px -0.5px rgba(42, 51, 69, 0.04), 0 0 0 1px rgba(14, 63, 126, 0.04), 0 0 1px 0 rgba(0, 0, 0, 0.18);
}

.v2-search-peerless-iframe .product-card__media {
  aspect-ratio: 1/0.86;
}

.v2-search-peerless-iframe .product-card__meta {
  height: 100px;
}

.v2-search-peerless-iframe .product-card__summary {
  padding: 10px 16px 8px;
}

.v2-search-peerless-iframe .product-card__title {
  line-height: 1.5rem;
}

.v2-search-peerless-iframe .product-card:hover {
  box-shadow: 0 20px 56px 0 rgba(0, 0, 0, 0.29);
}

.v2-search-peerless-iframe .coveo-results-column,
.v2-search-peerless-iframe .coveo-card-layout.CoveoResult,
.v2-search-peerless-iframe .coveo-result-list-container.coveo-card-layout-container {
  overflow: visible !important;
}

.v2-search-peerless-iframe .coveo-result-list-container.coveo-card-layout-container {
  box-sizing: border-box;
  padding: 8px;
  margin: -8px;
  width: calc(100% + 16px) !important;
}

/* Content interface (editorial CTA + related results below facets) */
.v2-search-peerless-iframe-content {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin-top: 32px;
}

.v2-search-peerless-iframe-content .coveo-main-section,
.v2-search-peerless-iframe-content .coveo-results-column,
.v2-search-peerless-iframe-content .CoveoResultList,
.v2-search-peerless-iframe-content .CoveoResultList > div {
  width: 100% !important;
  max-width: none !important;
  overflow: visible !important;
}

.v2-search-peerless-iframe-content .coveo-header,
.v2-search-peerless-iframe-content .coveo-search-interface-mandatory-section,
.v2-search-peerless-iframe-content .coveo-visible-to-screen-reader-only,
.v2-search-peerless-iframe-content .coveo-footer,
.v2-search-peerless-iframe-content .CoveoLogo,
.v2-search-peerless-iframe-content .coveo-powered-by {
  display: none !important;
}

.v2-search-peerless-iframe-content .coveo-result-list-container.coveo-card-layout-container {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
  align-items: start;
  width: 100% !important;
  padding: 0;
  margin: 0;
}

.v2-search-peerless-iframe-content .coveo-card-layout.CoveoResult {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.v2-search-peerless-iframe-content .coveo-card-layout-padding {
  display: none !important;
}

.v2-search-peerless-iframe-content .search-overlay__editorial-cta {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16/12;
  overflow: hidden;
  text-decoration: none;
}

.v2-search-peerless-iframe-content .search-overlay__editorial-cta img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.v2-search-peerless-iframe-content .search-overlay__editorial-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(15, 18, 29, 0.75) 0%, rgba(15, 18, 29, 0.35) 40%, transparent 70%);
  pointer-events: none;
}

.v2-search-peerless-iframe-content .search-overlay__editorial-cta:hover img {
  transform: scale(1.04);
}

.v2-search-peerless-iframe-content .search-overlay__editorial-cta-label {
  position: absolute;
  right: 16px;
  bottom: 16px;
  left: 16px;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 8px;
  font-family: var(--font-sans, "Suisse Int'l", "Helvetica Neue", Arial, sans-serif);
  font-size: 16px;
  font-weight: 400;
  color: #ffffff;
}

.v2-search-peerless-iframe-content .search-overlay__editorial-cta-label i {
  flex-shrink: 0;
  font-size: 20px;
  opacity: 0.9;
  transform: rotate(-45deg);
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.v2-search-peerless-iframe-content .search-overlay__editorial-cta:hover .search-overlay__editorial-cta-label i {
  transform: rotate(0deg);
  opacity: 1;
}

.v2-search-peerless-iframe .coveo-footer,
.v2-search-peerless-iframe .CoveoLogo,
.v2-search-peerless-iframe .coveo-powered-by,
.coveo-visible-to-screen-reader-only {
  display: none !important;
}

@media (max-width: 1024px) {
  .v2-search-peerless-iframe .coveo-for-sitecore-frame-container > div:first-child {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  .v2-search-peerless-iframe .coveo-for-sitecore-frame-container > div:first-child > div:nth-child(4) {
    grid-column: auto;
  }
  .v2-search-peerless-iframe .coveo-result-list-container.coveo-card-layout-container {
    grid-template-columns: 1fr;
  }
  .v2-search-peerless-iframe-content .coveo-result-list-container.coveo-card-layout-container {
    grid-template-columns: 1fr;
  }
}
/** Search IFrame for Search Box - END */
/** Search Box Overlay - START */
.search-overlay#searchOverlay {
  padding-right: calc(var(--header-size, 70px) - 10px);
  scrollbar-gutter: stable;
}
.search-overlay#searchOverlay .search-overlay__editorial {
  z-index: 9999;
}
.search-overlay#searchOverlay .search-overlay__search:has(.magic-box-hasPreviews) .search-overlay__editorial {
  display: none;
}
.search-overlay#searchOverlay .search-overlay__body .search-overlay__suggested .search-overlay__suggested-label {
  font-size: var(--font-size-text-xl, 1rem);
  color: var(--color-structural-black-500, #0F121D);
}
.search-overlay#searchOverlay .search-overlay__body .search-overlay__suggested .search-overlay__trending-item {
  padding: var(--space-2) 0;
}

/****** Search box mobile - BEGIN ****************************/
@media (max-width: 768px) {
  .search-overlay {
    padding-inline: var(--space-4);
  }
  .search-overlay .search-overlay__bar {
    width: 100%;
    margin-top: calc(var(--header-size) + var(--space-3));
    flex-shrink: 0;
    border: 1px solid var(--color-structural-black-400, #0F121D);
    display: inline-table;
  }
  .search-overlay .search-overlay__body--idle .search-overlay__suggested-list {
    gap: var(--space-2) var(--space-4);
  }
  .search-overlay .CoveoOmnibox .magic-box-suggestions {
    margin-top: 30px;
  }
  .search-overlay#searchOverlay {
    padding-right: calc(var(--header-size, 70px) - 55px);
  }
  .search-overlay__input-wrap {
    flex: 1 1 100%;
    min-width: 0;
    padding-inline: var(--space-2);
    padding-block: var(--space-2);
  }
  .search-overlay__toggle {
    width: 100%;
  }
  .search-overlay__trending-item {
    background-color: unset;
    color: var(--color-structural-black-500, #0F121D);
    font-size: var(--font-size-text-xl, 1rem);
  }
  .v2-search-peerless-iframe .coveo-for-sitecore-frame-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: var(--space-4) !important;
  }
  .v2-search-peerless-iframe .coveo-for-sitecore-frame-container > div:first-child {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    grid-template-columns: none !important;
    column-gap: var(--space-4) !important;
    row-gap: var(--space-2) !important;
  }
  .v2-search-peerless-iframe .coveo-for-sitecore-frame-container > div:first-child > div:nth-child(4) {
    grid-column: unset !important;
  }
  .v2-search-peerless-iframe .CoveoFacet {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--space-2) !important;
    padding-bottom: 10px !important;
  }
  .v2-search-peerless-iframe .CoveoFacet > .coveo-facet-header {
    padding-bottom: 0px !important;
  }
  .v2-search-peerless-iframe .CoveoFacet .coveo-facet-values {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: var(--space-1, 4px) !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .v2-search-peerless-iframe .CoveoFacet .coveo-facet-value {
    display: flex !important;
    align-items: center !important;
    width: auto !important;
  }
  .v2-search-peerless-iframe .CoveoFacet .coveo-facet-value-caption::before {
    font-weight: 900;
  }
  .v2-search-peerless-iframe .CoveoFacet .coveo-facet-value-label {
    display: flex !important;
    align-items: center !important;
    width: auto !important;
  }
  .v2-search-peerless-iframe .CoveoFacet .coveo-facet-value-label-wrapper {
    display: flex !important;
    align-items: center !important;
    gap: var(--space-1, 4px) !important;
    width: auto !important;
    padding: var(--space-1_5, 6px) var(--space-3, 12px);
  }
  .v2-search-peerless-iframe .CoveoBreadcrumb {
    display: none;
  }
}
@media (max-width: 480px) {
  .search-overlay__toggle {
    width: 100%;
  }
}
/****** Search box mobile - END ****************************/
#main-content-peerless .search-overlay__assist-heading {
  margin-bottom: 2rem;
}

/** Search Box Overlay - END */
/*no color changing when hovering over product card variants*/
.product-card__variant:hover {
  color: var(--color-structural-cream-25);
}

/* Footer - OneTrust's #teconsent widget injects its own "Cookie Preferences" link with
   inline/default OneTrust styling (blue, lowercase, underlined). Reskin it to match the
   surrounding .site-footer__legal .site-footer__link items (white, uppercase, no underline). */
.site-footer__legal #teconsent,
.site-footer__legal #teconsent a,
.site-footer__legal #teconsent span {
  font: inherit;
  color: inherit !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  cursor: pointer;
}

.site-footer__legal #teconsent a:hover,
.site-footer__legal #teconsent span:hover {
  text-decoration: underline !important;
}

/* Error pages - remove background applied to .error-panel inside main.error-page */
main.error-page .error-panel {
  background: none !important;
}

/* Error pages - normalize spacing across all variants to match error-page--500 (base .error-panel spacing) */
.error-page:not(.error-page--500) {
  min-height: calc(100svh - 9rem) !important;
}

.error-page:not(.error-page--500) .error-panel {
  padding: clamp(6.5rem, 8vw, 9rem) clamp(1.25rem, 3vw, 2rem) clamp(4rem, 6vw, 6rem) !important;
}

.error-page:not(.error-page--500) .error-panel__icon-wrap {
  margin-top: 0.25rem !important;
}

/* Error page embedded inside a story-article wrapper (email-error/email-confirmation) -
   remove the near-fullscreen centered min-height so content starts at the top like error-page--500 */
.story-article__body .error-panel--centered {
  min-height: auto !important;
}

/* Remove the story-article section's own top padding when it only wraps an embedded error panel,
   so the panel's own padding is the sole source of top spacing (matches error-page--500). */
.story-article__section:has(.error-panel) {
  padding-top: 0 !important;
}

/* Center the copy block horizontally when it wraps an embedded error panel
   (the text-only section rule sets margin-left/right:0, left-aligning it otherwise). */
.story-article__section:has(.error-panel) .story-article__copy--full {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Footer - storybook headings/legal links are authored in literal uppercase text; Sitecore
   dictionary/navigation labels are Title Case, so force the same visual casing here. */
.site-footer__heading,
.site-footer__legal .site-footer__link {
  text-transform: uppercase;
}

/* Footer logo letter reveal — CSS-driven (see initFooterLogoReveal in app.main.js).
   Each letter starts translated down + invisible; the JS toggles
   [data-footer-logo-revealed] on the [data-footer-logo-io] wrapper via a
   reversible IntersectionObserver (reveals on enter, resets on exit) so the
   letters replay if the visitor scrolls back up past the footer.
   Replaces a prior GSAP ScrollTrigger version that left letters permanently
   stuck off-screen on short pages where the trigger's scroll range never
   satisfied its play condition.
   animation: none is required to cancel out BaseLayout.css's native
   `site-footer-letter-rise` scroll-driven (animation-trigger) animation on
   browsers that support it — animated properties always win over plain
   transform/opacity declarations regardless of specificity/order, so without
   this the letters stay permanently stuck at their "from" keyframe
   (translateY(100%)) even after the reveal attribute is added. */
[data-footer-logo-io] .footer-logo-letter {
  animation: none;
  opacity: 0;
  transform: translateY(240px);
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.8s ease;
}

[data-footer-logo-io][data-footer-logo-revealed] .footer-logo-letter {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  [data-footer-logo-io] .footer-logo-letter {
    transition: none;
    opacity: 1;
    transform: translateY(0);
  }
}
/* PDP Projects / cover-slider — GSAP pins this section with `inset:0`, i.e. flush
   to the TRUE top of the viewport (confirmed via console: pinned element's
   getBoundingClientRect().top ≈ 0), with the header-bar/context-nav rendered on
   top of it via a much higher z-index. Vendor's own height formula
   (var(--pdp-section-min-height, calc(100svh - 128px))) only produces a
   gap-free result on a page where a `.pdp` wrapper defines
   --pdp-section-min-height as calc(100svh - <docked chrome height>) AND the
   pin is offset below the chrome — neither of which is true here: our
   Sitecore markup has no `.pdp` wrapper (so the var is unset and the 128px
   fallback is used), and the pin sits at the literal viewport top regardless.
   Subtracting ANY chrome height here leaves that much blank space at the
   BOTTOM of the pinned image (bottom = 0 + height < viewport height), since
   the pin's top never moves down to compensate. Since the header/context-nav
   already overlay the image's top edge (same fixed-at-0 stacking, just a
   higher z-index) rather than sitting above it in flow, the section only
   needs to fill the full viewport — no subtraction. */
.cover-slider {
  height: 100svh;
  min-height: 100svh;
}

/* Browsers/engines that don't support `svh` drop the declaration above
   entirely, leaving the section with no explicit height at the moment GSAP
   ScrollTrigger measures it for pinning — it then pins at whatever tiny
   in-flow height remains (e.g. just the progress dots row), producing a
   79px-tall pinned section with blank space below and no cross-fade
   transforms. Provide the same value using `vh` for those cases. */
@supports not (height: 100svh) {
  .cover-slider {
    height: 100vh;
    min-height: 100vh;
  }
}
/* Inspiration Carousel (horizontal-scroll pin mode) — override BaseLayout.css's
   `.inspiration-carousel--horizontal-scroll .inspiration-carousel__slides/__slide`
   width rules (built for a whole-track GSAP pan) since slide switching now reuses
   the classic carousel's `translateX(-index * 100%)` math. Without this override
   the oversized `width: auto` track pushes every slide off-screen. */
.inspiration-carousel--horizontal-scroll .inspiration-carousel__slides {
  inset: 0 !important;
  width: 100% !important;
  will-change: auto !important;
}

.inspiration-carousel--horizontal-scroll .inspiration-carousel__slide {
  width: 100% !important;
  min-width: 100% !important;
}

/* Inspiration Carousel (mobile) - the markup's `.p-16` utility class carries
   `padding: 4rem !important` (BaseLayout.css), which beats
   `.inspiration-carousel__gradient-title`'s own mobile media-query padding
   override (no !important). That leaves the gradient-title's left padding at
   4rem/64px while `.inspiration-carousel__project-info`/`__footer` use
   `--layout-padding` (16px), so the label/heading sit ~48px to the right of
   `__project-info`'s left edge below it. Force the same left inset here so
   both align. */
@media (max-width: 768px) {
  .inspiration-carousel__gradient-title.p-16 {
    padding-left: var(--layout-padding) !important;
    padding-right: var(--layout-padding) !important;
    /* .p-16's 4rem bottom padding left ~72px between the heading and the
       project-info box below it; tighten to ~15px on mobile only. */
    padding-bottom: 7px !important;
  }
}
/* Site Intro (mobile) - Portfolio info-card's `.product-categories-panel__thumb`
   images were rendering at their full intrinsic size (e.g. 1920x1200) instead of
   the mobile scroller sizing BaseLayout.css defines for them, blowing the card
   (and `.site-intro`) height out to ~2400px+ per card. Root cause: BaseLayout.css
   sizes `.product-categories-panel__item` with `flex: 0 0 calc(100cqw - ...)`,
   a container-query width relative to `.product-categories-panel` itself
   (`container-type: inline-size`). That container's own width is derived from
   an ancestor flex/grid chain (`editorial-card__col-2` -> `.site-intro__info-card`)
   that has no definite width in this stack, so the container query falls back to
   the shrink-to-fit/content size (the sum of the un-scaled thumbnails) rather than
   the actual ~viewport-width card. Give `.product-categories-panel` a definite
   width so its container-query children size against real space, and use `vw`
   (independent of the container-query feedback loop) for the peek-item math. */
@media (max-width: 768px) {
  /* Even with the body/panel resized above, every `.site-intro__info-card`
     variant (people / portfolio / awards) measured an identical fixed ~1446px
     regardless of actual content, pointing to a `height: 100%`/similar rule
     elsewhere in this mobile stack resolving to a stale/inherited definite
     value rather than true `auto`. Force each card to size to its own content. */
  .site-intro__info-card:not(.site-intro__info-card--people):not(.site-intro__info-card--portfolio):not(.site-intro__info-card--awards) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  /* Awards card's content (723px) is shorter than its sticky-stack box
     (788px) and, unlike People/Portfolio, isn't stretched to fill it - that
     left ~65px of transparent gap at the BOTTOM of Awards' own box, letting
     the Portfolio card (stacked underneath, still partially visible per the
     cascading-peek design) show through in that gap instead of being fully
     covered by Awards' background. Fill the box so there's no gap to peek
     through. */
  .site-intro__info-card--awards {
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
  }
  /* Portfolio's single-column category list (below) can run longer than the
     card's allotted sticky-stack box (each `.site-intro__stack-item` is a
     fixed height so the People/Portfolio/Awards "cascading peek" stacking
     math lines up). Letting the card grow past that box - like the other
     cards above - pushed it ~60px+ taller than its box, so the card behind
     it (Portfolio itself, ironically) kept peeking out from underneath the
     Awards card that's supposed to fully cover it. Keep Portfolio pinned to
     its box height and let the category list scroll internally instead. */
  .site-intro__info-card--portfolio {
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    overflow: hidden;
  }
}
/* People/Brand card - under `prefers-reduced-motion: reduce`, the sticky-stack
   mechanism is disabled site-wide (vendor's own accessibility fallback, see
   `.site-intro__stack-item{height:auto}` above) which is fine for
   Portfolio/Awards since their content sizes itself intrinsically. People's
   media column, though, is built on a `flex:1 1 0` split (`.editorial-card__col-2`)
   feeding a `height:100%` video wrapper (`.site-intro__card-right`) - `flex-grow`
   has no extra space to distribute once the containing flex column itself
   becomes `height:auto`, so the whole media column (and the video/photo inside
   it) collapses to 0px, making the card look entirely blank. Give the media
   column a real, definite height in this specific state so it can't collapse. */
@media (max-width: 768px) and (prefers-reduced-motion: reduce) {
  .site-intro__info-card--people .editorial-card__col-1,
  .site-intro__info-card--people .editorial-card__col-2 {
    flex: none;
    height: auto;
  }
  .site-intro__info-card--people .editorial-card__col-2 {
    height: 300px;
    min-height: 300px;
  }
}
/* Override the BaseLayout.css style per the 9/28/26 per the Daily Peerless meeting
   Intention: fix mobile video sizing and hide background image */
@media (max-width: 768px) {
  .site-intro__card-right--lime .site-intro__card-hero-img {
    top: -40px;
    height: max-content;
    aspect-ratio: 16/9;
  }
  .site-intro__card-right--lime {
    background: none;
    background-image: none !important;
  }
}
/* MAXIMUM OVERRIDE - PDP HERO DETAILS CARD */
.pdp-hero__fixture.pdp-hero__fixture img {
  object-fit: cover;
}

.pdp-hero--variant-c .pdp-hero__family {
  font-size: 0.8em !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  max-width: 100% !important;
  color: var(--color-structural-black-400, #202938) !important;
}

.pdp-hero--variant-c .pdp-hero__title {
  color: var(--color-blue-alliance-500, #005465);
  font-size: 1.3rem !important;
}

.pdp-hero--variant-c .pdp-hero__distributions {
  color: var(--color-blue-alliance-500, #005465);
  font-weight: 400;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.25em 0.7rem !important;
  font-size: 0.8rem !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  max-width: 95% !important;
  min-width: 0 !important;
}

.pdp-hero__details.pdp-hero__details {
  gap: var(--space-4);
}

.pdp-hero--variant-c .pdp-hero__details {
  justify-content: flex-end !important;
}

.pdp-hero__fixture.pdp-hero__fixture img {
  object-fit: cover;
}

.pdp-hero .pdp-hero__details-card {
  container-type: size !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 16px !important;
  gap: 1.2cqmin !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__heading-group,
.pdp-hero .pdp-hero__details-card .pdp-hero__badges-row {
  font-size: min(16px, 6.5cqmin) !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__heading-group {
  display: flex !important;
  flex-direction: column !important;
  gap: 1em !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__family {
  font-size: 1.1em !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  max-width: 100% !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__title {
  font-size: 1.9em !important;
  line-height: 1.12 !important;
  margin: 0 !important;
  max-width: 100% !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__distributions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.25em 0.7em !important;
  font-size: 1.2em !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  max-width: 95% !important;
  min-width: 0 !important;
}

.pdp-hero--variant-b .pdp-hero__distributions {
  color: var(--color-blue-alliance-500, #005465);
  font-weight: 400;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__badges-row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.4em !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__light-colors {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.3em !important;
  max-width: 100% !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__color-btn,
.pdp-hero .pdp-hero__details-card .pdp-hero__color-btn img {
  width: auto !important;
  height: 1.5em !important;
  max-width: 100% !important;
}

.pdp-hero .pdp-hero__details-card .pdp-hero__fasttrack-badge,
.pdp-hero .pdp-hero__details-card .pdp-hero__award-badges img {
  height: 3em !important;
  width: auto !important;
  max-width: 100% !important;
}

@media (max-width: 960px) {
  .pdp-hero .pdp-hero__details-card {
    container-type: inline-size !important;
    height: auto !important;
    max-height: none !important;
    padding: 20px 16px 28px !important;
    gap: 12px !important;
  }
  .pdp-hero .pdp-hero__details-card .pdp-hero__heading-group,
  .pdp-hero .pdp-hero__details-card .pdp-hero__badges-row {
    font-size: clamp(13px, 3.8cqw, 18px) !important;
  }
}
@media (max-width: 768px) {
  .pdp-hero--variant-c .pdp-hero__family {
    font-size: 0.7em !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    max-width: 100% !important;
    color: var(--color-structural-black-400, #202938) !important;
  }
  .pdp-hero--variant-c .pdp-hero__title {
    color: var(--color-blue-alliance-500, #005465);
    font-size: 1.3rem !important;
  }
  .pdp-hero--variant-c .pdp-hero__distributions {
    color: var(--color-blue-alliance-500, #005465);
    font-weight: 400;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.25em 0.7rem !important;
    font-size: 0.8em !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    max-width: 95% !important;
    min-width: 0 !important;
  }
  .pdp-hero--variant-b .pdp-hero__distributions {
    color: var(--color-blue-alliance-500, #005465);
    font-weight: 400;
  }
  .pdp-hero .pdp-hero__details-card .pdp-hero__family {
    font-size: 0.8em !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    max-width: 100% !important;
  }
  .pdp-hero .pdp-hero__details-card .pdp-hero__title {
    font-size: 1.5em !important;
    line-height: 1.12 !important;
    margin: 0 !important;
    max-width: 100% !important;
  }
  .pdp-hero .pdp-hero__details-card .pdp-hero__distributions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.25em 0.7em !important;
    font-size: 0.95em !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    max-width: 95% !important;
    min-width: 0 !important;
  }
}
/* Move the family title down ~5px closer to the carousel without shifting
   the carousel itself (offset by the padding-top reduction above). */
.pdp-family__header {
  margin-top: 5px;
}

/* explore-build.css sets a global `html { scroll-behavior: smooth; }`. GSAP
   ScrollTrigger detects that as the page's "real" scroll behavior on init,
   and after every refresh() it deliberately restores it — so it always wins
   over a same-specificity `html` override regardless of stylesheet order.
   Native smooth-scroll animating over 1-2+ seconds on this long page desyncs
   from ScrollTrigger's own scroll math, which is what left pinned/scrubbed
   sections (hero, About reveal) visually stuck mid-animation after jumping
   to a nav tab and scrolling back to top. `:root` has higher specificity
   than a plain `html` selector, so this reliably overrides it here instead
   of editing the vendor-style explore-build.css file directly. */
html:root {
  scroll-behavior: auto;
}

/* Restyle the scene-explorer "finishing touches"/lighting-option buttons
   (BaseLayout.css's `.scene-explorer__option-btn`) to match the outlined
   `.btn--ghost-dark.btn--xs` chip style used in the storybook reference
   (https://peerless.glenton-samuels.workers.dev/pdp/): a small, square-cornered,
   outline-only chip for the inactive state, and a solid white fill with dark
   text for the active state. */
.scene-explorer__lighting-controls-wrap {
  gap: var(--space-2, 8px);
}

.scene-explorer__option-btn {
  position: relative;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  height: 28px;
  padding: 0 16px;
  margin: 0;
  background: none;
  border: 1px solid rgba(255, 255, 255, 0.3019607843);
  border-radius: 0;
  color: #fff;
  font-size: 11px;
  letter-spacing: 0.07em;
  text-transform: none;
  overflow: hidden;
  transition: border-color 0.3s ease, color 0.3s ease 0.1s;
}

/* Override the BaseLayout.css style per the 9/28/26 per the Daily Peerless meeting
   Intention: mobile buttons should have less padding than desktop buttons */
@media (max-width: 768px) {
  .scene-explorer__option-btn.btn--xs {
    height: 28px;
    padding: 0 10px;
    margin: 0;
  }
}
/* Two fill halves, each anchored to its outer edge and scaling inward
toward the center on hover/active — this gives an "outside to inside"
curtain reveal instead of growing outward from the middle. Each half is
sized slightly past 50% (50.5%) so they overlap a hair at the center,
guaranteeing no rounding-based seam/gap can appear where they meet. */
.scene-explorer__option-btn::before,
.scene-explorer__option-btn::after {
  content: "";
  position: absolute;
  top: 0;
  width: 50.5%;
  height: 100%;
  background: var(--color-structural-cream-50, #fff);
  transform: scaleX(0);
  transition: transform 0.3s ease;
  z-index: 0;
}

.scene-explorer__option-btn::before {
  left: 0;
  transform-origin: left;
}

.scene-explorer__option-btn::after {
  right: 0;
  transform-origin: right;
}

.scene-explorer__option-btn .btn-inner {
  position: relative;
  z-index: 1;
}

.scene-explorer__option-btn:hover,
.scene-explorer__option-btn.is-active {
  border-color: var(--color-structural-cream-50, #fff);
  color: var(--color-structural-black-500, #0f121d);
}

.scene-explorer__option-btn:hover::before,
.scene-explorer__option-btn:hover::after,
.scene-explorer__option-btn.is-active::before,
.scene-explorer__option-btn.is-active::after {
  transform: scaleX(1);
}

.ablSearch .coveo-card-layout.CoveoResult {
  border: none;
}

.header-bar__menu {
  background-color: #fff !important;
  opacity: 1 !important;
  box-shadow: none;
  transition: box-shadow 0.2s ease;
}

.header-bar__menu:hover,
.header-bar__menu:focus-visible {
  box-shadow: 0 2px 8px rgba(15, 18, 29, 0.35);
}

.header-bar__menu-line {
  background-color: var(--color-structural-black-500, #0f121d) !important;
}

/** Coveo BreadCrumbs (Search, Tier3 Category, and Tabbed Category) */
.CoveoSearchInterface .CoveoBreadcrumb {
  padding: 0;
  border: none;
  justify-content: end;
}
.CoveoSearchInterface .CoveoBreadcrumb .coveo-breadcrumb-items {
  display: none;
}
.CoveoSearchInterface .CoveoBreadcrumb .coveo-breadcrumb-clear-all {
  font-family: var(--font-mono);
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 22px;
  color: var(--color-structural-black-500);
}
.CoveoSearchInterface.v2-search-peerless-iframe .coveo-for-sitecore-frame-container > div > div:has(.CoveoBreadcrumb) {
  grid-column: 3;
  position: relative;
  top: -64px;
  height: 0;
}
.CoveoSearchInterface:not(.v2-search-peerless-iframe) .CoveoBreadcrumb {
  position: relative;
  z-index: 8;
  margin-top: -22.5px;
}
.CoveoSearchInterface:not(.v2-search-peerless-iframe) .CoveoBreadcrumb .coveo-breadcrumb-clear-all {
  padding: 0;
  margin: 0;
}
