@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Courier+Prime:ital,wght@0,400;0,700;1,400;1,700&family=Playfair+Display:ital@1&display=swap');
@import url("https://use.typekit.net/kco8lyu.css");



:root {
  --void: #0a0a0a;
  --cream: #ede9df;
  --apricot: #e3a155;
  --hot: #df0427;
  --zap: #b8ff00;
  --dim: #1a1a1a;
  --mid: #2a2a2a;
  --muted: #555555;
  --main: #7c380d;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--cream);
  color: var(--void);
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: 17px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  opacity: 0;
  transition: opacity 0.7s ease;
}

body.is-loaded {
  opacity: 1;
}

body.auth-locked {
  overflow: hidden;
}

.password-gate {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 2rem;
  background: var(--void);
  color: var(--cream);
}

.password-gate__form {
  width: min(100%, 24rem);
  text-align: center;
}

.password-gate__title {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: clamp(2.4rem, 7vw, 4rem);
  line-height: 1;
  margin-bottom: 1.5rem;
}

.password-gate__input {
  width: 100%;
  border: 1px dotted var(--cream);
  background: transparent;
  color: var(--cream);
  font: inherit;
  font-style: normal;
  padding: 0.8rem 0.95rem;
  text-align: center;
  outline: none;
}

.password-gate__input:focus {
  border-color: var(--hot);
}

.password-gate__submit {
  margin-top: 1rem;
  background: transparent;
  border: 0;
  cursor: pointer;
  font-family: "adobe-garamond-pro", serif;
}

.password-gate__error {
  min-height: 1.5rem;
  margin-top: 0.8rem;
  color: var(--apricot);
  font-size: 0.9rem;
  font-style: italic;
}

@media (prefers-reduced-motion: reduce) {
  body {
    transition: none;
  }
}

.center {
  text-align: center;
}

.title-font,
.page-title {
  font-family: "adobe-garamond-pro", serif;
  font-weight: 400;
  font-style: normal;
  text-align: center;
  font-size: clamp(2.5rem, 4.5vw, 2.5rem);
}

.section-title {
  font-family: "adobe-garamond-pro", serif;
  font-weight: 400;
  font-style: normal;
  text-align: left;
  font-size: clamp(1.7rem, 4.5vw, 1.7rem);
}

::selection {
  background: var(--hot);
  color: var(--void);
}

a {
  color: var(--hot);
  text-decoration: underline;
  text-underline-offset: 3px;
  /* transition: color 0.15s; */
}

a:hover {
  color: var(--hot);
}



/* ─── SPLASH ──────────────────────────────────────────────── */
.paperOverlay {
  position: fixed;
  inset: 0;
  mix-blend-mode: multiply;
  background-repeat: repeat;
  pointer-events: none;
  z-index: 9999;
  background-image: url("data:image/jpeg;base64,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");
}

.torn-edges {
  padding: 1em;
  background-color: var(--cream);
  background-clip: padding-box;
  border-style: solid;
  border-width: 10px;
  border-color: transparent;
  border-image: url(/assets/images/paper-border.png) 20 round;
  max-width: 70em;
  margin: 1em auto;
}

.splash {
  height: 100vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 3rem 2rem 0;
  position: relative;
  gap: 2rem;
}

.splash-top {
  text-align: center;
  position: relative;
  z-index: 2;
}

.splash-name {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: clamp(3rem, 6.5vw, 6.5rem);
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--void);
  white-space: nowrap;
  cursor: default;
  user-select: none;
}

.splash-animation {
  transition: opacity 1s ease;

}

.splash-name span {
  display: inline;
}



.splash-roles {
  font-size: 1.2rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--muted);
  margin-top: 0.6rem;
  font-family: "adobe-garamond-pro", serif;
  font-weight: 400;
  font-style: normal;
}

.splash-center {
  flex: 1;
  min-height: 0;
  width: 100%;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.splash-hover-layer {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0;
  pointer-events: none;
  overflow: visible;
  transition: opacity 0.55s ease;
  will-change: opacity;
}

.splash-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  z-index: 0;
  opacity: 1;
  pointer-events: none;
  overflow: visible;
  display: block;
}

