/* Auto-generated. Do not edit. */

/* 00-setup.css */
/* CSS Stacking order in 10s so we can insert new layers later without renaming everything
   00-setup.css
   10-text-two-col.css
   20-text-two-col.css
   30-etc.css
*/

/* 01-content-module.css */
/* Content Module */
.content-module {
	padding: var(--padding__module);
	border-radius: var(--border-radius);
	margin: 0 var(--padding__page) var(--gap-block__page);

	/* Module Header */
	& > header {
		margin-inline: var(--margin-inline__header);

		.header-body {
			display: grid;
			grid-template-columns: 1fr;
			place-items: center;
			gap: var(--gap-block__module);
			padding-inline: var(--padding-inline__header);
		}


		@media (min-width: 767px) {
			.header-body {
				grid-template-columns: 1fr 1fr 1fr;
				flex-basis: 100%;

				> * {
					grid-column: 2;
				}
			}
			.header-detail {
				grid-column: 3;
				justify-self: end;
				text-align: right;
			}
		}
	}

	h2 {
		text-align: center;
		width: max-content;
		display: inline-block;
		border: 2px solid currentColor;
		border-radius: var(--border-radius-lg);
		padding: .2em .4em;
		line-height: var(--line-height-md);
		font-weight: 700;
		letter-spacing: var(--letter-spacing-xs);
	}
}

/* ------------------------------------------------------------ */
/* SHAREABLE SECTION HEADING */

/* Make the link fill the pill and inherit typography */
.content-module .header-body h2 > a.section-link {
	color: inherit;
	text-decoration: none;

	display: block;

	padding: .2em .4em;
	border-radius: var(--border-radius-lg);

	max-width: 100%;
}

.content-module .header-body h2:has(> a.section-link) {
	padding: 0;
}

.content-module .header-body h2:has(> a.section-link) {
	border-radius: var(--border-radius-lg);
	overflow: visible;
}

/* Ready to share = show "this is clickable" behaviors */
section.content-module.is-linkable .header-body h2 > a.section-link {
	cursor: pointer;
}

/* Hover + focus-visible underline */
section.content-module.is-linkable .header-body h2 > a.section-link:hover,
section.content-module.is-linkable .header-body h2 > a.section-link:focus-visible {
	/* text-decoration: underline; */
}

/* Always: real focus ring for keyboard users */
.content-module .header-body h2 > a.section-link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

/* Optional link icon on hover/focus (absolute, positioned left of pill) */
section.content-module.is-linkable .header-body h2 > a.section-link {
	position: relative;
}

section.content-module.is-linkable .header-body h2 > a.section-link:hover::before,
section.content-module.is-linkable .header-body h2 > a.section-link:focus-visible::before {
	position: absolute;
	left: -2.5rem;
	top: 50%;
	transform: translateY(-50%);
	content: url('data:image/svg+xml,<svg width="20" height="10" viewBox="0 0 20 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9 10H5C3.61667 10 2.4375 9.5125 1.4625 8.5375C0.4875 7.5625 0 6.38333 0 5C0 3.61667 0.4875 2.4375 1.4625 1.4625C2.4375 0.4875 3.61667 0 5 0L9 0V2H5C4.16667 2 3.45833 2.29167 2.875 2.875C2.29167 3.45833 2 4.16667 2 5C2 5.83333 2.29167 6.54167 2.875 7.125C3.45833 7.70833 4.16667 8 5 8H9V10ZM6 6V4L14 4V6L6 6ZM11 10V8H15C15.8333 8 16.5417 7.70833 17.125 7.125C17.7083 6.54167 18 5.83333 18 5C18 4.16667 17.7083 3.45833 17.125 2.875C16.5417 2.29167 15.8333 2 15 2L11 2V0L15 0C16.3833 0 17.5625 0.4875 18.5375 1.4625C19.5125 2.4375 20 3.61667 20 5C20 6.38333 19.5125 7.5625 18.5375 8.5375C17.5625 9.5125 16.3833 10 15 10H11Z" fill="%23000000"/></svg>');
	display: block;
	width: 2rem;
	height: 100%;
	pointer-events: none;
	opacity: .5;
}

/* Copy feedback (your old “just-copied” behavior) */
section.content-module.just-copied .header-body h2 > a.section-link::after {
	content: "   Copied";
	font-size: var(--size-16);
	opacity: .5;
}

/* Settings */
.dots-on {
	display: flex;
	align-items: center;
	justify-content: space-between;

	&::before, &::after {
		content: '';
		display: inline-block;
		height: var(--height__dots);
		aspect-ratio: 1;
		background-image: url("../../images/dot.svg");
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
	}
	:is(.theme-dark, .scheme-black) &::before,
	:is(.theme-dark, .scheme-black) &::after {
		background-image: url("../../images/dot-yellow.svg");
	}

	&::before { margin-left: calc(-1 * var(--margin-inline__header)); }
	&::after { margin-right: calc(-1 * var(--margin-inline__header)); }
}

.linerule-on {
	border-bottom: 1px solid var(--color__rule);
	padding-bottom: var(--padding-bottom__header);
}


/* 02-hero.css */
.hero {
	margin-inline: var(--margin-inline__content);
	display: flex;
	flex-direction: column-reverse;
	gap: var(--space-30);

	h1, figure {
		margin: 0;
	}

	.hero__text {
		display: flex;
		flex-direction: column;
		gap: var(--space-30);
	}

	.hero__details {
		display: flex;
		flex-wrap: wrap;
		gap: 3rem 8rem;
	}
}

.hero.full-width {
	flex-direction: column;
	align-items: center;

	header {
		display: flex;
		flex-direction: column-reverse;
		align-items: center;
		gap: 1rem;
	}

	.categories {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
	}

	.status {
		display: inline-flex;
	}

	address {
		text-align: center;
	}

	margin-bottom: var(--space-30);
}

@media (min-width: 992px) {
	.hero {
		flex-direction: row;
		gap: 6rem;

		.hero__image {
			flex: 3 0 1px;
		}

		.hero__text {
			order: unset;
			flex: 4 0 1px;
		}

		h1 {
			flex-grow: 1;
		}
	}

	.hero.full-width {
		flex-direction: column;
		gap: 5rem;

		header {
			gap: 3rem;
		}

		margin-bottom: 6rem;
	}
}

/* 10-button-forms.css */
.button-forms {
	padding-bottom: var(--space-40);

	.button-block {
		padding: var(--space-10) var(--space-30);
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: var(--space-20);

		& > * {
			flex: 0 0 100%;
		}
	}

	.info, p {
		font-size: var(--body-small);
	}

	.header {
		margin-block: var(--space-10);
		display: flex;
		flex-wrap: wrap;
		gap: var(--space-10);
		align-items: flex-start;

		h3 {
			font-size: var(--body-reg);
			font-weight: 400;
			text-transform: uppercase;
			display: inline;
			line-height: var(--line-height-sm);
			letter-spacing: var(--letter-spacing-xs);
		}
		button {
			vertical-align: top;
		}
	}

	.info:not(.is-expanded) .detail {
		display: none; /* placeholder for animation */
	}

	.button-list {
		border-block: 1px solid var(--colorDarkGrey);
		padding-block: var(--space-20); /* rounding up from 29 */
		border-top: 1px solid transparent !important;

		li + li {
			margin-top: var(--space-23);
		}
	}

	.link-button {
		&::after {
			content: "↓";
		}
		.is-expanded &::after {
			content: "↑";
		}
	}
}

@media (min-width: 767px) {
	.button-forms {
		.button-block {
			padding: var(--space-40) 0;
			margin-inline: var(--space-30);
			flex-wrap: nowrap;
			gap: var(--space-20);

			& + & {
				border-top: 1px solid var(--colorDarkGrey);
				margin-top: var(--space-15);
			}
		}
		.info {
			flex: 0 1 50ch;
		}
		.button-list {
			border: none;
			padding: 0;
			flex: 0 1 50%;
			border-top: 1px solid transparent;
			/* padding-block: var(--space-30); */
		}
	}
}

/* 100-artworks-and-map.css */
.media-artworks-map {
	position: relative;
}

.media-artworks-map .grid {
	display: grid;
	gap: 2rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: start;
	padding: 2rem 3rem;
}

.map-btn-container {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-content: center;
	text-align: center;
	margin-inline: var(--margin-inline__header);
	border-bottom: 1px solid var(--colorDarkGrey);
	padding-bottom: var(--padding-bottom__header);
}

.map-btn-container button {
	background: transparent;
	padding: 0 .5rem;
	border: none;
}

.map-btn-container button::before {
	content: '';
	padding-right: .25rem;
	color: transparent;
}

.map-btn-container button:hover::before {
	color: currentcolor;
	opacity: .25;
}

.map-btn-container button.is-active::before {
	color: currentcolor;
}

.map-btn-container button.is-active:hover::before {
	opacity: 1;
}

.media-artworks-map header.linerule-on {
	border-color: transparent;
}

.artwork-item a {
	padding: 1rem;
	border: 1px solid transparent;
	border-radius: var(--border-radius);
	display: flex;
	flex-flow: column nowrap;
	gap: 1rem;
}

.artwork-item a:is(:hover, :focus, :active) {
  background: var(--color__hover);
  color: var(--color__hovertext);
  border-color: var(--color__hovertext);
}

.artwork-item .index {
	font-feature-settings: "ss16";
}

.artwork-grid-title {
	font-size: var(--size-26);
	line-height: var(--line-height-sm);
}

.artwork-info {
	display: flex;
	flex-flow: row wrap;
}

.artwork-info p {
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
	display: flex;
	flex-flow: row nowrap;
	flex: 1 1 70%;
	min-width: 0;
	margin-bottom: 1.5rem;
}

.artwork-info p.categories {
	flex-flow: row wrap;
	align-items: center;
}

 p.categories span {
	margin-right: .5rem;
	max-width: max-content;
 }

.artwork-info p .label{
	flex: 0 0 30%;
	max-width: 30%;
	font-weight: 700;
}

.artwork-term,
.status {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	font-size: 80%;
}

.status::before {
	content: '';
	padding-right: .125rem;
}

.status::after {
	content: '';
	padding-left: .125rem;
}

.artwork-term {
	border: 1.5px solid currentColor;
	line-height: var(--line-height-sm);
	padding: 0 .25rem;
}

.edition-term {
	font-feature-settings: "ss16";
	font-size: var(--size-20);
	line-height: var(--line-height-sm);
}

.media-artworks-map .map {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100vw;
	/* height: calc(100vh - 10rem); */

	padding: var(--padding__page);

	z-index: 1000;

	height: 0px;
	visibility: hidden;
}

.media-artworks-map .map.is-active {
	height: 100vh;
	height: 100svh;
	visibility: visible;
}

.map-wrapper {
	width: 100%;
	height: 100%;
	border-radius: var(--border-radius);
	overflow: hidden;
}

.media-artworks-map.scheme-yellow .map-wrapper {
	background-color: var(--colorYellow);
}

.media-artworks-map.scheme-grey .map-wrapper {
	background-color: var(--colorLightGrey);
}

.media-artworks-map.scheme-black .map-wrapper {
	background-color: var(--colorBlack);
}

.media-artworks-map .map .acf-map {
	min-height: calc(100vh - 7.5rem);
}

.map-wrapper .map-btn-container {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;

	margin-inline: var(--margin-inline__header);
	padding-top: 1rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid transparent;
}

.map-btn-center {
	display: flex;
	gap: .5rem;
	color: var(--colorBlack);
}

.close-map {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	margin-left: 0;

	background: transparent;
	padding: .25rem;
	border: none;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

.map-btn-container button.close-map::before {
	content: '';
	display: none;
}

.media-artworks-map .gm-style .gm-style-iw-c {
	padding: 0 !important;
	overflow-x: hidden !important;
	background: transparent !important;
	box-shadow: none !important;
}

.media-artworks-map .gm-style .gm-style-iw-d {
	overflow: visible !important;
	max-height: none !important;
}

/* Little tail/pointer */
.media-artworks-map .gm-style .gm-style-iw-tc {
	display: none !important;
}

.cp-map-popup {
	background: var(--colorYellow);
	color: #000;
	font-family: 'Repro', system-ui, sans-serif;
	overflow: hidden;
	width: max(25vw, 22rem);
	max-width: 33rem;
	padding: 1rem;
	border: 1px solid transparent;
	border-radius: var(--border-radius);
	display: flex;
	flex-flow: column nowrap;
	gap: 1rem;
}

/* top title row */
.cp-map-popup .artwork-title {
	font-size: var(--size-26);
	line-height: var(--line-height-sm);
	margin: 0;
	padding: 0;
}

/* index pill */
.cp-map-popup .artwork-title .index {
	font-size: var(--size-26);
	line-height: var(--line-height-sm);
	font-feature-settings: "ss16";
}

/* image */
.cp-map-popup img {
	display: block;
	width:100%;
	height: auto;
}

.cp-map-popup .label {
	font-weight: 700;
}

.cp-map-popup .artwork-info {
	border-bottom: 1px solid var(--colorLightGrey);
}

/* CTA */
.cp-map-popup > a {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	max-width: 100%;
	margin-inline: auto;
	font-size: var(--size-16);
	line-height: var(--line-height-md);
	text-align: center;
	padding: .5rem 3rem .5rem 1rem;
}

.cp-map-popup > a.button::after {
	content: '→';
	position: absolute;
	top: .5rem;
	right: .875rem;
	opacity: 1;
}

.cp-map-popup > a span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 64px;
	border: 1px solid #000;
	border-radius: var(--border-radius);
	font-size: var(--size-26);
	line-height: var(--line-height-sm);
}

.map-artist {
	text-decoration: underline 1px;
	text-underline-offset: 0.15em;
}

.media-artworks-map .gm-style button.gm-ui-hover-effect {
	position: absolute !important;
	top: 24px !important;
	right: 7px !important;
	width: 30px !important;
	height: 30px !important;
	opacity: 1 !important;
}

