:where([data-etch-element="container"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
  max-inline-size: 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="section"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
:where([data-etch-element="iframe"]) {
  inline-size: 100%;
  height: auto;
 aspect-ratio: 16/9;
}
.site-header {
  
    position: sticky;
    inset-block-start: 0;
    z-index: 50;
    padding-inline: var(--gutter);
    background-color: color-mix(in srgb, var(--base) 90%, transparent);
    backdrop-filter: blur(12px);
    border-block-end: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.site-header__inner {
  
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-m);
    padding-block: var(--space-s);
}
.site-header__brand {
  
    display: flex;
    align-items: center;
    gap: var(--space-xs);
    color: var(--white);
    text-decoration: none;
}
.site-header__mark {
  
    inline-size: 2.75rem;
    block-size: auto;
}
.site-header__name {
  
    font-family: var(--heading-font-family);
    font-size: var(--text-l);
    letter-spacing: 0.06em;
    color: var(--white);
}
.site-header__toggle {
  
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-xs);
    color: var(--white);
    border: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
    border-radius: var(--radius);
    @media (min-width: 56.25rem) {
      display: none;
    }
}
.site-header__icon {
  
    inline-size: 1.5rem;
    block-size: 1.5rem;
}
.site-header__nav {
  
    position: fixed;
    inset-block-start: 4.75rem;
    inset-inline: var(--gutter);
    margin: 0;
    padding: var(--space-m);
    color: var(--white);
    background-color: var(--base-dark);
    border: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
    border-radius: var(--radius);
    @media (min-width: 56.25rem) {
      display: block;
      position: static;
      inset: auto;
      padding: 0;
      background: none;
      border: 0;
    }
}
.site-header__menu {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
    @media (min-width: 56.25rem) {
      flex-direction: row;
      align-items: center;
      gap: var(--space-l);
    }
}
.site-header__link {
  
    color: var(--white);
    font-weight: 500;
    text-decoration: none;
    &:hover,
    &:focus-visible {
      color: var(--primary);
    }
}
.site-footer {
  
    padding-inline: var(--gutter);
    padding-block: var(--space-xxl);
    color: var(--text-light-muted);
    background-color: var(--base-ultra-dark);
    border-block-start: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.site-footer__inner {
  
    display: grid;
    gap: var(--space-l);
    @media (min-width: 48rem) {
      grid-template-columns: var(--grid-2-1);
      align-items: start;
    }
}
.site-footer__brand {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
}
.site-footer__logo {
  
    inline-size: 8.75rem;
}
.site-footer__tagline {
  
    font-family: var(--heading-font-family);
    font-size: var(--text-l);
    color: var(--white);
}
.site-footer__topics {
  
    font-size: var(--text-s);
}
.site-footer__links {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
}
.site-footer__link {
  
    display: inline-flex;
    align-items: center;
    gap: var(--space-xs);
    color: var(--white);
    text-decoration: none;
    &:hover,
    &:focus-visible {
      color: var(--primary);
    }
}
.site-footer__icon {
  
    inline-size: 1.25rem;
    block-size: 1.25rem;
    color: var(--primary);
}
.site-footer__legal {
  
    grid-column: 1 / -1;
    padding-block-start: var(--space-m);
    font-size: var(--text-xs);
    border-block-start: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.section-intro {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
    max-inline-size: var(--width-70);
    &[data-align="center"] {
      align-items: center;
      align-self: center;
      text-align: center;
    }
}
.section-intro__eyebrow {
  
    font-size: var(--text-s);
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--primary);
}
.section-intro__text {
  
    color: var(--text-light-muted);
    font-size: var(--text-l);
}
.show-card {
  
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background-color: var(--base-dark);
    border: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
    border-radius: var(--radius);
    transition: transform 0.2s ease, border-color 0.2s ease;
    &:hover,
    &:focus-within {
      transform: translateY(-4px);
      border-color: var(--show-accent, var(--primary));
    }
}
.show-card__image {
  
    inline-size: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}
.show-card__body {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
    padding: var(--space-m);
}
.show-card__meta {
  
    font-size: var(--text-xs);
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--show-accent, var(--primary));
}
.show-card__title {
  
    position: absolute;
    inset: 0;
}
.show-card__link {
  
    display: block;
    block-size: 100%;
    border-radius: var(--radius);
    &:focus-visible {
      outline: 2px solid var(--show-accent, var(--primary));
      outline-offset: 2px;
    }
}
.show-card__description {
  
    font-size: var(--text-s);
    color: var(--text-light-muted);
}
.episode-card {
  
    position: relative;
    display: grid;
    grid-template-columns: 5rem 1fr;
    align-items: start;
    gap: var(--space-m);
    padding: var(--space-m);
    background-color: var(--base-dark);
    border: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
    border-inline-start: 3px solid var(--show-accent, var(--primary));
    border-radius: var(--radius);
    transition: background-color 0.2s ease;
    &:hover,
    &:focus-within {
      background-color: color-mix(in srgb, var(--base-dark) 80%, var(--secondary));
    }
    @media (min-width: 40rem) {
      grid-template-columns: 7rem 1fr;
    }
}
.episode-card__image {
  
    inline-size: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: calc(var(--radius) / 2);
}
.episode-card__body {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
    min-inline-size: 0;
}
.episode-card__show {
  
    font-size: var(--text-xs);
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--show-accent, var(--primary));
}
.episode-card__title {
  
    font-size: var(--h5);
    line-height: 1.25;
}
.episode-card__link {
  
    color: var(--white);
    text-decoration: none;
    &::after {
      content: "";
      position: absolute;
      inset: 0;
    }
    &:hover,
    &:focus-visible {
      color: var(--primary);
    }
}
.episode-card__meta {
  
    font-size: var(--text-xs);
    color: var(--text-light-muted);
}
.episode-card__summary {
  
    font-size: var(--text-s);
    color: var(--text-light-muted);
}
.audio-player {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
    padding: var(--space-m);
    background-color: var(--base-dark);
    border: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
    border-radius: var(--radius);
}
.audio-player__label {
  
    font-size: var(--text-xs);
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary);
}
.audio-player__audio {
  
    inline-size: 100%;
    color-scheme: dark;
}
.audio-player__download {
  
    align-self: flex-start;
    font-size: var(--text-s);
}
.subscribe-cta {
  
    text-align: center;
    background-color: var(--base-dark);
    background-image: linear-gradient(color-mix(in srgb, var(--base-dark) 88%, transparent), color-mix(in srgb, var(--base-dark) 88%, transparent)), url("../assets/mosaic-tile.svg");
    background-size: auto, 30rem;
    border-block: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.subscribe-cta__inner {
  
    align-items: center;
    gap: var(--content-gap);
}
.subscribe-cta__text {
  
    max-inline-size: var(--width-60);
    color: var(--text-light-muted);
}
.subscribe-cta__actions {
  
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-s);
}
.episode-hero {
  
    background-color: var(--base);
    background-image: linear-gradient(color-mix(in srgb, var(--base) 88%, transparent), color-mix(in srgb, var(--base) 88%, transparent)), url("../assets/mosaic-tile.svg");
    background-size: auto, 60rem;
    border-block-end: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.episode-hero__inner {
  
    display: grid;
    align-items: center;
    gap: var(--space-l);
    @media (min-width: 48rem) {
      grid-template-columns: 17.5rem 1fr;
      gap: var(--space-xl);
    }
}
.episode-hero__art {
  
    display: block;
    max-inline-size: 17.5rem;
}
.episode-hero__image {
  
    inline-size: 100%;
    aspect-ratio: 1;
    border-radius: var(--radius);
    box-shadow: 0 1.25rem 3.75rem rgb(0 0 0 / 0.45);
}
.episode-hero__info {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
}
.episode-hero__show {
  
    font-size: var(--text-s);
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--show-accent, var(--primary));
    text-decoration: none;
}
.episode-hero__title {
  
    font-size: var(--h2);
}
.episode-hero__meta {
  
    font-size: var(--text-s);
    color: var(--text-light-muted);
}
.episode-content__inner {
  
    max-inline-size: 47.5rem;
    gap: var(--space-xl);
}
.episode-content__body {
  
    display: flex;
    flex-direction: column;
    gap: var(--content-gap);
    font-size: var(--text-m);
    line-height: 1.7;
}
.episode-content__topics {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
    padding-block-start: var(--space-l);
    border-block-start: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.topic-list__heading {
  
    font-size: var(--h5);
}
.topic-list {
  
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-xs);
}
.topic-list__item {
  
    padding-block: 0.25rem;
    padding-inline: 0.75rem;
    font-size: var(--text-xs);
    color: var(--text-light-muted);
    border: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
    border-radius: 999px;
}
.more-episodes__inner {
  
    gap: var(--space-l);
}
.episodes-list {
  
    display: grid;
    gap: var(--grid-gap);
    @media (min-width: 64rem) {
      grid-template-columns: var(--grid-2);
    }
}
.more-episodes__all {
  
    align-self: flex-start;
}
.show-hero {
  
    background-color: var(--base);
    background-image: linear-gradient(color-mix(in srgb, var(--base) 88%, transparent), color-mix(in srgb, var(--base) 88%, transparent)), url("../assets/mosaic-tile.svg");
    background-size: auto, 60rem;
    border-block-end: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.show-hero__inner {
  
    display: grid;
    align-items: center;
    gap: var(--space-l);
    @media (min-width: 48rem) {
      grid-template-columns: 17.5rem 1fr;
      gap: var(--space-xl);
    }
}
.show-hero__image {
  
    inline-size: 100%;
    max-inline-size: 17.5rem;
    aspect-ratio: 1;
    border-radius: var(--radius);
    box-shadow: 0 1.25rem 3.75rem rgb(0 0 0 / 0.45);
}
.show-hero__info {
  
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
}
.show-hero__meta {
  
    font-size: var(--text-s);
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--show-accent, var(--primary));
    text-decoration: none;
}
.show-hero__description {
  
    max-inline-size: var(--width-60);
    font-size: var(--text-l);
    color: var(--text-light-muted);
}
.show-episodes__inner {
  
    gap: var(--space-l);
}
.hero {
  
    background-color: var(--base);
    background-image: radial-gradient(ellipse at center, color-mix(in srgb, var(--base) 94%, transparent) 0%, color-mix(in srgb, var(--base) 72%, transparent) 55%, color-mix(in srgb, var(--base) 30%, transparent) 100%), url("../assets/mosaic-tile.svg");
    background-size: auto, 60rem;
    border-block-end: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.hero__inner {
  
    align-items: center;
    gap: var(--content-gap);
    text-align: center;
}
.hero__logo {
  
    inline-size: clamp(11.25rem, 28vw, 17.5rem);
}
.hero__text {
  
    max-inline-size: var(--width-60);
    font-size: var(--text-l);
    color: var(--text-light-muted);
}
.hero__actions {
  
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-s);
}
.show-directory__inner {
  
    gap: var(--space-l);
}
.shows-list {
  
    --min: 13.75rem;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(var(--min), 100%), 1fr));
    gap: var(--grid-gap);
}
.latest-episodes__inner {
  
    gap: var(--space-l);
}
.latest-episodes__more {
  
    align-self: flex-start;
}
.page-header {
  
    background-color: var(--base);
    background-image: linear-gradient(color-mix(in srgb, var(--base) 90%, transparent), color-mix(in srgb, var(--base) 90%, transparent)), url("../assets/mosaic-tile.svg");
    background-size: auto, 60rem;
    border-block-end: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.episode-browser {
  
    &:has(#filter-swords-and-space:checked) .episode-card:not([data-show~="swords-and-space"]) {
      display: none;
    }
    &:has(#filter-the-culture-of-comics:checked) .episode-card:not([data-show~="the-culture-of-comics"]) {
      display: none;
    }
    &:has(#filter-the-beautiful-game:checked) .episode-card:not([data-show~="the-beautiful-game"]) {
      display: none;
    }
    &:has(#filter-internet-marketing-insights:checked) .episode-card:not([data-show~="internet-marketing-insights"]) {
      display: none;
    }
    &:has(#filter-aspiring-entrepreneurs:checked) .episode-card:not([data-show~="aspiring-entrepreneurs"]) {
      display: none;
    }
    &:has(#filter-crowdfunded-projects:checked) .episode-card:not([data-show~="crowdfunded-projects"]) {
      display: none;
    }
    &:has(#filter-wordsmith:checked) .episode-card:not([data-show~="wordsmith"]) {
      display: none;
    }
    &:has(#filter-the-american-in-paris:checked) .episode-card:not([data-show~="the-american-in-paris"]) {
      display: none;
    }
}
.episode-browser__inner {
  
    gap: var(--space-l);
}
.episode-filter {
  
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-xs);
    margin: 0;
    padding: 0;
    border: 0;
}
.episode-filter__legend {
  
    float: left;
    inline-size: 100%;
    margin-block-end: var(--space-xs);
    font-size: var(--text-s);
    color: var(--text-light-muted);
}
.episode-filter__input {
  
    --empty-element-size: 0;
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    opacity: 0;
    pointer-events: none;
}
.episode-filter__chip {
  
    display: inline-flex;
    padding-block: var(--space-xs);
    padding-inline: var(--space-s);
    font-size: var(--text-s);
    color: var(--white);
    border: 1px solid color-mix(in srgb, var(--white) 22%, transparent);
    border-radius: 999px;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
    &:hover {
      border-color: var(--primary);
    }
    .episode-filter__input:checked + & {
      color: var(--base);
      background-color: var(--primary);
      border-color: var(--primary);
    }
    .episode-filter__input:focus-visible + & {
      outline: 2px solid var(--primary);
      outline-offset: 2px;
    }
}
.about__inner {
  
    max-inline-size: 47.5rem;
    gap: var(--content-gap);
}
.about__lead {
  
    font-size: var(--text-l);
    color: var(--white);
}
.about__motto {
  
    font-family: var(--heading-font-family);
    font-size: var(--h3);
    color: var(--primary);
}
.about__topics {
  
    font-size: var(--text-s);
    letter-spacing: 0.08em;
    color: var(--text-light-muted);
}
.not-found {
  
    background-color: var(--base);
    background-image: linear-gradient(color-mix(in srgb, var(--base) 90%, transparent), color-mix(in srgb, var(--base) 90%, transparent)), url("../assets/mosaic-tile.svg");
    background-size: auto, 60rem;
    border-block-end: 1px solid color-mix(in srgb, var(--white) 10%, transparent);
}
.not-found__inner {
  
    align-items: center;
    gap: var(--content-gap);
}
.not-found__actions {
  
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-s);
}
.show-card__name {
  
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}