:root {
  --blue: #4A04FB;
  --blue-deep: #250096;
  --orange: #f04a24;
  --orange-soft: #ffb39f;
  --orange-deep: #a92d16;
  --green: #2f8a62;
  --green-soft: #a9d5bd;
  --yellow: #d2a91f;
  --yellow-soft: #f0dc88;
  --pink: #ff4fa3;
  --lilac: #7a55ff;
  --mint: #86f5c7;
  --ink: #30313d;
  --ink-soft: #454653;
  --night: #111117;
  --muted: #70717b;
  --muted-light: #9d9da4;
  --paper: #f5f5f5;
  --surface-soft: #e7e7e7;
  --surface: #e1e1e1;
  --surface-strong: #d8d8d8;
  --line: #1d1d1d;
  --side: clamp(112px, 14vw, 260px);
  --max: 1180px;
  --gutter: clamp(22px, 5vw, 72px);
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Space Grotesk", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
html { scroll-behavior: smooth; }
html.smooth-scroll-enabled { scroll-behavior: auto; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  font-weight: 650;
  letter-spacing: -0.035em;
}
body.is-loading {
  overflow: hidden;
}
.page-swipe {
  position: fixed;
  inset: 0;
  z-index: 19000;
  background: var(--blue);
  pointer-events: none;
  transform: translate3d(101%, 0, 0);
  transition: transform .62s cubic-bezier(.77, 0, .175, 1);
}
.page-swipe.is-active {
  transform: translate3d(0, 0, 0);
}
.page-swipe.is-expressive {
  transition-duration: .5s;
}
.page-swipe.is-expressive.is-reverse {
  transform: translate3d(-101%, 0, 0);
}
.page-swipe.is-expressive.is-reverse.is-active {
  transform: translate3d(0, 0, 0);
}
.page-swipe.is-quiet {
  background: var(--paper);
  opacity: 0;
  transform: translate3d(0, 12px, 0);
  transition:
    opacity .24s cubic-bezier(.16, 1, .3, 1),
    transform .24s cubic-bezier(.16, 1, .3, 1);
}
.page-swipe.is-quiet.is-active {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.issue-detail-main,
.page-detail-main {
  animation: issue-page-enter .72s cubic-bezier(.16, 1, .3, 1) both;
}
.issue-detail-page,
.page-detail {
  min-height: 0;
}
@keyframes issue-page-enter {
  from { opacity: 0; transform: translate3d(44px, 0, 0); filter: blur(10px); }
  to { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }
}
a { color: inherit; text-decoration: none; }
p { margin: 0 0 1rem; font-weight: 500; line-height: 1.25; letter-spacing: -0.025em; }
img, video { display: block; max-width: 100%; }
.site-loader {
  position: fixed;
  inset: 0;
  z-index: 20000;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--night);
  color: var(--paper);
  transform: translate3d(0, 0, 0);
  transition: transform .92s cubic-bezier(.77, 0, .175, 1), opacity .62s ease;
}
.site-loader.is-exiting {
  transform: translate3d(0, -105%, 0);
  opacity: .98;
}
.site-loader.is-hidden {
  display: none;
}
.loader-stage {
  position: relative;
  width: min(980px, 92vw);
  height: min(540px, 70svh);
  display: grid;
  place-items: center;
}
.loader-lockup {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16px, 3vw, 36px);
  color: white;
  mix-blend-mode: difference;
}
.loader-logo {
  font-size: clamp(64px, 15vw, 210px);
  font-weight: 900;
  line-height: .78;
  letter-spacing: -.1em;
  transform: translate3d(0, 0, 0);
}
.loader-percent {
  min-width: 5ch;
  align-self: center;
  font-size: clamp(18px, 3.4vw, 54px);
  line-height: 1;
  text-align: right;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.06em;
}
.loader-covers {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}
.loader-cover {
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(150px, 18vw, 250px);
  aspect-ratio: 3 / 4;
  overflow: hidden;
  opacity: 0;
  box-shadow: 0 24px 70px rgba(0,0,0,.36);
  transform:
    translate3d(calc(-50% + var(--stack-x, 0px)), calc(-50% + var(--stack-y, 0px)), 0)
    rotate(var(--stack-r, 0deg))
    scale(.94);
  filter: blur(18px);
  transition:
    opacity .34s ease,
    transform .58s cubic-bezier(.16, 1, .3, 1),
    filter .5s cubic-bezier(.16, 1, .3, 1);
  transition-delay: var(--cover-delay, 0ms);
}
.loader-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.site-loader.is-stacking .loader-cover {
  opacity: 1;
  transform:
    translate3d(calc(-50% + var(--stack-x, 0px)), calc(-50% + var(--stack-y, 0px)), 0)
    rotate(var(--stack-r, 0deg))
    scale(1);
  filter: blur(0);
}
.loader-cover:nth-child(1) { --stack-x: -76px; --stack-y: 18px; --stack-r: -8deg; --cover-delay: 260ms; }
.loader-cover:nth-child(2) { --stack-x: -34px; --stack-y: -10px; --stack-r: 5deg; --cover-delay: 520ms; }
.loader-cover:nth-child(3) { --stack-x: 18px; --stack-y: 10px; --stack-r: -3deg; --cover-delay: 800ms; }
.loader-cover:nth-child(4) { --stack-x: 54px; --stack-y: -18px; --stack-r: 7deg; --cover-delay: 1080ms; }
.loader-cover:nth-child(5) { --stack-x: 0px; --stack-y: -2px; --stack-r: 0deg; --cover-delay: 1360ms; }
.underline-link,
.side-nav nav a,
.site-footer nav a,
.explore-link {
  position: relative;
  width: fit-content;
}
.underline-link::after,
.side-nav nav a::after,
.site-footer nav a::after,
.explore-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.16em;
  height: 0.08em;
  min-height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .58s cubic-bezier(.16, 1, .3, 1);
}
.underline-link:hover::after,
.underline-link:focus-visible::after,
.side-nav nav a:hover::after,
.side-nav nav a:focus-visible::after,
.side-nav nav a.active::after,
.side-nav nav a[aria-current="page"]::after,
.site-footer nav a:hover::after,
.site-footer nav a:focus-visible::after,
.explore-link:hover::after,
.explore-link:focus-visible::after {
  transform: scaleX(1);
}
.underline-link:hover,
.underline-link:focus-visible {
  color: var(--blue);
}
.smooth-scroll-content {
  width: 100%;
  will-change: transform;
}
.smooth-scroll-enabled .smooth-scroll-content {
  position: fixed;
  inset: 0 auto auto 0;
}
.skip-link { position: fixed; top: .5rem; left: .5rem; z-index: 100; transform: translateY(-150%); background: white; padding: .5rem; }
.skip-link:focus { transform: translateY(0); }
.mobile-menu-toggle { display: none; }

.side-nav {
  position: fixed;
  inset: 0 auto 0 0;
  width: var(--side);
  padding: 76px 32px 46px;
  z-index: 10;
  pointer-events: none;
  color: white;
  mix-blend-mode: difference;
}
.logo { display: inline-block; font-size: clamp(22px, 2vw, 34px); font-weight: 900; letter-spacing: -0.08em; }
.side-nav nav { display: grid; gap: 14px; margin-top: 60px; font-size: 14px; letter-spacing: -0.03em; }
.side-nav a { pointer-events: auto; }
.top-ticker {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 100;
  height: 34px;
  overflow: hidden;
  display: flex;
  align-items: center;
  background: var(--blue);
  color: white;
  border-bottom: 1px solid var(--line);
  white-space: nowrap;
}
.ticker-dismissed .top-ticker { display: none; }
.ticker-link {
  min-width: 0;
  flex: 1;
  overflow: hidden;
}
.top-ticker::after {
  content: "";
  position: absolute;
  inset: 0 0 0 auto;
  width: 92px;
  background: linear-gradient(90deg, rgba(74,4,251,0), var(--blue) 58%);
  pointer-events: none;
}
.ticker-track {
  display: flex;
  width: max-content;
  align-items: center;
  animation: ticker-scroll 18s linear infinite;
}
.top-ticker:hover .ticker-track { animation-play-state: paused; }
.ticker-dismiss {
  position: absolute;
  top: 50%;
  right: 11px;
  z-index: 2;
  width: 22px;
  height: 22px;
  min-width: 22px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 999px;
  background: var(--blue);
  color: white;
  font-size: 19px;
  font-weight: 800;
  line-height: 1;
  opacity: 0;
  transform: translate3d(0, -50%, 0) scale(.9);
  transition: opacity .18s ease, transform .18s ease, background .18s ease;
}
.ticker-dismiss::before { display: none; }
.top-ticker:hover .ticker-dismiss,
.ticker-dismiss:focus-visible {
  opacity: 1;
  transform: translate3d(0, -50%, 0) scale(1);
}
.ticker-dismiss:hover,
.ticker-dismiss:focus-visible {
  background: var(--blue-deep);
  color: white;
}
.ticker-track span {
  padding-right: 48px;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.025em;
  text-transform: uppercase;
}
@keyframes ticker-scroll {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(-33.333%,0,0); }
}

main { margin-left: 0; padding-top: 0; }
.has-top-ticker main { padding-top: 34px; }
.ticker-dismissed main { padding-top: 0; }
.site-footer { margin-left: var(--side); }
.hero { min-height: 100svh; display: grid; align-items: stretch; border-bottom: 1px solid var(--line); background: var(--surface-soft); }
.has-top-ticker .hero { min-height: calc(100svh - 34px); }
.ticker-dismissed .hero { min-height: 100svh; }
.hero-media { position: relative; min-height: 100svh; overflow: hidden; }
.has-top-ticker .hero-media { min-height: calc(100svh - 34px); }
.ticker-dismissed .hero-media { min-height: 100svh; }
.hero-media video { width: 100%; height: 100svh; object-fit: cover; border: 0; transform: scale(1.015); transform-origin: center; filter: saturate(.82) contrast(.98); }
.has-top-ticker .hero-media video { height: calc(100svh - 34px); }
.ticker-dismissed .hero-media video { height: 100svh; }
.hero-media::after { content: ""; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 0 1px rgba(0,0,0,.04); }

.section-pad { margin-left: var(--side); padding: clamp(76px, 10vw, 150px) var(--gutter); position: relative; border-bottom: 0; }
.section-pad::after { content: ""; position: absolute; left: calc(-1 * var(--side)); right: 0; bottom: 0; border-bottom: 1px solid var(--line); pointer-events: none; }
.issue-grid { position: relative; isolation: isolate; max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 28px 70px; align-items: start; }
h1 { position: relative; z-index: 2; grid-column: 1 / -1; margin: 0 0 8px; font-size: clamp(44px, 7vw, 86px); line-height: .95; letter-spacing: -0.08em; }
.big-quote { position: relative; z-index: 1; grid-column: 1; grid-row: 2; margin: clamp(28px, 4vw, 54px) 0 0; color: var(--blue); font-family: var(--serif); font-style: italic; font-weight: 900; font-size: clamp(24px, 3.4vw, 46px); line-height: .78; letter-spacing: -.1em; max-width: min(520px, 100%); }
.big-quote cite { display: block; margin-top: 18px; font-style: italic; }
.issue-copy { position: relative; z-index: 3; grid-column: 2; grid-row: 2; font-size: 15px; column-count: 1; }

.section-script { position: relative; z-index: 0; pointer-events: none; margin: 0 0 clamp(32px, 5vw, 64px); color: var(--blue); font-family: var(--serif); font-style: italic; font-weight: 900; font-size: clamp(70px, 13vw, 190px); line-height: .73; letter-spacing: -.12em; }
.two-col { position: relative; z-index: 3; max-width: var(--max); margin: 0 auto; display: grid; grid-template-columns: 1.1fr 1fr; gap: 70px; align-items: start; }
.about .section-script { max-width: var(--max); margin: 0 auto clamp(32px, 5vw, 64px); }
.about-grid { align-items: center; }
.lead { font-size: clamp(26px, 3.2vw, 47px); line-height: 1.05; font-weight: 850; }
.text-block { max-width: 430px; font-size: 15px; color: var(--ink-soft); }

.articles { position: relative; overflow: hidden; }
.articles .section-script, .events .section-script { max-width: var(--max); margin: 0 auto clamp(36px, 5vw, 70px); position: relative; z-index: 0; pointer-events: none; }
.article-list { position: relative; max-width: var(--max); margin: 0 auto; border-top: 1px solid var(--line); z-index: 3; }
.article-row {
  position: relative;
  min-height: 64px;
  display: grid;
  grid-template-columns: 140px minmax(210px, 1.1fr) minmax(140px, .55fr) minmax(260px, .9fr);
  gap: 24px;
  align-items: center;
  padding: 13px 0;
  background: var(--paper);
  border-bottom: 1px solid var(--line);
  font-size: 14px;
  transition: background .18s ease, color .18s ease, padding .18s ease;
}
.article-row a { font-weight: 900; }
.article-row ul { display: flex; gap: 4px; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.article-row li { border: 1px solid currentColor; border-radius: 999px; padding: 2px 8px 3px; font-weight: 500; }
.article-row:hover, .article-row:focus-within { background: var(--orange); color: white; padding-left: 18px; padding-right: 18px; }
.hover-thumb { position: fixed; width: 280px; height: 330px; object-fit: cover; pointer-events: none; opacity: 0; z-index: 3; transform: translate(-50%, -50%) rotate(.8deg); mix-blend-mode: multiply; filter: saturate(1.35) contrast(1.12); transition: opacity .12s ease; }
.hover-thumb.visible { opacity: .95; }
.explore-link {
  max-width: var(--max);
  margin: 24px max(0px, calc((100% - var(--max)) / 2)) 0 auto;
  display: block;
  text-align: right;
  font-size: 14px;
}
.explore-link:hover { color: var(--blue); }

.events { overflow: hidden; }
.event-grid {
  position: relative;
  z-index: 3;
  max-width: 900px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}
.event-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 330px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--surface-soft);
  color: var(--ink);
  transition: transform .28s cubic-bezier(.16,1,.3,1), color .18s ease;
}
.event-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--blue);
  transform: translate3d(-110%, 0, 0) skewX(-8deg);
  transform-origin: left center;
  transition: transform .38s cubic-bezier(.77,0,.175,1);
}
.event-card::after {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 22px;
  z-index: 2;
  height: 1px;
  background: currentColor;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition:
    opacity .18s ease,
    transform .34s cubic-bezier(.16,1,.3,1);
  pointer-events: none;
}
.event-label {
  position: relative;
  z-index: 2;
  align-self: flex-start;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.02em;
  text-transform: uppercase;
  transition:
    color .18s ease,
    transform .28s cubic-bezier(.16,1,.3,1),
    opacity .28s cubic-bezier(.16,1,.3,1);
}
.event-image {
  position: absolute;
  inset: 50% auto auto 50%;
  z-index: 1;
  object-fit: cover;
  filter: grayscale(1) contrast(1.08);
  transform: translate(-50%, -50%) rotate(-1deg);
  animation: event-image-float 2.4s ease-in-out infinite alternate;
  transition:
    opacity .18s ease,
    transform .3s cubic-bezier(.77,0,.175,1),
    filter .18s ease;
  will-change: transform;
}
.event-card:nth-child(2n) .event-image { animation-delay: -1.4s; }
.event-card:nth-child(3n) .event-image { animation-delay: -2.8s; }
.image-square { width: 170px; height: 170px; }
.image-portrait { width: 132px; height: 196px; }
.image-landscape { width: 218px; height: 138px; }
.image-tall { width: 118px; height: 218px; }
.event-info {
  position: relative;
  z-index: 3;
  max-width: 335px;
  padding-bottom: 18px;
  display: grid;
  gap: 12px;
  opacity: 0;
  transform: translate3d(-18px, 16px, 0);
  filter: blur(7px);
  transition:
    opacity .24s ease,
    transform .34s cubic-bezier(.16,1,.3,1),
    filter .34s cubic-bezier(.16,1,.3,1);
}
.event-title {
  display: block;
  font-size: clamp(27px, 3.1vw, 42px);
  line-height: .88;
  text-transform: uppercase;
  letter-spacing: -.07em;
}
.event-copy {
  display: block;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.24;
  letter-spacing: -.02em;
}
.event-card .underline-link {
  display: inline-block;
  width: fit-content;
  color: inherit;
  font-size: 14px;
  transform: translate3d(-10px, 0, 0);
  opacity: 0;
  transition:
    color .18s ease,
    opacity .24s ease,
    transform .34s cubic-bezier(.16,1,.3,1);
}
.event-card:hover,
.event-card:focus-visible {
  color: white;
  transform: translateY(-5px);
}
.event-card:hover::before,
.event-card:focus-visible::before {
  transform: translate3d(0, 0, 0) skewX(0deg);
}
.event-card:hover::after,
.event-card:focus-visible::after {
  opacity: .45;
  transform: scaleX(1);
  transition-delay: .12s;
}
.event-card:hover .event-image,
.event-card:focus-visible .event-image {
  opacity: 0;
  transform: translate(-36%, -50%) rotate(4deg) scale(.78);
  animation-play-state: paused;
}
.event-card:hover .event-label,
.event-card:focus-visible .event-label {
  transform: translate3d(0, -3px, 0);
}
.event-card:hover .event-info,
.event-card:focus-visible .event-info {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  filter: blur(0);
  transition-delay: .07s;
}
.event-card:hover .underline-link,
.event-card:focus-visible .underline-link {
  color: white;
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: .16s;
}
@keyframes event-image-float {
  from { transform: translate(-50%, -50%) rotate(-1.4deg) skewX(-1.5deg) translateY(-4px); }
  to { transform: translate(-50%, -50%) rotate(1.4deg) skewX(1.5deg) translateY(4px); }
}

