/*! tailwindcss v4.1.3 | MIT License | https://tailwindcss.com */
/*!
Theme Name: Alexander Rotondo
Theme URI: https://adamwhyte.nyc
Author: Adam Whyte
Author URI: https://adamwhyte.nyc & https://underscoretw.com/
Description: Alexander Rotondo WP theme built on _tw
Version: 1.0.0
Tested up to: 6.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: _tw
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

_tw is based on _tw https://underscoretw.com/, (C) 2021-2025 Greg Sullivan
_tw is distributed under the terms of the GNU GPL v2 or later.

_tw is based on Underscores https://underscores.me/ and Varia https://github.com/Automattic/themes/tree/master/varia, (C) 2012-2025 Automattic, Inc.
Underscores and Varia are distributed under the terms of the GNU GPL v2 or later.
*/
@layer properties;
:root, :host {
  --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
		"Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
		"Liberation Mono", "Courier New", monospace;
  --spacing: 0.25rem;
  --container-2xl: 42rem;
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  --default-font-family: var(--font-sans);
  --default-mono-font-family: var(--font-mono);
  --color-background: var(--wp--preset--color--background);
  --color-foreground: var(--wp--preset--color--foreground);
  --container-content: 60rem;
  --container-wide: var(--wp--style--global--wide-size);
}
@font-face {
  font-family: 'ABC Diatype';
  src: url(fonts/ABCDiatype-Regular.woff) format('woff'), url(fonts/ABCDiatype-Regular.woff2) format('woff2');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'ABC Diatype';
  src: url(fonts/ABCDiatype-Medium.woff) format('woff'), url(fonts/ABCDiatype-Medium.woff2) format('woff2');
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: 'ABC Diatype';
  src: url(fonts/ABCDiatype-Bold.woff2) format('woff2');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'ABC Diatype';
  src: url(fonts/ABCDiatype-Heavy.woff2) format('woff2');
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: 'Tiempos Headline';
  src: url(fonts/tiempos-headline-light-italic.woff2) format('woff2');
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: 'Tiempos Text';
  src: url(fonts/tiempos-text-regular-italic.woff2) format('woff2');
  font-weight: 400;
  font-style: italic;
}
*, ::after, ::before, ::backdrop, ::file-selector-button {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0 solid;
}
html, :host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
  font-feature-settings: var(--default-font-feature-settings, normal);
  font-variation-settings: var(--default-font-variation-settings, normal);
  -webkit-tap-highlight-color: transparent;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
}
a {
  color: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
}
b, strong {
  font-weight: bolder;
}
code, kbd, samp, pre {
  font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace);
  font-feature-settings: var(--default-mono-font-feature-settings, normal);
  font-variation-settings: var(--default-mono-font-variation-settings, normal);
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
:-moz-focusring {
  outline: auto;
}
progress {
  vertical-align: baseline;
}
summary {
  display: list-item;
}
ol, ul, menu {
  list-style: none;
}
img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  vertical-align: middle;
}
img, video {
  max-width: 100%;
  height: auto;
}
button, input, select, optgroup, textarea, ::file-selector-button {
  font: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  letter-spacing: inherit;
  color: inherit;
  border-radius: 0;
  background-color: transparent;
  opacity: 1;
}
:where(select:is([multiple], [size])) optgroup {
  font-weight: bolder;
}
:where(select:is([multiple], [size])) optgroup option {
  padding-inline-start: 20px;
}
::file-selector-button {
  margin-inline-end: 4px;
}
::placeholder {
  opacity: 1;
}
@supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
  ::placeholder {
    color: currentcolor;
  }
  @supports (color: color-mix(in lab, red, red)) {
    ::placeholder {
      color: color-mix(in oklab, currentcolor 50%, transparent);
    }
  }
}
textarea {
  resize: vertical;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-date-and-time-value {
  min-height: 1lh;
  text-align: inherit;
}
::-webkit-datetime-edit {
  display: inline-flex;
}
::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}
::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
  padding-block: 0;
}
:-moz-ui-invalid {
  box-shadow: none;
}
button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
  appearance: button;
}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto;
}
[hidden]:where(:not([hidden='until-found'])) {
  display: none !important;
}
:root {
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  --wp--preset--color--foreground: #3D2828;
  --color-foreground: #3d2828;
  --color-background: #F2F1EE;
}
::selection {
  background-color: var(--color-foreground);
  color: var(--color-background);
}
body {
  --swup-fade-theme-duration: 0.5s;
}
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: var(--color-background);
}
body {
  font-family: 'adobe-caslon-pro', 'Times New Roman', Times, serif;
  font-size: 13px;
  line-height: 1.1;
  color: var(--color-foreground);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
}
html.js .transition-fade {
  opacity: 0;
}
html.js.swup-ready .transition-fade {
  opacity: 1;
}
html.is-swup-transitioning #swup {
  pointer-events: none;
}
#intro-cover {
  transition: 0.5s;
  transition-delay: 0.5s !important;
  height: 100dvh;
  width: 100vw;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 21;
  background: transparent;
  pointer-events: none;
}
.introducing {
  cursor: auto;
  background: #F2F1EE !important;
  pointer-events: auto !important;
}
#tagline {
  padding-top: 20px;
}
@media (max-width:767px) {
  .mobile-menu-toggle {
    transition: opacity 0.5s ease;
  }
  body:has(.introducing) .mobile-menu-toggle {
    opacity: 0;
  }
}
@media (min-width:768px) {
  body:has(.introducing) #site-header {
    top: 50%;
    margin-top: -20px;
  }
}
#tagline {
  top: 50%;
  margin-top: -20px;
}
body:has(.introducing) .navlink {
  opacity: 0;
  pointer-events: none;
}
.navlink {
  transition: opacity 0.5s ease;
}
.navlink:nth-of-type(1) {
  transition-delay: 0.5s;
}
.navlink:nth-of-type(2) {
  transition-delay: 0.65s;
}
.navlink:nth-of-type(3) {
  transition-delay: 0.75s;
}
#tagline {
  position: fixed;
  left: 47vw;
  z-index: 22;
  width: calc(100% - 47vw);
}
#site-header {
  transition: top 0.9s cubic-bezier(0.19, 1, 0.22, 1), transform 0.9s cubic-bezier(0.19, 1, 0.22, 1);
}
.tagline-inner {
  display: flex;
  width: 100%;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  #tagline {
    left: 20px;
    width: calc(100% - 20px);
  }
}
.swup-progress-bar {
  height: 3px;
  background-color: var(--color-foreground);
  position: fixed;
  top: 0;
  left: 0;
}
#sitetitle {
  display: flex;
  position: relative;
}
#site-header > a {
  position: absolute;
  top: 20px;
}
.link-index {
  left: 33vw;
}
.link-archive {
  left: 66vw;
}
.link-about {
  right: 20px;
  text-align: right;
}
.page-about .link-index, .page-about .link-archive, .page-about .link-about {
  display: none;
}
#sitetitle a {
  display: inline-block;
}
#sitetitle img {
  max-height: 28px;
  width: 100%;
}
.project-5d #sitetitle img {
  filter: invert(1);
}
#site-header {
  padding: 20px 20px 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
}
#page {
  min-height: 100%;
}
.page-content.prose {
  margin-top: 1rem;
  margin-inline: 25px;
}
.page-content.prose p {
  max-width: none;
}
.video-title {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}
media-component {
  overflow: hidden;
  display: block;
  height: 100svh;
  padding-block: 10svh;
  width: 100%;
}
media-component img, .video-player__video-wrapper {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
html:not(.is-swup-ready) #swup {
  opacity: 0;
}
html.is-swup-transitioning #swup {
  opacity: 0;
  pointer-events: none;
}
#swup {
  transition: opacity 0.4s ease;
}
html.is-swup-ready:not(.is-swup-transitioning) #swup {
  opacity: 1;
}
a[href^="tel"], a[href^="sms"], a[href^="geo"], a[href^="maps"], a[href^="http://maps"], a[href^="https://maps"] {
  color: inherit;
  text-decoration: none;
  border-bottom: none;
}
.mobile-menu {
  position: fixed;
  inset: 0;
  z-index: 900;
  background: var(--color-foreground);
  color: var(--color-background);
  padding: 100px 20px 30px;
  opacity: 0;
  pointer-events: none;
  clip-path: inset(0 0 100% 0);
  transition: opacity 250ms cubic-bezier(0.16, 1, 0.3, 1), clip-path 250ms cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.mobile-menu__inner {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.mobile-menu__nav {
  display: flex;
  flex-direction: column;
  gap: 30px;
  text-align: center;
}
.mobile-menu__nav a {
  text-decoration: none;
  color: inherit;
}
.mobile-menu--visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
  clip-path: inset(0 0 0 0);
}
@media (min-width: 768px) {
  .mobile-menu {
    display: none;
  }
}
body.is-menu-open {
  overflow: hidden;
}
.video-player {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--color-background);
  overflow: hidden;
  cursor: pointer;
}
.video-player * {
  font-variant-emoji: none;
}
.video-player__poster, .video-player__video {
  position: absolute;
  inset: 0;
  width: auto;
  height: 100% !important;
  margin: 0 auto;
  object-fit: cover;
  display: block;
}
.video-player__poster {
  z-index: 1;
}
.video-player__video {
  z-index: 0;
}
.video-player.is-playing .video-player__poster {
  opacity: 0;
  pointer-events: none;
}
.video-player__ui {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 18px 12px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.video-player.has-started .video-player__ui {
  opacity: 1;
  pointer-events: auto;
}
.vp-top-row {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 13px;
  line-height: 1;
  color: var(--color-foreground);
  font-weight: 600;
  opacity: 1;
  transition: opacity 0.25s ease;
}
.vp-top-row__spacer {
  flex: 1;
}
.vp-fullscreen {
  white-space: nowrap;
  margin-left: auto;
}
.video-player * {
  font-family: 'adobe-caslon-pro', 'Times New Roman', Times, serif;
}
.video-player.is-idle .vp-top-row {
  opacity: 0;
  pointer-events: none;
}
@media (width >= 48rem) {
  .vp-top-row button {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
}
@media (width >= 48rem) {
  .vp-top-row button {
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
}
@media (width >= 48rem) {
  .vp-top-row button {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
}
.vp-top-row button {
  border: 0;
  background: transparent;
  padding: 0;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.vp-progress {
  margin-top: 8px;
}
.vp-progress__track {
  position: relative;
  width: 100%;
  height: 1px;
  border-radius: 1px;
  background: rgba(61, 40, 40, 0.2);
  overflow: hidden;
  cursor: pointer;
}
.vp-progress__buffer, .vp-progress__fill {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
}
.vp-progress__buffer {
  background: rgba(61, 40, 40, 0.5);
}
.vp-progress__fill {
  background: rgba(61, 40, 40, 1);
}
.video-player.is-idle .vp-progress__track {
  opacity: 1;
}
#video-play-cursor {
  position: fixed;
  top: 0;
  left: 0;
  padding: 6px 14px;
  border-radius: 999px;
  color: var(--color-foreground);
  pointer-events: none;
  transform: translate(-50%, -50%) scale(0.2);
  opacity: 0;
  transition: opacity 0.15s ease-out, transform 0.20s ease-out;
  transform-origin: center center;
  mix-blend-mode: difference;
  z-index: 9999;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}
#video-play-cursor.is-visible {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
.video-player.cursor-hidden {
  cursor: none;
}
button.vp-play-pause {
  color: #3D2828;
}
.video-play-hint {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.3s ease;
  padding: 6px 14px;
  border-radius: 999px;
  color: var(--color-background);
  z-index: 9999;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), 0 0px 3px rgba(0, 0, 0, 0.2), 0 0 3px rgba(0, 0, 0, 0.1);
}
.video-play-hint.is-hidden {
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.9);
}
.gallery-container {
  position: relative;
}
.view-toggle {
  cursor: pointer;
}
.slide-counter {
  position: fixed;
  bottom: 12px;
  left: 20px;
  right: 20px;
  display: flex;
  justify-content: space-between;
  z-index: 10;
}
.slide-counter > * {
  width: 33.3333%;
}
.count span {
  min-width: 6ch;
  display: inline-block;
}
.gallery-swiper {
  width: 100%;
  height: 100svh;
  padding-block: 10svh;
}
.home-swiper {
  width: 100%;
  height: 100svh;
  padding-block: 15svh;
}
.swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}
.swiper-slide img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 4vw;
  padding: 10svh 4vw;
  grid-auto-rows: max-content;
  align-items: start;
}
.gallery-title-container {
  position: fixed;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .gallery-title-container {
    bottom: auto;
    top: 20px;
  }
  .slide-counter {
    bottom: auto;
    top: 20px;
  }
  .gallery-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    padding: 10svh 5%;
  }
}
.grid-item {
  cursor: pointer;
}
.grid-item img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.hidden {
  display: none !important;
}
.swiper-prev, .swiper-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 50%;
  height: 100%;
  z-index: 10;
}
.swiper-prev, .swiper-next {
  outline: none !important;
}
.swiper-prev {
  left: 0;
  cursor: w-resize;
}
.swiper-next {
  right: 0;
  cursor: e-resize;
}
.cursor-counter {
  position: fixed;
  left: 0;
  top: 0;
  transform: translate3d(-9999px, -9999px, 0);
  pointer-events: none;
  user-select: none;
  opacity: 0;
  transition: opacity 120ms ease;
  z-index: 9999;
  will-change: transform, opacity;
  text-align: center;
}
.cursor-counter.is-active {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .swiper-slide-prev, .swiper-slide-next {
    opacity: 0;
  }
  #sitetitle {
    justify-content: center;
  }
  .gallery-swiper, .home-swiper {
    padding-inline: 12vw;
  }
  .cursor-counter {
    display: none !important;
  }
}
.error404-header {
  height: 100svh;
  width: 100vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#work-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  background: transparent center / cover no-repeat;
  pointer-events: none;
}
#work-bg video, #work-bg iframe {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
}
.work-list {
  list-style: none;
  margin: 0;
  padding: 0;
  position: fixed;
  left: 33vw;
  top: 90px;
}
@media screen and (max-width: 767px) {
  .work-list {
    display: flex;
    min-height: 100svh;
    gap: 0.2rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    top: 0;
    left: 0;
    position: relative;
  }
}
.work-item {
  margin: 0;
}
.work-link {
  display: block;
  padding: .1rem 0;
  text-decoration: none;
  line-height: 1.2;
}
.work-link:hover, .work-link.is-hover {
  color: var(--color-background);
}
.info-grid {
  position: fixed;
  left: 33vw;
  top: 20px;
  display: grid;
  grid-template-columns: calc(33vw - 20px) calc(33vw - 138px);
  column-gap: 20px;
  row-gap: 70px;
  align-items: start;
}
@media screen and (max-width: 767px) {
  .info-grid {
    position: relative;
    padding: 0px 1.5rem;
    left: auto;
    top: auto;
    grid-template-columns: 1fr 2.5fr;
    gap: 50px 20px;
    margin-top: 30px;
  }
}
.info-grid__label {
  max-width: 14ch;
}
.info-grid__value {
  min-width: 0;
  max-width: 350px;
}
.info-grid__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.info-grid__list-item + .info-grid__list-item {
  margin-top: 6px;
}
.lightbox-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(242,241,238,1);
  display: flex;
  flex-direction: column;
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: opacity;
  transition: opacity 180ms ease, visibility 0s linear 180ms;
}
.lightbox-overlay.hiding {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.lightbox-header {
  position: fixed;
  right: 0;
  top: 0;
  z-index: 2;
  display: flex;
  justify-content: flex-end;
  padding: 20px;
}
.lightbox-close {
  appearance: none;
  background: transparent;
  border: 0;
  line-height: 1;
  cursor: pointer;
}
.lightbox-swiper {
  flex: 1;
  min-height: 0;
  width: 100vw;
  height: 100dvh;
  padding-block: 10svh;
}
.lightbox-swiper .swiper-wrapper, .lightbox-swiper .swiper-slide {
  height: 100%;
}
.lightbox-swiper .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.zoom-container img {
  max-width: 100%;
  max-height: 100%;
  transform-origin: center center;
  transition: transform 250ms ease;
  cursor: zoom-in;
}
.zoom-container.is-zoomed img {
  cursor: zoom-out;
}
.lightbox-overlay.is-animating {
  pointer-events: none;
}
.lightbox-overlay.is-fading-in {
  transition: opacity 220ms ease;
  opacity: 1;
}
.lightbox-overlay.is-fading-out {
  transition: opacity 180ms ease;
  opacity: 0;
}
.lightbox-zoom-clone {
  will-change: top, left, width, height;
  border-radius: 0;
}
@media screen and (max-width: 767px) {
  .lightbox-swiper {
    padding-inline: 5vw;
  }
  .lightbox-header {
    right: auto;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}
#about-overlay {
  position: fixed;
  inset: 0;
  z-index: 19999;
  background: rgba(242,241,238,0.72);
  backdrop-filter: saturate(180%) blur(20px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1);
}
.page-about:has(#work-bg) #about-overlay {
  background: #f2f1ee;
}
#about-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}
#about-content {
  position: absolute;
  inset: 0;
  overflow-y: auto;
}
#about-close {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 10;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  #about-close {
    top: auto;
    right: auto;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
  }
}
a[target="_blank"] {
  cursor: alias;
}
img[loading="lazy"] {
  opacity: 0;
  transition: opacity 1s ease-out;
}
img[loading="lazy"].is-visible {
  opacity: 1;
}
@media (max-width: 767px) {
  .page-about #sitetitle, .single-work #sitetitle {
    display: none;
  }
  .link-index, .link-archive, .link-about {
    display: none;
  }
}
.mobile-menu-overlay {
  position: fixed;
  inset: 0;
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 800ms cubic-bezier(0.16, 1, 0.3, 1);
  overflow: auto;
  padding: 24px;
  background: rgba(242,241,238,0.72);
  backdrop-filter: saturate(180%) blur(20px);
}
.mobile-menu-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}
.mobile-menu-nav {
  max-width: 90vw;
  height: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  align-items: center;
  text-align: center;
}
.mobile-menu-list {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 15px;
  display: flex;
  flex-direction: column;
}
.mobile-menu-list li {
  line-height: 1.2;
  margin: 0.4em 0;
}
.mobile-menu-list a {
  text-decoration: none;
}
.mobile-menu-toggle {
  position: fixed;
  left: 0;
  width: 100%;
  bottom: 0;
  z-index: 10000;
  background: linear-gradient(0deg, var(--color-background), var(--color-background), var(--color-background), transparent);
  border: none;
  padding: 40px 12px 15px;
  line-height: 1;
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: transform, opacity;
}
.mobile-menu-list .current-menu-item, .mobile-menu-list .current-menu-item * {
  font-style: italic;
}
.post-type-archive-work .mobile-menu-toggle {
  background: transparent;
}
@media (min-width:768px) {
  .mobile-menu-toggle {
    display: none;
  }
}
body.menu-open {
  overflow: hidden;
}
.page-archive:has(.lightbox-overlay:not(.hiding)) .mobile-menu-toggle {
  z-index: 0;
}
@media (max-width: 768px) {
  .video-player__poster, .video-player__video {
    width: 90vw;
    margin: 0 auto;
    height: auto !important;
  }
  .video-player__ui {
    position: absolute;
  }
}
.page-content > *, .entry-content > * {
  margin-inline: auto;
  max-width: var(--container-content);
}
.entry-content > .alignwide {
  max-width: var(--container-wide);
}
.entry-content > .alignfull {
  max-width: none;
}
.entry-content > .alignleft {
  float: left;
  margin-right: calc(var(--spacing) * 8);
}
.entry-content > .alignright {
  float: right;
  margin-left: calc(var(--spacing) * 8);
}
.pointer-events-none {
  pointer-events: none;
}
.visible {
  visibility: visible;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.fixed {
  position: fixed;
}
.relative {
  position: relative;
}
.static {
  position: static;
}
.top-0 {
  top: calc(var(--spacing) * 0);
}
.left-0 {
  left: calc(var(--spacing) * 0);
}
.container {
  width: 100%;
}
@media (width >= 40rem) {
  .container {
    max-width: 40rem;
  }
}
@media (width >= 48rem) {
  .container {
    max-width: 48rem;
  }
}
@media (width >= 64rem) {
  .container {
    max-width: 64rem;
  }
}
@media (width >= 80rem) {
  .container {
    max-width: 80rem;
  }
}
@media (width >= 96rem) {
  .container {
    max-width: 96rem;
  }
}
@media (width >= 105rem) {
  .container {
    max-width: 105rem;
  }
}
@media (width >= 135rem) {
  .container {
    max-width: 135rem;
  }
}
.mx-auto {
  margin-inline: auto;
}
.mt-20 {
  margin-top: calc(var(--spacing) * 20);
}
.block {
  display: block;
}
.contents {
  display: contents;
}
.flex {
  display: flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.inline {
  display: inline;
}
.table {
  display: table;
}
.aspect-1\/1 {
  aspect-ratio: 1/1;
}
.aspect-3\/2 {
  aspect-ratio: 3/2;
}
.aspect-3\/4 {
  aspect-ratio: 3/4;
}
.aspect-4\/5 {
  aspect-ratio: 4/5;
}
.aspect-5\/4 {
  aspect-ratio: 5/4;
}
.aspect-5\/7 {
  aspect-ratio: 5/7;
}
.aspect-9\/16 {
  aspect-ratio: 9/16;
}
.aspect-16\/9 {
  aspect-ratio: 16/9;
}
.aspect-auto {
  aspect-ratio: auto;
}
.h-0 {
  height: calc(var(--spacing) * 0);
}
.w-0 {
  width: calc(var(--spacing) * 0);
}
.max-w-2xl {
  max-width: var(--container-2xl);
}
.transform {
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
}
.resize {
  resize: both;
}
.justify-between {
  justify-content: space-between;
}
.overflow-hidden {
  overflow: hidden;
}
.border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.pr-5 {
  padding-right: calc(var(--spacing) * 5);
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.italic {
  font-style: italic;
}
.opacity-0 {
  opacity: 0%;
}
.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
.transition {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.content-none {
  --tw-content: none;
  content: none;
}
@media (width >= 48rem) {
  .md\:items-end {
    align-items: flex-end;
  }
}
@media (width >= 48rem) {
  .md\:pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
}
@media (width >= 64rem) {
  .lg\:block {
    display: block;
  }
}
@media (width >= 64rem) {
  .lg\:pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
  initial-value: rotateX(0);
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
  initial-value: rotateY(0);
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
  initial-value: rotateZ(0);
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
  initial-value: skewX(0);
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
  initial-value: skewY(0);
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-rotate-x: rotateX(0);
      --tw-rotate-y: rotateY(0);
      --tw-rotate-z: rotateZ(0);
      --tw-skew-x: skewX(0);
      --tw-skew-y: skewY(0);
      --tw-border-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}
