:where([data-etch-element="container"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
  max-width: var(--content-width, 1366px);
  align-self: center; margin-inline: auto;
}
:where([data-etch-element="flex-div"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
}
:where([data-etch-element="iframe"]) {
  inline-size: 100%;
  height: auto;
 aspect-ratio: 16/9;
}
:where([data-etch-element="section"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.hero-catalina {
  color-scheme: light;
  min-block-size: 100vh;
  background: var(--black, #000);
  color: var(--text-light, #eee);
  a {
    color: var(--text-light, #eee);
    &:hover {
      color: var(--white, #fff);
    }
  }
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  h1,
  h2,
  h3,
  p {
    color: var(--text-light, #eee);
  }
}
.section-intro {
  :has(> &) {
    container-type: inline-size;
  }
  display: flex;
  flex-direction: column;
  gap: var(--content-gap);

  &[data-intro-style='center' i] {
    @container (inline-size >= 43.75rem) {
      align-items: center;
      text-align: center;
    }
  }
  &[data-intro-style='two column' i] {
    @container (inline-size >= 43.75rem) {
      display: grid;
      grid-template-columns: var(--grid-3-2);
      align-items: center;
    }
  }
}
.section-intro__content-wrapper {
  display: flex;
  gap: var(--content-gap, 1em);
  max-inline-size: 70ch;
}
.section-intro__heading {
  font-size: var(--text-s, .8em);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 400;
}
.section-intro__headline {
  font-weight: var(--heading-font-weight, 700);
  &[data-heading-level="h1"] {
    font-size: var(--h1);
  }
  &[data-heading-level="h2"] {
    font-size: var(--h2);
  }
}
.tile-background {
  overflow: clip;
  :has(> &) {
    position: relative;
    isolation: isolate;
  }
  position: var(--bg-position, absolute);
  inset: var(--bg-inset, 0);
  inline-size: var(--bg-width, 100%);
  block-size: var(--bg-height, 100%);
  border-radius: var(--bg-radius, 0);
  z-index: var(--bg-z-index, -2); /* Compatibility with overlays that use -1 */
  border-radius: var(--bg-radius, 0);
  pointer-events: none;
  gap: var(--content-gap, 1rem);
  background-color: transparent;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  > img {
    object-fit: var(--bg-object-fit, cover);
    object-position: var(--bg-object-position, center);
    inline-size: var(--bg-width, 100%);
    block-size: var(--bg-height, 100%);
  }
}
.tile-background__inner {
  --col-gap: var(--gap);
  --row-gap: var(--gap);

  display: block !important;
  columns: var(--col-count);
  gap: var(--col-gap);

  > * {
    margin-block-end: var(--row-gap);
  }

  inline-size: 175vmax;
  min-inline-size: 175vmax;
  block-size: 200vh;
  rotate: 15deg;
  position: absolute;
  inset: 50% auto auto 50%;
  translate: -50% -50vmax;
  overflow: clip;
  opacity: var(--opacity);

  img {
    inline-size: 100%;
    object-fit: cover;
    aspect-ratio: 1;
  }
  img:nth-child(2n) {
    aspect-ratio: 1;
  }
  img:nth-child(3n + 1) {
    aspect-ratio: 1;
  }
  img:nth-child(5n + 3) {
    aspect-ratio: 1;
  }
}
.section-intro__lede {
  text-wrap: balance;
  line-height: 1.6;
}
.section-intro__cta-wrapper {
  display: flex;
  flex-direction: row;
  gap: calc(var(--content-gap, 1em) / 2);
  flex-wrap: wrap;
  max-inline-size: max-content;
  justify-self: end;
}
.dev-note {
  --accent-color: #fff8dc;
  display: var(--display, none);
  flex-direction: column;
  gap: calc(var(--content-gap, 1em) / 2);
  background-color: var(--accent-color);
  color: oklch(from var(--accent-color) 0.15 c h / 1);
  border-left: 4px solid oklch(from var(--accent-color) calc(l / 1.5) calc(c * 6) h / 1);
  padding: 15px 20px;
  border-radius: 4px;
  font-family: Arial, sans-serif;
  line-height: 1.6;
  inline-size: 100%;
  max-inline-size: var(--max-width);
  margin: var(--margin-block) var(--margin-inline);
  z-index: 999;
  h1,h2,h3,h4,h5,h6,p {
    color: oklch(from var(--accent-color) 0.15 c h / 1);
  }
  &[data-display='Etch Only' i].etch-builder-block {
    --display: flex;
  }
  &[data-display='Gutenberg Only' i].wp-block {
    --display: flex;
  }
  &[data-display='Etch and Gutenberg' i]:is(.wp-block, .etch-builder-block) {
    --display: flex;
  }
  &[data-style='danger' i] {
    --accent-color: #f8d7d9;
  }
  &[data-style='info' i] {
    --accent-color: #d1edf0;
  }
  &::before {
    content: attr(data-heading);
    font-weight: bold;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  pre {
    white-space: pre-wrap;
    font-size: 0.95rem;
    inline-size: 100%;
    max-inline-size: max-content;
    border-radius: 5px;
    padding: 1.5rem;
    background: oklch(from var(--black, black) l c h / 0.1);
    code {
      white-space: inherit;
      font-size: 0.9rem;
    }
  }
}
.social-share-alpha {
  --icon-gap: 0.5em;
  --background: var(--white);
  max-inline-size: max-content;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--icon-gap);
  &[data-show-labels='false'] {
    .social-share-alpha__item-label {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
      border: 0;
    }
  }
  &[data-bar-style='true']:not([data-show-labels="true"]) {
    padding: var(--icon-gap);
    border-radius: var(--radius);
    background: var(--background);
  }
}
.social-share-alpha__item-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5em;
  line-height: 1;
  text-decoration: none;
  [data-show-labels='true']:has(&) a {
    padding: 0.5em 1em;
    border-radius: var(--radius, 5px);
    background: var(--background, #fff);
  }
}
.social-share-alpha__item-icon {
  inline-size: var(--icon-size, 1em);
  aspect-ratio: 1;
  color: var(--icon-color, currentColor);
}
.social-share-alpha__item-label {
  font-size: var(--icon-size);
  color: var(--label-color, currentColor);
}
.social-links {
  svg {
    color: #fff;
    height: 40px;
	opacity: 0.5;
  }
  flex-direction: row;
  display: flex;
  align-items: center;

  & a:hover svg {
    color: #cccc; /* Replace with your desired hover color */
    fill: #ccc;
  }
}
.social-box {
  padding: 10px;
  background: #000;
}