/* the masked icon */
.media-artworks-map .gm-style button.gm-ui-hover-effect span {
	width: 30px !important;
	height: 30px !important;
	margin: 1px !important;
	background-color: #000 !important;
}



/* Mobile: stack */
@media (max-width: 767px){
	.media-artworks-map .grid {
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
		padding-inline: 1rem;
	}
  .row {
		flex-direction: column;
		gap: .25rem;
  }
  .artwork-info p .label,
  .artwork-info p {
		display: block;
  }
}

/* 110-image-carousel.css */
.image-carousel {
	.swiper {
		height: calc(100vh - 14rem);
		max-height: calc(100vh - 14rem);
		margin-inline: var(--margin-inline__header);
		padding: 1rem 0;
	}

	.extra-header {
		display: flex;
		margin-block: var(--gap-block__module) var(--space-20);
		padding: 0 .25rem;
		justify-content: flex-end;
		align-items: center;
		border-bottom: none !important;
	}

	.swiper-wrapper,
	.swiper-slide,
	.carousel-slide {
		height: 100%;
		max-height: calc(100vh - 21rem);
		position: relative;
	}

	.two-images {
		display: flex;
		flex-flow: row nowrap;
		gap: 1rem;
		height: 100%;
	}

	.carousel-image-block {
		flex: 1 1 50%;
		min-width: 0;
		height: 100%;
		position: relative;
	}

	.carousel-image {
		width: 100%;
		height: 100%;
		min-height: 20rem;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}

	.carousel-caption {
		position: absolute;
		bottom: 1rem;
		left: 1rem;
		width: 50%;
		max-width: 50vw;
	}

	.two-images .carousel-caption {
		width: calc(100% - 2rem);
		text-align: center;
	}

	.caption-wrapper {
		font-family: Repro-Regular-Mono;
		font-size: var(--size-16);
		line-height: var(--line-height-md);
		color: white;
		margin: 0;
		padding: 2rem;
		border-radius: var(--border-radius);
		border: 1px solid transparent;
		text-align: center;
		display: flex;
		flex-flow: row nowrap;
		align-items: center;
	}

	.caption-wrapper.hover {
		padding: 2rem;
		background: white;
		color: black;
		border-color: black;
	}

	.marker {
		display: inline-block;
		border-radius: 50%;
		border: 1px solid;
		width: 2.4rem;
		min-width: 2.4rem;
		height: 2.4rem;
		padding: 0;
		text-align: center;
		user-select: none;
		touch-action: manipulation;
	}

	button.marker {
		background: rgba(255, 255, 255, .9);
		border-color: black;
		color: black;
		-webkit-backdrop-filter: blur(20px);
		backdrop-filter: blur(20px);
	}

	button.marker.hover {
		color: black;
		border-color: transparent;
	}

	.cell-caption-text {
		padding: 0 4rem;
		margin: 0;
		display: inline-block;
		opacity: 1;
	}

	.cell-caption-text[hidden] {
		display: none !important;
	}

	.cell-caption-info {
		position: relative;
		font-size: 0;
		line-height: 0;
		display: grid;
		place-items: center;
	}

	.cell-caption-info::before {
		content: "i";
		display: grid;
		place-items: center;
		width: 100%;
		height: 100%;
		font-size: var(--size-16);
		line-height: var(--line-height-md);
		font-family: inherit;
	}

	.caption-wrapper.is-pinned .cell-caption-info::before {
		content: "×";
		font-size: var(--size-16);
		line-height: 1;
		margin-top: -2px;
	}

	.cell-caption-info > * {
		display: none;
	}
}

/* 120-images.css */
.media-images {
	.image-container {
		margin: 2rem var(--margin-inline__header) 0;
	}

	figure {
		margin: 0;
	}

	figcaption {
		margin-top: 1rem;
		padding-block: 1rem;
	}

	&.full-bleed {
		padding-top: 0;
		/* padding-bottom: 0; */
		padding-bottom: 4rem;
		padding-inline: 0;
		margin: 0;
		overflow: hidden;
		position: relative;
		border-radius: 0;

		.image-container {
			margin: 0;
		}

		header {
			position: absolute;
			inset: var(--padding__module);
			border: none;
			pointer-events: none;
			opacity: 0;

			.header-body {
				display: none;
			}
		}
	}

	.columns {
		display: flex;
		gap: 2rem;

		.column {
			/* Equal width flex-items */
			flex: 1 1 1px;
		}
	}

	.grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
		align-items: center;
		margin-bottom: 4rem;
		padding: 0;

		figcaption {
			margin-top: 0;
		}
	}
}

@media (min-width: 767px) {
	.media-images {
		.grid {
			grid-template-columns: 1fr 1fr 1fr;
			gap: 4rem;
			margin-bottom: 5rem;
			padding: 2rem;
		}
	}
}

/* 130-video.css */
.video.standard .video-container {
         display: flex;
         flex-direction: column;
         align-items: center;
         gap: 1rem;
         align-self: stretch;
         margin: 2rem auto 0;
         text-align: center;

      iframe {
         width: 115rem;
         height: auto;
         display: block;
         border: 0;
         aspect-ratio: 16 / 9;
      }

         .video-caption {
            color: var(--colorYellow);
            text-align: left;
            margin: var(--space-10) var(--space-20);
         }

   }

.video.background {
      padding-top: 0;
      padding-bottom: 0;
      padding-inline: 0;
      margin: 0 0 2rem 0;
      overflow: hidden;
      position: relative;
      border-radius: 0;

      .video-container {
         width: 100vw;
         margin: 0;
         margin-left: calc(50% - 50vw);
         margin-right: calc(50% - 50vw);

         .video-caption {
            opacity: 0;
         }
      }

      iframe {
         width: 100%;
         height: auto;
         display: block;
         border: 0;
         aspect-ratio: 16 / 9;
      }

         header {
            position: absolute;
            inset: var(--padding__module);
            border: none;
            pointer-events: none;
            opacity: 0;

            .header-body {
               display: none;
            }
         }
   }

@media (min-width: 767px) {
   .video.standard {
      .video-caption {
         width: 50%;
         margin: 0;
      }
   }
}

/* 140-nav-index.css */
.index-container {
  margin-inline: var(--margin-inline__header);
}

/* PEOPLE INDEX */
/* each row is the anchor */
.index-people .index-container > a {
	position: relative;
	min-height: 100px;
	display: grid;
	grid-template-columns:
		clamp(64px, 10vw, 160px)
		minmax(clamp(120px, 10vw, 140px), 0.7fr)
		minmax(clamp(160px, 16vw, 200px), 0.9fr)
		auto;
	/**
	 * I wonder if this could be simpler, like:
	 * 	grid-template-columns: 1fr 2fr 3fr 1fr;
	 * - Rosemary
	 */

	column-gap: clamp(1rem, 1.5vw, 2rem);
	padding: 2rem;
	border-bottom: 1px solid var(--color__rule);
	/*color: var(--colorBlack);*/
	text-decoration: none;
	border-radius: 0;
}

@media (max-width: 820px){
  section.index-people .index-container > a{
	grid-template-columns: 88px 1fr;
	grid-template-areas:
		".       edition"
	  "preview title"
	  "preview location";
	row-gap: 6px;
	align-items: start;
  }
}

/* hovered row */
.index-container > a:hover,
.index-events .index-container > a:hover {
	border-bottom-color: transparent;
	background: var(--color__hover);
	color: var(--color__hovertext);
	border-radius: var(--border-radius);
}

.nav-index .index-container > a:first-child:hover,
.nav-index.index-events .index-container > a:first-child:hover {
	border-color: transparent;
}

.index-container > a:has(+ a:hover) {
	border-bottom-color: transparent;
}

.index-container > a:focus-visible {
	outline: 2px solid #000;
	outline-offset: -2px;
}

.index-container > a:hover::after {
	position: absolute;
	right: 2rem;
	top: 1rem;
	content: '→';
}

/* columns */
.index-container .col {
	min-width: 0;
}

/* preview image */
.index-container .col.preview {
	width: 88px;
	display: flex;
	align-items: flex-start;
}

.index-container .col.preview img {
	height: 56px;
	width: auto;
	min-width: 32px;
	max-width: 100%;
	object-fit: contain;
	display: block;
	background: rgba(255,255,255,0);
}

.index-container .col.preview:empty {
	visibility: hidden;
}

.nav-index-preview-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease, visibility 0.2s ease;
	pointer-events: none;
	z-index: 9999;
	background: rgba(0, 0, 0, 0);
}

.nav-index-preview-overlay.visible {
	opacity: 1;
	visibility: visible;
}

.nav-index-preview-overlay img {
	max-width: 50vw;
	max-height: 50vh;
	object-fit: contain;
}

/* title */
.index-container .col.title h3 {
	margin: 0;
	font-size: var(--size-26);
	line-height: var(--line-height-md);
}

.index-container > a:hover h3 {
	text-decoration: underline;
}

/* location */
.index-container .col.location {
	position: relative;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	font-size: var(--size-16);
	line-height: var(--line-height-md);
	gap: .5em;
}

.index-container .col.location .address {
	font-size: var(--size-16);
	line-height: var(--line-height-md);
	margin: 0;
	line-height: 1.2;
	/*max-height: calc(1.2em * 3);*/
	overflow: hidden;
	flex: 1 1 1px;
}

.index-container .col.location .street-address::before {
	top: 0;
	content: ' ';
	font-feature-settings: "ss16";
}

/* edition */
.index-container .col.edition {
	justify-self: end;
	display: flex;
	align-items: start;
	justify-content: end;
	font-feature-settings: "ss16";
	flex-flow: row wrap;
}

/* type */
.index-container .type {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
}

.index-container .location p,
.index-container .type p {
	font-size: var(--size-16);
	line-height: var(--line-height-md);
	margin: 0;
}

.index-container .location p:not(.address) span::before {
	content: ' ';
	font-feature-settings: "ss16";
}

@media (min-width: 768px){
  .index-container .col.edition{
	transform: translateX(-60px);
  }
}

.index-container .col.edition:empty {
	display: none;
}

/* If you later output edition text as a span/p/etc, this will style it */
.index-container .col.edition > *{
	margin: 0;
	padding: .25rem 0;
	line-height: 1;
	white-space: nowrap;
}

@media only screen and (max-width: 767px) {
	.nav-index-preview-overlay {
		display: none;
	}
}

@media (max-width: 820px){
  section.index-events .index-container > a{
	grid-template-columns: 88px 1fr;
	grid-template-areas:
		".       type"
	  "preview title"
	  "preview location"
	  "preview edition";
	row-gap: 6px;
	align-items: start;
  }

  .index-container .col.type{ grid-area: type; }
  .index-container .col.preview{ grid-area: preview; }
  .index-container .col.title{ grid-area: title; }
  .index-container .col.location{ grid-area: location; }
  .index-container .col.edition, .index-container .col.date{
	grid-area: edition;
	justify-self: start;
  }
}

/* EVENTS INDEX */
.index-events .index-container > a {
	position: relative;
	min-height: 100px;
	display: grid;
	grid-template-columns:
	  clamp(100px, 10vw, 180px)
	  minmax(clamp(40px, 6vw, 72px), 0.22fr)   /* col 2: a little larger */
	  minmax(clamp(100px, 12vw, 160px), 0.8fr) /* col 3: grows */
	  minmax(clamp(160px, 16vw, 200px), 0.5fr) /* col 4: gives up space */
	  140px;

	column-gap: clamp(1rem, 1.5vw, 2rem);

	justify-items: start; /* horizontal (left) */
	align-items: start;   /* vertical (top) */

	padding: 2rem;
	border-bottom: 1px solid var(--color__rule);
	/*color: var(--colorBlack);*/
	text-decoration: none;
	border-radius: 0;
}

.nav-index.index-events .index-container > a:first-child {
	border-top: 1px solid var(--color__rule);
}

/* date-time */
.index-events .index-container .col.date time {
	line-height: var(--line-height-xxs);
	display: inline-block;
	/* flex-flow: column; */
}
.index-events .index-container .col.date time span,
.nav-index .index-container .col.date time span {
	font-size: var(--size-16);
	line-height: var(--line-height-md);
	margin: 0;
}

/* filters */
.index-filters {
	display: grid;
	grid-template-columns:
	  clamp(100px, 10vw, 180px)
	  minmax(clamp(40px, 6vw, 72px), 0.22fr)   /* col 2: a little larger */
	  minmax(clamp(100px, 12vw, 160px), 0.8fr) /* col 3: grows */
	  minmax(clamp(160px, 16vw, 200px), 0.5fr) /* col 4: gives up space */
	  140px;

	column-gap: clamp(1rem, 1.5vw, 2rem);
	margin-inline: var(--margin-inline__header);
	font-size: var(--size-16);
	padding: 2rem;

	@media (max-width: 820px) {
		display: flex;
		flex-wrap: wrap;
	}
}

.index-filters p {
	font-size: var(--size-16);
	text-align: left;
}

.index-filters button {
	text-decoration: underline;
	border: none;
	background: none;
	text-align: left;
}

.index-filters button:hover::after {
	content: "↓";
	margin-left: 1ch;
	text-decoration: none;
}

.index-events .index-container .type {
  justify-self: start;
  text-align: left;
}

.index-events .index-container .type > * {
  margin-left: 0;
}