/* b+W image */
.splash-bg-onload {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  z-index: 0;
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.55s ease;
  will-change: opacity;
  transform: translateZ(0);
  backface-visibility: hidden;
  overflow: visible;
}

.bg-fill {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  z-index: 0;
  opacity: 1;
  pointer-events: none;
  overflow: visible;
  display: block;
}

/* Background + color shifts on hover */

.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .splash-hover-layer {
  opacity: 1;
}

.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .splash-bg-onload {
  opacity: 0;
}

.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .arc-item,
.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .splash-dramaturgy,
.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .splash-name {
  color: var(--cream);
}

.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .splash-roles {
  color: var(--apricot);
}

.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .arc-item:hover,
.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .splash-dramaturgy:hover {
  color: var(--hot);
}

.splash-img {
  position: absolute;
  inset: 0;
  overflow: visible;
  pointer-events: none;
}

.splash-img-wrap {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 25%;
  pointer-events: auto;
  cursor: pointer;
  z-index: 2;
}

.img-hover-container {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 62%;
  pointer-events: auto;
  cursor: pointer;
  z-index: 1;
}

.splash-img::after {
  content: "";
  position: absolute;
  inset: 0;
  /* box-shadow: inset 0 0 120px rgba(10, 10, 10, 0.6); */
  pointer-events: none;
  opacity: 0;
  z-index: 1;
}

.splash:has(.img-hover-container:hover, .arc-item:hover, .splash-dramaturgy:hover) .splash-img::after {
  opacity: 1;
}

.splash-about-label {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  pointer-events: auto;
  font-family: "adobe-caslon-pro", serif;
  font-style: italic;
  font-size: clamp(2rem, 3vw, 4rem);
  color: var(--cream);
  text-decoration: none;
  opacity: 1;
  white-space: nowrap;
  letter-spacing: 0.02em;
  transition: color 0.15s, opacity 0.25s ease;
}

@media (hover: hover) and (pointer: fine) {
  .splash-about-label {
    opacity: 0;
    pointer-events: none;
  }

  .splash:has(.splash-img-wrap:hover) .splash-about-label,
  .splash-about-label:hover {
    opacity: 1;
    pointer-events: auto;
  }
}

.splash-about-label:hover,
.splash:has(.splash-img-wrap:hover) .splash-about-label {
  color: var(--void);
}

/* ─── ARC NAV ──────────────────────────────────────────────── */
.splash-nav-arc {
  position: absolute;
  left: 50%;
  width: 0;
  height: 0;
  /* Main inspector controls for the splash nav. */
  --arc-top: 60%;
  --arc-r: clamp(240px, 26vw, 400px);
  --arc-2-lift: 0rem;
  --arc-safe-gap: 2.25rem;
  top: max(var(--arc-top), calc(var(--arc-r) + var(--arc-safe-gap) - var(--arc-2-lift)));
  --arc-start: 210deg;
  --arc-step: 60deg;
}

.arc-item {
  position: absolute;
  --arc-y-offset: 0rem;
  font-family: "adobe-garamond-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: clamp(2rem, 3vw, 4rem);
  color: var(--void);
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.15s;
  transform:
    rotate(calc(var(--arc-start) + var(--n) * var(--arc-step))) translateX(var(--arc-r)) rotate(calc(-1 * (var(--arc-start) + var(--n) * var(--arc-step)))) translate(-50%, calc(-50% + var(--arc-y-offset)));
}

.arc-item {
  pointer-events: auto;
}

.arc-item::after,
.splash-dramaturgy::after {
  background: var(--hot);
}

.splash-about-label::after {
  background: var(--void);
}

.arc-item::after,
.splash-dramaturgy::after,
.splash-about-label::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: -3px;
  right: -3px;
  height: 5px;
  clip-path: polygon(4% 0%, 100% 0%, 96% 100%, 0% 100%);
  transform: rotate(-2deg) scaleX(0);
  transform-origin: left center;
  transition: transform 0.22s ease;
}



.arc-item:hover {
  color: var(--hot);
}

.arc-item:hover::after,
.splash-dramaturgy:hover::after,
.splash-about-label:hover::after,
.splash:has(.splash-img-wrap:hover) .splash-about-label::after {
  transform: rotate(-2deg) scaleX(1);
}

.arc-1 {
  --n: 0;
}

