/* Original theme surfaces and typography; editorial placement only. */
body { min-height: 100vh; }
.main-stage { padding-bottom: 130px; }
.intro-section { min-height: 0; margin-bottom: clamp(64px, 7vw, 140px); }
.intro-text { min-height: 0; overflow-wrap: anywhere; }
body.menu-open .intro-text, body.menu-open .intro-home-card.is-visible { filter: none; opacity: 1; }
.menu-open .site-card > .header-service,
.menu-open .site-card > .header-copy,
.menu-open .site-card > .header-link { opacity: 1; transform: none; visibility: visible; pointer-events: auto; }
.editorial-menu {
  position: fixed; z-index: 39;
  top: calc(var(--header-top) + var(--card-height) + 22px);
  left: var(--header-left); width: var(--card-width); height: var(--card-height);
  padding: 31px 20px 24px; overflow-y: auto;
  border-radius: var(--card-radius); background: none;
  backdrop-filter: blur(70px); -webkit-backdrop-filter: blur(70px);
  box-shadow: 0 20px 80px rgba(0,0,0,1);
}
.editorial-ready .editorial-menu { visibility: hidden; opacity: 0; transform: translateY(-12px); pointer-events: none; transition: opacity 240ms ease, transform 300ms ease, visibility 300ms; }
.editorial-ready.menu-open .editorial-menu { visibility: visible; opacity: 1; transform: none; pointer-events: auto; }
.editorial-menu .site-index-item[aria-current] { color: rgba(174,174,176,.76); }
.editorial-content { display: grid; gap: clamp(64px, 7vw, 140px); container-type: inline-size; }
.editorial-group {
  display: grid; grid-template-columns: repeat(2, var(--card-width));
  gap: var(--child-card-gap); width: max-content; max-width: 100%;
}
.editorial-card.strip-card { z-index: auto; transform: none; min-width: 0; flex: none; }
.editorial-parent.strip-card { grid-column: 1 / -1; width: calc(2 * var(--card-width) + var(--child-card-gap)); height: auto; aspect-ratio: 750 / 424; }
.editorial-child.strip-card { width: var(--card-width); height: var(--card-height); }
.editorial-card .project-title { margin: 0; font-weight: 400; }
.editorial-card .project-kicker { margin-bottom: 0; }
.editorial-card.strip-card .header-copy { font-weight: 100; font-size: 12px; }
.editorial-card .project-title a { color: inherit; text-decoration: none; }
.editorial-card .project-title a:hover { color: rgba(225,225,227,.9); }
.card-arrow { font-size: .65em; }
.editorial-parent > .card-eyebrow { display: none; }
.editorial-card .news-subtitle { margin: 0; }
.editorial-card.has-image .project-kicker, .editorial-card.has-image .header-copy { z-index: 2; }
.editorial-bridge { max-width: none; }
.contact-section { margin-top: clamp(80px, 9vw, 180px); }
.contact-section .intro-home-card { margin-top: 0; max-width: 100%; opacity: 1; transform: none; filter: none; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid #e78b48; outline-offset: 5px; }
.skip-link { position: fixed; z-index: 200; left: 16px; top: -100px; padding: 14px 20px; background: #fff; color: #111; }
.skip-link:focus { top: 12px; }
/* Keep 1x cards at their original size; scale the 2x card only if space requires it. */
@container (max-width: 940px) {
  .editorial-group { grid-template-columns: minmax(0, 1fr); width: 100%; }
  .editorial-parent.strip-card { width: min(100%, calc(2 * var(--card-width) + var(--child-card-gap))); height: auto; aspect-ratio: 448 / 252; }
  .editorial-child.strip-card { max-width: 100%; }
}
@media (min-width: 2201px) {
  @container (max-width: 1550px) {
    .editorial-group { grid-template-columns: minmax(0, 1fr); width: 100%; }
    .editorial-parent.strip-card { width: min(100%, calc(2 * var(--card-width) + var(--child-card-gap))); height: auto; aspect-ratio: 750 / 424; }
  }
}
@media (max-width: 2200px) {
  .editorial-parent.strip-card { aspect-ratio: 448 / 252; }
  .editorial-menu { padding: 18px 13px 14px; }
}
@media (max-width: 1180px) {
  .editorial-parent.strip-card { aspect-ratio: 360 / 214; }
}
@media (max-width: 760px) {
  .site-card { position: relative; top: auto; left: auto; right: auto; width: calc(100% - 32px); margin: 16px 16px 0; }
  .main-stage { width: auto; margin: 0 16px; padding-top: 48px; padding-bottom: 110px; }
  .editorial-menu { position: absolute; top: 210px; left: 16px; height: 178px; width: calc(100% - 32px); }
  .admin-bar .editorial-menu { top: calc(210px + var(--wp-admin--admin-bar--height, 46px)); }
  .editorial-group { grid-template-columns: minmax(0, 1fr); width: 100%; gap: 16px; }
  .editorial-parent.strip-card { width: 100%; height: var(--card-height); aspect-ratio: auto; }
  .editorial-child.strip-card { width: 100%; height: var(--card-height); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media (prefers-reduced-motion: no-preference) {
  .editorial-card { transition: opacity 650ms ease, transform 750ms cubic-bezier(.16,1,.3,1); }
  .editorial-card.is-awaiting-reveal { opacity: 0; transform: translateY(26px); }
}

@media (max-width: 760px) {
  .editorial-card:not(.news-card) .project-kicker { margin-top: 8px; max-width: 100%; }
}

/* Explicit copy size requested for all original card surfaces. */
.site-card .header-copy, .intro-home-card .header-copy { font-size: 12px; }
@media (max-width: 760px) {
 .editorial-card.strip-card .header-copy.is-long-copy { width: calc(100% - 26px); }
}
@media (min-width: 761px) and (max-width: 1180px) {
 .editorial-card:not(.news-card) .project-kicker { margin-top: 28px; }
}