/* 150-shop-items.css */
.nav-shop {
	p {
		font: inherit;
		margin: 0;
	}
	.swiper {
		margin-inline: var(--margin-inline__header);
	}
	header.linerule-on {
		border-color: transparent;
		padding-bottom: 0;
	}
	.swiper-wrapper {
		align-items: stretch;
		/* gap: var(--space__submodule); */
		gap: 0;
	}
	.swiper-slide {
		width: 100%;
		border-radius: var(--border-radius);
		margin-right: var(--gap-block__module);
		padding: var(--padding__card);
		height: auto;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		position: relative;

		&:hover, &:focus, &:focus-within {
			background: var(--color__hover);
			color: var(--color__hovertext);
		}
		& a {
			display: flex;
			flex-direction: column;
			justify-content: space-between;
		}
		& figure {
			flex-grow: 1;
		}
		& img {
			height: 100%;
			object-fit: contain;
			object-position: center;
		}

		& a::after {
			content: '';
			position: absolute;
			inset: 0;
		}
	}
	.item-name-detail {
		display: flex;
		flex-wrap: nowrap;
		gap: var(--space-10);
		justify-content: space-between;
	}
	.extra-header {
		display: flex;
		margin-block: var(--gap-block__module) var(--space-20);
		justify-content: space-between;
		align-items: center;

		/**
		 * Swiper
		 *
		 * Removing existing styles on the swiper... could bump these up to global when ready.
		 *
		 * We're gonna want to initialize it including these parameters, I think:
		 *
		 * const initSwiper = new Swiper('.swiper', {
			  slidesPerView: 'auto',
			  navigation: {
			    nextEl: '.swiper-button-next',
			    prevEl: '.swiper-button-prev',
			  },
			});
		 */
	}

	@media (min-width: 767px) {
		.swiper-slide {
			max-width: 22.65vw;
		}
	}
}


/* 160-countdown.css */
.data-countdown {
	letter-spacing: var(--letter-spacing-sm);

	.countdown-text {
		margin-inline: var(--space-20);
		padding-block: var(--space-15) var(--space-25);
	}

	.link-button {
		vertical-align: top;
		margin-left: var(--space-10);
		outline: 1px solid rgba(160, 159, 159, 0);
		outline-offset: 2px;
		border-radius: 5px;
		padding: 0 .25rem;

		&:hover {
			outline: 1px solid rgba(160, 159, 159, 0.8);
		}

		&::after {
			content: '→';
			margin-left: .125ch;
			opacity: 1;
		}
	}

	.countdown {
		margin-inline: var(--space-20);
		margin-bottom: var(--space-20);
		padding: var(--space-40) var(--space-10);
		border-block: 1px solid var(--color__rule);
		display: grid;
		grid-template-columns: 1fr 1fr;
		justify-content: space-around;
		row-gap: var(--space-30);

		> span {
			text-align: center;
			text-transform: capitalize;
			letter-spacing: var(--letter-spacing-xs);
		}

		.value {
			font-family: Marund-7002Corner;
			font-size: var(--header-reg);
			line-height: var(--line-height-sm);
			display: block;
		}
	}
}

@media (min-width: 767px) {
	.data-countdown {
		.countdown-text {
			padding-bottom: var(--space-20);
		}
		.link-button {
			line-height: calc(var(--header-reg) / 2);
			margin-left: 0;
		}

		.countdown {
			padding-block: var(--space-25) var(--space-15);
			grid-template-columns: repeat(4, 1fr);
			justify-content: space-between;
			justify-items: end;
			gap: var(--space-20);
			overflow-x: scroll;

			> span {
				display: flex;
				align-items: center;
				gap: var(--space-20);
			}
			.value {
				display: inline-block;
			}
		}
	}
}

/* 170-related-content.css */
.grid.related-content-container {
	display: grid;
	gap: 2rem;
	grid-template-columns: repeat(auto-fit, minmax(27rem, 1fr));
	align-items: start;
	padding: 2rem 3rem;

	@media (min-width: 1080px) {
		grid-template-columns: 1fr 1fr 1fr 1fr;

		.page-template-journal & {
			grid-template-columns: 1fr 1fr 1fr;
		}
	}
}

.post-type a, .related-post a {
	padding: 1rem;
	border: 1px solid transparent;
	border-radius: var(--border-radius);
}

.post-type a:hover, .post-type a:focus,
.related-post a:hover, .related-post a:focus {
	background: var(--color__hover);
	color: var(--color__hovertext);
	border-color: var(--color__rule);
}

.scheme-yellow .related-post a:hover, .scheme-yellow .related-post a:focus {
	border-color: transparent;
}

p.post-type {
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
	margin-bottom: 1rem;
}

/* Event post */
p.event-location {
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
	margin-bottom: 1rem;
}
/* Artwork post */
.related-post a {
	display: grid;
	grid-template-columns: min-content 1fr;
	gap: 0 1ch;

	& > * {
		grid-column: 1 / 3;
	}

	img {
		margin-block: 1rem;
	}

	.address, .artist-name-link, .details, .categories {
		font-size: var(--body-small);
		line-height: var(--line-height-lg);
		letter-spacing: var(--letter-spacing-md);
	}
	.address, .artist-name-link, .details {
		margin: 0;
		display: grid;
		grid-template-columns: subgrid;

		.label {
			font-weight: 700;
		}
	}
	.address .street-address::before {
		top: 0;
		content: ' ';
		font-feature-settings: "ss16";
	}

	.categories {
		margin-top: 1rem;
		display: flex;
		flex-wrap: wrap;
		align-content: center;
		gap: .5rem 1ch;

		& > * {
			display: inline-flex;
			margin: 0;
		}
	}
}

/* Announcement post */
.journal-announcement-description {
 	display: -webkit-box;
	-webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
	overflow: hidden;

	p {
		font-size: var(--size-16);
		line-height: var(--line-height-md);
	}
}

p.announcement-title, p.journal-title {
	font-size: var(--size-26);
	line-height: var(--line-height-md);
	margin: 0 0 1rem;
}

/* Press post */
p.press-title {
	text-align: center;
	font-size: var(--size-40);
	line-height: var(--line-height-md);
}

p.press-org {
	text-align: center;
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
	margin-bottom: 1rem;
}

.press .button {
			position: relative;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			width: fit-content;
			max-width: 100%;
			margin-inline: auto;
			font-size: var(--size-26);
			line-height: var(--line-height-md);
			text-align: center;
			padding: 1rem 4rem 1rem 2rem;
		}
.press .button::after {
	content: '↗︎';
	position: absolute;
	top: 1rem;
	right: .875rem;
	opacity: 1;
}

/* Event post */
.related-post time span, p.post-title {
	line-height: var(--line-height-md);
	margin: 1rem 0;
}

/* 180-pdf-embed.css */
.pdf-embed header {
	margin-bottom: 2rem;
}

.pdf-embed-iframe {
	width: calc(100% - 6rem);
	height: calc(100vh - 12rem);
	height: calc(100svh - 12rem);
	border: 0;
	display: block;
	margin-inline: var(--margin-inline__header);
}

/* 190-lightbox.css */
.parvus__overlay {
	background-color: var(--color__background, var(--parvus-background-color));
}

.parvus__btn {
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
	outline: 0;
	border-radius: 5px;
	background-color: rgba(255,255,255,.8);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

.parvus__btn .svg-fill {
	fill: black;
}

.parvus__btn::before,
.parvus__toolbar .parvus__btn.parvus__btn--close::before,
.parvus__toolbar .parvus__counter::before {
	border-radius: 5px;
	content: "";
	height: 100%;
	left: 0;
	opacity: .2;
	position: absolute;
	top: 0;
	width: 100%;
	background: rgba(255,255,255,.5);
	box-shadow: 0 0 2px rgba(255,255,255,.5);
	z-index: -2;
}

.parvus__btn[aria-disabled=true] {
	background-color: transparent;
	color: var(--parvus-btn-disabled-color);
	opacity: .5;
}

.parvus__btn:focus-visible, .parvus__btn:hover {
	background-color: transparent;
	color: var(--parvus-btn-hover-color);
}

.parvus__toolbar {
	padding: 1.5rem 1rem;
	align-items: center;
	display: flex;
	justify-content: flex-end;
}

.parvus__counter {
	font-family: Repro-Regular-Mono;
	font-size: var(--size-16);
	border-radius: 5px;
	padding: 0 .5rem;
	background-color: rgba(255, 255, 255, .8);
}

/* optional: keep the label from wrapping */
.parvus__btn--close .parvus__btn-text {
  white-space: nowrap;
  line-height: 1;
}

.parvus__btn.parvus__btn--close svg {
	height: 2rem;
	width: 2rem
}

@media only screen and (min-width: 1024px) {
	.parvus__slide,.parvus__slider--animate:not(.parvus__slider--is-dragging) {
		transition:none
	}
}

.parvus__btn.parvus__btn--close {
	padding: 0 .5rem;
	border-radius: 5px;
	margin-left: .25rem;
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	color: var(--colorBlack);
}

.parvus__btn.parvus__btn--close:focus {
	outline: 1px solid rgba(160, 159, 159, 0.2) !important;
}

.parvus__btn--close .parvus__btn-text {
  pointer-events: none;
}

.parvus__btn--close svg,
.parvus__btn--close svg * {
  pointer-events: none;
}

.parvus__btn--close::after {
  pointer-events: none;
}

@media (max-width: 600px) {
  .parvus__btn--close .parvus__btn-text {
	display: none;
  }
}

.parvus__toolbar .parvus__btn.parvus__btn--close,
.parvus__toolbar .parvus__counter {
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px)
}

.parvus__toolbar:hover .parvus__btn.parvus__btn--close,
.parvus__toolbar:hover .parvus__counter {
	background: var(--colorWhite)
}

.parvus__btn.parvus__btn--close:after {
	content: "";
	background-image: url(../../images/lightbox/close.svg);
	width: 2rem;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	right: .25rem;
	z-index: 0;
	height: 2rem;
	background-size: 60%;
	background-position: 90% 60%
}

.parvus__caption p {
	font-family: Repro-Regular-Mono;
	font-size: var(--size-16);
	text-align: center;
	color: var(--color__text, var(--parvus-color));
}

.color-inverse .parvus__caption p {
	color: var(--colorBlack)
}

.parvus-trigger:has(img) .parvus-zoom__indicator {
	display: none;
}

.parvus__btn--previous:focus,
.parvus__btn--next:focus {
	border-radius: 2rem !important;
	outline-offset: 0px;
}

.parvus__btn--previous svg,
.parvus__btn--next svg {
  opacity: 0;
}

.parvus__btn--previous::after,
.parvus__btn--next::after {
  content: "";
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 80%;
  pointer-events: none;
}

.parvus__btn--previous::after {
  background-image: url('../../images/lightbox/previousButtonIcon.svg');
}

.parvus__btn--next::after {
  background-image: url('../../images/lightbox/nextButtonIcon.svg');
}

.parvus__btn--previous:hover::after {
  background-image: url('../../images/lightbox/previousButtonIcon-hover.svg');
}

.parvus__btn--next:hover::after {
  background-image: url('../../images/lightbox/nextButtonIcon-hover.svg');
}

.parvus__loader {
  animation: none !important;
}

.parvus__loader::before,
.parvus__loader::after {
  content: none !important;
}

.parvus__loader {
  width: auto;
  height: auto;
  background: none;
  font-size: var(--size-16);
  color: var(--colorBlack);
}

.parvus__loader::after {
  content: "Loading…";
  display: block;
  opacity: 0;
  animation: parvus-fade 1.2s infinite;
}

@keyframes parvus-fade {
  0%   { opacity: 0 }
  50%  { opacity: 1 }
  100% { opacity: 0 }
}

/* 20-illustration-CTA.css */
/* Illustration-CTA.css */
.illustration-cta {
	display: flex;
	flex-direction: column;
	padding-block: var(--space-20);

	.illustration-layers {
		display: grid;
		place-items: center;
		padding: var(--space-20);
		margin-block: 1rem;
		border-radius: var(--border-radius);

		:is(.theme-dark, .scheme-black) & {
			/* Here I'm assuming that the illustration is always black */
			background: var(--colorYellow);
		}
	}

	.illustration-layers > * {
		grid-area: 1 / 1;
	}

	.illustration-layers picture {
		display: grid;
		grid-area: 1 / 1;
		width: 100%;
	}

	.illustration-layers img {
		grid-area: 1 / 1;
		width: 100%;
		height: auto;
		min-height: 357px;
		max-height: 630px;
		object-fit: contain;
		display: block;
	}

	.illustration-layers img.illustration {
		z-index: 1;
	}

	.illustration-layers img.graphic-text {
		z-index: 2;
	}

	.cta-footer {
		margin-top: auto;
		text-align: center;

		.button {
			position: relative;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			width: fit-content;
			max-width: 100%;
			margin-inline: auto;
			font-size: var(--size-26);
			line-height: var(--line-height-md);
			text-align: center;
			padding: 1rem 4rem 1rem 2rem;
		}
		.button::after {
			content: '→';
			position: absolute;
			top: 1rem;
			right: .875rem;
			opacity: 1;
		}
	}
}

@media (min-width: 767px) {
	.illustration-cta {
		.illustration-layers {
			padding: var(--space-15) var(--space-30) var(--space-40);
		}
	}
}

/* 200-accessibility-modal.css */
.menu-btn:focus,
.controls button:focus,
.controls button.accessibility-toggle.is-active {
	outline: 1px solid rgba(160, 159, 159, 0.8) !important;
	outline-offset: 2px;
	border-radius: 5px;
}

.controls button.accessibility-toggle.is-active .text,
.mobile-controls button.accessibility-toggle .text {
	position: relative;
	left: inherit;
	width: auto;
	height: auto;
	padding-left: .25rem;
}

.accessibility-close .svg-fill,
.accessibility-toggle .svg-fill,
.accessibility-header .svg-fill {
	fill: currentColor;
}

@media (min-width: 767px) {
	.menu-btn:focus,
	.controls button:focus,
	.controls button.accessibility-toggle.is-active {
		border: 1px solid rgba(0, 0, 0, 1);
		color: var(--colorYellow);
		background: var(--colorBlack);
	}
	.accessibility-toggle:focus .svg-fill,
	.accessibility-toggle.is-active .svg-fill {
		fill: var(--colorYellow);
	}
}


.accessibility-modal {
	position: fixed;
	top: 7rem;
	left: 0;
	z-index: 10;
	width: 100%;
	max-height: 45vh;
}

.accessibility-modal-dialog {
	display: flex;
	flex-flow: column nowrap;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	border-radius: var(--border-radius);
	background-color: var(--color__menu, var(--colorYellow));
	color: var(--color__menutext, var(--colorBlack));
	padding: 2rem 2rem 4rem 2rem;
	border: 1px solid var(--color__rule, transparent);
}