.arc-2 {
  --n: 1;
  --arc-y-offset: var(--arc-2-lift);
  z-index: 999;
}

.arc-3 {
  --n: 2;
}

.splash-dramaturgy {
  font-family: "adobe-garamond-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: clamp(2rem, 3vw, 4rem);
  color: var(--void);
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.15s;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
}

.splash-dramaturgy:hover {
  color: var(--hot);
}

.splash-contact {
  position: fixed;
  top: 1.4rem;
  right: 1.6rem;
  z-index: 10;
  font-size: 0.7rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--muted);
  transition: color 0.15s ease;
}

.splash-contact:hover {
  color: var(--hot);
}

/* ─── SITE HEADER ─────────────────────────────────────────── */

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--void);
  border-bottom: 1px solid var(--mid);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 3rem;
  gap: 2rem;
}

.logo {
  /* font-family: 'Bebas Neue', sans-serif; */
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  color: var(--cream);
  text-decoration: none;
  white-space: nowrap;
}

.logo:hover {
  color: var(--hot);
}

.header-nav {
  display: flex;
  gap: 2.5rem;
  flex-wrap: wrap;
}

.header-nav a {
  font-size: 0.7rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--muted);
  padding-bottom: 2px;
  position: relative;
  transition: color 0.12s;
}

.header-nav a::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: -2px;
  right: -2px;
  height: 4px;
  background: var(--hot);
  clip-path: polygon(6% 0%, 100% 0%, 94% 100%, 0% 100%);
  transform: rotate(-2deg) scaleX(0);
  transform-origin: left center;
  transition: transform 0.22s ease;
}

.header-nav a:hover,
.header-nav a[aria-current] {
  color: var(--cream);
}

.header-nav a:hover::after,
.header-nav a[aria-current]::after {
  transform: rotate(-2deg) scaleX(1);
}

/* ─── PAGE LAYOUT ─────────────────────────────────────────── */

.page-header {
  padding: 5rem 3rem 3rem;
  max-width: 1000px;
  margin: 0 auto;
  border-bottom: 1px dotted var(--mid);
}

.page-eyebrow {
  text-align: center;
  font-size: 1rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--hot);
  display: block;
  margin-bottom: 0.8rem;
}

/* .page-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(3.5rem, 8vw, 7rem);
  line-height: 0.9;
  letter-spacing: 0.03em;
} */

.page-intro {
  margin-top: 1.5rem;
  /* max-width: 55ch; */
  color: var(--muted);
  font-size: 1.5rem;
  text-align: center;
}

.page-body {
  max-width: 1000px;
  margin: 0 auto;
  /* padding: 0 3rem 8rem; */
}

.section {
  padding-top: 3rem;
  margin-top: 1rem;
  border-top: 1px dotted var(--mid);
}

.section:first-child {
  border-top: none;
  margin-top: 0rem;
}

.section:last-child {
  margin-bottom: 4rem;
}

.section-eyebrow {
  font-size: 1rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--hot);
  display: block;
  margin-bottom: 0.6rem;
}

/* .section-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(2.2rem, 5vw, 4rem);
  letter-spacing: 0.04em;
  line-height: 0.93;
  margin-bottom: 1.5rem;
} */

.section-body {
  padding: 1.5rem 0 1rem 2rem;
  max-width: 55ch;
  position: relative;
  max-width: 100ch;
}



.section-body p+p {
  margin-top: 1em;
}

/* ─── DEFINITION BLOCK ────────────────────────────────────── */
.definition {
  margin: 1.8rem 0 2.2rem;
  max-width: 52ch;
  padding-left: 1.2rem;
  border-left: 2px solid var(--mid);
}

.definition-word {
  display: block;
  font-family: "adobe-garamond-pro", serif;
  font-style: normal;
  font-size: 1.15rem;
  letter-spacing: 0.02em;
  color: var(--void);
}

.definition-meta {
  display: block;
  font-style: italic;
  font-size: 0.82rem;
  color: var(--muted);
  margin-top: 0.15rem;
  margin-bottom: 0.7rem;
  letter-spacing: 0.02em;
}

.definition-list {
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: def;
}

.definition-list li {
  counter-increment: def;
  font-size: 0.95rem;
  color: var(--muted);
  line-height: 1.6;
  padding-left: 1.6em;
  position: relative;
}

