/* September 5, 2026 public catch-up layer.
   Keep this explicit so the original visual redesign stays intact. */

.status-note {
  margin: 2.5rem 0 3rem;
  padding: clamp(1.25rem, 3vw, 2.25rem);
  border: 1px solid var(--line);
  border-left: 2px solid var(--blood-bright);
  background: linear-gradient(90deg, var(--blood-wash), transparent 78%);
}
.status-note .eyebrow { margin-top: 0; }
.status-note p:last-child { margin-bottom: 0; }

.mission-statement {
  margin-top: clamp(2rem, 4vw, 3.5rem);
  padding: clamp(1.4rem, 3vw, 2.4rem);
  border: 1px solid var(--line);
  background: rgba(255,255,255,.012);
}
.mission-statement strong {
  display: block;
  margin-bottom: .65rem;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(1.35rem, 2.7vw, 2.25rem);
  font-weight: 400;
  line-height: 1.3;
}
.mission-statement p { margin: .45rem 0 0; }

.inline-note {
  margin: 2rem 0;
  padding: 1.15rem 1.35rem;
  border-left: 2px solid var(--blood-bright);
  background: var(--blood-wash);
  color: #d7ceca;
  font-size: .9rem;
  line-height: 1.75;
}

.journal-showcase-slot {
  min-height: clamp(18rem, 42vw, 34rem);
  margin: 2.5rem 0 3rem;
  display: grid;
  place-items: center;
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px dashed rgba(255,255,255,.24);
  background:
    radial-gradient(circle at 50% 45%, rgba(189,58,78,.08), transparent 58%),
    rgba(255,255,255,.012);
  text-align: center;
}
.journal-showcase-slot > div { max-width: 34rem; }
.journal-showcase-slot span {
  display: block;
  margin-bottom: .75rem;
  color: var(--blood-bright);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.journal-showcase-slot strong {
  display: block;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(1.55rem, 3vw, 2.6rem);
  font-weight: 400;
  line-height: 1.25;
}
.journal-showcase-slot small {
  display: block;
  margin-top: .8rem;
  color: var(--muted);
  font-size: .76rem;
  line-height: 1.7;
}

/* Site information architecture */
.site-header nav a[aria-current="page"] { color: var(--ink); }
.home-mission {
  max-width: 48rem;
  margin: 1.8rem 0 0;
  padding: 1.35rem 0 0;
  border-top: 1px solid var(--line);
  color: #d6d0cd;
  font-size: clamp(.98rem, 1.4vw, 1.12rem);
  line-height: 1.75;
}
.home-mission strong { color: var(--ink); }

.section-nav {
  position: sticky;
  top: 4.5rem;
  z-index: 15;
  border-top: 1px solid var(--soft-line);
  border-bottom: 1px solid var(--line);
  background: rgba(7,7,8,.94);
  backdrop-filter: blur(16px);
}
.section-nav-inner {
  max-width: 110rem;
  margin: 0 auto;
  padding: 0 clamp(1.5rem, 6vw, 6rem);
  display: flex;
  gap: clamp(1rem, 3vw, 2.5rem);
  overflow-x: auto;
  scrollbar-width: none;
  white-space: nowrap;
}
.section-nav-inner::-webkit-scrollbar { display: none; }
.section-nav a {
  flex: 0 0 auto;
  padding: .95rem 0;
  color: var(--dim);
  text-decoration: none;
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.section-nav a:hover,
.section-nav a:focus-visible { color: var(--ink); }

.page-block {
  max-width: 110rem;
  margin: 0 auto;
  padding: clamp(5rem, 10vw, 10rem) clamp(1.5rem, 6vw, 6rem);
  border-bottom: 1px solid var(--line);
  scroll-margin-top: 8rem;
}
.page-block > .eyebrow { margin-bottom: 1.5rem; }
.page-block > h2 {
  max-width: 14ch;
  font-size: clamp(3rem, 7vw, 7rem);
}
.block-lead {
  max-width: 54rem;
  margin: 2rem 0 0;
  color: var(--ink);
  font-size: clamp(1.25rem, 2.4vw, 2rem);
  line-height: 1.5;
}
.block-copy {
  max-width: 50rem;
  margin-top: 2rem;
  color: var(--muted);
  font-size: clamp(1.02rem, 1.45vw, 1.2rem);
  line-height: 1.85;
}
.block-copy p { margin: 0 0 1.35rem; }

.people-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: clamp(3rem, 7vw, 6rem);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.person-card {
  position: relative;
  min-height: 34rem;
  padding: clamp(2rem, 5vw, 4.5rem);
  display: flex;
  flex-direction: column;
}
.person-card:first-child { border-right: 1px solid var(--line); }
.person-card small {
  color: var(--blood-bright);
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.person-card h2 {
  margin: auto 0 1.25rem;
  max-width: none;
  font-size: clamp(3.7rem, 8vw, 7rem);
}
.person-card .role {
  margin: 0 0 1.5rem;
  color: var(--ink);
  font-size: clamp(1.05rem, 1.7vw, 1.3rem);
}
.person-card p:not(.role) {
  max-width: 38rem;
  margin: 0 0 1rem;
  color: var(--muted);
  line-height: 1.75;
}
.person-card a {
  width: fit-content;
  margin-top: 1rem;
  color: var(--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--line);
  padding-bottom: .35rem;
}

.about-section {
  display: grid;
  grid-template-columns: minmax(3rem, 8rem) minmax(0, 58rem);
  gap: clamp(2rem, 7vw, 8rem);
  align-items: start;
}
.about-section + .about-section { margin-top: clamp(6rem, 12vw, 12rem); }
.about-index {
  color: var(--dim);
  font-size: .68rem;
  letter-spacing: .2em;
}
.about-section h2 { max-width: 14ch; }
.about-section .lead {
  margin: 2rem 0 0;
  color: var(--ink);
  font-size: clamp(1.25rem, 2.2vw, 1.9rem);
  line-height: 1.5;
}
.about-section p:not(.eyebrow):not(.lead) {
  max-width: 50rem;
  color: var(--muted);
  font-size: clamp(1.02rem, 1.4vw, 1.18rem);
  line-height: 1.85;
}
.about-section blockquote {
  margin: 3.5rem 0 0;
  padding-left: 2rem;
  border-left: 1px solid var(--ink);
}
.about-section blockquote p {
  color: var(--ink) !important;
  font-size: clamp(1.4rem, 2.7vw, 2.4rem) !important;
  line-height: 1.45 !important;
}

.mission-essay {
  position: relative;
  overflow: hidden;
  background: radial-gradient(circle at 85% 15%, rgba(189,58,78,.08), transparent 30rem);
}
.mission-essay::after {
  content: "";
  position: absolute;
  width: min(42rem, 65vw);
  aspect-ratio: 1;
  right: -18rem;
  top: 6rem;
  border: 1px solid var(--soft-line);
  border-radius: 50%;
  pointer-events: none;
}
.mission-essay .essay-shell { position: relative; z-index: 1; max-width: 62rem; }
.mission-essay .essay-lead {
  margin: 2.5rem 0 0;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(1.7rem, 3.4vw, 3.2rem);
  line-height: 1.4;
}
.mission-essay p:not(.eyebrow):not(.essay-lead) {
  max-width: 54rem;
  color: var(--muted);
  font-size: clamp(1.04rem, 1.5vw, 1.22rem);
  line-height: 1.9;
}
.mission-principles {
  margin: clamp(4rem, 8vw, 7rem) 0;
  border-top: 1px solid var(--line);
}
.mission-principles p {
  margin: 0 !important;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--soft-line);
  color: var(--ink) !important;
  font-size: clamp(1.15rem, 2vw, 1.6rem) !important;
  line-height: 1.5 !important;
}
.mission-ending {
  margin-top: clamp(5rem, 9vw, 9rem);
  color: var(--ink);
  font-size: clamp(2.3rem, 6vw, 6rem);
  line-height: 1.02;
  letter-spacing: -.04em;
}

.press-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: clamp(3rem, 6vw, 5rem);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.press-fact {
  min-height: 18rem;
  padding: clamp(1.75rem, 4vw, 3.5rem);
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.press-fact small {
  display: block;
  color: var(--blood-bright);
  font-size: clamp(1.05rem, 1.7vw, 1.5rem);
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1.2;
  text-transform: uppercase;
}
.press-fact small::after { content: " ="; }
.press-fact h3 { margin: 2.5rem 0 1rem; }
.press-fact p { color: var(--muted); line-height: 1.75; }

.boundary-list {
  margin-top: 3rem;
  border-top: 1px solid var(--line);
}
.boundary-list p {
  margin: 0;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--soft-line);
  color: var(--muted);
  line-height: 1.7;
}
.boundary-list strong { color: var(--ink); }

.contact-shell {
  display: grid;
  grid-template-columns: minmax(0, 35rem) minmax(0, 1fr);
  gap: clamp(3rem, 8vw, 10rem);
  margin-top: clamp(3rem, 7vw, 6rem);
  align-items: start;
}
.contact-intro p {
  color: var(--muted);
  font-size: clamp(1rem, 1.4vw, 1.15rem);
  line-height: 1.85;
}
.contact-intro strong { color: var(--ink); }
.contact-form {
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid var(--line);
  background: rgba(255,255,255,.012);
}
.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.4rem;
}
.form-field { min-width: 0; }
.form-field.full { grid-column: 1 / -1; }
.contact-form label {
  display: block;
  margin-bottom: .55rem;
  color: var(--muted);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.contact-form input,
.contact-form textarea,
.contact-form select {
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  color: var(--ink);
  font: inherit;
  padding: .8rem 0;
  outline: none;
}
.contact-form textarea {
  min-height: 11rem;
  resize: vertical;
  line-height: 1.6;
}
.contact-form select { color-scheme: dark; }
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus { border-bottom-color: var(--ink); }
.contact-form button {
  margin-top: 1.75rem;
  border: 1px solid var(--ink);
  background: var(--ink);
  color: var(--black);
  font: inherit;
  font-weight: 800;
  padding: .95rem 1.2rem;
  cursor: pointer;
}
.form-note {
  margin: 1rem 0 0;
  color: var(--dim);
  font-size: .76rem;
  line-height: 1.65;
}
.contact-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

/* Sitewide copyright / use notice. */
footer {
  flex-wrap: wrap;
  align-items: center;
}
footer::before {
  content: "COPYRIGHT ENFORCEMENT NOTICE · ALL RIGHTS RESERVED";
  order: 10;
  flex: 0 0 100%;
  margin-top: 1.35rem;
  padding-top: 1.4rem;
  border-top: 1px solid rgba(189,58,78,.45);
  color: var(--blood-bright);
  font-size: clamp(.68rem, .82vw, .82rem);
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 1.5;
  text-transform: uppercase;
}
footer::after {
  content: "© 2026 BESIDE · MIRA + MIA. Original text, visual design, screenshots, archives, software documentation, and other original material on this site are protected by United States copyright law. Unauthorized reproduction, republication, redistribution, public display, modification, or preparation of derivative works, including automated extraction that reproduces protected expression, may constitute copyright infringement except as permitted by law. Enforcement may include injunctive relief and monetary remedies under 17 U.S.C. §§ 106 and 501–505. Removal or alteration of copyright-management information may implicate 17 U.S.C. § 1202. No license to reproduce, redistribute, or republish protected material is granted merely by accessing this site. Nothing in this notice limits fair use or other rights provided by law.";
  order: 11;
  flex: 0 0 100%;
  max-width: 92rem;
  margin-top: .75rem;
  color: #a9a0a4;
  font-size: clamp(.62rem, .72vw, .74rem);
  font-weight: 500;
  letter-spacing: .035em;
  line-height: 1.8;
  text-transform: none;
}

@media (max-width: 800px) {
  .people-grid,
  .press-facts,
  .contact-shell { grid-template-columns: 1fr; }
  .person-card { min-height: 25rem; }
  .person-card:first-child { border-right: 0; border-bottom: 1px solid var(--line); }
  .about-section { grid-template-columns: 1fr; gap: 1.5rem; }
  .form-grid { grid-template-columns: 1fr; }
  .form-field.full { grid-column: auto; }
}

@media (max-width: 700px) {
  .site-header {
    gap: 1rem;
    overflow: hidden;
  }
  .site-header nav {
    flex: 1 1 auto;
    justify-content: flex-start;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    white-space: nowrap;
  }
  .site-header nav::-webkit-scrollbar { display: none; }
  .site-header nav a,
  .site-header nav a:nth-child(n) {
    display: block !important;
    flex: 0 0 auto;
  }
  .section-nav { top: 4.5rem; }
  .section-nav-inner { padding-left: 1.25rem; padding-right: 1.25rem; }
  footer::before { letter-spacing: .11em; }
  footer::after { line-height: 1.7; }
}

@media (max-width: 390px) {
  .site-header nav a,
  .site-header nav a:nth-child(n) {
    display: block !important;
  }
}