.accessibility-header {
	width: calc(100% - 6rem);
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-inline: var(--margin-inline__header);
	border-bottom: 1px solid var(--color__rule);
	padding-bottom:1rem;
}

.accessibility-center {
	display: flex;
	gap: .5rem;
}

.accessibility-close {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-70%);
	margin-left: 0;
	background: transparent;
	padding: .5rem .5rem;
	border: none;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

.accessibility-wrapper button {
	background: transparent;
	padding: 0 .5rem;
	border: none;
}

.control-wrapper {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 1rem;
}

.accessibility-wrapper {
	display: flex;
	flex-flow: row nowrap;
	padding-top: 2rem;
	margin-inline: var(--margin-inline__header);
}

.accessibility-wrapper > * {
	flex: 1 1 50%;
	padding-right: 2rem;
}

.accessibility-controls {
	padding: 2rem;
	background: var(--color__background);
	border-radius: var(--border-radius);
	border: 1px solid var(--color__rule, var(--colorWhite));
}

.accessibility-info h3 {
	font-family: 'Repro', sans-serif;
	font-weight: 700;
}

.accessibility-wrapper h3,
.accessibility-wrapper p,
.accessibility-center h2 {
	font-size: var(--body-smallmed);
}

#theme-toggle {
	appearance: none;
	-webkit-appearance: none;
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0 1rem 0 0;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
}

#theme-toggle .theme-toggle-icon {
	position: relative;
	width: 44px;
	height: 24px;
	border-radius: 999px;
	border: 2px solid var(--colorBlack);
	background: var(--colorYellow);
	display: inline-block;
}

#theme-toggle .theme-toggle-icon::before {
	content: "";
	position: absolute;
	width: 20px;
	height: 20px;
	background: var(--colorBlack);
	border-radius: 50%;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: transform 0.2s ease;
}

#theme-toggle[aria-pressed="true"] .theme-toggle-icon {
	background: var(--colorBlack);
	border-color: var(--colorYellow);
}

#theme-toggle[aria-pressed="false"] .theme-toggle-icon::before {
	transform: translate(20px, -50%);
}

#theme-toggle[aria-pressed="true"] .theme-toggle-icon::before {
	transform: translateY(-50%) scale(105%);
	background: var(--colorYellow);
}

#theme-toggle:focus-visible .theme-toggle-icon {
	outline: 2px solid var(--colorBlack);
	outline-offset: 3px;
}

#theme-toggle:active .theme-toggle-icon::before {
	transform: translateY(-50%) scale(0.96);
}

#theme-toggle[aria-pressed="true"]:active .theme-toggle-icon::before {
	transform: translate(20px, -50%) scale(0.96);
}

#theme-toggle:disabled {
	cursor: not-allowed;
	opacity: 0.5;
}

#motion-toggle {
	appearance: none;
	-webkit-appearance: none;
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0 1rem 0 0;
	cursor: pointer;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
}

/* Circle background */
#motion-toggle::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	border: 2px solid var(--color__rule);
	background: var(--colorBlack);
}

/* Icon (default: PAUSE) */
#motion-toggle::after {
	content: "";
	position: relative;
	width: 14px;
	height: 14px;
	background-image: url(../../images/pause.svg);
	background-size: 8px 8px;
	background-repeat: no-repeat;
	background-position: center;
}

/* Paused: PLAY icon */
#motion-toggle[aria-pressed="true"]::after {
	background-image: url(../../images/play.svg);
	background-size: 10px 10px;
	background-repeat: no-repeat;
	background-position: 3px 2.5px;
}

/* Focus ring (don’t swap icons on focus) */
#motion-toggle:focus-visible::before {
	outline: 2px solid var(--colorBlack);
	outline-offset: 3px;
}

/* Active feedback */
#motion-toggle:active {
	transform: scale(0.96);
}

#motion-toggle:disabled {
	cursor: not-allowed;
	opacity: 0.5;
}

#motion-toggle-label .activated,
#theme-toggle-label .activated {
	display: none;
}

#motion-toggle-label.is-active .activated,
#theme-toggle-label.is-active .activated {
	display: inline;
}

#motion-toggle:focus,
#theme-toggle:focus {
	border-radius: 999px;
}

/* When motion is paused, freeze CSS animation + smooth scrolling + transitions */
html.motion-paused *:not(.mandatory-animation),
html.motion-paused *:not(.mandatory-animation)::before,
html.motion-paused *:not(.mandatory-animation)::after {
	animation-play-state: paused !important;
	transition-property: none !important;
	scroll-behavior: auto !important;
}
html.motion-paused *.mandatory-animation {
	animation-duration: 0s !important;
	animation-delay: 0s !important;
}

@media (max-width: 767px) {
	.accessibility-header {
		justify-content: space-between;
	}
	.accessibility-wrapper {
		flex-direction: column;
		gap: 2rem 0;
		overflow-y: scroll;
	}
	.accessibility-modal-dialog {
		max-height: calc(100lvh - 5rem);
	}
}

/* 210-home-hero.css */
/* Counterpublic – 210-home-hero.css */

body.home {
	--color__background: var(--colorYellow);
}

main.home {
	padding-top: 0;
}

.page-template-front-page .primary-menu .brand {
	opacity: 0;
}

.page-template-front-page .primary-menu:hover .brand,
.page-template-front-page .primary-menu .brand.active {
	opacity: 1;
}

.page-template-front-page .hero {
	width: 100vw;
	margin-inline: unset;
	gap: unset;
	overflow: visible;
	--color__background: inherit;
}

/*
	There are 2 children in .hero-wrapper (viewport + message).
	We create the 3rd "row item" via ::after, so the message gets pushed
	down below the map's overflow zone without breaking logo centering.
*/
.hero-wrapper {
	background: var(--color__background);
	overflow: visible;

	/* tuning */
	--map-drop: clamp(10rem, max(12vh, 14vw), 26rem);

	/* drop + a modest extra buffer */
	--map-reserve: clamp(14rem, calc(var(--map-drop) + 18rem), 44rem);

	display: grid;
	grid-template-rows: 100svh var(--map-reserve) auto;
}

/* spacer row (row 2) */
.hero-wrapper::after {
	content: "";
	display: block;
	grid-row: 2;
}

/* Row 1 */
.hero-viewport {
	grid-row: 1;

	width: 100vw;
	height: 100%;
	min-height: 100svh;

	display: grid;
	place-items: center;

	position: relative;
	overflow: visible;
}

/* centered anchor */
.logo-wrapper {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1500px;
	margin-inline: auto;
}

.hero-viewport .logo-container {
	position: relative;
	width: min(92vw, 1400px);
	aspect-ratio: 238 / 20;
	height: auto;
	flex: 0 0 auto;
	margin-inline: auto;
}

.logo-wrapper a.scroll-to {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hero-viewport .logo-container img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	opacity: 0;
	transition: none;
	display: block;
	pointer-events: none;
	color: var(--color__text);
}
.theme-dark .hero-viewport .logo-container img {
	filter: invert(1);
}

.hero-viewport .logo-container img.active {
	opacity: 1;
}

.dots.hero-dots {
	position: absolute;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	width: calc(100% - 12rem);
	height: 2rem;
	margin-inline: var(--margin-inline__header);
	top: calc(100svh - 5rem);
	z-index: 20;
}

@media (max-width: 767px) {
	.dots.hero-dots {
		width: calc(100% - 10rem);
	}
	.hero-wrapper {
		grid-template-rows: auto;
	}
	.logo-wrapper {
		position: absolute;
		top: 50%;
		left: 50%;

		transform: translate(-50%, -50%) translateY(16rem) rotate(-90deg) scale(1.025);
		transform-origin: center;

		width: 100%;
		max-width: none;
		margin-inline: 0;
		overflow: visible;
	}
	.hero-viewport {
		overflow: hidden;
	}
	.hero-viewport .logo-container {
		width: 92vh;
		max-width: 1000px;
	}
}

/* Mobile landscape: undo the rotated logo treatment */
@media (max-width: 767px) and (orientation: landscape) {
	.logo-wrapper {
		position: relative;
		top: auto;
		left: auto;

		transform: none;
		transform-origin: center;

		width: 100%;
		max-width: 1500px;
		margin-inline: auto;
		overflow: visible;
	}

	.hero-viewport .logo-container {
		width: min(92vw, 1400px);
		max-width: 1400px;
	}
}

/* HERO MAP STACK */
.hero-map {
	display: block;
	width: 100%;
	height: auto;
	color: var(--color__text);
}

.hero-map-stack {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);

	width: 100%;
	max-width: 1500px;
	aspect-ratio: 1512 / 1167.11;
	margin-top: 0;

	translate: 0 var(--map-drop);
	z-index: 1;
}

.hero-map-stack .hero-map {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	pointer-events: none;
}

.hero-map-stack .hero-map--line {
	z-index: 1;
	opacity: 0;
}

.hero-map-stack.is-line-ready .hero-map--line {
	opacity: 1;
}

.hero-map-stack .hero-map--points {
	z-index: 2;
}

/* POINTS LAYER */
.hero-map-stack .hero-map--points {
	--points-offset-x: 0%;
	--points-offset-y: 0%;
	transform: translate(var(--points-offset-x), var(--points-offset-y));
}

.hero-map-stack .points {
	fill: currentColor;
}

.hero-map-stack .point {
	opacity: 0;
}

/* LINE LAYER */
.hero-map-stack .hero-map--line .cls-1 {
	stroke: currentColor;
	stroke-width: 6px;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
	vector-effect: non-scaling-stroke;

	stroke-dasharray: var(--path-length, 1);
	stroke-dashoffset: var(--path-length, 1);

	transition: none;
}

.hero-map-stack .hero-map--line .cls-1.is-drawn {
	stroke-dashoffset: 0;
}

/* Row 3 */
.message {
	grid-row: 3;

	width: 100%;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	padding: var(--space-30) 0 var(--space-40);

	position: relative;
	z-index: 2;
}

.message h2 {
	font-family: "Marund-7002Corner", arial, sans-serif;
	font-size: var(--header-reg);
	line-height: var(--line-height-sm);
	text-align: center;
	text-transform: uppercase;
	padding: 0;
	color: var(--color__text);
}

/* REDUCED MOTION */
@media (prefers-reduced-motion: reduce) {
	.hero-map-stack .hero-map--line .cls-1 {
		stroke-dasharray: none;
		stroke-dashoffset: 0;
		transition: none;
	}
	.hero-map-stack .point {
		opacity: 1 !important;
	}
}

/* ≥767px: tweak ONLY the knobs */
@media (min-width: 767px) {
	.hero-viewport .logo-container {
		width: min(86vw, 1400px);
	}

	.hero-wrapper{
		--map-drop: clamp(12rem, max(12vh, 14vw), 30rem);
		--map-reserve: clamp(16rem, calc(var(--map-drop) + 14rem), 44rem);
		--map-offset: -2rem;
	}
	.hero-map-stack{
	  translate: 0 calc(var(--map-drop) + var(--map-offset, 0));
	}
}

@media only screen and (max-width: 767px) {
	.hero-map-stack {
		display: none;
	}
}

/* Short desktop windows (e.g. 1510×800): shove more + reserve more */
@media (max-height: 820px) {
	.hero-wrapper{
		--map-drop: clamp(14rem, max(14vh, 16vw), 34rem);
		--map-reserve: clamp(18rem, calc(var(--map-drop) + 10rem), 36rem);
	}
}

/* ------------------------------------------------------------ */
/* HERO ANNOUNCEMENT */

.hero-announcement[hidden],
.announcement-scrim[hidden] {
	display: none;
}

.announcement-scrim {
	position: absolute;
	inset: 0;
	z-index: 19;

	background-color: transparent;
	/* background-color: rgba(242, 234, 15, .1);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px); */

	opacity: 0;
	pointer-events: none;

	transition: opacity 250ms ease;

	border: none;
}

.announcement-scrim.is-open {
	opacity: 1;
	pointer-events: auto;
}

/* Announcement container */
.hero-announcement {
	z-index: 21;

	opacity: 0;
	filter: blur(10px);
	transform-origin: 50% 50%;

	transition:
		opacity 300ms ease,
		filter 300ms ease;

	color: var(--color__text);
	--color__text: var(--colorBlack);
	--color__hover: var(--colorBlack);
	--color__hovertext: var(--colorYellow);
}

/* “Modal” placement */
.hero-announcement.large-center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -47%);
	width: 75vw;
	height: auto;
}

/* Alternate placement */
.hero-announcement.small-right {
	/* position: absolute; */
	position: fixed;
	top: inherit;
	left: inherit;
	right: 2rem;
	bottom: 3rem;
	transform: none;
	width: 275px;
	height: auto;
}

.hero-announcement.is-open {
	opacity: 1;
	filter: blur(0);
}