.definition-list li::before {
  content: counter(def) ")";
  position: absolute;
  left: 0;
  color: var(--muted);
}

.definition-list li+li {
  margin-top: 0.6rem;
  color: var(--void);
  font-style: normal;
}

/* Buttons */
.btn {
  display: inline-block;
  font-size: 1rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--muted);
  padding-bottom: 2px;
  position: relative;
  transition: color 0.12s;
  transition: all 0.15s;
  border-color: var(--hot);
  color: var(--void);
  padding-top: 1em;
  transition:
    transform 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    background-color 0.18s ease;
}

.btn:hover {
  border-color: var(--hot);
  color: var(--void);

  transform: translateX(2px);
}

.btn-zap {
  position: relative;
  color: var(--hot);
  border-color: transparent;
}



.btn-zap::after {
  content: '';
  position: absolute;
  bottom: -5px;
  left: -3px;
  right: -3px;
  height: 3px;
  background: var(--hot);
  clip-path: polygon(6% 0%, 100% 0%, 94% 100%, 0% 100%);
  transition: background 0.2s ease;
}

.btn-zap:hover {
  color: var(--hot);
}

.btn-zap:hover::before {
  transform: rotate(-2deg);
}

.btn-zap:hover::after {
  background: var(--hot);
}

.btn+.btn {
  margin-left: 0.8rem;
}

/* Pullquote */
.pullquote {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.15rem;
  line-height: 1.6;
  border-left: 3px solid var(--hot);
  padding: 0.8rem 1.5rem;
  margin: 2rem 0;
  color: var(--void);
  max-width: 55ch;
}

/* ─── IMAGES ──────────────────────────────────────────────── */

.img-thumb {
  display: block;
  /* max-width: 320px; */
  width: 100%;
  margin-top: 1.5rem;
  cursor: zoom-in;
  filter: grayscale(10%) contrast(105%);
  transition: filter 0.3s ease, transform 0.25s ease;
}

.img-thumb:hover {
  filter: grayscale(0%) contrast(108%);
  transform: scale(1.012);
}

.ucoa-feature {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 190px);
  gap: 1.75rem;
  align-items: center;
}

.ucoa-logo {
  display: block;
  width: 100%;
}

.ucoa-copy {
  max-width: 58ch;
}

.img-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin: 2rem 0;
  align-items: start;
}

.img-row img {
  width: 100%;
  display: block;
  cursor: zoom-in;
  filter: grayscale(15%) contrast(108%);
  transition: filter 0.3s ease, transform 0.25s ease;
}

.img-row img:hover {
  filter: grayscale(0%) contrast(110%);
  transform: scale(1.012);
}

/* ─── LIGHTBOX ────────────────────────────────────────────── */

.lightbox {
  position: fixed;
  inset: 0;
  background: rgba(10, 10, 10, 0.93);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

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

.lightbox-img {
  max-width: 90vw;
  max-height: 88vh;
  object-fit: contain;
  display: block;
  transition: opacity 0.15s ease;
}

.lightbox-close {
  position: absolute;
  top: 1.2rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--cream);
  font-size: 1.8rem;
  line-height: 1;
  cursor: pointer;
  opacity: 0.7;
  transition: opacity 0.15s;
  padding: 0.25rem 0.5rem;
}

.lightbox-close:hover {
  opacity: 1;
}

.lightbox-prev,
.lightbox-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--cream);
  font-size: 3rem;
  line-height: 1;
  cursor: pointer;
  padding: 1rem;
  opacity: 0.5;
  transition: opacity 0.15s;
}

.lightbox-prev:hover,
.lightbox-next:hover {
  opacity: 1;
}

.lightbox-prev {
  left: 0.5rem;
}

.lightbox-next {
  right: 0.5rem;
}

.side-poster {
  /* float: right; */
  margin: 1rem 0 2rem 2.5rem;
  max-width: 100%;
}

.side-poster img {
  width: 100%;
  display: block;
  border: 1px solid var(--mid);
}

.side-poster .img-thumb {
  margin-top: 0;
}

.reggie-stills {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reggie-stills img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.embed-video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin: 2rem 0;
  background: var(--dim);
}