.open-call { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); gap: 60px; align-items: end; }
.open-call .section-script { font-size: clamp(58px, 10vw, 150px); }
.open-call .text-block {
  transform: none;
}
.open-call .button {
  margin-top: 18px;
}
.button,
button {
  --button-fill: var(--blue);
  --button-hover-color: white;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid currentColor;
  background: transparent;
  color: inherit;
  padding: 13px 18px;
  border-radius: 999px;
  font: inherit;
  cursor: pointer;
  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  line-height: 1;
  transition: color .42s cubic-bezier(.16, 1, .3, 1), border-color .42s cubic-bezier(.16, 1, .3, 1);
}
.button::before,
button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--button-fill);
  border-radius: inherit;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .58s cubic-bezier(.16, 1, .3, 1);
}
.button:hover,
.button:focus-visible,
button:hover,
button:focus-visible {
  color: var(--button-hover-color);
}
.button:hover::before,
.button:focus-visible::before,
button:hover::before,
button:focus-visible::before {
  transform: scaleX(1);
}
.text-block .button,
.text-block .underline-link,
.issue-copy .button {
  margin-top: 10px;
}

.newsletter { margin-left: var(--side); background: var(--blue); color: white; padding: clamp(72px, 10vw, 128px) var(--gutter); position: relative; border-bottom: 0; }
.newsletter::after { content: ""; position: absolute; left: calc(-1 * var(--side)); right: 0; bottom: 0; border-bottom: 1px solid var(--line); pointer-events: none; }
.newsletter .section-script { z-index: 0; color: white; max-width: var(--max); margin: 0 auto 28px; }
.newsletter-form { position: relative; z-index: 2; max-width: 620px; margin: 0 auto; display: grid; gap: 12px; }
.newsletter button {
  --button-fill: white;
  --button-hover-color: var(--blue);
}
.newsletter-form > label:first-child { font-size: clamp(22px, 3vw, 36px); }
.newsletter-form input[type="email"] { width: 100%; border: 0; border-bottom: 1px solid currentColor; background: transparent; color: white; font: inherit; padding: 12px 0; outline: none; }
.newsletter-form input::placeholder { color: rgba(255,255,255,.65); }
.checks {
  display: grid;
  gap: 9px;
  font-size: 15px;
  font-weight: 650;
  letter-spacing: -.02em;
}
.checks label {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 9px;
  cursor: pointer;
}
.checks input[type="checkbox"] {
  appearance: none;
  flex: 0 0 auto;
  width: 1em;
  height: 1em;
  margin: 0;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  background: transparent;
  color: white;
  cursor: pointer;
}
.checks input[type="checkbox"]::before {
  content: "";
  width: .5em;
  height: .28em;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  opacity: 0;
  transform: translateY(-.05em) rotate(-45deg) scale(.72);
  transition:
    opacity .18s ease,
    transform .22s cubic-bezier(.16,1,.3,1);
}
.checks input[type="checkbox"]:checked::before {
  opacity: 1;
  transform: translateY(-.05em) rotate(-45deg) scale(1);
}
.checks input[type="checkbox"]:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
.form-note { min-height: 1.2em; font-size: 14px; }

.site-footer {
  --footer-gutter: clamp(24px, 2.5vw, 48px);
  width: 100%;
  margin-left: 0;
  padding: 0 var(--footer-gutter) 22px;
  background: var(--paper);
  color: var(--ink);
  border-top: 1px solid var(--line);
}
.footer-top {
  display: grid;
  grid-template-columns: minmax(240px, 1.2fr) minmax(160px, .55fr) minmax(260px, .9fr);
  gap: clamp(34px, 6vw, 92px);
  padding: 44px 0 clamp(38px, 6vw, 74px);
  border-bottom: 1px solid var(--line);
  margin-left: calc(-1 * var(--footer-gutter));
  margin-right: calc(-1 * var(--footer-gutter));
  padding-left: var(--footer-gutter);
  padding-right: var(--footer-gutter);
}
.footer-brand,
.footer-links,
.footer-contact,
.footer-socials {
  display: grid;
  align-content: start;
  gap: 8px;
}
.footer-brand {
  gap: 14px;
}
.footer-brand p,
.footer-contact p {
  max-width: 300px;
  margin: 0;
  font-size: 14px;
}
.footer-links,
.footer-contact,
.footer-socials,
.footer-bottom {
  font-size: 14px;
}
.footer-socials {
  margin-top: 18px;
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-top: 14px;
}
.footer-bottom p {
  margin: 0;
  font-size: inherit;
  font-weight: 650;
  line-height: 1.1;
}
.footer-bottom a {
  position: relative;
}
.footer-bottom a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.16em;
  height: 1px;
  background: currentColor;
}
.footer-bottom a:hover,
.footer-bottom a:focus-visible {
  color: var(--blue);
}

@media (max-width: 860px) {
  :root { --side: 0px; }
  .side-nav { position: sticky; top: 0; width: 100%; height: auto; background: rgba(245,245,245,.94); backdrop-filter: blur(10px); padding: 18px 20px; display: flex; justify-content: space-between; gap: 20px; color: var(--ink); mix-blend-mode: normal; }
  .side-nav nav { margin: 0; display: flex; overflow-x: auto; gap: 16px; align-items: center; }
  main { margin-left: 0; padding-top: 0; }
  .has-top-ticker main { padding-top: 30px; }
  .ticker-dismissed main { padding-top: 0; }
  .site-footer { margin-left: 0; }
  .top-ticker { height: 30px; }
  .ticker-track span { font-size: 12px; padding-right: 34px; }
  .section-pad, .newsletter { margin-left: 0; }
  .issue-grid, .two-col, .open-call { grid-template-columns: 1fr; }
  .issue-copy { position: relative; z-index: 2; grid-column: 1; }
  .big-quote { position: relative; z-index: 0; grid-column: 1; margin-left: 0; }
  .article-row { grid-template-columns: 92px 1fr; gap: 8px 14px; }
  .article-row ul, .article-row > span:nth-of-type(2) { display: none; }
  .hover-thumb { display: none; }
  .event-grid { grid-template-columns: 1fr; max-width: 460px; }
  .event-card .event-image,
  .event-card .event-image.image-square,
  .event-card .event-image.image-portrait,
  .event-card .event-image.image-landscape,
  .event-card .event-image.image-tall {
    width: auto;
    height: auto;
    max-width: min(78%, 320px);
    max-height: 64%;
    object-fit: contain;
  }
  .footer-top { grid-template-columns: 1fr; }
  .footer-socials {
    margin-top: 8px;
  }
  .footer-bottom {
    display: grid;
    gap: 8px;
    margin-top: 28px;
  }
}

/* =========================================================
   WordPress v2.1: predictable Gutenberg canvas + collections
   ========================================================= */
html,
body {
  max-width: 100%;
  overflow-x: clip;
}
.mosaiek-block-page,
.mosaiek-block-content,
.mosaiek-footer-blocks {
  width: 100%;
  max-width: 100%;
}
.mosaiek-block-page > *,
.mosaiek-block-content > * {
  margin-block: 0;
}
.mosaiek-block-page .is-layout-flow > * {
  margin-block-start: 0;
}
.side-nav {
  z-index: 1000;
  color: var(--ink);
  mix-blend-mode: normal;
}
.mosaiek-editor-empty {
  margin: 24px;
  padding: 24px;
  border: 1px dashed currentColor;
  color: var(--muted);
  font-family: var(--sans);
}
.mosaiek-editor-empty p { margin-bottom: 0; }