.hero-anim-toggle {
	position: absolute;
	top: 8rem;
	right: 3rem;
	width: 4rem;
	height: 4rem;
	background: rgba(0,0,0,.8);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border-radius: 50%;

	aspect-ratio: 1 / 1;
	line-height: 0;

	z-index: 20;

	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.hero-anim-toggle:focus {
	border-radius: 50%;
}

.hero-anim-toggle svg {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	height: 40%;
	width: 40%;
	box-sizing: inherit;
	border: 0;
	margin: 0;
	padding: 0;
	text-size-adjust: 100%;
	vertical-align: baseline;
}

.hero-anim-toggle svg path {
	fill: var(--colorYellow);
}

.hero-anim-toggle .SVG_play { display: none; }
.hero-anim-toggle .SVG_pause { display: block; }

.hero-anim-toggle[aria-pressed="true"] .SVG_play { display: block; }
.hero-anim-toggle[aria-pressed="true"] .SVG_pause { display: none; }

.hero-anim-toggle:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

@media (max-width: 767px) {
	.hero-anim-toggle {
		display: none;
	}
	.hero-announcement.large-center {
		width: 90vw;
	}
	.hero-announcement.small-right {
		position: absolute;
		top: 50vh;
		left: 50vw;
		right: auto;
		bottom: auto;
		transform: translate(-50%, -50%);
	}
	.button.learn-more {
		background: var(--colorYellow);
	}
}

/* Reduced motion: no blur animation */
@media (prefers-reduced-motion: reduce) {
	.hero-announcement {
		transition: none;
		filter: none;
	}
	.hero-anim-toggle {
		display: none;
	}
}

/* Make the figure the sizing/positioning box */
.hero-announcement figure {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9; /* match your image/video */
	overflow: hidden;
	margin: 0;
}

/* Make both layers fill the figure */
.hero-announcement figure iframe,
.hero-announcement figure img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

/* Put the video on top */
.hero-announcement figure iframe {
	z-index: 2;
}

/* Keep the image under it (acts like fallback/poster) */
.hero-announcement figure img {
	z-index: 1;
	object-fit: cover; /* or contain if you want letterboxing */
}

/* Optional: if you ever want “contain” behavior for the video instead of crop */
.hero-announcement figure iframe {
	/* no object-fit on iframe; this is just a reminder */
}

.announce {
	position: relative;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: center;
	z-index: 10;
}

.announce .announcement-type {
	position: absolute;
	top: 1rem;
	left: 50%;
	transform: translateX(-50%);
	width: max-content;
	z-index: 10;

	display: inline-block;
	border: 2px solid currentColor;
	border-radius: var(--border-radius-lg);
	padding: .2em .4em;

	font-size: var(--body-small);
	line-height: var(--line-height-sm);
	font-weight: 700;
	letter-spacing: var(--letter-spacing-xs);
	color: var(--colorBlack);
}

/* “Learn More” visual button */
.button.learn-more {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: fit-content;
	max-width: 100%;
	margin-top: 1rem;
	margin-inline: auto;

	font-size: var(--body-small);
	line-height: var(--line-height-md);
	letter-spacing: var(--letter-spacing-xs);
	text-align: center;

	padding: .5rem 3rem .5rem 1.5rem;
}

.button.learn-more::after {
	content: '→';
	position: absolute;
	top: .5rem;
	right: .875rem;
	opacity: 1;
}

/* Full-card link overlay */
.more-announcement {
	position: absolute;
	inset: 0;
	z-index: 21;
	cursor: pointer;
}

/* Hover/Focus styles for the overlay link */
.more-announcement:hover ~ .button.learn-more,
.more-announcement:focus-visible ~ .button.learn-more {
	background: var(--color__hover);
	color: var(--color__hovertext);
	border: 1.5px solid var(--color__hover);
}

/* Close button */
.close-announcement {
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;

	border: none;
	background: transparent;
	padding: 0;

	display: flex;
	justify-content: center;
	align-items: center;

	width: 2rem;
	height: 1.875rem;

	z-index: 22;
	cursor: pointer;
}

.close-announcement:focus {
	outline: 1px solid rgba(160, 159, 159, 0) !important
}

/* Make keyboard focus obvious */
.close-announcement:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

/* ------------------------------------------------------------ */
/* LANDING: INTRO */

.landing-intro {
	display: flex;
	flex-flow: column nowrap;
	gap: 1rem;
	padding: 6rem var(--margin-inline__content);
}

.landing-intro header {
	display: grid;
	grid-template-columns: 1fr max-content 1fr;
	align-items: center;
}

.landing-intro header .label {
	justify-self: end;
	margin-right: 1rem;
	white-space: nowrap;
	font-feature-settings: "ss15";
}

.landing-intro header .weather-report {
	grid-column: 2;
	justify-self: center;
	margin: 0;
	white-space: nowrap;
}

.landing-intro header .weather-report::before {
	content: '';
}

.landing-intro header .weather-report::after {
	content: '';
}

/* .landing-intro header .label {
	position: absolute;
	right: 50%;
	transform: translateX(-133%);
	margin-right: 1rem;
	white-space: nowrap;
	font-feature-settings: "ss15";
} */


.intro-wrapper p {
	font-size: inherit;
}

.intro-wrapper .circled {
	font-feature-settings: "ss16";
}

@media only screen and (max-width: 767px) {
	.landing-intro {
		padding: 4rem 2rem 6rem;
	}
	.landing-intro header {
		display: grid;
		grid-template-columns: 1fr;
		row-gap: 1rem;
		justify-items: center;
	}

	.landing-intro header .label {
		justify-self: center;
		margin-right: 0;
	}

	.landing-intro header .weather-report {
		grid-column: auto;
		justify-self: center;
	}
}

/* ------------------------------------------------------------ */
/* LANDING: FEATURED TWO COL */

.feat-two-col {
	margin: 0;
}

.feat-two-col > header {
	margin-inline: calc(var(--margin-inline__header) + var(--padding__page));
}

.feat-two-col-container {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr;
	align-items: start;
	padding-block: 2rem;
}

.info-wrapper {
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
}

.feat-post a {
	display: flex;
	flex-flow: column nowrap;
	padding: 2rem;
	background: transparent;
	border-radius: var(--border-radius);
	gap: 1rem;
}

.feat-post a:is(:hover, :focus, :active) {
		background: var(--color__hover);
		color: var(--color__hovertext);
}

.info-wrapper time {
	padding: 0 2rem 2rem 0;
	flex: 0 1 30%;
}

.info-col.location {
	padding: 0;
	flex: 0 1 70%;
}

.feat-two-col .category,
.info-wrapper time,
.info-wrapper p {
	font-size: var(--size-16);
	line-height: var(--line-height-lg);
	margin: 0;
}

.feat-post h3 {
	padding: 1rem 0;
}

/* .feat-post.term-journal_categories-press a {
	min-height: 33vw;
} */

.feat-post.term-journal_categories-press .press-org {
	text-align: center;
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
	margin-bottom: 1rem;
	padding-bottom: 0;
}

.feat-post.term-journal_categories-press .press-title {
	text-align: center;
	font-size: var(--size-40);
	line-height: var(--line-height-md);
	padding-top: 1rem;
}

.read-more {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	max-width: 100%;
	margin-inline: auto;
	font-size: var(--size-26);
	line-height: var(--line-height-md);
	text-align: center;
	padding: 1rem 4rem 1rem 2rem;
	border-radius: var(--border-radius);
	background: transparent;
	border: 1.5px solid currentColor;
}

.read-more::after {
	content: "↗︎";
	position: absolute;
	top: 1rem;
	right: 0.875rem;
	opacity: 1;
}

@media (min-width: 767px) {
  .feat-two-col-container {
	grid-template-columns: 1fr 1fr;
  }

  .feat-two-col-container {
	grid-template-columns: repeat(4, 1fr);
  }

  .feat-two-col-container .feat-post {
	grid-column: span 2;
  }

  .feat-two-col-container .feat-post:only-child {
	grid-column: 2 / span 2;
  }

  .feat-two-col-container .feat-post:last-child:nth-child(odd) {
	grid-column: 2 / span 2;
  }
  .intro-wrapper p {
	  font-size: var(--size-26);
  }
}

/* 220-featured-artists.css */
.featured-artists .people {
	padding: var(--space__submodule);
	display: flex;
	flex-direction: column;
	gap: var(--space__submodule);
	position: relative;

	.featured-artists__thumbnails {
		flex: 0 0 50%;
		position: absolute;
		pointer-events: none;
		inset: var(--space__submodule);

		li[hidden] {
			display: none;
		}
		li {
			position: sticky;
			top: calc(var(--nav-h) + var(--sticky-gap));
		}
		a {
			display: block;
		}
		img {
			max-height: 40svh;
			width: 80%;
			object-fit: contain;
			opacity: .5;
		}
	}
	.featured-artists__names {
		flex: 0 0 50%;
		z-index: 1;

		li {
			font-size: inherit;
			margin-bottom: .5em;
		}

		a:hover, a:focus {
			text-decoration: underline;
			text-decoration-thickness: 2px;
			text-underline-offset: 0.1em;
		}
	}

	@media (min-width: 767px) {
		flex-direction: row;

		.featured-artists__thumbnails {
			position: static;
			pointer-events: auto;

			img {
				max-height: 80svh; /* this is an arbitrary number */
				opacity: 1;
			}
		}
	}
}

/* 230-big-button.css */
section.giant-btn {
	margin: 0;
	padding: 2rem;
	width: 100%;
	border-radius: 0;
	--color__background: var(--colorYellow);
}

.giant-btn > header {
	margin-inline: calc(var(--margin-inline__header) + var(--padding__page));
	margin-bottom: 2rem;
}

.btn-wrapper {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2rem;
}

@media (min-width: 767px) {
	.btn-wrapper {
		gap: 0;
		min-height: calc(100svh - 20rem);
	}
}

.big-btn-slot {
	flex: 1;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btn-wrapper p {
	margin: 0;
	padding-bottom: 2rem;
	width: 100%;
	text-align: center;
	line-height: 1.25;
	opacity: 0;
}

.btn-wrapper p.in-view {
	opacity: 1;
}

a.big-btn {
	font-family: "Marund-7002Corner", arial, sans-serif;
	font-size: var(--header-reg);
	line-height: var(--line-height-xxs);
	text-align: center;
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: .89em 1.33em .81em;
	border-radius: 999px;
	background: var(--colorWhite);
	color: var(--colorBlack);
	text-decoration: none;
	transition: transform 240ms cubic-bezier(.22,.61,.36,1), box-shadow 240ms ease;
	will-change: transform;
}

@media (prefers-reduced-motion: reduce) {
	a.big-btn {
		transition: transform 160ms ease, box-shadow 160ms ease;
	}
}

.theme-dark .giant-btn a.big-btn,
.giant-btn.scheme-black a.big-btn {
	background: var(--colorYellow);
}

@media only screen and (max-width: 767px) {
	.btn-wrapper {
		min-height: calc(100svh - 50rem);
	}
	a.big-btn {
		padding: 3rem 4rem 2.25rem;
		line-height: var(--line-height-sm);
	}
}

/* 240-billboard.css */
.billboard {
	position: relative;
	overflow: hidden;
	height: calc(100vh - 16rem);
	height: calc(100svh - 16rem);
	padding: 2rem;
	margin-inline: calc(50% - 50vw);
	/* margin: 0 !important; */
	border-radius: 0 !important;
}

.billboard.billboard-text {
	height: auto;
}

.billboard.no-border {
	padding: 0;
}

.billboard.billboard-img .text-wrapper {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background: transparent;
	padding: 0;
	transition: background-color 150ms ease;
	overflow-y: scroll;
}

.billboard .billboard-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	text-decoration: none;
	color: inherit;
	padding: 6rem 2rem;
	width: auto;
	height: 100%;
	background: transparent;
}

.billboard .text-wrapper:has(.billboard-link:hover) {
	background: var(--color__background);
	transition-delay: 40ms;
}

.billboard .big-category {
	font-size: var(--size-20);
	letter-spacing: var(--letter-spacing-sm);
	text-transform: uppercase;
	padding: 0.125rem 0.5rem;
	border: 1px solid currentColor;
	margin: 0 0 2rem;
	color: var(--color__background);
}

.billboard .billboard-link:hover .big-category {
	color: black;
}

.billboard-message {
	transform: translateY(2rem);
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	flex: 1;
	justify-content: center;
}

.billboard.billboard-img h3 {
	line-height: var(--line-height-sm);
	text-transform: uppercase;
	padding: 0;
	margin: 4rem 0 0;
	max-width: 18ch;
	color: var(--color__background);
}

.billboard.billboard-text h3 {
	font-size: var(--size-60);
	line-height: var(--line-height-sm);
	letter-spacing: var(--letter-spacing-sm);
	text-transform: uppercase;
	max-width: 30ch;
	padding: 0;
	color: var(--color__text);
}

.billboard .billboard-link:hover h3 {
	color: black;
}

.billboard p {
	margin: 0;
	max-width: 52ch;
	text-align: center;
	color: transparent;
	margin: 4rem 0 0;
}

.billboard.billboard-text p {
	font-size: var(--size-60);
	line-height: var(--line-height-sm);
	letter-spacing: var(--letter-spacing-sm);
	color: var(--color__text);
	margin: 2rem 0 0;
}

.billboard .billboard-link:hover p {
	color: black;
}

.billboard.billboard-img .bkg-img {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.billboard .bkg-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.billboard-border {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 2rem solid var(--color__background);
	z-index: 1;
}

.no-border .billboard-border {
	border-color: transparent;
}

.billboard .foot {
	margin-top: 3rem;
}

.billboard.billboard-text .foot {
	margin-top: 4rem;
}

.billboard .arrow-helper {
	/* margin-top: 3rem; */
	padding-bottom: 0;
	color: transparent;
	align-self: center;
	font-size: var(--size-45);
}

.billboard .billboard-link:hover .arrow-helper {
	color: black;
}

.button.more-btn {
	margin-top: 2rem;
}

.button.more-btn::after {
	content: "→";
	margin-left: 1ch;
}

@supports selector(:has(a:hover)) {
	.billboard:has(.billboard-link:hover) .billboard-border {
		border-color: transparent;
	}
}

/* Fallback (less precise): hovering the billboard triggers */
@supports not selector(:has(a:hover)) {
	.billboard:hover .billboard-border {
		border-color: transparent;
	}
}

@media only screen and (max-width: 767px) {
	.billboard .billboard-link {
		padding: 2rem;
	}
	.billboard .big-category {
		margin: 0;
	}
	.billboard.billboard-img h3 {
		margin: 0;
	}
	.billboard.is-active .billboard-border {
		border-color: transparent;
	}
	.billboard.is-active .text-wrapper {
		background: var(--color__background);
		transition-delay: 40ms;
	}
	.billboard.is-active .billboard-link .big-category,
	.billboard.is-active .billboard-link h3,
	.billboard.is-active .billboard-link p,
	.billboard.is-active .billboard-link .arrow-helper{
		color: black;
	}
}

/* 250-edition-hero.css */
/* ------------------------------------------------------------ */
/* EDITIONS LANDING AND SINGLE */
/* Variant-driven hero sizing via .vp-* classes */

/* ------------------------------------------------------------ */
/* SECTION WRAPPER */

.edition-section{
	position: relative;
	width: 100%;
	overflow: hidden;
	z-index: 0;

	padding-inline: var(--space-30);
	box-sizing: border-box;
}

/* ------------------------------------------------------------ */
/* MAIN */

.single-edition main.no-padding{
	padding-top: 0;
}

/* ------------------------------------------------------------ */
/* HERO (SECTION AS VIEWPORT CONTAINER) */

.edition-hero{
	position: relative;
	width: 100%;
	overflow: hidden;
	z-index: 0;
}

.edition-hero:not(.full-bleed):not(#video-module-full-screen) {
	margin-bottom: var(--gap-block__page);
}

/* Fill the viewport container */
.edition-hero-media,
.edition-hero-video{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.edition-section .edition-hero-media,
.edition-section .edition-hero-video{
	margin: 0;
	padding: 0;
	display: block;
	/* padding-inline: var(--space-30); */
}

.edition-hero-link{
	position: absolute;
	inset: 0;
	z-index: 5;
}

.single-edition .edition-hero-link{
	display: none;
}

.edition-hero-video .hero-anim-toggle {
	position: absolute;
	right: 2rem;
	z-index: 6;
	pointer-events: auto;
	border: 0;
	outline: 0;
	box-shadow: none;
	background-image: none;
}

.edition-hero-video .hero-anim-toggle svg path {
	fill: var(--colorWhite);
}

/* ------------------------------------------------------------ */
/* IMAGES */

.edition-hero-media img{
	width: 100%;
	height: 100%;
	display: block;

	object-fit: cover;
	object-position: 50% 0%; /* align top, crop bottom */
}

/* ------------------------------------------------------------ */
/* VIDEO IFRAMES (DECORATIVE) */

.edition-hero-video iframe{
	position: absolute;
	border: 0;
	pointer-events: none;
}

/* ------------------------------------------------------------ */
/* DESKTOP / MOBILE TOGGLES */

.edition-hero-media.mobile,
.edition-hero-video.mobile{
	display: none;
}

@media (max-width: 767px){
	.edition-hero-media.desktop,
	.edition-hero-video.desktop{
		display: none;
	}

	.edition-hero-media.mobile,
	.edition-hero-video.mobile{
		display: block;
	}
}

/* ------------------------------------------------------------ */
/* VP VARIANT: 1512 x 720 (2.1:1) */
/* Applies to both .edition-hero and .edition-section containers */

.edition-hero.vp-1512-720,
.edition-section.vp-1512-720{
	aspect-ratio: 1512 / 720;
	max-height: calc(100svh - var(--header-h));
}

.edition-section.vp-1512-720,
.edition-section.vp-1920-1080{
	width: calc(100% - 6rem);
	margin: 0 auto;
}

.page-template-editions-page .edition-hero.vp-1512-720,
.page-template-editions-page .edition-section.vp-1512-720,
.page-template-editions-page .edition-hero.vp-1920-1080,
.page-template-editions-page .edition-section.vp-1920-1080{
	background-color: transparent !important;
}

.page-template-editions-page .edition-link .linerule-on {
	border-color: transparent;
}

/* Video fill strategy for non-16:9 video:
   just fill the window. Cropping will happen based on source ratio.
   Since we can’t object-fit the iframe, we bias crop “down” by anchoring top. */
.edition-hero.vp-1512-720 .edition-hero-video iframe,
.edition-section.vp-1512-720 .edition-hero-video iframe{
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Mobile art-direction for vp-1512-720: 1080 x 1350 (4:5) */
@media (max-width: 767px){
	.edition-hero.vp-1512-720,
	.edition-section.vp-1512-720{
		aspect-ratio: 1080 / 1350;
		max-height: none;
	}
}

/* ------------------------------------------------------------ */
/* VP VARIANT: 1920 x 1080 (16:9) */
/* Vimeo background cover trick, top-aligned */
/* Applies to both .edition-hero and .edition-section containers */

.edition-hero.vp-1920-1080,
.edition-section.vp-1920-1080{
	aspect-ratio: 1920 / 1080;
	max-height: none; /* allow scrolling if taller than viewport */
}

.edition-hero.vp-1920-1080 .edition-hero-media img,
.edition-section.vp-1920-1080 .edition-hero-media img{
	object-fit: cover;
	object-position: 50% 0%;
}

/* 16:9 background iframe, anchored to TOP so bottom crops first */
.edition-hero.vp-1920-1080 .edition-hero-video iframe,
.edition-section.vp-1920-1080 .edition-hero-video iframe{
	top: 0;
	left: 50%;

	width: 177.78vh;
	max-width: inherit;
	height: 100vh;

	min-width: 100%;
	min-height: 100%;

	transform: translateX(-50%);
}

.edition-hero.vp-1920-1080 .edition-hero-video iframe,
.edition-section.vp-1920-1080 .edition-hero-video iframe{
	height: 100%;
}

/* ------------------------------------------------------------ */
/* MOBILE: invert vp-1920-1080 to 1080x1920 (portrait) */

@media (max-width: 767px){
	.edition-hero.vp-1920-1080,
	.edition-section.vp-1920-1080{
		aspect-ratio: 1080 / 1920; /* portrait */
	}

	/* Video: portrait background-cover math */
	.edition-hero.vp-1920-1080 .edition-hero-video iframe,
	.edition-section.vp-1920-1080 .edition-hero-video iframe{
		top: 0;
		left: 50%;

		width: 100vw;
		height: 177.78vw;

		min-width: 100%;
		min-height: 100%;

		transform: translateX(-50%);
	}
}

/* ------------------------------------------------------------ */
/* 2023 Section Order Hack */

.postid-677 main {
	display: flex;
	flex-direction: column;
}

.postid-677 main .edition-hero {
	order: 1;
}

.postid-677 main .media-images.one-image {
	order:2;
}

.postid-677 main #about-the-exhibition {
	order:3;
}

.postid-677 main .featured-artists{
	order:4;
}

.postid-677 main .grid-people {
	order:5;
}

.postid-677 main #staff-curatorial-support {
	order:6
}

.postid-677 main .grid-sponsors{
	order:7;
}

/* 260-newsletter-form.css */
section.form-newsletter {
	--input-background: #ffffff48;
	--textcolor-faint: #00000096;
	--textcolor-solid: #000;
	&.scheme-black, .theme-dark & {
		--input-background: #ffffff24;
		--textcolor-faint: #F2EA0F96;
		--textcolor-solid: #F2EA0F;
	}
	&.scheme-white {
		--input-background: #eee;
	}

	p {
		font: inherit;
	}

	& > * {
		padding: var(--gap-block__module) var(--padding__module) var(--space__submodule);
	}

	form {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		max-width: 65rem;
		margin-inline: auto;
		color: var(--textcolor-solid);

		& > * {
			flex: 1 1 100%;
			max-width: 100%;
		}
	}

	input, fieldset {
		appearance: none;
		border: none;
		border-radius: 0;
		background: var(--input-background);
		padding: 8px 10px;
		margin: 0;
		min-width: 10ch;

		&:focus {
			outline-color: var(--textcolor-faint);
		}
	}

	fieldset {
		color: var(--textcolor-faint);

		label {
			display: inline-block;
			cursor: pointer;
		}
		label:first-child {
			display: block;
			cursor: default;
		}
		label ~ label {
			margin-right: 1.6rem;
		}
	}

	::placeholder {
		color: var(--textcolor-faint);
	}

	[type="checkbox"] {
		height: 1em;
		min-width: 0;
		padding: 0;
		cursor: pointer;
		background: none;

		&::before {
			content: '';
		}
		&:checked::before {
			content: '';
		}
	}

	label:has([type="checkbox"]:checked) {
		color: var(--textcolor-solid)
	}

	#first-name, #last-name {
		flex: 1 1 1px;
		min-width: 20ch;
	}

	.input-combo {
		display: flex;

		& > input {
			flex: 1 1 1px;
		}
	}

	#submit {
		max-width: max-content;
		color: var(--textcolor-solid);
	}
}

