/* Static replacements for styles Squarespace applied with JavaScript. */

/* Text highlight (underline) — Squarespace drew this as an SVG stroke with square caps
   that overhangs the text slightly; padding + negative margin reproduce the overhang. */
.sqsrte-text-highlight {
  padding: 0 0.125em;
  margin: 0 -0.125em;
  background-image: linear-gradient(var(--text-highlight-color, #209d50), var(--text-highlight-color, #209d50));
  background-repeat: no-repeat;
  background-size: 100% 0.1em;
  background-position: 0 93.5%;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

/* Gallery grids — columns and gutters were set inline by the gallery controller. */
.gallery-grid-wrapper[style*="--clone-cols"] {
  grid-template-columns: repeat(var(--clone-cols), 1fr);
  column-gap: var(--clone-gap);
  row-gap: var(--clone-gap);
}
@media screen and (max-width: 767px) {
  .gallery-grid-wrapper[style*="--clone-cols"] {
    grid-template-columns: repeat(var(--clone-cols-mobile), 1fr);
  }
}
.gallery-grid-item img {
  object-fit: cover;
  object-position: 50% 50%;
}

/* Embedded videos. */
.sqs-video-wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.sqs-video-overlay img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.clone-native-video {
  position: relative;
}
.clone-native-video video {
  display: block;
  width: 100%;
  height: auto;
  background: #000;
}
.clone-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  aspect-ratio: 1;
  padding: 0;
  border: 0;
  border-radius: 100%;
  background: rgba(0, 0, 0, 0.5);
  -webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);
  opacity: 0.9;
  color: #fff;
  cursor: pointer;
}
.clone-play svg {
  width: 60%;
  height: 60%;
  fill: currentColor;
}
.clone-play[hidden] { display: none; }
@media screen and (max-width: 767px) {
  .clone-play { width: 44px; }
  .clone-play svg { width: 68%; height: 68%; }
}

/* Lightbox. */
.clone-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.97);
}
.clone-lightbox[hidden] { display: none; }
.clone-lightbox img {
  max-width: calc(100vw - 160px);
  max-height: calc(100vh - 80px);
  object-fit: contain;
}
.clone-lightbox button {
  position: absolute;
  border: 0;
  background: none;
  color: #000;
  font: 300 48px/1 sans-serif;
  padding: 12px 18px;
  cursor: pointer;
}
.clone-lightbox-close { top: 12px; right: 12px; }
.clone-lightbox-prev { left: 12px; top: 50%; transform: translateY(-50%); }
.clone-lightbox-next { right: 12px; top: 50%; transform: translateY(-50%); }
body.clone-lightbox-open { overflow: hidden; }
@media screen and (max-width: 767px) {
  .clone-lightbox img { max-width: 100vw; }
  .clone-lightbox-prev, .clone-lightbox-next { top: auto; bottom: 12px; transform: none; }
}