.collection-archive__hero {
  min-height: min(72vh, 760px);
  padding: clamp(140px, 18vw, 240px) var(--gutter) clamp(70px, 10vw, 130px) var(--side);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-bottom: 1px solid var(--line);
}
.collection-archive__hero h1 {
  max-width: 100%;
  margin: 16px 0 0;
  font-size: clamp(96px, 17vw, 260px);
  line-height: .72;
  letter-spacing: -.095em;
}
.collection-grid {
  padding: var(--gutter) var(--gutter) calc(var(--gutter) * 1.6) var(--side);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 4vw, 64px);
}
.collection-card {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(180px, .9fr) 1fr;
  color: inherit;
  text-decoration: none;
  border-top: 1px solid var(--line);
  transition: color .25s ease, opacity .25s ease;
}
.collection-card__image {
  min-height: 340px;
  overflow: hidden;
  background: var(--surface-soft);
}
.collection-card__image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.collection-card__copy {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.collection-card__copy strong { font-size: clamp(28px, 3vw, 48px); line-height: .92; }
.collection-card__copy u { margin-top: auto; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.collection-card:hover,
.collection-card:focus-visible { color: var(--blue); }
.collection-empty { grid-column: 1 / -1; min-height: 300px; padding: var(--gutter) 0; }
.collection-empty h2 { max-width: 850px; font-size: clamp(42px, 7vw, 96px); line-height: .9; }

.open-call-prompts { padding: var(--gutter) var(--gutter) var(--gutter) var(--side); }
.prompt-strip { margin-top: var(--gutter) !important; gap: 12px !important; }
.prompt-strip figure { min-width: 0; background: var(--surface-soft); }
.prompt-strip img { width: 100%; height: 100%; object-fit: contain !important; }
.shop-placeholder {
  min-height: max(72vh, 620px);
  padding: clamp(150px, 20vw, 280px) var(--gutter) var(--gutter) var(--side);
  background: var(--surface-soft);
}
.shop-placeholder h1 { max-width: 1050px; margin: 20px 0; font-size: clamp(70px, 12vw, 180px); line-height: .78; }

@media (max-width: 860px) {
  .mosaiek-home-block-page > .wp-block-cover.hero,
  .mosaiek-home-block-page > .wp-block-cover.mosaiek-editor-hero {
    min-height: 0 !important;
    aspect-ratio: 16 / 9;
  }
  .mosaiek-home-block-page .mosaiek-editor-hero .wp-block-cover__image-background {
    object-fit: cover;
  }
  .collection-archive__hero {
    min-height: 460px;
    padding: 150px 18px 48px;
  }
  .collection-archive__hero h1 { font-size: clamp(78px, 25vw, 126px); }
  .collection-grid {
    padding: 28px 18px 64px;
    grid-template-columns: 1fr;
  }
  .collection-card { grid-template-columns: minmax(130px, .85fr) 1fr; }
  .collection-card__image { min-height: 260px; }
  .collection-card__copy { padding: 12px; gap: 12px; }
  .open-call-prompts { padding: 48px 18px; }
  .prompt-strip { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .shop-placeholder { min-height: calc(100svh - 90px); padding: 150px 18px 48px; }
  .shop-placeholder h1 { font-size: clamp(64px, 21vw, 100px); }
}

/* =========================================================
   edit round: full-bleed rules, smoother reveals, quote placement
   ========================================================= */

/* old round used a circle störer; keep it disabled in case old markup is cached */
.open-call-storer{ display:none !important; }

/* all separators should visually reach the viewport's left edge */
.section-pad::after{
  left: calc(-1 * var(--side));
  right: 0;
}

/* full-bleed article list lines while content still starts after the side menu */
.article-list{
  max-width:none;
  margin-left: calc(-1 * (var(--side) + var(--gutter)));
  margin-right: calc(-1 * var(--gutter));
  border-top:1px solid var(--line);
}
.article-row{
  padding-left: calc(var(--side) + var(--gutter));
  padding-right: var(--gutter);
  transition: background .28s cubic-bezier(.16,1,.3,1), color .28s cubic-bezier(.16,1,.3,1), padding .28s cubic-bezier(.16,1,.3,1);
}
.article-row:hover,
.article-row:focus-within{
  padding-left: calc(var(--side) + var(--gutter) + 18px);
  padding-right: calc(var(--gutter) + 18px);
}

/* newsletter blue should also run underneath the fixed side menu */
.newsletter{
  margin-left:0;
  padding-left: calc(var(--side) + var(--gutter));
}
.newsletter::after{ left:0; }

/* The issue quote and copy occupy separate columns without overlap. */
.issue-grid{ isolation:isolate; }
.issue-copy{
  z-index:4;
}

/* text reveal: applied by JS to non-blue text/content elements */
.text-reveal{
  opacity:0;
  transform:translate3d(0, 24px, 0);
  filter:blur(4px);
  transition:
    opacity .82s cubic-bezier(.16,1,.3,1),
    transform .82s cubic-bezier(.16,1,.3,1),
    filter .82s cubic-bezier(.16,1,.3,1);
  transition-delay:var(--reveal-delay, 0ms);
  will-change:opacity, transform, filter;
}
.text-reveal.in-view{
  opacity:1;
  transform:translate3d(0,0,0);
  filter:blur(0);
}
.display-fade {
  opacity: 0;
  transition: opacity .78s cubic-bezier(.16, 1, .3, 1);
}
.display-fade.in-view {
  opacity: 1;
}

/* smoother cursor thumbnail: opacity/scale controlled by JS lerp */
.hover-thumb{
  z-index:2;
  opacity:0;
  transform:translate3d(-9999px,-9999px,0) translate(-50%,-50%) rotate(.8deg) scale(.92);
  transition:opacity .24s cubic-bezier(.16,1,.3,1), filter .24s cubic-bezier(.16,1,.3,1);
  will-change:transform, opacity;
}
.hover-thumb.visible{ opacity:.96; }

.newsletter-type{
  display:flex;
  align-items:baseline;
  gap:18px;
  font-size:clamp(24px, 3.3vw, 42px) !important;
  line-height:.95;
}
.newsletter-type span{
  flex:0 0 auto;
}
.newsletter-type input[type="email"]{
  min-width:0;
  flex:1;
  border-bottom:0;
  padding:0 0 6px;
}
.newsletter-type input::placeholder{ color:rgba(255,255,255,.72); }

@media (max-width: 860px){
  .section-pad::after{ left:0; }
  .article-list{
    margin-left: calc(-1 * var(--gutter));
    margin-right: calc(-1 * var(--gutter));
  }
  .article-row{
    padding-left:var(--gutter);
    padding-right:var(--gutter);
  }
  .article-row:hover,
  .article-row:focus-within{
    padding-left:calc(var(--gutter) + 12px);
    padding-right:calc(var(--gutter) + 12px);
  }
  .newsletter{ padding-left:var(--gutter); }
  .big-quote{
    grid-column:1;
    margin-left:0;
    max-width:100%;
  }
  .newsletter-type{ flex-direction:column; gap:10px; }
  .newsletter-type input[type="email"]{ width:100%; }
}

@media (prefers-reduced-motion: reduce){
  .text-reveal{ opacity:1; transform:none; filter:none; transition:none; }
  .display-fade{ opacity:1; transition:none; }
}


/* =========================================================
   final polish: true full-bleed separators + restored smooth thumbnail
   ========================================================= */

/* make every content section span the full viewport, then indent only the content */
.section-pad{
  margin-left:0;
  padding-left:calc(var(--side) + var(--gutter));
}
.section-pad::after{
  left:0;
  right:0;
}

/* recent article list: all row rules reach the left edge, while text stays aligned */
.article-list{
  max-width:none;
  margin-left:calc(-1 * (var(--side) + var(--gutter)));
  margin-right:calc(-1 * var(--gutter));
  border-top:1px solid var(--line);
  overflow:visible;
}
.article-row{
  padding-left:calc(var(--side) + var(--gutter));
  padding-right:var(--gutter);
  border-bottom:1px solid var(--line);
  position:relative;
  z-index:4;
}
.article-row:hover,
.article-row:focus-within{
  padding-left:calc(var(--side) + var(--gutter) + 18px);
  padding-right:calc(var(--gutter) + 18px);
}

/* event/open-call section separators are full viewport width too */
.articles::after,
.events::after,
.open-call::after{
  left:0;
  right:0;
}

/* newsletter blue background + bottom rule truly full bleed */
.newsletter{
  margin-left:0;
  padding-left:calc(var(--side) + var(--gutter));
}
.newsletter::after{
  left:0;
  right:0;
}

/* restored Zajno-ish article thumbnail: visible, smooth, slightly behind text energy */
.hover-thumb{
  position:fixed;
  width:clamp(220px, 22vw, 330px);
  height:clamp(270px, 30vw, 430px);
  object-fit:cover;
  pointer-events:none;
  opacity:0;
  z-index:2;
  display:block;
  transform:translate3d(-9999px,-9999px,0) translate(-50%,-50%) rotate(-1.2deg) scale(.88);
  mix-blend-mode:multiply;
  filter:saturate(1.35) contrast(1.08);
  box-shadow:0 22px 50px rgba(0,0,0,.16);
  transition:opacity .22s cubic-bezier(.16,1,.3,1), filter .22s cubic-bezier(.16,1,.3,1);
  will-change:transform, opacity;
}
.hover-thumb.visible{
  opacity:.96;
}
.article-list.is-hovering .article-row:not(:hover){
  opacity:.72;
}
.article-row{
  transition:
    opacity .22s cubic-bezier(.16,1,.3,1),
    background .28s cubic-bezier(.16,1,.3,1),
    color .28s cubic-bezier(.16,1,.3,1),
    padding .28s cubic-bezier(.16,1,.3,1);
}

@media (max-width: 860px){
  .section-pad,
  .newsletter{
    padding-left:var(--gutter);
  }
  .article-list{
    margin-left:calc(-1 * var(--gutter));
    margin-right:calc(-1 * var(--gutter));
  }
  .article-row{
    padding-left:var(--gutter);
    padding-right:var(--gutter);
  }
  .article-row:hover,
  .article-row:focus-within{
    padding-left:calc(var(--gutter) + 12px);
    padding-right:calc(var(--gutter) + 12px);
  }
  .hover-thumb{ display:none; }
}


/* final requested edit: Space Grotesk + hover thumb layer */
.hover-thumb{
  z-index:2;
  display:block;
}
.article-row{
  z-index:4;
}


/* requested tiny edits: video, Space Grotesk, Zajno-ish hover thumbnails */
.hero-video{
  width:100%;
  height:calc(100svh - 34px);
  object-fit:cover;
}
.hover-thumb{
  position:fixed;
  display:block;
  width:clamp(220px, 22vw, 330px);
  height:clamp(270px, 30vw, 430px);
  object-fit:cover;
  pointer-events:none;
  opacity:0;
  z-index:2;
  transform:translate3d(-9999px,-9999px,0) translate(-50%,-50%) rotate(-1.2deg) scale(.88);
  mix-blend-mode:multiply;
  filter:saturate(1.35) contrast(1.08);
  box-shadow:0 22px 50px rgba(0,0,0,.16);
  transition:opacity .22s cubic-bezier(.16,1,.3,1), filter .22s cubic-bezier(.16,1,.3,1);
  will-change:transform, opacity;
}
.hover-thumb.visible{ opacity:.96; }
.article-row{ position:relative; z-index:4; }
.article-list.is-hovering .article-row:not(:hover){ opacity:.72; }
@media (max-width: 860px){ .hover-thumb{ display:none; } }


/* =========================================================
   requested small tweaks: slower reveal, usable email line,
   reliable Zajno-ish recent article thumbnails
   ========================================================= */

/* slower first-load / on-scroll fade-in */
.text-reveal{
  transform:translate3d(0, 32px, 0);
  filter:blur(5px);
  transition:
    opacity 1.45s cubic-bezier(.16,1,.3,1),
    transform 1.45s cubic-bezier(.16,1,.3,1),
    filter 1.45s cubic-bezier(.16,1,.3,1);
}

/* make the newsletter/footer-style email sentence actually typeable inline */
.newsletter-type{
  display:flex;
  align-items:baseline;
  gap:18px;
  width:100%;
  font-size:clamp(24px, 3.3vw, 42px) !important;
  line-height:.95;
  cursor:text;
}
.newsletter-type span{ flex:0 0 auto; }
.newsletter-type input[type="email"]{
  min-width:0;
  flex:1;
  width:auto;
  border:0;
  border-bottom:1px solid currentColor;
  background:transparent;
  color:white;
  font:inherit;
  padding:0 0 7px;
  outline:none;
}
.newsletter-type input[type="email"]::placeholder{ color:rgba(255,255,255,.72); }
.newsletter-type input[type="email"]:focus{ border-bottom-width:2px; }

/* the thumbnail is moved to <body> by JS, so it is no longer trapped by list stacking */
.hover-thumb{
  position:fixed;
  top:0;
  left:0;
  display:block;
  width:clamp(180px, 17vw, 270px);
  height:clamp(225px, 23vw, 345px);
  object-fit:cover;
  pointer-events:none;
  opacity:0;
  z-index:9999;
  transform:translate3d(-9999px,-9999px,0) translate(-50%,-50%) rotate(-1.2deg) scale(.84);
  mix-blend-mode:normal;
  filter:saturate(1.34) contrast(1.08);
  box-shadow:0 26px 60px rgba(0,0,0,.2);
  transition:
    opacity .34s cubic-bezier(.16,1,.3,1),
    filter .34s cubic-bezier(.16,1,.3,1);
  will-change:transform, opacity;
}
.hover-thumb.visible{ opacity:1; }
.article-list{ overflow:visible; }
.article-row{ cursor:pointer; }
.article-list.is-hovering .article-row:not(:hover){ opacity:.54; }
.article-row:hover,
.article-row:focus-within{ z-index:5; }

@media (max-width: 860px){
  .newsletter-type{ flex-direction:column; gap:10px; }
  .newsletter-type input[type="email"]{ width:100%; }
  .hover-thumb{ display:none; }
}

@media (prefers-reduced-motion: reduce){
  .text-reveal{ opacity:1; transform:none; filter:none; transition:none; }
}


/* final micro-tweak: cursor-aligned thumbnails + softer article hover */
.hover-thumb{
  top:0;
  left:0;
  bottom:auto;
  right:auto;
}
.article-row{
  overflow:hidden;
  isolation:isolate;
  background:var(--paper);
  padding-right:calc(var(--gutter) + 44px);
  transition:
    opacity .32s cubic-bezier(.16,1,.3,1),
    color .42s cubic-bezier(.16,1,.3,1);
}
.article-row::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:var(--blue);
  transform:translate3d(0, 101%, 0);
  transition:transform .62s cubic-bezier(.16,1,.3,1);
  pointer-events:none;
}
.article-row::after{
  content:"→";
  position:absolute;
  right:var(--gutter);
  top:50%;
  z-index:1;
  font-size:22px;
  font-weight:inherit;
  line-height:1;
  opacity:0;
  transform:translate3d(-12px, -50%, 0);
  transition:
    opacity .34s cubic-bezier(.16,1,.3,1),
    transform .34s cubic-bezier(.16,1,.3,1);
  pointer-events:none;
}
.article-row:hover,
.article-row:focus-within{
  background:var(--paper);
  color:white;
  padding-left:calc(var(--side) + var(--gutter));
  padding-right:calc(var(--gutter) + 44px);
}
.article-row:hover::before,
.article-row:focus-within::before{
  transform:translate3d(0, 0, 0);
}
.article-row:hover::after,
.article-row:focus-within::after{
  opacity:1;
  transform:translate3d(0, -50%, 0);
}
.article-list.is-hovering .article-row:not(:hover){
  opacity:.68;
}
@media (max-width: 860px){
  .article-row:hover,
  .article-row:focus-within{
    padding-left:var(--gutter);
    padding-right:calc(var(--gutter) + 36px);
  }
}

@media (prefers-reduced-motion: reduce){
  .page-swipe { display:none; }
  .site-loader{
    display:none;
  }
  .underline-link::after,
  .side-nav nav a::after,
  .site-footer nav a::after,
  .explore-link::after,
  .button,
  .button::before,
  button,
  button::before,
  .checks input[type="checkbox"]::before,
  .event-card,
  .event-card::before,
  .event-image,
  .event-info,
  .article-row,
  .article-row::before,
  .article-row::after,
  .hover-thumb{
    transition:none;
  }
  .event-image{
    animation:none;
  }
}

@media (max-width: 700px){
  .loader-stage {
    height: 58svh;
  }
  .loader-lockup {
    gap: 14px;
  }
  .loader-logo {
    font-size: clamp(58px, 22vw, 118px);
  }
  .loader-percent {
    position: fixed;
    left: 50%;
    bottom: max(24px, calc(env(safe-area-inset-bottom) + 16px));
    min-width: 0;
    font-size: clamp(17px, 8vw, 36px);
    text-align: center;
    transform: translateX(-50%);
  }
  .loader-cover {
    width: clamp(116px, 34vw, 170px);
  }
  .loader-cover:nth-child(1) { --stack-x: -42px; --stack-y: 12px; }
  .loader-cover:nth-child(2) { --stack-x: -18px; --stack-y: -8px; }
  .loader-cover:nth-child(3) { --stack-x: 15px; --stack-y: 8px; }
  .loader-cover:nth-child(4) { --stack-x: 36px; --stack-y: -14px; }
}

/* =========================================================
   issue detail page
   ========================================================= */
.issue-detail-main,
.page-detail-main {
  padding-top: 34px;
}
.issue-detail-hero,
.issue-detail-section,
.issue-pull-section,
.issue-order-section,
.feature-hero,
.content-section,
.pull-quote-section,
.cta-band {
  position: relative;
  margin-left: 0;
  padding-left: calc(var(--side) + var(--gutter));
  padding-right: var(--gutter);
}
.issue-detail-hero::after,
.issue-detail-section::after,
.issue-pull-section::after,
.issue-order-section::after,
.feature-hero::after,
.content-section::after,
.pull-quote-section::after,
.cta-band::after {
  display: none;
}
.issue-detail-hero,
.feature-hero {
  min-height: calc(100svh - 34px);
  max-height: calc(100svh - 34px);
  display: grid;
  grid-template-columns: minmax(300px, .78fr) minmax(300px, 1fr);
  gap: clamp(34px, 6vw, 88px);
  align-items: center;
  padding-top: 42px;
  padding-bottom: 42px;
}
.issue-hero-bar {
  position: absolute;
  top: 42px;
  left: calc(var(--side) + var(--gutter));
  right: var(--gutter);
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.issue-hero-back,
.feature-hero__back {
  position: absolute;
  top: 42px;
  left: calc(var(--side) + var(--gutter));
  z-index: 4;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}
.issue-hero-copy,
.feature-hero__copy {
  position: relative;
  z-index: 3;
  align-self: end;
  padding-bottom: clamp(8px, 3.8vw, 48px);
}
.issue-hero-copy {
  align-self: center;
  padding-bottom: clamp(8px, 3.8vw, 48px);
}
.issue-hero-number,
.issue-hero-note,
.feature-hero__eyebrow,
.feature-hero__note {
  margin: 0;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -.03em;
  text-transform: uppercase;
}
.issue-hero-copy h1,
.feature-hero__copy h1 {
  margin: 10px 0 14px;
  max-width: none;
  font-size: clamp(38px, 5vw, 76px);
  line-height: .86;
  letter-spacing: -.09em;
  white-space: nowrap;
}
.issue-hero-note,
.feature-hero__note {
  max-width: 380px;
}
.issue-hero-note {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: 0;
  text-transform: none;
}
.issue-hero-cta,
.feature-hero__cta {
  display: inline-block;
  margin-top: clamp(120px, 18vh, 190px);
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}
.issue-hero-cta {
  margin-top: 14px;
}
.issue-cover-frame,
.interactive-cover {
  --cover-tilt-x: 0deg;
  --cover-tilt-y: 0deg;
  --cover-edge-x: 0px;
  --cover-edge-y: 0px;
  --cover-shadow-x: 0px;
  --cover-shadow-y: 30px;
  position: relative;
  z-index: 2;
  justify-self: center;
  width: min(450px, 38vw, calc((100svh - 118px) * .8));
  aspect-ratio: 4 / 5;
  margin: 0;
  overflow: hidden;
  box-shadow: var(--cover-shadow-x) var(--cover-shadow-y) 80px rgba(0,0,0,.22);
  transform-origin: center;
  transform-style: preserve-3d;
  animation: issue-cover-drift 2.9s ease-in-out infinite alternate;
  transition:
    clip-path .32s cubic-bezier(.16,1,.3,1),
    box-shadow .32s cubic-bezier(.16,1,.3,1);
  clip-path: polygon(
    calc(0% + var(--cover-edge-x)) calc(0% + var(--cover-edge-y)),
    calc(100% - var(--cover-edge-x)) calc(0% + var(--cover-edge-y)),
    calc(100% - var(--cover-edge-x)) calc(100% - var(--cover-edge-y)),
    calc(0% + var(--cover-edge-x)) calc(100% - var(--cover-edge-y))
  );
}
.issue-cover-frame img,
.interactive-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform:
    perspective(900px)
    rotateX(var(--cover-tilt-x))
    rotateY(var(--cover-tilt-y))
    scale(1.06);
  transition: transform .22s cubic-bezier(.16,1,.3,1), filter .22s ease;
  will-change: transform;
}
.issue-cover-frame::after,
.interactive-cover::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at var(--cover-light-x, 50%) var(--cover-light-y, 50%), rgba(255,255,255,.34), transparent 32%),
    linear-gradient(135deg, transparent 0%, rgba(0,0,0,.16) 100%);
  mix-blend-mode: screen;
  opacity: .58;
  pointer-events: none;
  transition: opacity .22s ease;
}
.issue-cover-frame.is-interacting::after,
.interactive-cover.is-interacting::after {
  opacity: .86;
}
.issue-cover-frame.is-interacting,
.interactive-cover.is-interacting {
  animation: none;
  transform: translate3d(0, 0, 0);
}
@keyframes issue-cover-drift {
  from { transform: rotate(-1.8deg) skewX(-1deg) translate3d(-4px, -4px, 0); }
  to { transform: rotate(1.6deg) skewX(1deg) translate3d(4px, 4px, 0); }
}
.issue-detail-section,
.content-section {
  padding-top: clamp(76px, 10vw, 130px);
  padding-bottom: clamp(76px, 10vw, 130px);
}
.issue-intro-grid,
.issue-feature-grid,
.issue-order-section,
.split-section {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: start;
}
.issue-pull-section,
.pull-quote-section {
  min-height: clamp(420px, 72svh, 680px);
  display: grid;
  place-items: center;
  overflow: visible;
  padding-top: clamp(54px, 8vw, 96px);
  padding-bottom: clamp(54px, 8vw, 96px);
}
.issue-pull-art,
.pull-quote-section__art {
  position: absolute;
  inset: 50% auto auto 50%;
  z-index: 0;
  width: min(350px, 31vw);
  margin: 0;
  overflow: visible;
  background: transparent;
  transform: translate(-50%, -50%) rotate(5deg);
}
.issue-pull-art img,
.pull-quote-section__art img {
  width: 100%;
  height: auto;
  object-fit: contain;
  opacity: .9;
  transform: scale(1);
}
.issue-pull,
.pull-quote-section__quote {
  position: relative;
  z-index: 2;
  max-width: 820px;
  margin: 0 auto;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(29px, 5vw, 68px);
  font-style: italic;
  font-weight: 900;
  line-height: .84;
  letter-spacing: -.12em;
  text-align: center;
  transform: none;
}
.issue-feature-grid h2,
.issue-collab-grid h2,
.contents-section h2,
.contributor-section h2 {
  margin: 0 0 22px;
  font-size: clamp(34px, 5vw, 72px);
  line-height: .9;
  letter-spacing: -.08em;
}
.issue-feature-grid,
.contents-section {
  display: block;
}
.issue-index,
.interactive-index {
  margin: 0;
  max-width: 1120px;
  font-size: clamp(27px, 3.45vw, 52px);
  font-weight: 850;
  line-height: 1.02;
  letter-spacing: -.065em;
}
.issue-index-item,
.interactive-index__item {
  cursor: crosshair;
  color: var(--ink);
  transition:
    color .32s cubic-bezier(.16,1,.3,1),
    filter .32s cubic-bezier(.16,1,.3,1);
}
.interactive-index__item[data-type="essay"],
.interactive-index__item[data-type="welcome"],
.interactive-index__item[data-type="open call"],
.interactive-index__item[data-type="photo essay"] { --index-color: var(--blue); }
.interactive-index__item[data-type="visual"],
.interactive-index__item[data-type="theme reveal"],
.interactive-index__item[data-type="panel"],
.interactive-index__item[data-type="manifesto"] { --index-color: var(--lilac); }
.interactive-index__item[data-type="interview"],
.interactive-index__item[data-type="talk"],
.interactive-index__item[data-type="conversation"] { --index-color: var(--orange); }
.interactive-index__item[data-type="field notes"] { --index-color: var(--green); }
.interactive-index__item[data-type="fiction"],
.interactive-index__item[data-type="performance"],
.interactive-index__item[data-type="prompts"] { --index-color: var(--pink); }
.interactive-index__item[data-type="archive"] { --index-color: var(--yellow); }
.issue-index-item:hover,
.issue-index-item:focus-visible,
.interactive-index__item:hover,
.interactive-index__item:focus-visible {
  color: var(--index-color);
  filter: saturate(1.2);
}
.issue-index-tag,
.floating-tag {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 12000;
  padding: 7px 10px 8px;
  border: 1px solid currentColor;
  border-radius: 999px;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--serif);
  font-size: 18px;
  font-style: italic;
  font-weight: 900;
  line-height: .9;
  letter-spacing: -.06em;
  pointer-events: none;
  opacity: 0;
  filter: blur(8px);
  transform: translate3d(-9999px, -9999px, 0) rotate(-2deg) scale(.94);
  transition:
    opacity .2s ease,
    filter .24s cubic-bezier(.16,1,.3,1),
    transform .24s cubic-bezier(.16,1,.3,1);
}
.issue-index-tag.visible,
.floating-tag.visible {
  opacity: 1;
  filter: blur(0);
}
.issue-collab-grid,
.contributor-section {
  display: grid;
  grid-template-columns: minmax(220px, .5fr) minmax(0, 1fr);
  gap: 42px;
  align-items: start;
}
.collab-list,
.pill-link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.collab-list a,
.pill-link-list a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  overflow: hidden;
  border: 1px solid currentColor;
  border-radius: 999px;
  padding: 7px 13px 8px;
  color: var(--ink);
  font-size: 14px;
  line-height: 1;
  text-decoration: none;
  transition:
    color .26s cubic-bezier(.16,1,.3,1),
    border-color .26s cubic-bezier(.16,1,.3,1),
    transform .26s cubic-bezier(.16,1,.3,1);
}
.collab-list a::before,
.pill-link-list a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--blue);
  transform: translateX(-102%);
  transition: transform .34s cubic-bezier(.16,1,.3,1);
}
.collab-list a::after,
.pill-link-list a::after {
  content: "↗";
  display: inline-block;
  font-size: .78em;
  transform: translate(0, 0) rotate(0deg);
  opacity: .68;
  transition:
    opacity .24s ease,
    transform .28s cubic-bezier(.16,1,.3,1);
}
.collab-list a:hover,
.collab-list a:focus-visible,
.pill-link-list a:hover,
.pill-link-list a:focus-visible {
  color: white;
  border-color: var(--blue);
  transform: translateY(-2px);
}
.collab-list a:hover::before,
.collab-list a:focus-visible::before,
.pill-link-list a:hover::before,
.pill-link-list a:focus-visible::before {
  transform: translateX(0);
}
.collab-list a:hover::after,
.collab-list a:focus-visible::after,
.pill-link-list a:hover::after,
.pill-link-list a:focus-visible::after {
  opacity: 1;
  transform: translate(0, 0) rotate(0deg);
}
.issue-order-section,
.cta-band {
  padding-top: clamp(72px, 10vw, 128px);
  padding-bottom: clamp(72px, 10vw, 128px);
  background: var(--blue);
  color: white;
}
.issue-order-section .text-block,
.cta-band .text-block {
  color: inherit;
}
.issue-order-section .button,
.cta-band .button {
  --button-fill: white;
  --button-hover-color: var(--blue);
  margin-top: 18px;
}