section.form-newsletter form.wpforms-form {
	background: rgba(255, 255, 255, 0);
}

section.form-newsletter .wpforms-container input[type="text"],
section.form-newsletter .wpforms-container input[type="email"] {
	background: var(--input-background);
}

section.form-newsletter div.wpforms-container.wpforms-container-full button[type=submit]:hover,
section.form-newsletter div.wpforms-container.wpforms-container-full button[type=submit]:focus-visible {
	background: var(--input-background);
	color: var(--textcolor-solid) !important;
}

section.form-newsletter div.wpforms-container:not(:empty) {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	max-width: 65rem;
	margin-inline: auto;
	color: var(--textcolor-solid);
}

section.form-newsletter .wpforms-container .wpforms-form input[type="text"]::-webkit-input-placeholder,
section.form-newsletter .wpforms-container .wpforms-form input[type="email"]::-webkit-input-placeholder {
	color: var(--textcolor-faint) !important;
	opacity: 1 !important;
}

section.form-newsletter div.wpforms-container.wpforms-container-full button[type=submit],
section.form-newsletter div.wpforms-container.wpforms-container-full button[type=submit]:not(:hover):not(:active) {
	background: var(--input-background) !important;
	color: var(--textcolor-faint) !important;
}

footer div.wpforms-container-full .wpforms-confirmation-container-full,
footer div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
	background: var(--color__background);
	border: 1px solid var(--color__background);
	border-radius: var(--border-radius);
}

/* 30-accordions.css */
/* Container */
.accordion {
  text-align: center;
}

/* Accordion block */
.accordion .js-accordion {
  margin-inline: var(--space-30);
  margin-bottom: var(--space-15);
  /* border-bottom: 1px solid var(--colorDarkGrey); */
}

/* Accordion title */
.counterpublic-accordion__title {
  border-bottom: 1px solid var(--color__rule);
}

/* Remove title border when open */
.counterpublic-accordion__title:has(.js-accordion__header[aria-expanded="true"]) {
  border-bottom: none;
}

/* Add border to panel when open */
.counterpublic-accordion__title:has(.js-accordion__header[aria-expanded="true"])
+ .js-accordion__panel {
  border-bottom: 1px solid var(--color__rule);
  padding-bottom: var(--space-30);
}

.accordion button.js-accordion__header:focus {
    outline: 1px solid rgba(160, 159, 159, 0) !important;
    outline-offset: 0;
    border-radius: 5px;
}

/* Header button */
.accordion button.js-accordion__header {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-block: var(--space-30);
  padding-inline: var(--space-10);
  padding-right: calc(var(--space-10) + 2ch + var(--space-10));
  appearance: none;
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
  text-align: center;
}

/* Ensure click target is the button */
.accordion button.js-accordion__header > * {
  pointer-events: none;
  margin: 0;
  width: 100%;
  text-align: center;
}

/* Arrow */
.accordion button.js-accordion__header::after {
  content: "↓";
  position: absolute;
  right: var(--space-10);
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

/* Arrow visibility */
.accordion button.js-accordion__header:not(:hover):not(:focus):not([aria-expanded="true"])::after {
  opacity: 0;
}

/* Expanded state arrow */
.accordion button.js-accordion__header[aria-expanded="true"]::after {
  content: "↑";
  opacity: 1;
}

/* Panel base layout */
.accordion .js-accordion__panel {
  margin-top: var(--space-10);
  /* max-width: 55ch; */
  margin-inline: auto;
  text-align: left;
  flex-flow: column nowrap;
  align-items: center;
}

.accordion .js-accordion__panel p {
  max-width: 55ch;
}

/* Prevent initial flash */
.js-accordion__panel {
  display: none;
}

/* Show panel when its header button is expanded */
.counterpublic-accordion__title:has(.js-accordion__header[aria-expanded="true"])
+ .js-accordion__panel {
  display: flex;
}

/* Desktop adjustments */
@media (min-width: 767px) {
  .accordion .js-accordion {
    margin-inline: var(--space-30);
  }
}

/* 40-text-one-col.css */
.one-column {
	.column-container {
		padding: var(--space-10) var(--space-20);
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: var(--space-10) var(--space-40);
	}

	figure {
		margin: 0;
	}
}

.content-module.one-column {
	.header header {
		display: flex;
		flex-wrap: wrap;
		gap: var(--space-10);
		align-items: flex-start;
	}
}

@media (min-width: 767px) {
	.one-column .column-container {
		display: grid;
		grid-template-columns: 25% 50% 25%;
		padding: var(--space-40) 0;
		margin-inline: var(--space-30);
	}
	.one-column .image {
		grid-column: 1;
	}
	.one-column .text {
		grid-column: 2;
	}
	.one-column .text.center {
		text-align: left;
	}
	.one-column .image figure {
		position: sticky;
		top: calc(var(--nav-h) + var(--sticky-gap));
		margin: 0;
	}
}

/* 50-text-two-col.css */
.two-column.header-left.text-right .column.image,
.two-column.header-left.text-right .big-ctas,
.two-column.image-left.text-right .column.header,
.two-column.image-left.text-right .big-ctas,
.two-column.header-left.big-cta .text-column,
.two-column.header-left.big-cta .text-table,
.two-column.header-left.text-two-col-text .image {
	display: none;
}

.two-column {
	.column-container {
		padding: var(--space-10) var(--space-20);
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: var(--space-20) var(--space-40);
	}

	figure {
		margin: 0;
	}
}

.content-module.two-column {
	.header header {
		display: flex;
		flex-wrap: wrap;
		gap: var(--space-10);
		align-items: flex-start;
		/* margin-inline: 0; */
	}
}

/* .content-module.two-column {
	.header header p {
		margin-inline: 0;
	}
} */

.two-column {
	.column-container {
		h3 {
			/*font-size: var(--body-reg);
			font-weight: 400;
			display: inline;
			line-height: var(--line-height-sm);
			letter-spacing: var(--letter-spacing-xs);*/
		}
	}
}

.column.header p {
	font-size: var(--body-small);
	margin-inline: 0;
}

.text-two-col-text .text-table {
	border-top: 1px solid var(--color__rule);
}

.text-two-col-text .text-table,
.text-two-col-text .inside-text-table {
	border-bottom: 1px solid var(--color__rule);
}

.text-two-col-text .inside-text-table {
	padding: 1rem .5rem 1rem 0;
}

.header-left.big-cta .big-ctas {
	border-top: 1px solid var(--color__rule);
}

.big-cta-item {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--space-30);
	padding: 2rem;
	border-bottom: 1px solid var(--color__rule);
}