.embed-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.clearfix::after {
  content: '';
  display: table;
  clear: both;
}

/* ─── RESEARCH ────────────────────────────────────────────── */

.pub-item {
  padding: 1.5rem 0 3rem 2rem;
  max-width: 55ch;
  position: relative;
}

.pub-item::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 2rem;
  right: 0;
  border-bottom: 1px dashed var(--mid);
}

.pub-item:last-child::after {
  display: none;
}

.pub-sub-group {
  padding-left: 2rem;
  border-left: 1px solid var(--mid);
  margin-left: 2rem;
}

.pub-tag {
  font-size: 0.75rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--hot);
  display: block;
  margin-bottom: 0.4rem;
}

.pub-title {
  font-style: italic;
}

.pub-venue {
  color: var(--muted);
  font-size: 0.9em;
  margin-top: 0.3rem;
}

/* ─── ABOUT ───────────────────────────────────────────────── */

.about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: start;
}

.about-headshot {
  border: 1px dotted var(--mid);
  padding: 10px;
}

.about-headshot img {
  width: 100%;
  display: block;
  filter: grayscale(15%) contrast(108%);
}

.about-text p+p {
  margin-top: 1em;
}

.about-documents {
  text-align: center;
}

.about-documents .section-title {
  text-align: center;
}

.document-links {
  display: flex;
  justify-content: center;
  gap: 0.8rem;
  max-width: none;
  padding-left: 0;
}

.document-links .btn+.btn {
  margin-left: 0;
}

/* ─── CONTACT ─────────────────────────────────────────────── */

.contact-section {
  max-width: 760px;
  margin-inline: auto;
}

.contact-form {
  padding: 3rem 0 5rem;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.2rem;
}

.form-field {
  display: block;
  margin-bottom: 1.4rem;
}

.form-field span {
  display: block;
  font-size: 0.78rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--hot);
  margin-bottom: 0.45rem;
}