@media (max-width: 860px) {
  p,
  .text-block,
  .feature-hero__note,
  .issue-hero-note {
    font-size: 17px;
    line-height: 1.35;
  }

  .issue-detail-hero,
  .issue-detail-section,
  .issue-pull-section,
  .issue-order-section,
  .feature-hero,
  .content-section,
  .pull-quote-section,
  .cta-band {
    padding-left: var(--gutter);
  }
  .issue-detail-hero,
  .feature-hero {
    grid-template-columns: 1fr;
    min-height: auto;
    max-height: none;
    gap: 28px;
    place-items: start;
  }
  .issue-hero-back,
  .feature-hero__back {
    position: static;
  }
  .issue-hero-bar {
    position: static;
    width: 100%;
    flex-wrap: wrap;
  }
  .issue-hero-copy,
  .feature-hero__copy {
    padding-bottom: 0;
  }
  .issue-hero-cta,
  .feature-hero__cta {
    margin-top: 24px;
  }
  .issue-cover-frame,
  .interactive-cover {
    width: min(390px, 78vw);
    margin: 0 auto;
    clip-path: none;
  }
  .issue-hero-copy h1,
  .feature-hero__copy h1 {
    white-space: normal;
  }
  .issue-pull-art,
  .pull-quote-section__art {
    width: min(360px, 76vw);
  }
  .issue-intro-grid,
  .issue-feature-grid,
  .issue-order-section,
  .issue-collab-grid,
  .split-section,
  .contributor-section {
    grid-template-columns: 1fr;
  }

  .issue-index,
  .interactive-index {
    font-size: clamp(2.25rem, 11vw, 3.6rem);
    line-height: .98;
  }

  .issue-index-item,
  .interactive-index__item {
    cursor: pointer;
  }

  .issue-index-tag.is-inline,
  .floating-tag.is-inline {
    position: static;
    display: inline-flex;
    margin: 0 .2em .08em;
    vertical-align: middle;
    transform: rotate(-2deg) scale(1);
    opacity: 1;
    font-size: .42em;
    letter-spacing: 0;
  }

  .collab-list a::after,
  .pill-link-list a::after {
    opacity: 1;
    transform: translate(0, 0) rotate(0deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .issue-detail-main,
  .page-detail-main {
    animation: none;
  }
  .issue-cover-frame,
  .interactive-cover {
    animation: none;
  }
}

/* =========================================================
   shop placeholder
   ========================================================= */
.shop-placeholder {
  grid-template-columns: minmax(0, 740px);
  align-content: center;
  justify-content: start;
  background:
    linear-gradient(90deg, rgba(74,4,251,.09), transparent 56%),
    var(--paper);
}
.shop-placeholder__copy {
  align-self: center;
  max-width: 690px;
}
.shop-placeholder .feature-hero__copy h1 {
  white-space: normal;
}
.shop-placeholder .feature-hero__note {
  max-width: 520px;
  margin-bottom: 0;
  font-size: clamp(18px, 2vw, 28px);
  line-height: 1.02;
  text-transform: none;
}

@media (max-width: 860px) {
  .shop-main {
    padding-top: 0;
  }
  .shop-placeholder {
    min-height: calc(100svh - 71px);
    padding-top: 34px;
  }
}

/* =========================================================
   event detail page
   ========================================================= */
.event-detail-page {
  background: var(--paper);
}
.event-hero-bar {
  position: absolute;
  top: 42px;
  left: calc(var(--side) + var(--gutter));
  right: var(--gutter);
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.event-hero-copy {
  align-self: center;
  padding-bottom: clamp(8px, 3.8vw, 48px);
}
.event-hero-copy h1 {
  max-width: 700px;
  white-space: normal;
}
.event-facts,
.event-detail-list {
  margin: 22px 0 0;
}
.event-facts div,
.event-detail-list div {
  display: grid;
  grid-template-columns: minmax(84px, .28fr) minmax(0, 1fr);
  gap: 18px;
  border-top: 1px solid currentColor;
  padding: 12px 0 13px;
}
.event-facts dt,
.event-detail-list dt {
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.event-facts dd,
.event-detail-list dd {
  margin: 0;
  font-size: clamp(16px, 1.55vw, 22px);
  font-weight: 750;
  line-height: 1.05;
  letter-spacing: -.035em;
}
.event-poster {
  aspect-ratio: 3 / 4.25;
  width: min(420px, 35vw, calc((100svh - 118px) * .72));
}
.event-poster figcaption {
  position: absolute;
  left: 14px;
  bottom: 12px;
  z-index: 4;
  color: white;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
  mix-blend-mode: difference;
}
.event-story .lead {
  max-width: 520px;
}
.event-image-break {
  min-height: clamp(460px, 78svh, 720px);
}
.event-break-image {
  position: absolute;
  inset: 8% var(--gutter) 8% calc(var(--side) + var(--gutter));
  margin: 0;
  overflow: hidden;
  transform: rotate(-1.2deg);
}
.event-break-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(74,4,251,.22);
  mix-blend-mode: screen;
}
.event-break-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.28) contrast(1.1) brightness(.92);
}
.event-image-break .issue-pull {
  color: white;
  text-shadow: 0 16px 48px rgba(0,0,0,.32);
}
.event-program h2,
.event-practical h2 {
  margin: 0;
  font-size: clamp(34px, 5vw, 72px);
  line-height: .9;
  letter-spacing: -.08em;
}
.event-practical {
  background: var(--ink);
  color: white;
}
.event-practical-label {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}
.event-detail-panel {
  align-self: start;
}
.event-detail-list {
  margin-top: 0;
}
.event-detail-list div:first-child {
  border-top-width: 2px;
}
.event-detail-panel .button {
  --button-fill: white;
  --button-hover-color: var(--ink);
  margin-top: 26px;
}

@media (max-width: 860px) {
  .event-hero-bar {
    position: static;
    width: 100%;
    flex-wrap: wrap;
  }
  .event-poster {
    width: min(360px, 78vw);
  }
  .event-facts div,
  .event-detail-list div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .event-break-image {
    inset: 12% var(--gutter);
  }
}

/* =========================================================
   open call page
   ========================================================= */
.open-call-main {
  padding-top: 34px;
}
.open-call-media-hero {
  position: relative;
  padding: 42px var(--gutter) 0 calc(var(--side) + var(--gutter));
}
.open-call-hero-bar {
  position: relative;
  z-index: 4;
  max-width: var(--max);
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}
.open-call-hero-bar p {
  margin: 0;
  color: var(--blue);
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.open-call-hero-media {
  position: relative;
  max-width: min(1480px, 100%);
  height: clamp(420px, 70svh, 780px);
  margin: 0 auto;
  overflow: hidden;
  background: var(--surface-strong);
}
.open-call-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.18) saturate(.94) contrast(1.02);
}
.open-call-story .section-script {
  max-width: var(--max);
  margin: 0 auto clamp(32px, 5vw, 64px);
}
.open-call-story {
  padding-top: clamp(54px, 8vw, 110px);
}
.open-call-guide .about-principles a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .16em;
}
.open-call-guide .mission-layout {
  grid-template-rows: auto auto;
}
.open-call-guide-button {
  grid-column: 1;
  grid-row: 2;
  align-self: end;
  margin-top: clamp(24px, 4vw, 44px);
}
.open-call-submit-cta {
  padding-left: clamp(32px, 6vw, 76px);
}
.open-call-prompts-strip {
  padding: clamp(72px, 10vw, 132px) var(--gutter) clamp(82px, 11vw, 148px) calc(var(--side) + var(--gutter));
  background: var(--night);
  color: white;
  border-bottom: 1px solid var(--line);
}
.open-call-prompts-head,
.open-call-prompts-strip .prompt-list {
  max-width: var(--max);
  margin-left: auto;
  margin-right: auto;
}
.open-call-prompts-head {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(260px, .55fr);
  gap: clamp(28px, 6vw, 84px);
  align-items: end;
  margin-bottom: clamp(34px, 6vw, 86px);
}
.open-call-prompts-head h2 {
  margin: 0;
  font-size: clamp(3.75rem, 7vw, 7.875rem);
  line-height: .78;
  letter-spacing: 0;
  text-transform: uppercase;
}
.open-call-prompts-head p {
  max-width: 420px;
  margin: 0;
  color: rgba(255,255,255,.74);
  font-size: 15px;
  line-height: 1.2;
}
.prompt-list {
  position: relative;
  z-index: 2;
  border-top: 1px solid rgba(255,255,255,.34);
}
.prompt-list details {
  border-bottom: 1px solid rgba(255,255,255,.34);
}
.prompt-list summary {
  position: relative;
  min-height: 94px;
  padding: 22px clamp(54px, 7vw, 96px) 22px 0;
  display: flex;
  align-items: center;
  cursor: pointer;
  color: white;
  font-size: clamp(30px, 4.1vw, 62px);
  font-weight: 900;
  line-height: .86;
  letter-spacing: -.08em;
  list-style: none;
  transition: color .28s cubic-bezier(.16,1,.3,1);
}
.prompt-list summary::-webkit-details-marker {
  display: none;
}
.prompt-list summary::after {
  content: "+";
  position: absolute;
  right: 0;
  top: 50%;
  width: 1em;
  height: 1em;
  display: grid;
  place-items: center;
  color: white;
  font-size: .9em;
  line-height: 1;
  transform: translateY(-50%) rotate(0deg);
  transition:
    color .28s cubic-bezier(.16,1,.3,1),
    transform .42s cubic-bezier(.16,1,.3,1);
}
.prompt-list details[open] summary::after {
  transform: translateY(-50%) rotate(35deg);
}
.prompt-list summary:hover,
.prompt-list summary:focus-visible {
  color: var(--blue);
  outline: none;
}
.prompt-answer {
  height: 0;
  overflow: hidden;
}
.prompt-list details[open] .prompt-answer {
  height: auto;
}
.prompt-answer p {
  max-width: 680px;
  margin: -4px 0 0;
  padding: 0 clamp(54px, 7vw, 96px) 30px 0;
  color: rgba(255,255,255,.74);
  font-size: 15px;
}
.open-call-final .about-cta strong {
  max-width: 900px;
}

@media (max-width: 860px) {
  .open-call-main {
    padding-top: 0;
  }
  .open-call-media-hero,
  .open-call-prompts-strip {
    padding-left: var(--gutter);
  }
  .open-call-hero-media {
    height: clamp(320px, 62svh, 560px);
  }
  .open-call-prompts-head {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .open-call-submit-cta {
    min-height: 220px;
  }
  .open-call-guide-button {
    grid-column: 1;
  }
}

@media (max-width: 560px) {
  .open-call-hero-bar {
    align-items: flex-start;
  }
  .open-call-prompts-head h2,
  .open-call-submit-cta strong {
    font-size: 3.4rem;
  }
  .prompt-list summary {
    min-height: 78px;
    padding-right: 48px;
  }
  .prompt-list summary::after {
    font-size: .88em;
  }
  .prompt-answer p {
    padding-right: 0;
  }
}

/* =========================================================
   jobs page
   ========================================================= */
.jobs-main {
  padding-top: 34px;
}
.jobs-hero {
  position: relative;
  min-height: clamp(520px, 70svh, 780px);
  padding: clamp(96px, 12vw, 150px) var(--gutter) clamp(52px, 7vw, 90px) calc(var(--side) + var(--gutter));
  display: grid;
  align-content: center;
  overflow: hidden;
  border-bottom: 1px solid rgba(29,29,29,.22);
}
.jobs-hero-bar {
  position: absolute;
  top: 42px;
  left: calc(var(--side) + var(--gutter));
  right: var(--gutter);
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.jobs-hero .feature-hero__back {
  top: 42px;
}
.jobs-hero-copy {
  position: relative;
  z-index: 2;
  max-width: 840px;
}
.jobs-pill,
.jobs-filters a,
.job-meta span {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 14px 8px;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.025em;
}
.jobs-pill {
  margin-bottom: 24px;
  background: rgba(245,245,245,.72);
  color: var(--ink);
  box-shadow: 0 10px 32px rgba(0,0,0,.05);
}
.jobs-hero h1 {
  max-width: 860px;
  margin: 0 auto;
  font-size: clamp(3.875rem, 8vw, 8.5rem);
  line-height: .84;
  letter-spacing: 0;
}
.jobs-hero p {
  max-width: 740px;
  margin: 24px 0 0;
  color: var(--ink);
  font-size: clamp(18px, 2vw, 25px);
  font-weight: 650;
  line-height: 1.16;
}
.jobs-hero-glow {
  position: absolute;
  top: 8%;
  right: -4%;
  width: min(48vw, 620px);
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(circle at 54% 48%, rgba(240,74,36,.26), transparent 0 24%),
    radial-gradient(circle at 42% 54%, rgba(134,245,199,.22), transparent 0 34%),
    radial-gradient(circle at 56% 44%, rgba(74,4,251,.18), transparent 0 54%);
  opacity: .78;
  pointer-events: none;
}
.jobs-openings {
  padding: clamp(34px, 5vw, 66px) var(--gutter) clamp(74px, 10vw, 132px) calc(var(--side) + var(--gutter));
}
.jobs-layout {
  max-width: var(--max);
  margin: 0 auto;
}
.jobs-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: clamp(32px, 5vw, 58px);
}
.jobs-filters a {
  min-height: 36px;
  background: transparent;
  transition:
    background .22s cubic-bezier(.16,1,.3,1),
    color .22s cubic-bezier(.16,1,.3,1),
    transform .22s cubic-bezier(.16,1,.3,1);
}
.jobs-filters a:hover,
.jobs-filters a:focus-visible,
.jobs-filters a.is-active {
  background: var(--ink);
  color: var(--paper);
  transform: translateY(-1px);
}
.job-list {
  border-top: 1px solid rgba(29,29,29,.24);
}
.job-list details {
  border-bottom: 1px solid rgba(29,29,29,.24);
}
.job-list details:last-child {
  border-bottom: 0;
}
.job-list summary {
  position: relative;
  min-height: 164px;
  padding: 28px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(96px, auto);
  gap: clamp(22px, 4vw, 54px);
  align-items: center;
  cursor: pointer;
  color: var(--ink);
  list-style: none;
  transition:
    color .28s cubic-bezier(.16,1,.3,1),
    background .28s cubic-bezier(.16,1,.3,1);
}
.job-list summary::-webkit-details-marker {
  display: none;
}
.job-list summary::after {
  content: none;
}
.job-summary-copy {
  display: grid;
  gap: 14px;
}
.job-title {
  display: block;
  max-width: 760px;
  font-size: clamp(2rem, 3.1vw, 3rem);
  font-weight: 900;
  line-height: .9;
  letter-spacing: -.045em;
}
.job-teaser {
  display: block;
  max-width: 660px;
  color: var(--ink);
  font-size: clamp(16px, 1.6vw, 21px);
  font-weight: 560;
  line-height: 1.18;
  letter-spacing: -.035em;
}
.job-expand {
  align-self: start;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 16px;
  padding-top: 5px;
  color: var(--ink);
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.05em;
  white-space: nowrap;
}
.job-expand::after {
  content: "+";
  width: .92em;
  height: .92em;
  display: inline-grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: .72em;
  line-height: .86;
  transform: rotate(0deg);
  transition: transform .28s cubic-bezier(.16,1,.3,1);
}
.job-list details[open] .job-expand::after {
  transform: rotate(45deg);
}
.job-list summary:hover,
.job-list summary:focus-visible {
  color: var(--blue);
  outline: none;
}
.job-panel {
  max-width: 780px;
  padding: 0 0 34px;
}
.job-panel p {
  max-width: 680px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.26;
}
.job-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.job-meta span {
  min-height: 31px;
  padding: 6px 11px 7px;
  color: var(--ink);
  font-size: 12px;
  letter-spacing: -.02em;
}
.job-apply {
  position: relative;
  display: inline-block;
  margin-top: 14px;
  color: var(--blue);
  font-size: 21px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.04em;
}
.job-apply::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.2em;
  height: 2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .38s cubic-bezier(.16,1,.3,1);
}
.job-apply:hover::after,
.job-apply:focus-visible::after {
  transform: scaleX(1);
}
.jobs-quote {
  position: relative;
  padding: clamp(84px, 12vw, 154px) var(--gutter) clamp(78px, 11vw, 138px) calc(var(--side) + var(--gutter));
  text-align: center;
}
.jobs-quote blockquote {
  max-width: 1120px;
  margin: 0 auto 24px;
  color: var(--blue);
  font-family: var(--serif);
  font-style: italic;
  font-size: clamp(2.375rem, 5vw, 5.25rem);
  font-weight: 900;
  line-height: .9;
  letter-spacing: 0;
}
.jobs-quote p {
  max-width: 420px;
  margin: 0 auto;
  color: var(--muted);
  font-size: 14px;
}
.jobs-final .about-cta strong {
  max-width: 920px;
}