.big-cta-img {
	max-width: 40%;
}

.big-cta-img img {
	border-radius: 1rem;
}

.big-cta-text {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
}

.big-cta-text a {
	text-decoration: underline;
}

.two-column .header {
	display: flex;
	flex-flow: column nowrap;
	gap: var(--space-10);
	align-items: flex-start;
	margin-inline: 0;
}

.link-button::after {
	content: "↓";
}

.link-button.is-expanded::after {
	content: "↑";
}

.link-button::after {
	margin-left: .5ch;
	opacity: 0;
}

.link-button:hover::after,
.is-expanded::after {
	opacity: 1;
}

.two-column .header button {
	vertical-align: top;
}

@media (min-width: 767px) {
	.two-column .column-container,
	.image-left.text-right .column-container {
		padding: var(--space-40) 0;
		margin-inline: var(--space-30);
		flex-wrap: nowrap;
	}
	.two-column {
		.header {
			flex: 0 1 50%;
			/*margin-inline: var(--margin-inline__header);*/
		}
	}
	.two-column .text-column,
	.image-left.text-right .image,
	.image-left.text-right .text-column,
	.text-left.image-right .image,
	.text-left.image-right .text-column,
	.text-two-col-text .text-table,
	.header-left.big-cta .big-ctas {
		/* border: none; */
		padding: 0;
		flex: 0 1 50%;
	}
	.text-left.image-right .text-column {
		order: 1;
	}
	.text-left.image-right .image {
		order: 2;
	}
	.image-left.text-right .image figure,
	.text-left.image-right .image figure {
		position: sticky;
		top: calc(var(--nav-h) + var(--sticky-gap));
		margin: 0;
	}
	.on-page-nav-active .image-left.text-right .image figure,
	.on-page-nav-active .text-left.image-right .image figure {
		position: sticky;
		top: calc(var(--nav-on-page-h) + var(--sticky-gap));
		margin: 0;
	}
	.text-two-col-text .text-table {
		border-bottom: none;
	}
	.text-two-col-text .inside-text-table {
		display: flex;
		flex-wrap: nowrap;
		gap: var(--space-30);
	}
	.text-two-col-text .inside-text-table .column {
		width: 50%;
	}
	/* default desktop spacing for column-container variants */
	.two-column .column-container,
	.image-left.text-right .column-container {
		padding: var(--space-40) 0;
		margin-inline: var(--space-30);
		flex-wrap: nowrap;
	}
	/* make THIS specific layout a 2-col grid */
	.header-left.text-two-col-text .column-container {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto auto;
		gap: var(--space-40);
		padding: var(--space-40) 0;
		margin-inline: var(--space-30);
		justify-content: initial;
	}
	/* left column: header */
	.header-left.text-two-col-text .column-container > .column.header {
		grid-column: 1;
		grid-row: 1;
	}
	/* right column, top: text column */
	.header-left.text-two-col-text .column-container > .column.text-column {
		grid-column: 2;
		grid-row: 1;
		padding: 0;
	}
	/* right column, bottom: text table */
	.header-left.text-two-col-text .column-container > .column.text-table {
		grid-column: 2;
		grid-row: 2;
		padding: 0;
	}
	/* right column, column widths */
	.text-two-col-text .inside-text-table .column:first-child {
		flex: 0 0 40%;
	}
	.text-two-col-text .inside-text-table .column:last-child {
		flex: 0 0 60%;
	}
}

@media only screen and (max-width: 767px) {
	.two-column .header {
		align-items: center;
		width: 100%;
	}
}

/* 60-wp-forms.css */
.form-wpform .column-container h3 {
	font-family: Repro;
	font-size: var(--body-reg);
	line-height: var(--body-line-height);
	letter-spacing: var(--letter-spacing-md);
}

.form-wpform .column-container .header,
.form-wpform .column-container .form {
	padding: 0;
	flex: 0 1 50%;
}

@media (min-width: 767px) {
	.form-wpform .column-container {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: var(--space-20) var(--space-40);
		padding: var(--space-40) 0;
		margin-inline: var(--space-30);
		flex-wrap: nowrap;
	}
}

/* ------------------------------------------------------------ */
/* Form B baseline styling (default everywhere) */

div.wpforms-container.wpforms-container-full button[type=submit]:not(:hover):not(:active) {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	width: 100%;
	max-width: 100%;
	height: fit-content;
	margin-inline: auto;
	font-family: Repro;
	font-size: var(--body-reg);
	line-height: var(--line-height-md);
	letter-spacing: var(--letter-spacing-md);
	text-align: center;

	background-color: transparent;
	border-radius: var(--border-radius);
	color: var(--color__hovertext);
	border: 1.5px solid var(--color__hovertext);
	padding: 1rem 2rem;
}

div.wpforms-container.wpforms-container-full button[type=submit] {
	&:hover, &:focus, &:active {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		border-radius: var(--border-radius);
		width: 100%;
		max-width: 100%;
		font-family: Repro;
		font-size: var(--body-reg);
		line-height: var(--line-height-md);
		letter-spacing: var(--letter-spacing-md);
		border: 1.5px solid black;
		height: fit-content;
		padding: 1rem 2rem;
		background: var(--color__hover);
		color: var(--color__hovertext);
	}
}

div.wpforms-container.wpforms-container-full input[type=date],
div.wpforms-container.wpforms-container-full input[type=datetime],
div.wpforms-container.wpforms-container-full input[type=datetime-local],
div.wpforms-container.wpforms-container-full input[type=email],
div.wpforms-container.wpforms-container-full input[type=month],
div.wpforms-container.wpforms-container-full input[type=number],
div.wpforms-container.wpforms-container-full input[type=password],
div.wpforms-container.wpforms-container-full input[type=range],
div.wpforms-container.wpforms-container-full input[type=search],
div.wpforms-container.wpforms-container-full input[type=tel],
div.wpforms-container.wpforms-container-full input[type=text],
div.wpforms-container.wpforms-container-full input[type=time],
div.wpforms-container.wpforms-container-full input[type=url],
div.wpforms-container.wpforms-container-full input[type=week],
div.wpforms-container.wpforms-container-full select,
div.wpforms-container.wpforms-container-full textarea,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=date],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=datetime],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=datetime-local],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=email],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=month],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=number],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=password],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=range],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=search],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=tel],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=text],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=time],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=url],
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=week],
.wp-core-ui div.wpforms-container.wpforms-container-full select,
.wp-core-ui div.wpforms-container.wpforms-container-full textarea {
	font-size: var(--body-reg);
	line-height: var(--line-height-md);
	letter-spacing: var(--letter-spacing-md);
	padding: 1rem 2rem;
	height: fit-content;
	border-color: var(--color__rule);
}

div.wpforms-container.wpforms-container-full input[type=date]:focus,
div.wpforms-container.wpforms-container-full input[type=datetime]:focus,
div.wpforms-container.wpforms-container-full input[type=datetime-local]:focus,
div.wpforms-container.wpforms-container-full input[type=email]:focus,
div.wpforms-container.wpforms-container-full input[type=month]:focus,
div.wpforms-container.wpforms-container-full input[type=number]:focus,
div.wpforms-container.wpforms-container-full input[type=password]:focus,
div.wpforms-container.wpforms-container-full input[type=range]:focus,
div.wpforms-container.wpforms-container-full input[type=search]:focus,
div.wpforms-container.wpforms-container-full input[type=tel]:focus,
div.wpforms-container.wpforms-container-full input[type=text]:focus,
div.wpforms-container.wpforms-container-full input[type=time]:focus,
div.wpforms-container.wpforms-container-full input[type=url]:focus,
div.wpforms-container.wpforms-container-full input[type=week]:focus,
div.wpforms-container.wpforms-container-full select:focus,
div.wpforms-container.wpforms-container-full textarea:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=date]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=datetime]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=datetime-local]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=email]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=month]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=number]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=password]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=range]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=search]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=tel]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=text]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=time]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=url]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=week]:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full select:focus,
.wp-core-ui div.wpforms-container.wpforms-container-full textarea:focus {
	outline: 1px solid rgba(0, 0, 0, 0.8) !important;
	outline-offset: 2px;
	border-radius: 5px;
	border-color: var(--color__hovertext);
}

div.wpforms-container.wpforms-container-full input[type=date]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=datetime]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=datetime-local]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=email]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=month]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=number]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=password]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=range]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=search]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=tel]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=text]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=time]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=url]:focus:invalid,
div.wpforms-container.wpforms-container-full input[type=week]:focus:invalid,
div.wpforms-container.wpforms-container-full select:focus:invalid,
div.wpforms-container.wpforms-container-full textarea:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=date]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=datetime]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=datetime-local]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=email]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=month]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=number]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=password]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=range]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=search]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=tel]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=text]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=time]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=url]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=week]:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full select:focus:invalid,
.wp-core-ui div.wpforms-container.wpforms-container-full textarea:focus:invalid {
	outline: 1px solid rgba(160, 159, 159, 0.8) !important;
	outline-offset: 2px;
	border-radius: 5px;
	border-color: var(--color__hovertext);
}

div.wpforms-container.wpforms-container-full input[type=submit]:focus:after,
div.wpforms-container.wpforms-container-full button[type=submit]:focus:after,
div.wpforms-container.wpforms-container-full .wpforms-page-button:focus:after,
.wp-core-ui div.wpforms-container.wpforms-container-full input[type=submit]:focus:after,
.wp-core-ui div.wpforms-container.wpforms-container-full button[type=submit]:focus:after,
.wp-core-ui div.wpforms-container.wpforms-container-full .wpforms-page-button:focus:after {
	content: "";
	position: absolute;
	border: 2px solid rgba(160, 159, 159, 0.8);
	border-radius: 5px;
}

div.wpforms-container.wpforms-container-full .wpforms-field-label,
.wp-core-ui div.wpforms-container-full .wpforms-field-label {
	font-size: var(--body-reg);
	line-height: var(--line-height-md);
	letter-spacing: var(--letter-spacing-md);
	font-weight: normal;
}

div.wpforms-container.wpforms-container-full .wpforms-field-sublabel,
.wp-core-ui div.wpforms-container-full .wpforms-field-sublabel {
	font-family: 'Repro-Regular-Mono';
	font-size: var(--size-16);
}

div.wpforms-container.wpforms-container-full .wpforms-field-label,
.wp-core-ui div.wpforms-container-full .wpforms-field-label {
	margin-bottom: 1rem;
}

div.wpforms-container.wpforms-container-full .wpforms-field:first-child {
	padding-top: 0;
}

div.wpforms-container.wpforms-container-full .wpforms-required-label,
.wp-core-ui div.wpforms-container .wpforms-required-label {
	color: var(--color__hovertext);
}

.form .wpforms-container .wpforms-field,
.form .wp-core-ui div.wpforms-container .wpforms-field {
	padding: 1rem 0;
}

.form div.wpforms-container-full .wpforms-confirmation-container-full,
.form div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
	border-radius: var(--border-radius);
	background-color: var(--color__menu);
	border-color: transparent;
	font-size: var(--size-26);
}

/* ------------------------------------------------------------ */
/* Newsletter skin (ONLY in footer OR .form-newsletter) */

:is(footer, .form-newsletter) div.wpforms-container:not(:empty) {
	margin: .5rem 0;
}

:is(footer, .form-newsletter) div.wpforms-container,
:is(footer, .form-newsletter) div.wpforms-container-full {
	width: 100%;
	max-width: none;
	margin: 0;
}

:is(footer, .form-newsletter) form.wpforms-form {
	width: 100%;
	max-width: none;
	margin: 0;

	background: rgba(255, 255, 255, .15);
	border-radius: 5px;

	padding: var(--gap-block__module);

	display: grid;
	grid-template-columns: 1fr auto;
	column-gap: 0;
	row-gap: 1rem;

	grid-template-areas:
		"name name"
		"zip zip"
		"email submit";

	/* keep your typography alignment rules */
	font-family: Repro;
	font-size: var(--body-small);
	line-height: var(--line-height-lg);
	letter-spacing: var(--letter-spacing-md);
}

/* Flatten container so each field container can be placed by grid-area */
:is(footer, .form-newsletter) .wpforms-field-container {
	display: contents !important;
}

/* Reset WPForms spacing */
:is(footer, .form-newsletter) .wpforms-field,
:is(footer, .form-newsletter) .wpforms-submit-container,
:is(footer, .form-newsletter) fieldset {
	margin: 0 !important;
	padding: 0 !important;
}

/* Place fields */
:is(footer, .form-newsletter) #wpforms-1351-field_1-container { grid-area: name; }
:is(footer, .form-newsletter) #wpforms-1351-field_3-container { grid-area: zip; }
:is(footer, .form-newsletter) #wpforms-1351-field_2-container { grid-area: email; }
:is(footer, .form-newsletter) .wpforms-submit-container { grid-area: submit; }

/* Hide labels/sublabels/legend */
:is(footer, .form-newsletter) .wpforms-field-label,
:is(footer, .form-newsletter) .wpforms-field-sublabel,
:is(footer, .form-newsletter) .wpforms-field-name legend {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

:is(footer, .form-newsletter) .wpforms-required-label {
	display: none;
}

:is(footer, .form-newsletter) .wpforms-field-name fieldset {
	background: rgba(255, 255, 255, 0);
}

/* Hide honeypots */
:is(footer, .form-newsletter) #wpforms-1351-field_4-container,
:is(footer, .form-newsletter) #wpforms-1351-field_5-container {
	display: none !important;
}