.form-field input,
.form-field textarea {
  width: 100%;
  border: 1px dotted var(--mid);
  background: rgba(237, 233, 223, 0.72);
  color: var(--void);
  font: inherit;
  font-style: normal;
  padding: 0.85rem 0.95rem;
  outline: none;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.form-field textarea {
  resize: vertical;
  min-height: 13rem;
}

.form-field input:focus,
.form-field textarea:focus {
  border-color: var(--hot);
  background: var(--cream);
}

.contact-submit {
  border: 0;
  background: transparent;
  cursor: pointer;
  font-family: "adobe-garamond-pro", serif;
}

.netlify-honeypot {
  display: none;
}

.contact-thanks {
  text-align: center;
  max-width: none;
  padding-left: 0;
}

.placeholder-note {
  color: var(--muted);
  font-style: italic;
  font-size: 1.5rem;
}

.placeholder-p {
  color: var(--muted);
  font-style: normal;
  font-family: "adobe-garamond-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.5rem;
}

/* ─── FOOTER ──────────────────────────────────────────────── */

.site-footer {
  border-top: 1px solid var(--mid);
  padding: 1.8rem 3rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  background-color: var(--void);
  gap: 1rem;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  color: var(--cream);
  text-transform: uppercase;
}

.site-footer a {
  color: var(--cream);
  text-decoration: none;
  transition: color 0.15s ease;
}

.site-footer a:hover {
  color: var(--hot);
}

/* ─── RESPONSIVE ──────────────────────────────────────────── */
@media (hover: none),
(pointer: coarse) {
  .splash-hover-layer {
    opacity: 1;
  }

  .splash-bg-onload {
    opacity: 0;
  }

  .arc-item,
  .splash-dramaturgy,
  .splash-name {
    color: var(--cream);
  }

  .splash-roles {
    color: var(--apricot);
  }

}

@media (max-width: 1024px) {

  .splash-bg-onload,
  .splash-bg {
    object-fit: cover;
  }

  .splash-nav-arc {
    --arc-top: 25%;
  }

  .section {
    padding: 3rem;
  }

  .section:first-child {
    padding: 3rem;
  }
}

@media (max-width: 820px) {

  .page-title,
  .section-title {
    font-size: 1.5rem;

  }

  .section-eyebrow {
    font-size: .7rem;
  }

  .placeholder-note {
    font-size: 1rem;
  }

  .splash-bg-onload,
  .splash-bg {
    object-fit: cover;
  }

  .section,
  .section:first-child {
    padding: 2rem;
  }

  .btn {
    font-size: .7rem;
    display: block;
    width: fit-content;
    margin-inline: auto;

  }

  .splash {
    padding: 2.5rem 0 0 0;
    /* gap: 1.5rem; */
  }

  .splash-img-wrap img {
    max-width: 65vw;
  }

  .splash-nav-arc {
    --arc-top: 25%;
    /* --arc-r: clamp(140px, 22vw, 240px); */
  }

  .arc-item {
    font-size: clamp(1.1rem, 2.5vw, 1.8rem);
  }

  .site-header {
    flex-direction: column;
    align-items: center;
    padding: 1rem 1.5rem;
    gap: 0.6rem;
  }

  .logo {
    white-space: nowrap;
  }

  .header-nav {
    flex-wrap: nowrap;
    justify-content: center;
    gap: clamp(0.7rem, 2.5vw, 1.5rem);
    width: 100%;
  }

  .header-nav a {
    font-size: clamp(0.55rem, 1.8vw, 0.7rem);
    letter-spacing: 0.16em;
  }

  .page-header,
  .page-body {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .page-header {
    padding-top: 3rem;
  }

  .about-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .about-text {
    order: 1;
  }

  .about-headshot {
    order: 2;
    width: 100%;
    max-width: none;
    border: 2px solid var(--void);
    padding: 10px;
  }

  .placeholder-note {
    text-align: center;
  }

  .form-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .side-poster {
    float: none;
    margin: 0 0 1.5rem;
    max-width: 100%;
  }
}

@media (max-width: 480px) {
  .splash {
    padding: 2rem 0 0;
    gap: 1rem;
  }

  .splash-name {
    font-size: clamp(2rem, 9vw, 3rem);
  }

  .splash-img-wrap img {
    max-width: 80vw;
    max-height: calc(100vh - 130px);
  }

  .splash-nav-arc {
    --arc-top: 17%;
    --arc-r: 130px;
    --arc-safe-gap: 1.5rem;
  }

  .site-header {
    padding: 0.85rem 1rem;
    gap: 0.5rem;
  }

  .logo {
    font-size: 2rem;
    letter-spacing: 0.06em;
  }

  .section-body {
    padding: 0rem 0 0rem 0rem;
  }

  .ucoa-feature {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .ucoa-logo {
    max-width: 220px;
  }

  .header-nav {
    gap: 0.55rem;
  }

  .header-nav a {
    font-size: 0.5rem;
    letter-spacing: 0.08em;
  }

  .splash-contact {
    top: 1rem;
    right: 1rem;
    font-size: 0.58rem;
    letter-spacing: 0.16em;
  }

  /* .arc-item {
    font-size: clamp(0.85rem, 4vw, 1.2rem);
  } */

  .page-header,
  .page-body {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .site-footer {
    padding: 1.5rem 1rem;
  }

  .splash-roles {
    font-size: .6rem;
  }

  .arc-item {
    font-size: 1.5rem;
  }
}

/* @media (min-width: 821px) and (max-height: 950px) {
  .splash-nav-arc {
    --arc-r: clamp(220px, 25vw, 340px);
    --arc-top: 68%;
    --arc-2-lift: -2rem;
  }
} */
/* 
@media (min-height: 951px) {
  .splash-nav-arc {
    --arc-top: 58%;
  }
} */

@media (max-height: 700px) {
  .splash {
    padding-top: 1.5rem;
    gap: 1rem;
  }

  .splash-nav-arc {
    --arc-top: 72%;
    --arc-safe-gap: 1.5rem;
  }


  .splash-name {
    font-size: clamp(1.8rem, 5vw, 3.5rem);
  }

  .splash-roles {
    font-size: 0.65rem;
    margin-top: 0.3rem;
  }
}

@media (max-width: 480px) and (max-height: 700px) {
  .splash-nav-arc {
    --arc-top: 17%;
  }
}

@media (max-height: 520px) {
  .splash-name {
    font-size: clamp(1.4rem, 4vw, 2.5rem);
  }

  .splash-roles {
    display: none;
  }
}