@media (max-width: 860px) {
  .open-call-main {
    padding-top: 0;
  }
  .jobs-main {
    padding-top: 0;
  }
  .jobs-hero,
  .jobs-openings,
  .jobs-quote {
    padding-left: var(--gutter);
  }
  .jobs-hero {
    min-height: auto;
    padding-top: 42px;
  }
  .jobs-hero-bar {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    margin-bottom: 52px;
  }
  .jobs-hero .feature-hero__back {
    position: static;
    margin-bottom: 52px;
  }
  .jobs-hero-glow {
    width: 72vw;
    right: -26vw;
    opacity: .58;
  }
  .job-list summary {
    min-height: 142px;
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .job-expand {
    justify-self: start;
    font-size: 22px;
  }
  .open-call-prompts-strip .team-layout {
    min-height: auto;
    grid-template-columns: 1fr;
  }
  .prompt-list {
    order: 2;
    align-self: stretch;
  }
}

@media (max-width: 560px) {
  .prompt-list summary {
    min-height: 78px;
    padding-right: 48px;
  }
  .job-list summary {
    min-height: 130px;
  }
  .job-title {
    font-size: 1.9rem;
  }
  .jobs-filters a,
  .jobs-pill,
  .job-meta span {
    min-height: 31px;
    padding: 6px 10px 7px;
    font-size: 12px;
  }
  .prompt-list summary::after {
    width: 34px;
    height: 34px;
    font-size: 26px;
  }
  .prompt-list details p {
    padding-right: 0;
  }
}

/* =========================================================
   about page
   ========================================================= */
.about-main {
  padding-top: 34px;
}
.about-type-hero {
  position: relative;
  min-height: calc(100svh - 34px);
  padding: 78px var(--gutter) 52px calc(var(--side) + var(--gutter));
  display: grid;
  align-content: end;
  gap: clamp(24px, 4vw, 48px);
  overflow: hidden;
}
.about-type-hero .feature-hero__back {
  top: 42px;
}
.about-hero-kicker {
  margin: 0;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.about-type-cloud {
  max-width: min(1220px, 100%);
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .03em .18em;
  font-size: 6.5rem;
  line-height: .82;
  letter-spacing: 0;
}
.about-definition,
.about-word-field {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .03em .18em;
}
.about-definition {
  width: 100%;
}
.about-word-field {
  color: var(--muted-light);
}
.about-tone-word {
  color: var(--muted-light);
  transition:
    color .36s cubic-bezier(.16,1,.3,1),
    opacity .36s cubic-bezier(.16,1,.3,1),
    transform .36s cubic-bezier(.16,1,.3,1);
}
.about-tone-word.is-active {
  color: var(--ink);
  opacity: 1;
  transform: translate3d(0, -0.02em, 0);
}
.about-type-cloud .serif-word {
  font-family: var(--serif);
  font-style: italic;
  font-weight: 900;
  letter-spacing: 0;
}
.about-type-cloud .blue-word {
  color: var(--blue);
}
.interactive-flag-image {
  --flag-x: 0px;
  --flag-y: 0px;
  --flag-skew-x: 0deg;
  --flag-skew-y: 0deg;
  --flag-warp-a: 0px;
  --flag-warp-b: 0px;
  --flag-light-x: 50%;
  --flag-light-y: 50%;
  cursor: grab;
  transform:
    translate3d(var(--flag-x), var(--flag-y), 0)
    skew(var(--flag-skew-y), var(--flag-skew-x));
  clip-path: polygon(
    calc(0% + var(--flag-warp-a)) calc(0% + var(--flag-warp-b)),
    calc(100% - var(--flag-warp-b)) calc(0% + var(--flag-warp-a)),
    calc(100% - var(--flag-warp-a)) calc(100% - var(--flag-warp-b)),
    calc(0% + var(--flag-warp-b)) calc(100% - var(--flag-warp-a))
  );
  animation: interactive-flag-float 2.8s ease-in-out infinite alternate;
  transition:
    transform .44s cubic-bezier(.16,1,.3,1),
    clip-path .44s cubic-bezier(.16,1,.3,1),
    box-shadow .28s cubic-bezier(.16,1,.3,1);
  will-change: transform, clip-path;
}
.interactive-flag-image::before,
.interactive-flag-image::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.interactive-flag-image::before {
  z-index: 1;
  background: var(--flag-accent, var(--blue));
  mix-blend-mode: screen;
  opacity: .46;
}
.interactive-flag-image::after {
  z-index: 2;
  background:
    radial-gradient(circle at var(--flag-light-x) var(--flag-light-y), rgba(255,255,255,.46), transparent 36%),
    linear-gradient(90deg, rgba(255,255,255,.18), rgba(0,0,0,.08) 52%, rgba(255,255,255,.16));
  mix-blend-mode: soft-light;
  opacity: .72;
}
.interactive-flag-image img {
  transform: translate3d(calc(var(--flag-x) * -0.36), calc(var(--flag-y) * -0.32), 0) scale(1.1);
  transition:
    transform .44s cubic-bezier(.16,1,.3,1),
    filter .28s cubic-bezier(.16,1,.3,1);
}
.interactive-flag-image.is-pushed {
  cursor: grabbing;
  animation: none;
  box-shadow: 0 22px 48px rgba(0,0,0,.2);
}
.interactive-flag-image.is-pushed img {
  filter: grayscale(1) contrast(1.14) brightness(1.06);
}
.issue-flag-cover {
  --flag-accent: var(--mint);
}
.event-poster {
  --flag-accent: var(--orange);
}
.issue-flag-cover::before {
  opacity: .36;
}
.issue-flag-cover img {
  filter: grayscale(.72) contrast(1.08) brightness(1.03);
  transform: translate3d(calc(var(--flag-x) * -0.3), calc(var(--flag-y) * -0.26), 0) scale(1.1);
}
.issue-flag-cover.is-pushed img {
  filter: grayscale(.58) contrast(1.12) brightness(1.08);
}
@keyframes interactive-flag-float {
  from {
    transform: translate3d(-2px, -2px, 0) skew(-1.6deg, .9deg);
    clip-path: polygon(7% 0%, 100% 4%, 94% 100%, 0% 95%);
  }
  to {
    transform: translate3d(2px, 2px, 0) skew(1.4deg, -.8deg);
    clip-path: polygon(0% 6%, 94% 0%, 100% 94%, 6% 100%);
  }
}
.about-hero-notes {
  max-width: var(--max);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 3vw, 36px);
}
.about-hero-notes p {
  margin: 0;
  font-size: 13px;
  line-height: 1.18;
}
.editorial-about-section .section-script {
  max-width: var(--max);
  margin: 0 auto clamp(32px, 5vw, 64px);
}
.editorial-about-grid {
  align-items: center;
}
.about-mission {
  border-bottom: 1px solid var(--line);
}
.about-mission-grid {
  max-width: var(--max);
  margin: 0 auto;
}
.about-mission-grid h2 {
  margin: 0 0 clamp(32px, 5vw, 72px);
  font-size: 6.625rem;
  line-height: .82;
  letter-spacing: 0;
}
.mission-layout {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(260px, .92fr) minmax(0, 1.45fr);
  gap: clamp(36px, 6vw, 88px);
  align-items: start;
}
.about-mission-line {
  position: relative;
  z-index: 1;
  max-width: 620px;
  margin: clamp(18px, 3vw, 42px) 0 0;
  color: var(--blue);
  font-family: var(--serif);
  font-size: clamp(2.5rem, 4.2vw, 4.625rem);
  font-style: italic;
  font-weight: 900;
  line-height: .78;
  letter-spacing: 0;
  pointer-events: none;
}
.about-principles {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.about-principles li {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 245px;
  padding: 18px;
  display: grid;
  align-content: space-between;
  gap: 24px;
  border: 1px solid var(--line);
  background: rgba(245,245,245,.72);
  transition:
    background .28s cubic-bezier(.16,1,.3,1),
    transform .28s cubic-bezier(.16,1,.3,1);
}
.about-principles li::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: -1;
  background:
    linear-gradient(90deg, transparent 0 28%, var(--blue) 42%, transparent 58% 100%) 0 0 / 220% 1px no-repeat,
    linear-gradient(180deg, transparent 0 28%, var(--blue) 42%, transparent 58% 100%) 100% 0 / 1px 220% no-repeat,
    linear-gradient(270deg, transparent 0 28%, var(--blue) 42%, transparent 58% 100%) 100% 100% / 220% 1px no-repeat,
    linear-gradient(0deg, transparent 0 28%, var(--blue) 42%, transparent 58% 100%) 0 100% / 1px 220% no-repeat;
  opacity: 0;
  pointer-events: none;
}
.about-principles li:hover,
.about-principles li:focus-within {
  background: rgba(245,245,245,.46);
  transform: translateY(-3px);
}
.about-principles li:hover::before,
.about-principles li:focus-within::before {
  opacity: 1;
  animation: principle-outline-impulse .82s cubic-bezier(.16,1,.3,1) both;
}
.about-principles span {
  font-size: 13px;
}
.about-principles strong {
  display: block;
  max-width: 260px;
  font-size: 2.375rem;
  line-height: .9;
  letter-spacing: 0;
  text-transform: uppercase;
}
.about-principles p {
  margin: 0;
  font-size: 13px;
  line-height: 1.18;
}
@keyframes principle-outline-impulse {
  0% {
    background-position: 220% 0, 100% 220%, -120% 100%, 0 -120%;
  }
  100% {
    background-position: -120% 0, 100% -120%, 220% 100%, 0 220%;
  }
}
.team-strip {
  position: relative;
  padding: clamp(72px, 10vw, 132px) var(--gutter) clamp(82px, 11vw, 148px) calc(var(--side) + var(--gutter));
  background: var(--night);
  color: white;
  border-bottom: 1px solid var(--line);
  overflow: hidden;
}
.team-strip::before {
  content: none;
  position: absolute;
  right: -2vw;
  bottom: -1.4vw;
  color: rgba(255,255,255,.045);
  font-size: 18rem;
  font-weight: 900;
  line-height: .7;
  letter-spacing: 0;
  pointer-events: none;
}
.team-layout {
  position: relative;
  z-index: 2;
  max-width: var(--max);
  min-height: clamp(720px, 74vw, 920px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
  gap: clamp(32px, 6vw, 80px);
  align-items: start;
}
.team-copy {
  position: sticky;
  top: clamp(70px, 12vh, 130px);
  display: grid;
  gap: 24px;
  justify-self: end;
  max-width: 380px;
}
.team-copy .about-hero-kicker {
  margin-bottom: 4px;
}
.team-copy h2 {
  margin: 0;
  font-size: 6.625rem;
  line-height: .82;
  letter-spacing: 0;
}
.team-copy p:last-child {
  margin-top: 12px;
}
.team-copy p {
  margin: 0;
  font-size: 14px;
  line-height: 1.18;
}
.team-scatter {
  position: relative;
  min-height: inherit;
  padding-top: clamp(96px, 11vw, 150px);
  display: grid;
  grid-template-columns: repeat(5, minmax(72px, 1fr));
  grid-template-rows: repeat(6, minmax(88px, 1fr));
  gap: clamp(10px, 1.5vw, 18px);
}
.team-profile {
  --tag-x: 100%;
  --tag-y: 50%;
  position: relative;
  isolation: isolate;
  grid-column: var(--col) / span 1;
  grid-row: var(--row) / span 1;
  min-height: 120px;
  overflow: visible;
  background: var(--night);
  color: white;
  border: 1px solid rgba(255,255,255,.28);
  transition:
    transform .42s cubic-bezier(.16,1,.3,1),
    border-color .28s cubic-bezier(.16,1,.3,1),
    box-shadow .28s cubic-bezier(.16,1,.3,1);
}
.team-profile::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  background: var(--blue);
  mix-blend-mode: screen;
  opacity: 0;
  transition: opacity .28s cubic-bezier(.16,1,.3,1);
  pointer-events: none;
}
.team-profile::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), transparent 38%),
    linear-gradient(0deg, rgba(0,0,0,.34), transparent 45%);
  opacity: .54;
  pointer-events: none;
}
.team-profile img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: grayscale(1) contrast(1.22) brightness(.98);
  mix-blend-mode: normal;
  transition:
    opacity .34s cubic-bezier(.16,1,.3,1),
    transform .48s cubic-bezier(.16,1,.3,1),
    filter .34s cubic-bezier(.16,1,.3,1);
}
.team-profile .profile-front {
  opacity: 0;
  transform: scale(1.08) translateX(10px);
}
.profile-tag {
  position: absolute;
  left: var(--tag-x);
  top: var(--tag-y);
  z-index: 5;
  width: max-content;
  max-width: min(340px, calc(100vw - 32px));
  padding: 7px 12px 8px;
  display: flex;
  align-items: center;
  gap: 0;
  border: 1px solid currentColor;
  border-radius: 999px;
  background: var(--paper);
  color: var(--ink);
  white-space: nowrap;
  transform: translate3d(18px, -50%, 0) scale(.98);
  opacity: 0;
  filter: blur(4px);
  transition:
    opacity .26s cubic-bezier(.16,1,.3,1),
    transform .34s cubic-bezier(.16,1,.3,1),
    filter .34s cubic-bezier(.16,1,.3,1);
  pointer-events: none;
}
.profile-tag strong {
  font-family: var(--serif);
  font-size: 18px;
  font-style: italic;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
}
.profile-tag strong::after {
  content: "";
  margin: 0;
}
.profile-tag small::before {
  content: "/";
  margin-left: 7px;
  margin-right: 7px;
  font-weight: 500;
}
.profile-tag small::after {
  content: "↗";
  margin-left: 8px;
}
.profile-tag small {
  font-size: 13px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: 0;
}
.team-profile:hover,
.team-profile:focus-visible {
  z-index: 20;
  border-color: rgba(255,255,255,.82);
  box-shadow: 0 24px 56px rgba(0,0,0,.34);
  transform: scale(1.06);
}
.team-profile:hover::before,
.team-profile:focus-visible::before {
  opacity: .5;
}
.team-profile--natural::before,
.team-profile--natural:hover::before,
.team-profile--natural:focus-visible::before {
  opacity: 0;
}
.team-profile--natural img,
.team-profile--natural:hover .profile-front,
.team-profile--natural:focus-visible .profile-front {
  filter: none;
}
.team-profile:hover .profile-side,
.team-profile:focus-visible .profile-side {
  opacity: 0;
  transform: scale(1.06) translateX(-12px);
}
.team-profile:hover .profile-front,
.team-profile:focus-visible .profile-front {
  opacity: 1;
  transform: scale(1.02) translateX(0);
  filter: grayscale(1) contrast(1.14) brightness(1.08);
}
.team-profile--natural:hover .profile-front,
.team-profile--natural:focus-visible .profile-front,
.team-profile--natural .profile-side {
  filter: none;
}
.team-profile:hover .profile-tag,
.team-profile:focus-visible .profile-tag {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(18px, -50%, 0) scale(1);
}
.team-grid {
  display: none;
}
.team-card {
  min-height: clamp(340px, 38vw, 500px);
  perspective: 1100px;
}
.team-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: inherit;
  transform-style: preserve-3d;
  transition: transform .72s cubic-bezier(.16,1,.3,1);
}
.team-card:hover .team-card-inner,
.team-card:focus-within .team-card-inner {
  transform: rotateY(180deg);
}
.team-card-front,
.team-card-back {
  position: absolute;
  inset: 0;
  display: grid;
  backface-visibility: hidden;
  border: 1px solid rgba(255,255,255,.7);
  overflow: hidden;
}
.team-card-front {
  align-content: end;
  background: white;
}
.team-card-front img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) contrast(1.18);
  mix-blend-mode: multiply;
}
.team-card-front::after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  background: linear-gradient(180deg, rgba(74,4,251,0), rgba(74,4,251,.9));
}
.team-card-front span {
  position: relative;
  z-index: 2;
  padding: 12px;
  font-size: 2.375rem;
  line-height: .9;
  letter-spacing: 0;
  text-transform: uppercase;
}
.team-card-back {
  align-content: space-between;
  gap: 24px;
  padding: 18px;
  background: var(--paper);
  color: var(--ink);
  transform: rotateY(180deg);
}
.team-card-back h3 {
  margin: 0;
  font-size: 2.875rem;
  line-height: .85;
  letter-spacing: 0;
}
.team-card-back p {
  margin: 0;
  font-size: 14px;
  line-height: 1.18;
}
.about-cta-stack {
  display: grid;
}
.about-cta {
  --cta-hover: var(--blue);
  position: relative;
  min-height: clamp(250px, 35vw, 440px);
  padding: clamp(32px, 6vw, 76px) var(--gutter) clamp(32px, 6vw, 76px) calc(var(--side) + var(--gutter));
  display: grid;
  align-content: space-between;
  overflow: hidden;
  border-bottom: 1px solid var(--line);
  background: var(--surface-strong);
  color: var(--ink);
}
.about-join-cta {
  --cta-hover: var(--blue);
}
.about-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: var(--cta-hover);
  transform: translate3d(-102%, 0, 0) skewX(-7deg);
  transition: transform .68s cubic-bezier(.77,0,.175,1);
}
.about-cta:hover::before,
.about-cta:focus-visible::before {
  transform: translate3d(0, 0, 0) skewX(0);
}
.about-cta:hover,
.about-cta:focus-visible {
  color: white;
}
.about-cta-label,
.about-cta strong,
.about-cta-arrow {
  position: relative;
  z-index: 2;
}
.about-cta-label {
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.about-cta strong {
  max-width: 960px;
  font-size: 7.875rem;
  line-height: .78;
  letter-spacing: 0;
  text-transform: uppercase;
}
.about-cta-arrow {
  position: absolute;
  right: var(--gutter);
  bottom: clamp(32px, 6vw, 76px);
  font-size: 8.125rem;
  line-height: .7;
  transition: transform .5s cubic-bezier(.16,1,.3,1);
}
.about-cta:hover .about-cta-arrow,
.about-cta:focus-visible .about-cta-arrow {
  transform: translate3d(18px, 0, 0);
}

@media (max-width: 1060px) {
  .about-type-cloud {
    font-size: 4.875rem;
  }
  .about-mission-grid h2,
  .team-copy h2 {
    font-size: 5rem;
  }
  .about-mission-line {
    font-size: 3.75rem;
    margin-right: 0;
  }
  .mission-layout {
    grid-template-columns: minmax(220px, .75fr) minmax(0, 1.25fr);
  }
  .about-principles strong {
    font-size: 2rem;
  }
  .about-cta strong {
    font-size: 5.25rem;
  }
  .about-cta-arrow {
    font-size: 5.75rem;
  }
  .team-layout {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
    gap: 34px;
  }
  .team-scatter {
    grid-template-columns: repeat(4, minmax(70px, 1fr));
  }
  .team-profile {
    grid-column: auto / span 1 !important;
    grid-row: auto / span 1 !important;
  }
}

@media (max-width: 860px) {
  .about-type-hero,
  .team-strip,
  .about-cta {
    padding-left: var(--gutter);
  }
  .about-type-hero {
    min-height: auto;
    padding-top: 42px;
  }
  .about-type-hero .feature-hero__back {
    position: static;
  }
  .about-type-cloud {
    font-size: 3.875rem;
  }
  .about-hero-notes {
    grid-template-columns: 1fr;
  }
  .mission-layout,
  .about-principles {
    grid-template-columns: 1fr;
  }
  .about-mission-grid h2 {
    margin-bottom: 24px;
  }
  .about-mission-line {
    max-width: 100%;
    margin: 0 0 34px;
  }
  .team-layout {
    min-height: auto;
    grid-template-columns: 1fr;
  }
  .team-copy {
    position: relative;
    top: auto;
    order: -1;
    justify-self: start;
    max-width: 560px;
  }
  .team-scatter {
    min-height: auto;
    padding-top: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: none;
  }
  .team-profile {
    grid-column: auto / span 1 !important;
    grid-row: auto / span 1 !important;
    min-height: 230px;
  }
  .profile-tag {
    top: auto;
    opacity: 1;
    filter: blur(0);
    width: auto;
    max-width: calc(100% - 20px);
    left: 10px;
    right: auto;
    bottom: 10px;
    padding: 8px 10px 9px;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    border-radius: 12px;
    white-space: normal;
    transform: translate3d(0, 0, 0);
  }
  .profile-tag strong {
    max-width: 100%;
    font-size: 16px;
    line-height: .95;
  }
  .profile-tag small {
    max-width: 100%;
    font-size: 11px;
    line-height: 1.05;
    overflow-wrap: anywhere;
  }
  .profile-tag small::before {
    content: none;
  }
  .profile-tag small::after {
    margin-left: 5px;
  }
  .team-profile:hover .profile-tag,
  .team-profile:focus-visible .profile-tag {
    transform: translate3d(0, 0, 0);
  }
  .about-cta {
    min-height: 300px;
  }
  .about-mission-grid h2,
  .team-copy h2 {
    font-size: 4rem;
  }
  .about-mission-line {
    font-size: 3rem;
  }
  .about-principles strong {
    font-size: 2rem;
  }
  .team-strip::before {
    font-size: 8rem;
  }
  .about-cta strong {
    font-size: 3.75rem;
  }
  .about-cta-arrow {
    font-size: 4.5rem;
  }
  .about-cta-arrow {
    right: var(--gutter);
  }
}

@media (prefers-reduced-motion: reduce) {
  .team-card:hover .team-card-inner,
  .team-card:focus-within .team-card-inner {
    transform: none;
  }
  .team-card-front,
  .team-card-back {
    position: relative;
    min-height: 280px;
    transform: none;
    backface-visibility: visible;
  }
  .team-card-inner {
    display: grid;
  }
  .about-cta::before,
  .about-cta-arrow {
    transition: none;
  }
}

/* =========================================================
   articles feed page
   ========================================================= */
.articles-feed-main,
.article-detail-main {
  padding-top: 34px;
}
.articles-feed-hero {
  position: relative;
  padding: 42px var(--gutter) 18px calc(var(--side) + var(--gutter));
  display: grid;
  gap: clamp(18px, 3vw, 36px);
}
.articles-feed-hero .feature-hero__back {
  top: 42px;
}
.articles-feed-heading {
  padding-top: clamp(58px, 7vw, 104px);
}
.articles-feed-heading h1 {
  margin: 0;
  font-size: clamp(4rem, 10vw, 10rem);
  line-height: .78;
  letter-spacing: 0;
}
.feed-controls {
  position: relative;
  z-index: 4;
  display: grid;
  grid-template-columns: minmax(180px, 1.1fr) minmax(250px, 1.25fr) repeat(2, minmax(116px, .65fr));
  gap: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: transparent;
}
.feed-controls > label,
.feed-type-filter {
  min-width: 0;
  display: grid;
  gap: 5px;
  margin: 0;
  padding: 9px 12px 8px 0;
  background: transparent;
  border-right: 1px solid rgba(29,29,29,.24);
  border-top: 0;
  border-bottom: 0;
  border-left: 0;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}
.feed-controls > * + * {
  padding-left: 12px;
}
.feed-controls > *:last-child {
  border-right: 0;
  padding-right: 0;
}
.feed-controls > label input,
.feed-controls select {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--ink);
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
  outline: none;
}
.feed-controls > label input::placeholder {
  color: rgba(48,49,61,.48);
}
.feed-controls > label:focus-within,
.feed-type-filter:focus-within {
  color: var(--blue);
}
.feed-type-filter legend {
  padding: 0;
}
.feed-type-options {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 9px;
}
.feed-type-options label {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
  cursor: pointer;
}
.feed-type-options input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}
.type-dot {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 999px;
  background: var(--muted-light);
  box-shadow: 0 0 0 1px rgba(29,29,29,.16);
}
.type-dot--essay { background: var(--blue); }
.type-dot--poetry { background: var(--lilac); }
.type-dot--interview { background: var(--pink); }
.type-dot--field-notes { background: var(--mint); }
.feed-type-options label:has(input:checked) {
  font-weight: 900;
}
.feed-type-options label:has(input:checked)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  height: 1px;
  background: currentColor;
}
.feed-type-options label:has(input:focus-visible) {
  outline: 2px solid var(--blue);
  outline-offset: 3px;
}
.article-feed-wrap {
  padding: 8px var(--gutter) clamp(82px, 10vw, 140px) calc(var(--side) + var(--gutter));
}
.article-feed-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  background: transparent;
  border: 0;
}
.feed-card {
  --type-color: var(--blue);
  position: relative;
  isolation: isolate;
  aspect-ratio: 1 / 1;
  width: auto;
  height: auto;
  min-height: 0;
  padding: 14px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--surface);
  color: var(--ink);
  cursor: pointer;
  transition:
    background .34s cubic-bezier(.16,1,.3,1),
    color .28s cubic-bezier(.16,1,.3,1),
  filter .28s cubic-bezier(.16,1,.3,1);
}
.feed-card.image-square,
.feed-card.image-portrait,
.feed-card.image-landscape,
.feed-card.image-tall {
  width: auto;
  height: auto;
}
.feed-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: var(--type-color);
  transform: translate3d(-125%, 0, 0) skewX(-7deg);
  transform-origin: left center;
  transition:
    transform .2s cubic-bezier(.77,0,.175,1);
}
.feed-card[data-type="essay"] { --type-color: var(--blue); }
.feed-card[data-type="poetry"] { --type-color: var(--lilac); }
.feed-card[data-type="interview"] { --type-color: var(--pink); }
.feed-card[data-type="field notes"] { --type-color: var(--mint); }
.feed-card:hover,
.feed-card:focus-visible {
  color: white;
  outline: none;
}
.feed-card[data-type="field notes"]:hover,
.feed-card[data-type="field notes"]:focus-visible {
  color: var(--ink);
}
.feed-card:hover::before,
.feed-card:focus-visible::before {
  transform: translate3d(0, 0, 0) skewX(0deg);
}
.article-feed-grid.is-hovering .feed-card:not(:hover) {
  filter: grayscale(.18) contrast(.94);
}
.feed-card-image {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  display: block;
  overflow: hidden;
  box-shadow: 0 18px 42px rgba(0,0,0,.17);
  transform: translate3d(-50%, -50%, 0) rotate(var(--feed-rotate, -1deg));
  animation: feed-image-float 1.15s ease-in-out infinite alternate;
  transition:
    transform .42s cubic-bezier(.16,1,.3,1),
    box-shadow .3s cubic-bezier(.16,1,.3,1),
    filter .3s cubic-bezier(.16,1,.3,1);
}
.feed-card:nth-child(2n) .feed-card-image {
  --feed-rotate: 1.2deg;
  animation-delay: -1.1s;
}
.feed-card:nth-child(3n) .feed-card-image {
  --feed-rotate: -.4deg;
  animation-delay: -2.1s;
}
.feed-card:hover .feed-card-image,
.feed-card:focus-visible .feed-card-image {
  box-shadow: 0 22px 56px rgba(0,0,0,.2);
  filter: saturate(1.08) contrast(1.05);
}
.feed-card.is-shivering .feed-card-image {
  animation: feed-image-settle .46s cubic-bezier(.16,1,.3,1) both;
}
.feed-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.08) contrast(1.04);
  transform-origin: center;
}
.feed-card.image-square .feed-card-image {
  width: min(45%, 152px);
  aspect-ratio: 1;
}
.feed-card.image-portrait .feed-card-image {
  width: min(38%, 138px);
  aspect-ratio: 3 / 4.25;
}
.feed-card.image-landscape .feed-card-image {
  width: min(56%, 208px);
  aspect-ratio: 1.62 / 1;
}
.feed-card.image-tall .feed-card-image {
  width: min(32%, 116px);
  aspect-ratio: 2.6 / 4.4;
}
.feed-card-meta {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 8px;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
  font-size: clamp(12px, 1.1vw, 15px);
  line-height: .95;
}
.feed-card-meta strong {
  max-width: min(290px, 100%);
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}
.feed-card-meta time {
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
  white-space: nowrap;
}
.feed-card.is-filtered-out {
  display: none;
}
.feed-empty {
  margin: 24px 0 0;
  color: var(--muted);
  font-size: 15px;
}
.article-cursor-tag {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 13000;
  width: max-content;
  max-width: min(390px, calc(100vw - 32px));
  padding: 8px 12px 9px;
  border: 1px solid var(--muted-light);
  border-radius: 999px;
  background: var(--paper);
  color: var(--ink);
  font-size: 13px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  filter: blur(7px);
  transform: translate3d(-9999px, -9999px, 0) translate(18px, -50%) rotate(-2deg) scale(.96);
  transition:
    opacity .22s cubic-bezier(.16,1,.3,1),
    filter .26s cubic-bezier(.16,1,.3,1);
  will-change: transform, opacity;
}
.article-cursor-tag.visible {
  opacity: 1;
  filter: blur(0);
}
.article-cursor-tag strong {
  color: var(--tag-color, var(--ink));
  font-family: var(--serif);
  font-size: 18px;
  font-style: italic;
  font-weight: 900;
  line-height: .8;
  letter-spacing: 0;
}
.article-cursor-tag span {
  color: var(--ink);
}
.article-feature-hero .feature-hero__copy h1 {
  white-space: normal;
}
.article-body {
  display: grid;
  grid-template-columns: minmax(260px, .75fr) minmax(300px, .95fr);
  gap: clamp(40px, 7vw, 90px);
  align-items: start;
  border-top: 1px solid rgba(29,29,29,.16);
}
.article-standfirst {
  margin: 0;
  font-size: clamp(2rem, 4vw, 4.25rem);
  font-weight: 900;
  line-height: .9;
  letter-spacing: 0;
}
.article-copy {
  max-width: 620px;
}
.article-copy p {
  font-size: 18px;
  line-height: 1.28;
}