/* Inputs */
:is(footer, .form-newsletter) .wpforms-container input[type="text"],
:is(footer, .form-newsletter) .wpforms-container input[type="email"] {
	width: 100%;
	background: rgba(255, 255, 255, .15);

	border: 0 !important;
	box-shadow: none !important;

	padding: 0.85rem 1rem;
	min-height: 3.25rem;

	border-radius: 5px;
	outline: none;

	/* keep text color aligned with your target */
	color: rgba(242, 234, 15, .6) !important;
	box-sizing: border-box;
}

/* Keep your typography rules on the actual inputs */
:is(footer, .form-newsletter) div.wpforms-container.wpforms-container-full input[type="text"],
:is(footer, .form-newsletter) div.wpforms-container.wpforms-container-full input[type=email] {
	font-family: Repro;
	font-size: var(--body-small);
	line-height: var(--line-height-lg);
	letter-spacing: var(--letter-spacing-md);
}

/* Placeholder color (explicit; does not inherit from input color) */
:is(footer, .form-newsletter) .wpforms-container .wpforms-form input[type="text"]::placeholder,
:is(footer, .form-newsletter) .wpforms-container .wpforms-form input[type="email"]::placeholder {
	color: rgba(242, 234, 15, .6) !important;
	opacity: 1 !important;
}

:is(footer, .form-newsletter) .wpforms-container .wpforms-form input[type="text"]::-webkit-input-placeholder,
:is(footer, .form-newsletter) .wpforms-container .wpforms-form input[type="email"]::-webkit-input-placeholder {
	color: rgba(242, 234, 15, .6) !important;
	opacity: 1 !important;
}

:is(footer, .form-newsletter) .wpforms-container .wpforms-form input[type="text"]::-moz-placeholder,
:is(footer, .form-newsletter) .wpforms-container .wpforms-form input[type="email"]::-moz-placeholder {
	color: rgba(242, 234, 15, .6) !important;
	opacity: 1 !important;
}

/* Focus */
:is(footer, .form-newsletter) .wpforms-container input:focus-visible {
	color: rgba(242, 234, 15, 1) !important;
}

:is(footer, .form-newsletter) .wpforms-container input:focus-visible::placeholder {
	color: rgba(242, 234, 15, 1) !important;
	opacity: 1 !important;
}

/* ------------------------------------------------------------ */
/* Name row (final): 2-up, spacing ONLY between columns */

:is(footer, .form-newsletter) .wpforms-container .wpforms-form
#wpforms-1351-field_1-container {
	padding: 0 !important;
	margin: 0 !important;
}

:is(footer, .form-newsletter) .wpforms-container .wpforms-form
#wpforms-1351-field_1-container .wpforms-field-row {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	box-sizing: border-box;

	/* disable WPForms responsive container switch */
	container-type: normal !important;
	container-name: none !important;
}

:is(footer, .form-newsletter) .wpforms-container .wpforms-form
#wpforms-1351-field_1-container .wpforms-field-row-block {
	float: none !important;
	flex: 0 0 50% !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

/* create spacing ONLY between columns */
:is(footer, .form-newsletter) .wpforms-container .wpforms-form
#wpforms-1351-field_1-container .wpforms-field-row-block.wpforms-first {
	padding-right: 0.5rem !important;
}

:is(footer, .form-newsletter) .wpforms-container .wpforms-form
#wpforms-1351-field_1-container .wpforms-field-row-block:not(.wpforms-first) {
	padding-left: 0.5rem !important;
}

/* ensure the inputs stay inside the halves */
:is(footer, .form-newsletter) .wpforms-container .wpforms-form
#wpforms-1351-field_1-container .wpforms-field-row-block input {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

/* ------------------------------------------------------------ */
/* Email + Submit combo */

:is(footer, .form-newsletter) #wpforms-1351-field_2 {
	border-radius: 5px 0 0 5px;
}

:is(footer, .form-newsletter) .wpforms-submit-container {
	align-self: stretch;
	display: flex;
	align-items: stretch;
	justify-content: flex-end;
}

/* Beat baseline submit selector */
:is(footer, .form-newsletter) div.wpforms-container.wpforms-container-full button[type=submit],
:is(footer, .form-newsletter) div.wpforms-container.wpforms-container-full button[type=submit]:not(:hover):not(:active) {
	background: rgba(255, 255, 255, .15) !important;
	color: rgba(242, 234, 15, .6) !important;

	border: 0 !important;
	box-shadow: none !important;

	padding: 0.85rem 1rem;
	min-height: 3.25rem;
	height: 100%;
	max-height: 4rem;

	border-radius: 0 5px 5px 0;

	margin: 0 !important;
	width: auto;
	min-width: max-content;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	cursor: pointer;
	white-space: nowrap;

	/* keep your typography alignment rules */
	font-family: Repro;
	font-size: var(--body-small);
	line-height: var(--line-height-lg);
	letter-spacing: var(--letter-spacing-md);
}

:is(footer, .form-newsletter) div.wpforms-container.wpforms-container-full button[type=submit]:hover,
:is(footer, .form-newsletter) div.wpforms-container.wpforms-container-full button[type=submit]:focus-visible {
	color: rgba(242, 234, 15, 1) !important;
}

/* Mobile */
@media (max-width: 699px) {
	:is(footer, .form-newsletter) form.wpforms-form {
		grid-template-columns: 1fr;
		grid-template-areas:
			"name"
			"zip"
			"email"
			"submit";
	}

	:is(footer, .form-newsletter) #wpforms-1351-field_2 {
		border-radius: 5px;
	}

	:is(footer, .form-newsletter) div.wpforms-container.wpforms-container-full button[type=submit] {
		border-radius: 5px;
		justify-content: flex-start;
	}
}

/* 80-grid-people.css */
.grid.people {
  display: grid;
  gap: 2rem;
  /* grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr)); */
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: start;
  padding: 2rem 3rem;
}

@media (max-width: 767px) {
  .grid.people {
	grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 2rem;
  }
}

@media (max-width: 420px) {
  .grid.people {
	grid-template-columns: 1fr;
  }
}

.person {
  display: grid;
  gap: 1rem;
  text-align: center;
}

.person a {
  padding: 1rem;
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  display: flex;
  flex-flow: column nowrap;
  gap: 1rem;
}

.person a:is(:hover, :focus, :active) {
  background: var(--color__hover);
  color: var(--color__hovertext);
  /* border-color: var(--color__hovertext); */
}

.person img {
	width: 100%;
}

.person p {
	margin: 0;
	line-height: var(--line-height-sm);
}

p.title {
	font-size: var(--size-16);
	line-height: var(--line-height-sm);
}

/* each tile to be the same height across a row */
.people-grid.same-row-height {
  grid-auto-rows: 1fr;
}

.people-grid.same-row-height .person-card {
  height: 100%;
}

/* 90-grid-sponsors.css */
.grid.sponsors {
  /* grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr)); */
  grid-template-columns: repeat(6, minmax(0, 1fr));
  align-items: center;
  padding: 2rem 3rem;
  gap: 4rem 6rem;
}

@media (max-width: 767px) {
  .grid.sponsors {
   grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 420px) {
  .grid.sponsors {
    grid-template-columns: 1fr 1fr;
    padding: 2rem;
    gap: 4rem 2rem;
  }
}

.theme-dark .grid.sponsors .sponsor,
.grid.sponsors.scheme-black .sponsor {
  background: var(--colorYellow);
  background: color-mix(in lab, var(--colorYellow) 80%, transparent);
  border-radius: var(--border-radius);
  padding: .5rem;
}
.theme-dark .grid.sponsors .sponsor:hover,
.grid.sponsors.scheme-black .sponsor:hover {
  background: var(--colorYellow);
}

/* buttons.css */
/* BUTTON */
.button {
	padding: 0.3em 0.5em 0.4em;
	border-radius: var(--border-radius);
	background: transparent;
	border: 1.5px solid currentColor;

	/* External Link Selector */
	&[href^="http"]::after {
		content: '↗︎';
		margin-left: 1ch;
	}

	&:hover, &:focus, &:active {
		background: var(--color__hover);
		color: var(--color__hovertext);
	}
}

.big-button {
	font-size: var(--body-reg);
	padding: var(--space-20) var(--space-10);
	width: 100%;

	@media (min-width: 767px) {
		padding: var(--space-25);
	}
}

.link-button {
	appearance: none;
	border: none;
	background: none;
	color: inherit;
	border-radius: 0;
	cursor: pointer;
	display: inline;
	font-size: var(--body-small);
	font-family: Repro;

	span {
		text-decoration: underline 1px;
		text-underline-offset: 0.15em;
	}

	&.small-btn {
		line-height: 1;
	}

	&:focus {
		/* These focus styles are interim */
		outline: 1px solid var(--colorWhite);
		outline-offset: 4px;
		border-radius: 1rem;
		/* background-color: var(--colorWhite); */
	}

	&.small-btn:focus {
		border-radius: .5rem;
	}

	&::after {
		margin-left: .5ch;
		opacity: 0;
	}

	&:hover::after, .is-expanded &::after {
		opacity: 1;
	}
}

.link-button.is-expanded::after {
	opacity: 1;
}

.button-forms .header button,
.two-column .header button {
	display: flex;
}

.cta-button {
	padding: var(--space-6) var(--space-8);
}

/* SWIPER BUTTONS */

.swiper-buttons::selection, .swiper-buttons *::selection {
	background: transparent;
}

.swiper-button-prev, .swiper-button-next {
	position: static;
	display: inline;
	color: inherit;
	font: inherit;
	margin: 0;
	outline: 2px solid currentColor;
	border-radius: var(--border-radius-lg);
	aspect-ratio: 1;
	padding: 0 .2em 1px;

	&::after, &::before {
		/* The arrows could be pseudo-element content instead of HTML */
		display: none;
	}

	&:hover, &:focus, &:active {
		background: var(--color__hover);
		color: var(--color__hovertext);
	}
}
.swiper-button-next {
	margin-inline: .2em;
}

.swiper-button-disabled {
	opacity: 50%;
	cursor: default;
}

/* FILTER BUTTONS */

.filter-toggle{
	background: transparent;
	border-color: transparent;
}

.filter-toggle::after {
	content: '+';
	font-feature-settings: "ss16";
	margin: 0 .25rem;
	opacity: .5;
}

.filter-toggle:hover::after {
	opacity: 1;
}

.filter-toggle:focus {
	outline: 1px solid rgba(160, 159, 159, 0) !important;
}

.filter-toggle.is-active::after {
	content: '–';
}

.checkbox {
	padding: 0 0.2em;
}

.event-filters-container li {
	margin-inline: 0.1em;
}

.type-edition-term,
.type-event-term {
	border-radius: var(--border-radius-lg);
	padding-inline: 0.4em;
}

.type-edition-term.active,
.type-event-term.active {
	background: var(--color__text);
	color: var(--color__background);
}

.type-edition-term.active::before,
.type-event-term.active::before {
	content: '';
	margin-right: .25rem;
}

.type-event-term {
	border-radius: 0;
	border-style: dashed;
}

ul.edition-filters[hidden],
ul.event-filters[hidden] {
	display: none !important;
}

ul.edition-filters > li,
ul.event-filters > li {
	opacity: 0;
}

.event-filters-container.filters-animate ul.edition-filters > li,
.event-filters-container.filters-animate ul.event-filters > li {
	animation-name: menuItemPopIn;
	animation-duration: 0s;
	animation-timing-function: steps(1, end);
	animation-fill-mode: forwards;

	/* lead-in 0.5s, then 0.2s stagger */
	animation-delay: calc(0.5s + (var(--filter-i, 0) * 0.2s));
}

/* When hidden, force reset */
ul.edition-filters[hidden] > li,
ul.event-filters[hidden] > li {
	opacity: 0;
}

/* colors.css */
section, .content-module, .global {
	background-color: var(--color__background);
	color: var(--color__text);

	--color__background: var(--colorWhite);
	--color__text: var(--colorBlack);
	--color__rule: var(--colorDarkGrey);
	
	--color__hover: var(--colorLightGrey);
	--color__hovertext: var(--color__text);
}

.scheme-black, .theme-dark, .theme-dark :is(body, section, .menu-wrapper, .navigation-overlay, .content-module, .global) {
	--color__background: var(--colorBlack) !important;
	--color__text: var(--colorYellow);
	--color__rule: var(--colorYellow);
	
	--color__hover: var(--colorYellow);
	--color__hovertext: var(--colorBlack);

	--color__menu: rgba(0, 0, 0, .9);
	--color__menutext: var(--colorYellow);
}
.theme-dark .navigation-overlay {
	background: var(--colorDarkGrey);
}

.scheme-yellow {
	--color__background: var(--colorYellow);
	
	--color__hover: var(--colorBlack);
	--color__hovertext: var(--colorYellow);
}

.scheme-grey {
	--color__background: var(--colorLightGrey);
	
	--color__hover: var(--colorWhite);
}

body {
	background: var(--color__background);
	color: var(--color__text);
	--color__menu: var(--color__menu-custom, rgba(242, 234, 15, .9));
	@supports (background: color-mix(in lab, white, transparent)) {
		--color__menu: color-mix(in lab, var(--color__menu-custom, rgba(242, 234, 15, .9)), transparent 10%);
	}
}

/* typography.css */
/* TYPOGRAPHY */
body, .text__body-reg {
	font-family: Repro;
	font-size: var(--body-reg);
	line-height: var(--body-line-height);
	letter-spacing: var(--letter-spacing-md);
}

.text__body-small {
	font-family: Repro;
	font-size: var(--body-small);
	line-height: var(--line-height-lg);
	letter-spacing: var(--letter-spacing-md);
}

.text__body-large {
	font-family: Repro;
	font-size: var(--body-large);
	line-height: var(--line-height-md);
	letter-spacing: var(--letter-spacing-xs);
}


.text__header-reg {
	font-family: Marund-7002Corner;
	font-size: var(--header-reg);
	line-height: var(--line-height-sm);
	letter-spacing: var(--letter-spacing-sm);
}


.weight__body-bold {
	font-weight: 700;
}

.underline {
	text-decoration: underline;
}

.align-center {
	text-align: center;
}
.align-left {
	text-align: left;
}

.uppercase {
	text-transform: uppercase;
}