.long-article {
  padding-bottom: clamp(72px, 10vw, 140px);
}
.article-long-hero {
  position: relative;
  padding: 42px var(--gutter) 0 calc(var(--side) + var(--gutter));
}
.article-hero-bar {
  position: relative;
  z-index: 3;
  max-width: var(--max);
  margin: 0 auto clamp(40px, 7vw, 88px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.detail-context {
  color: var(--blue);
}
.article-title-block {
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, .34fr);
  gap: clamp(28px, 5vw, 70px);
  align-items: end;
}
.article-title-block h1 {
  margin: 0;
  max-width: 980px;
  font-family: var(--serif);
  font-style: italic;
  font-weight: 900;
  font-size: clamp(3.5rem, 8.8vw, 9.75rem);
  line-height: .78;
  letter-spacing: -.05em;
  text-transform: none;
}
.article-deck {
  max-width: 520px;
  margin: 0;
  font-size: clamp(19px, 2vw, 27px);
  font-weight: 800;
  line-height: 1.04;
}
.article-byline {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
  padding-top: 12px;
  border-top: 1px solid rgba(29,29,29,.28);
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.article-byline span,
.article-byline time {
  display: inline-flex;
  align-items: center;
}
.article-byline span + time::before,
.article-byline time + span::before {
  content: "/";
  margin-right: 8px;
  color: currentColor;
}
.article-cover-wide {
  max-width: min(1480px, 100%);
  margin: clamp(28px, 5vw, 70px) auto 0;
  background: var(--surface-strong);
}
.article-cover-wide img {
  width: 100%;
  height: clamp(440px, 72svh, 800px);
  object-fit: cover;
  filter: saturate(1.06) contrast(1.02);
}
.article-cover-wide figcaption,
.article-image-full figcaption,
.article-two-images figcaption,
.article-text-image figcaption,
.article-image-text figcaption,
.article-column-image figcaption,
.article-left-image figcaption,
.article-wide-break figcaption {
  margin-top: 7px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.12;
  letter-spacing: 0;
}
.article-section,
.article-image-full,
.article-wide-break,
.article-pull-band,
.article-end {
  position: relative;
  padding-left: calc(var(--side) + var(--gutter));
  padding-right: var(--gutter);
}
.article-section {
  max-width: calc(var(--max) + var(--side) + (var(--gutter) * 2));
  margin: 0 auto;
  padding-top: clamp(44px, 7vw, 92px);
}
.article-flow {
  display: grid;
  grid-template-columns: minmax(150px, .28fr) minmax(390px, .72fr);
  gap: clamp(30px, 4.5vw, 68px);
  align-items: start;
}
.article-facts,
.article-side-note,
.article-side-quote,
.article-left-image figure {
  position: sticky;
  top: 84px;
}
.article-facts {
  display: grid;
  gap: 18px;
  padding-top: 8px;
  border-top: 1px solid rgba(29,29,29,.28);
  font-family: var(--serif);
  font-style: italic;
}
.article-facts p,
.article-side-note p {
  margin: 0;
  color: var(--muted);
  font-family: var(--sans);
  font-size: 12px;
  font-style: normal;
  font-weight: 650;
  line-height: 1.18;
  letter-spacing: 0;
}
.article-facts strong {
  display: block;
  margin-bottom: 8px;
  color: var(--ink);
  font-family: var(--sans);
  font-style: normal;
  font-size: 13px;
  text-transform: uppercase;
}
.article-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.article-pill-list span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 11px 7px;
  border: 1px solid currentColor;
  border-radius: 999px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
}
.article-issue-note {
  padding-top: 4px;
  color: var(--muted) !important;
  font-family: var(--sans) !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 650 !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
}
.long-article .article-copy {
  max-width: 760px;
}
.article-lede {
  font-size: clamp(1.8rem, 3vw, 3.25rem) !important;
  font-weight: 900 !important;
  line-height: .98 !important;
  letter-spacing: 0;
}
.long-article .article-copy h2 {
  margin: 0 0 18px;
  font-family: var(--sans);
  font-size: clamp(2rem, 3.2vw, 4rem);
  font-style: normal;
  font-weight: 900;
  line-height: .9;
  letter-spacing: 0;
  text-transform: none;
}
.long-article .article-copy p {
  color: var(--ink);
  font-family: var(--sans);
  font-size: clamp(18px, 1.35vw, 21px);
  font-weight: 500;
  line-height: 1.34;
  letter-spacing: 0;
}
.article-quote-split blockquote {
  position: sticky;
  top: 84px;
  margin: 0;
  color: var(--blue);
  font-family: var(--serif);
  font-style: italic;
  font-size: clamp(2rem, 4vw, 4.875rem);
  font-weight: 900;
  line-height: .8;
  letter-spacing: -.05em;
}
.article-inline-quote {
  max-width: 620px;
  margin: clamp(34px, 5vw, 62px) auto !important;
  color: var(--blue);
  font-family: var(--serif);
  font-size: clamp(2rem, 3.8vw, 4.875rem);
  font-style: italic;
  font-weight: 900;
  line-height: .82;
  letter-spacing: -.05em;
  text-align: center;
}
.article-side-note {
  padding-top: 12px;
  border-top: 1px solid rgba(29,29,29,.24);
}
.article-side-quote {
  color: var(--blue);
  font-family: var(--serif);
  font-size: clamp(2.25rem, 4.2vw, 5.25rem);
  font-style: italic;
  font-weight: 900;
  line-height: .78;
  letter-spacing: -.05em;
}
.article-column-image {
  width: 100%;
  margin: clamp(28px, 4vw, 52px) 0;
}
.article-column-image img {
  width: 100%;
  max-height: 560px;
  object-fit: cover;
}
.article-column-image--small {
  max-width: 66%;
  margin-left: auto;
  margin-right: auto;
}
.article-left-image img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.article-wide-break {
  max-width: calc(var(--max) + var(--side) + (var(--gutter) * 2));
  margin: 0 auto;
  padding-top: clamp(48px, 7vw, 96px);
}
.article-wide-break img {
  width: 100%;
  height: clamp(380px, 64svh, 740px);
  object-fit: cover;
}
.article-two-images {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.article-two-images figure,
.article-text-image figure,
.article-image-text figure,
.article-image-full {
  margin-bottom: 0;
}
.article-two-images img {
  width: 100%;
  aspect-ratio: 1 / 1.06;
  object-fit: cover;
}
.article-text-image,
.article-image-text {
  display: grid;
  grid-template-columns: minmax(300px, .78fr) minmax(260px, .56fr);
  gap: clamp(34px, 6vw, 86px);
  align-items: center;
}
.article-image-text {
  grid-template-columns: minmax(260px, .56fr) minmax(300px, .78fr);
}
.article-text-image img,
.article-image-text img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.article-pull-band {
  margin-top: clamp(76px, 11vw, 150px);
  padding-top: clamp(76px, 10vw, 132px);
  padding-bottom: clamp(76px, 10vw, 132px);
  background: var(--blue);
  color: white;
}
.article-pull-band blockquote {
  max-width: 980px;
  margin: 0 auto;
  font-family: var(--serif);
  font-size: clamp(2.625rem, 6vw, 7.5rem);
  font-style: italic;
  font-weight: 900;
  line-height: .78;
  letter-spacing: 0;
  text-align: center;
}
.article-aside-layout aside {
  position: sticky;
  top: 84px;
  padding: 16px 0 0;
  border-top: 1px solid rgba(29,29,29,.28);
}
.article-aside-layout aside h2 {
  margin: 0 0 12px;
  font-size: clamp(1.7rem, 2.6vw, 3rem);
  line-height: .88;
  letter-spacing: 0;
  text-transform: uppercase;
}
.article-final {
  padding-bottom: clamp(18px, 4vw, 42px);
}
.article-end {
  max-width: calc(var(--max) + var(--side) + (var(--gutter) * 2));
  margin: clamp(60px, 9vw, 120px) auto 0;
  padding-top: 22px;
  border-top: 1px solid rgba(29,29,29,.28);
  display: flex;
  justify-content: space-between;
  gap: 24px;
  font-size: 14px;
  font-weight: 900;
  text-transform: uppercase;
}

@media (max-width: 1080px) {
  .feed-controls {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .article-feed-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .articles-feed-main,
  .article-detail-main {
    padding-top: 0;
  }
  .articles-feed-hero,
  .article-feed-wrap {
    padding-left: var(--gutter);
  }
  .articles-feed-hero {
    gap: 26px;
  }
  .articles-feed-hero .feature-hero__back {
    position: static;
  }
  .articles-feed-heading {
    padding-top: 34px;
  }
  .feed-card {
    min-height: 0;
    cursor: pointer;
  }
  .article-cursor-tag {
    display: none;
  }
  .article-body {
    grid-template-columns: 1fr;
  }
  .article-long-hero,
  .article-section,
  .article-image-full,
  .article-wide-break,
  .article-pull-band,
  .article-end {
    padding-left: var(--gutter);
  }
  .article-hero-bar {
    margin-bottom: 42px;
    max-width: 100%;
    min-width: 0;
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .article-title-block,
  .article-flow,
  .article-intro,
  .article-quote-split,
  .article-text-image,
  .article-image-text,
  .article-aside-layout {
    grid-template-columns: 1fr;
    max-width: 100%;
    min-width: 0;
  }
  .article-title-block h1,
  .article-deck,
  .article-byline,
  .article-hero-bar .detail-context {
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  .article-title-block h1 {
    font-size: clamp(3.4rem, 17vw, 5.75rem);
    line-height: .82;
    letter-spacing: 0;
  }
  .article-deck {
    font-size: clamp(1.25rem, 5.5vw, 1.65rem);
    line-height: 1.12;
  }
  .article-byline {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
    line-height: 1.12;
  }
  .article-byline span,
  .article-byline time {
    min-width: 0;
  }
  .article-byline span + time::before,
  .article-byline time + span::before {
    content: none;
  }
  .article-cover-wide img {
    height: clamp(320px, 62svh, 560px);
  }
  .article-facts,
  .article-quote-split blockquote,
  .article-side-note,
  .article-side-quote,
  .article-left-image figure,
  .article-aside-layout aside {
    position: relative;
    top: auto;
  }
  .article-column-image--small {
    max-width: 100%;
  }
  .article-two-images {
    grid-template-columns: 1fr;
  }
  .article-end {
    flex-direction: column;
  }
}

@media (max-width: 620px) {
  .feed-controls,
  .article-feed-grid {
    grid-template-columns: 1fr;
  }
  .feed-controls {
    position: sticky;
    top: 68px;
    z-index: 8;
  }
  .feed-card {
    min-height: 0;
  }
  .feed-card.image-square .feed-card-image,
  .feed-card.image-portrait .feed-card-image,
  .feed-card.image-landscape .feed-card-image,
  .feed-card.image-tall .feed-card-image {
    width: min(46%, 176px);
  }
}

/* WordPress menu markup keeps the approved navigation layout intact. */
.side-nav .menu,
.side-nav .menu > li,
.footer-links .menu,
.footer-links .menu > li {
  display: contents;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Gutenberg compatibility: patterns retain the approved full-bleed layouts. */
.mosaiek-block-page > .wp-block-group,
.mosaiek-block-page > .wp-block-cover,
.mosaiek-block-content > .wp-block-group,
.mosaiek-block-content > .wp-block-columns,
.mosaiek-block-content > .wp-block-image {
  margin-block-start: 0;
  margin-block-end: 0;
}
.mosaiek-block-page .wp-block-columns.two-col,
.mosaiek-block-page .wp-block-columns.editorial-about-grid,
.mosaiek-block-content .wp-block-columns.article-quote-split {
  display: grid;
}
.mosaiek-block-page .wp-block-column,
.mosaiek-block-content .wp-block-column {
  min-width: 0;
}
.mosaiek-block-page .wp-block-button.button,
.mosaiek-block-page .wp-block-button.about-cta,
.mosaiek-block-content .wp-block-button.button {
  background: transparent;
  padding: 0;
}
.mosaiek-block-page .wp-block-button.button .wp-block-button__link,
.mosaiek-block-content .wp-block-button.button .wp-block-button__link {
  border-radius: 999px;
  background: var(--blue);
  color: #fff;
  padding: 13px 19px;
}
.mosaiek-block-page .wp-block-button.about-cta .wp-block-button__link {
  width: 100%;
  border-radius: 0;
  background: transparent;
  color: inherit;
  text-align: left;
}
.mosaiek-block-page .about-mission-intro {
  padding-bottom: 0;
}
.mosaiek-block-content .wp-block-image.alignwide,
.mosaiek-block-content .wp-block-image.alignfull {
  max-width: none;
}
.mosaiek-editor-hero .wp-block-cover__inner-container:empty {
  display: none;
}

@media (max-width: 860px) {
  .mosaiek-block-page .wp-block-columns.two-col,
  .mosaiek-block-page .wp-block-columns.editorial-about-grid,
  .mosaiek-block-content .wp-block-columns.article-quote-split {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   about: editorial mission list
   ========================================================= */
.about-mission:not(.open-call-guide) .about-mission-grid h2.section-script {
  margin: 0 0 clamp(32px, 5vw, 64px);
  color: var(--blue);
  font-family: var(--serif);
  font-size: clamp(70px, 13vw, 190px);
  font-style: italic;
  font-weight: 900;
  line-height: .73;
  letter-spacing: -.12em;
}
.about-mission:not(.open-call-guide) .about-mission-grid h2 {
  margin-bottom: clamp(24px, 3vw, 40px);
}
.mission-intro {
  max-width: 920px;
  margin: 0 0 clamp(52px, 8vw, 96px);
  color: var(--ink);
  font-size: clamp(1.45rem, 2.5vw, 2.8rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -.045em;
}
.mission-values {
  position: relative;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--line);
  list-style: none;
}
.mission-values li {
  position: relative;
  isolation: isolate;
  min-height: clamp(180px, 17vw, 245px);
  padding: clamp(28px, 4vw, 54px) 0;
  display: grid;
  grid-template-columns: minmax(250px, .8fr) minmax(320px, 1.2fr);
  gap: clamp(44px, 8vw, 130px);
  align-items: center;
  border-bottom: 1px solid var(--line);
  color: var(--ink-soft);
  outline: none;
  transition:
    color .42s cubic-bezier(.16,1,.3,1),
    opacity .42s cubic-bezier(.16,1,.3,1),
    padding .42s cubic-bezier(.16,1,.3,1);
}
.mission-values:has(li:hover) li:not(:hover),
.mission-values:has(li:focus-visible) li:not(:focus-visible) {
  color: rgba(48,49,61,.3);
}
.mission-values li:hover,
.mission-values li:focus-visible {
  color: var(--night);
  padding-left: 16px;
  padding-right: 16px;
}
.mission-value-title,
.mission-values li > p {
  position: relative;
  z-index: 2;
}
.mission-values li > .mission-value-copy {
  position: relative;
  z-index: 2;
  max-width: 590px;
  font-size: clamp(15px, 1.25vw, 19px);
  font-weight: 500;
  line-height: 1.32;
  letter-spacing: -.015em;
}
.mission-values li > .mission-value-copy p:last-child {
  margin-bottom: 0;
}
.mission-value-title {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}
.mission-value-title small {
  padding-top: .35em;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}
.mission-value-title strong {
  max-width: 470px;
  font-size: clamp(1.9rem, 3.7vw, 4.35rem);
  font-weight: 900;
  line-height: .88;
  letter-spacing: -.06em;
  text-transform: uppercase;
}
.mission-values li > p {
  max-width: 590px;
  margin: 0;
  font-size: clamp(15px, 1.25vw, 19px);
  font-weight: 500;
  line-height: 1.32;
  letter-spacing: -.015em;
}
.mission-value-preview {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9999;
  display: block;
  width: clamp(180px, 19vw, 290px);
  height: auto;
  max-height: min(410px, 68vh);
  object-fit: contain;
  opacity: 0;
  pointer-events: none;
  box-shadow: none;
  transform: translate3d(-9999px, -9999px, 0) translate(-50%, -50%) rotate(-1.2deg) scale(.86);
  filter:
    drop-shadow(0 18px 20px rgba(17,17,23,.2))
    drop-shadow(0 4px 6px rgba(17,17,23,.1));
  transition:
    opacity .28s cubic-bezier(.16,1,.3,1);
  will-change: transform, opacity;
}
.mission-value-preview.visible {
  opacity: 1;
}

@media (max-width: 860px) {
  .mission-values li {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .mission-value-preview {
    display: none;
  }
  .mission-values li:hover,
  .mission-values li:focus-visible {
    padding-left: 8px;
    padding-right: 8px;
  }
}

/* =========================================================
   about: cleaner staggered team arrangement
   ========================================================= */
.team-strip::after {
  content: none;
}
.team-layout {
  min-height: clamp(620px, 65vw, 820px);
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: clamp(38px, 6vw, 80px);
  align-items: start;
}
.team-copy {
  position: sticky;
  top: clamp(70px, 12vh, 130px);
  order: initial;
  justify-self: end;
  max-width: 360px;
  text-align: left;
}
.team-copy h2 {
  font-size: clamp(4.25rem, 7vw, 6.625rem);
}
.team-copy p:last-child {
  max-width: 360px;
  margin-left: 0;
  margin-right: 0;
}
.team-scatter {
  min-height: 0;
  padding-top: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: none;
  grid-auto-rows: auto;
  gap: clamp(14px, 1.6vw, 22px);
  align-content: start;
}
.team-profile {
  grid-column: auto;
  grid-row: auto;
  min-height: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
}
.team-profile:nth-child(1) { grid-column: 1; grid-row: 1; }
.team-profile:nth-child(2) { grid-column: 2; grid-row: 1; }
.team-profile:nth-child(3) { grid-column: 4; grid-row: 1; }
.team-profile:nth-child(4) { grid-column: 1; grid-row: 2; }
.team-profile:nth-child(5) { grid-column: 3; grid-row: 2; }
.team-profile:nth-child(6) { grid-column: 4; grid-row: 2; }
.team-profile:nth-child(7) { grid-column: 2; grid-row: 3; }
.team-profile:nth-child(8) { grid-column: 3; grid-row: 3; }

@media (max-width: 1060px) {
  .team-layout {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
    gap: 34px;
  }
  .team-scatter {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: none;
  }
  .team-profile:nth-child(n) {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (max-width: 860px) {
  .team-layout {
    min-height: 0;
    grid-template-columns: 1fr;
  }
  .team-copy {
    position: relative;
    top: auto;
    order: -1;
    justify-self: start;
    text-align: left;
  }
  .team-copy p:last-child {
    margin-left: 0;
  }
  .team-scatter {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
  .team-profile {
    min-height: 0;
  }
}

@media (max-width: 520px) {
  .team-scatter {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
}

/* =========================================================
   mobile navigation + homepage quote refinement
   ========================================================= */
@media (max-width: 860px) {
  body.mobile-menu-open {
    overflow: hidden;
  }
  .side-nav {
    isolation: isolate;
    align-items: center;
    overflow: visible;
  }
  .side-nav > .logo {
    position: relative;
    z-index: 2;
  }
  .mobile-menu-toggle {
    position: relative;
    z-index: 2;
    width: 46px;
    height: 40px;
    padding: 0;
    display: grid;
    place-content: center;
    gap: 7px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ink);
    outline: none;
    pointer-events: auto;
    cursor: pointer;
  }
  .mobile-menu-toggle::before {
    content: none;
  }
  .mobile-menu-toggle:hover,
  .mobile-menu-toggle:focus-visible {
    color: var(--ink);
  }
  .mobile-menu-toggle:focus-visible {
    outline: 2px solid var(--blue);
    outline-offset: 2px;
  }
  .mobile-menu-toggle span {
    width: 25px;
    height: 2px;
    display: block;
    background: currentColor;
    transform-origin: center;
    transition:
      transform .32s cubic-bezier(.16,1,.3,1),
      opacity .22s ease;
  }
  .side-nav.is-menu-open .mobile-menu-toggle span:first-child {
    transform: translateY(4.5px) rotate(45deg);
  }
  .side-nav.is-menu-open .mobile-menu-toggle span:last-child {
    transform: translateY(-4.5px) rotate(-45deg);
  }
  .side-nav nav {
    position: fixed;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100svh;
    max-height: none;
    margin: 0;
    padding: 96px 20px 30px;
    display: grid;
    gap: 0;
    align-content: start;
    overflow: hidden;
    visibility: hidden;
    background: rgba(245,245,245,.98);
    border-bottom: 0;
    opacity: 1;
    pointer-events: none;
    transform: translateY(-101%);
    transition:
      transform .5s cubic-bezier(.77,0,.175,1),
      visibility 0s linear .5s;
  }
  .side-nav nav a {
    padding: 14px 0;
    border-top: 1px solid rgba(29,29,29,.18);
    font-size: clamp(1.25rem, 6vw, 1.8rem);
    line-height: 1;
  }
  .side-nav.is-menu-open nav {
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
  }
  .home-page .big-quote {
    margin-top: clamp(40px, 12vw, 64px);
    margin-bottom: clamp(42px, 12vw, 68px);
    font-size: clamp(30px, 8.4vw, 38px);
    line-height: .94;
    letter-spacing: -.055em;
  }
  .home-page .big-quote cite {
    margin-top: 22px;
    font-size: .7em;
    line-height: 1;
    letter-spacing: -.035em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .feed-card,
  .feed-card::before,
  .feed-card-image,
  .article-cursor-tag {
    transition: none;
  }
  .feed-card-image {
    animation: none;
  }
}

/* =========================================================
   contact page
   ========================================================= */
.contact-main {
  background: var(--paper);
}
.contact-hero {
  height: calc(100svh - 34px);
  min-height: 0;
  max-height: calc(100svh - 34px);
  padding: 34px var(--gutter) clamp(70px, 10vw, 130px) calc(var(--side) + var(--gutter));
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
  grid-template-rows: auto 1fr;
  gap: 70px;
  border-bottom: 1px solid var(--line);
}
.contact-hero .detail-topbar {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.contact-hero .detail-topbar--context-only {
  justify-content: flex-end;
}
.contact-hero-copy {
  grid-column: 1 / -1;
  align-self: end;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .55fr);
  column-gap: var(--gutter);
  row-gap: 14px;
  align-items: end;
  padding-left: clamp(0px, 2vw, 30px);
}
.contact-kicker {
  margin: 0 0 8px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .08em;
}
.contact-title-lockup {
  min-width: 0;
  display: grid;
  align-content: end;
}
.contact-hero h1 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(88px, 15vw, 220px);
  line-height: .68;
  letter-spacing: -.1em;
  font-family: var(--serif);
  font-style: italic;
  font-weight: 900;
}
.contact-hero h1 span { color: inherit; }
.contact-hero-copy > p:last-child {
  max-width: 34rem;
  font-size: clamp(18px, 2vw, 27px);
}
.contact-form-section {
  padding: clamp(72px, 10vw, 140px) var(--gutter) clamp(72px, 10vw, 140px) calc(var(--side) + var(--gutter));
  display: grid;
  grid-template-columns: minmax(220px, .55fr) minmax(0, 1fr);
  gap: clamp(50px, 9vw, 150px);
  border-bottom: 1px solid var(--line);
}
.contact-form-intro h2,
.contact-routes h2 {
  margin: 0 0 18px;
  font-size: clamp(34px, 5vw, 72px);
  line-height: .9;
  letter-spacing: -.065em;
}
.contact-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px 24px;
}
.contact-field { grid-column: 1 / -1; }
.contact-field--half { grid-column: span 1; }
.contact-field label {
  display: block;
  margin-bottom: 9px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.contact-field label span { color: var(--muted); }
.contact-field input,
.contact-field select,
.contact-field textarea {
  width: 100%;
  border: 2px solid transparent;
  border-radius: 0;
  padding: 16px 18px;
  background: var(--surface);
  color: var(--ink);
  caret-color: var(--blue);
  font: 500 18px/1.35 var(--sans);
  outline: none;
  transition: border-color .2s ease, background .2s ease;
}
.contact-field textarea { resize: vertical; min-height: 170px; }
.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
  border-color: var(--blue);
  background: var(--surface-soft);
}
.contact-honeypot {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.contact-privacy,
.contact-status {
  grid-column: 1 / -1;
  max-width: 48rem;
  font-size: 13px;
  color: var(--muted);
}
.contact-submit { grid-column: 1 / -1; justify-self: start; }
.contact-submit:disabled { opacity: .55; cursor: wait; }
.contact-status:empty { display: none; }
.contact-status:focus { outline: none; }
.contact-routes {
  padding: clamp(72px, 10vw, 130px) var(--gutter) clamp(72px, 10vw, 130px) calc(var(--side) + var(--gutter));
  background: var(--blue);
  color: white;
}
.contact-routes h2 { max-width: 800px; }
.contact-route-grid {
  margin-top: clamp(44px, 7vw, 90px);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid currentColor;
}
.contact-route-grid > * {
  min-width: 0;
  padding: 28px 24px 32px 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  border-bottom: 1px solid currentColor;
}
.contact-route-grid > * + * { padding-left: 24px; border-left: 1px solid currentColor; }
.contact-route-grid strong {
  font-size: clamp(12px, 1.25vw, 18px);
  letter-spacing: -.04em;
  white-space: nowrap;
}
.contact-route-grid small { font-weight: 500; opacity: .75; }
.direct-email-note { max-width: 52rem; }
.jobs-direct-email { padding: 26px var(--gutter); }

@media (max-width: 860px) {
  .contact-hero {
    height: auto;
    min-height: auto;
    max-height: none;
    grid-template-columns: 1fr;
    gap: 80px;
    padding: 26px var(--gutter) clamp(70px, 10vw, 130px);
  }
  .contact-hero-copy,
  .contact-form-section { grid-template-columns: 1fr; }
  .contact-hero h1 { font-size: clamp(76px, 26vw, 150px); }
  .contact-form-section {
    gap: 48px;
    padding-left: var(--gutter);
  }
  .contact-routes { padding-left: var(--gutter); }
  .contact-route-grid { grid-template-columns: 1fr; }
  .contact-route-grid > * + * { padding-left: 0; border-left: 0; }
  .contact-route-grid strong { white-space: normal; }
}

@media (max-width: 620px) {
  .contact-form { grid-template-columns: 1fr; }
  .contact-field--half { grid-column: 1; }
}

@keyframes feed-image-settle {
  0% {
    transform: translate3d(-50%, -50%, 0) rotate(var(--feed-rotate, -1deg)) translate3d(0, 0, 0) scale(1);
  }
  38% {
    transform: translate3d(-50%, -50%, 0) rotate(calc(var(--feed-rotate, -1deg) * -0.35)) translate3d(0, -8px, 0) scale(1.075);
  }
  68% {
    transform: translate3d(-50%, -50%, 0) rotate(calc(var(--feed-rotate, -1deg) * 0.55)) translate3d(0, 2px, 0) scale(.992);
  }
  100% {
    transform: translate3d(-50%, -50%, 0) rotate(var(--feed-rotate, -1deg)) translate3d(0, 0, 0) scale(1);
  }
}

@keyframes feed-image-float {
  from {
    transform: translate3d(-50%, -50%, 0) rotate(calc(var(--feed-rotate, -1deg) - .6deg)) skewX(-.8deg) translateY(-3px);
  }
  to {
    transform: translate3d(-50%, -50%, 0) rotate(calc(var(--feed-rotate, -1deg) + .6deg)) skewX(.8deg) translateY(3px);
  }
}

/* =========================================================
   performance budget: keep motion, avoid idle work
   ========================================================= */
.event-image,
.issue-cover-frame,
.interactive-flag-image,
.feed-card-image {
  animation-play-state: paused;
}

.event-image.is-animating,
.issue-cover-frame.is-animating,
.interactive-flag-image.is-animating,
.feed-card-image.is-animating {
  animation-play-state: running;
}

.text-reveal {
  filter: none !important;
  will-change: transform, opacity;
}

.text-reveal.in-view {
  will-change: auto;
}

.hover-thumb,
.article-cursor-tag,
.issue-index-tag {
  will-change: auto;
}

.hover-thumb.visible,
.article-cursor-tag.visible,
.issue-index-tag.visible {
  will-change: transform, opacity;
}

.event-info,
.profile-tag,
.article-cursor-tag,
.issue-index-tag,
.floating-tag {
  filter: none !important;
}

.issue-detail-main,
.page-detail-main {
  animation-name: performant-page-enter;
}

@keyframes performant-page-enter {
  from { opacity: 0; transform: translate3d(32px, 0, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}

.content-section,
.pull-quote-section,
.cta-band,
.team-strip,
.article-feed-wrap,
.article-section,
.article-image-full,
.article-wide-break,
.article-pull-band,
.article-end,
.jobs-openings,
.jobs-quote,
.jobs-final,
.open-call-prompts-strip,
.open-call-final {
  content-visibility: auto;
  contain-intrinsic-size: auto 720px;
}

/* =========================================================
   mobile homepage pass
   ========================================================= */
@media (max-width: 860px) {
  .top-ticker {
    display: none;
  }

  .home-page.has-top-ticker main,
  .has-top-ticker main {
    padding-top: 0;
  }

  .home-page .side-nav {
    position: sticky;
    top: 0;
    z-index: 120;
  }

  .home-page .hero,
  .home-page.has-top-ticker .hero,
  .home-page.ticker-dismissed .hero {
    min-height: auto;
    display: block;
  }

  .home-page .hero-media,
  .home-page.has-top-ticker .hero-media,
  .home-page.ticker-dismissed .hero-media {
    min-height: auto;
    width: 100%;
    overflow: hidden;
    background: var(--surface-soft);
  }

  .home-page .hero-media video,
  .home-page.has-top-ticker .hero-media video,
  .home-page.ticker-dismissed .hero-media video,
  .home-page .hero-video {
    width: 100%;
    max-width: 100vw;
    height: auto;
    max-height: none;
    object-fit: contain;
    transform: none;
  }

  .home-page .hero-media::after {
    content: none;
  }

  .home-page .big-quote {
    display: block;
    grid-column: 1;
    grid-row: auto;
    margin: 28px 0 38px;
    max-width: 100%;
  }

  .home-page .issue-copy {
    grid-row: auto;
  }

  .home-page .section-script,
  .editorial-about-section .section-script {
    margin-bottom: clamp(34px, 9vw, 58px);
  }
}

/* =========================================================
   pre-WordPress polish pass
   ========================================================= */
.issue-heading {
  display: grid;
  gap: 10px;
}
.issue-heading-label {
  width: fit-content;
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* PNG alpha is respected by drop-shadow, so the shadow follows the cut-out. */
.home-page .hover-thumb {
  width: min(360px, 30vw);
  height: auto;
  max-height: min(440px, 70vh);
  object-fit: contain;
  overflow: visible;
  background: transparent;
  box-shadow: none;
  mix-blend-mode: normal;
  filter:
    drop-shadow(0 18px 18px rgba(17,17,23,.22))
    drop-shadow(0 4px 6px rgba(17,17,23,.14));
}
.home-page .hover-thumb.visible {
  opacity: 1;
}

.open-call-guide .mission-layout {
  grid-template-columns: minmax(190px, .48fr) minmax(0, 1.52fr);
  gap: clamp(30px, 5vw, 74px);
}
.open-call-guide .about-mission-line {
  max-width: 360px;
  margin-top: 4px;
  font-size: clamp(2rem, 3vw, 3.25rem);
  line-height: .88;
}
.open-call-guide .submission-steps {
  grid-template-columns: 1fr;
  gap: 0;
  counter-reset: submission-step;
  border-top: 1px solid var(--line);
}
.open-call-guide .submission-steps li {
  min-height: 0;
  grid-template-columns: 42px minmax(180px, .7fr) minmax(220px, 1fr);
  align-items: baseline;
  gap: clamp(14px, 2.5vw, 34px);
  padding: 22px 0;
  overflow: visible;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  transition:
    padding .34s cubic-bezier(.16,1,.3,1),
    background .28s cubic-bezier(.16,1,.3,1);
}
.open-call-guide .submission-steps li::before {
  content: none;
}
.open-call-guide .submission-steps li:hover,
.open-call-guide .submission-steps li:focus-within {
  padding-left: 12px;
  padding-right: 12px;
  background: rgba(74,4,251,.055);
  transform: none;
}
.open-call-guide .submission-steps strong {
  max-width: none;
  font-size: clamp(1.45rem, 2.25vw, 2.35rem);
}
.open-call-guide .submission-steps p {
  max-width: 520px;
  font-size: 14px;
  line-height: 1.25;
}

.about-mission:not(.open-call-guide) {
  padding-top: clamp(72px, 10vw, 136px);
  padding-bottom: clamp(78px, 11vw, 150px);
}
.about-mission:not(.open-call-guide) .about-mission-grid h2 {
  margin-bottom: clamp(26px, 4vw, 48px);
  color: var(--blue);
  font-family: var(--serif);
  font-size: clamp(3.25rem, 6.5vw, 6.75rem);
  font-style: italic;
  line-height: .82;
}
.about-mission:not(.open-call-guide) .mission-layout {
  grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr);
  gap: clamp(40px, 7vw, 100px);
}
.about-mission:not(.open-call-guide) .about-mission-line {
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid var(--blue);
  color: var(--ink);
  font-family: var(--sans);
  font-size: clamp(1.55rem, 2.5vw, 2.75rem);
  font-style: normal;
  line-height: 1.02;
  letter-spacing: -.045em;
}
.about-mission:not(.open-call-guide) .about-principles {
  gap: 0;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.about-mission:not(.open-call-guide) .about-principles li {
  min-height: 210px;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: transparent;
}
.about-mission:not(.open-call-guide) .about-principles strong {
  font-size: clamp(1.65rem, 2.2vw, 2.35rem);
}

.team-strip::after {
  content: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
  background-size: clamp(70px, 8vw, 118px) clamp(70px, 8vw, 118px);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 18%, #000 82%, transparent 100%);
  pointer-events: none;
}

.feed-type-filter select {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--ink);
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
  outline: none;
  cursor: pointer;
}

.article-quote-split {
  grid-template-columns: minmax(150px, .28fr) minmax(390px, .72fr);
}
.article-quote-split blockquote {
  min-width: 0;
  max-width: 340px;
  font-size: clamp(1.7rem, 2.65vw, 3.1rem);
  line-height: .92;
  overflow-wrap: break-word;
}

.contact-hero h1 {
  line-height: .82;
}

@media (max-width: 860px) {
  .open-call-guide .mission-layout,
  .about-mission:not(.open-call-guide) .mission-layout {
    grid-template-columns: 1fr;
  }
  .open-call-guide .submission-steps li {
    grid-template-columns: 34px minmax(0, 1fr);
  }
  .open-call-guide .submission-steps p {
    grid-column: 2;
  }
  .article-quote-split blockquote {
    max-width: 620px;
  }
  .article-quote-split {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .about-mission:not(.open-call-guide) .about-principles {
    grid-template-columns: 1fr;
  }
  .team-strip::after {
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
  }
}
