html { font-size: 18px; }

.honesty-strip {
  margin-top: 1.15rem;
  padding: 0.95rem 1.05rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-left: 3px solid #77e4c8;
  border-radius: 12px;
  background: rgba(4, 15, 28, 0.58);
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.94rem;
  line-height: 1.55;
}

.honesty-strip strong { color: #fff; }

.hero-trust {
  position: relative;
  padding-top: 1.6rem;
}

.hero-trust::before {
  content: "DESIGN GOALS";
  position: absolute;
  top: 0;
  left: 0;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  color: rgba(255, 255, 255, 0.52);
}

.canvas-reality {
  position: absolute;
  z-index: 7;
  left: 1rem;
  right: 1rem;
  bottom: 0.9rem;
  padding: 0.62rem 0.78rem;
  border: 1px solid rgba(119, 228, 200, 0.28);
  border-radius: 10px;
  background: rgba(5, 16, 30, 0.88);
  color: rgba(255,255,255,.8);
  font-size: 0.72rem;
  line-height: 1.4;
  backdrop-filter: blur(10px);
}

.canvas-reality strong { color: #a8f1dd; }

.power-section { scroll-margin-top: 6rem; }

.status-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(244,248,251,.96), rgba(234,242,247,.98));
}

.status-section::before {
  content: "";
  position: absolute;
  width: 34rem;
  height: 34rem;
  right: -14rem;
  top: -18rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(35, 151, 138, .12), transparent 68%);
  pointer-events: none;
}

.status-head {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(17rem, .65fr);
  gap: 2rem;
  align-items: end;
  margin-bottom: 2rem;
}

.status-summary {
  padding: 1.2rem 1.3rem;
  border: 1px solid rgba(12, 42, 62, .12);
  border-radius: 16px;
  background: rgba(255,255,255,.7);
  box-shadow: 0 16px 45px rgba(10, 42, 61, .08);
}

.status-summary-top {
  display: flex;
  gap: .65rem;
  align-items: center;
  margin-bottom: .5rem;
}

.status-summary-top strong { font-size: 1.45rem; color: #0c293b; }
.status-summary p { margin: 0; color: #506875; font-size: .88rem; line-height: 1.5; }

.gate-overall {
  display: inline-flex;
  align-items: center;
  padding: .32rem .55rem;
  border-radius: 999px;
  background: #fff1db;
  border: 1px solid #efc67d;
  color: #76510b;
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .1em;
}

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

.gate-card {
  display: grid;
  grid-template-columns: 2.4rem minmax(0, 1fr) auto;
  gap: .8rem;
  align-items: center;
  padding: .95rem 1rem;
  border: 1px solid rgba(14, 49, 69, .11);
  border-radius: 14px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 8px 24px rgba(11, 42, 60, .05);
}

.gate-letter {
  display: grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 10px;
  background: #0c293b;
  color: white;
  font-weight: 800;
}

.gate-copy strong { display: block; color: #102d3e; font-size: .9rem; line-height: 1.25; }
.gate-copy small { display: block; margin-top: .16rem; color: #69808c; font-size: .7rem; line-height: 1.35; }

.gate-state {
  min-width: 4.55rem;
  text-align: center;
  padding: .32rem .52rem;
  border-radius: 999px;
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .08em;
}

.gate-state.pass { background: #e3f7ef; border: 1px solid #9ed9c7; color: #176553; }
.gate-state.pending { background: #fff1db; border: 1px solid #efc67d; color: #76510b; }
.gate-card.pending { border-color: rgba(222, 159, 45, .35); background: #fffbf4; }

.status-evidence {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem 1.2rem;
  align-items: center;
  margin-top: 1.1rem;
  padding: 1rem 1.1rem;
  border-radius: 14px;
  background: #0b2333;
  color: rgba(255,255,255,.72);
  font-size: .76rem;
  line-height: 1.5;
}

.status-evidence strong { color: #fff; }
.status-evidence a { color: #9fe8d4; font-weight: 700; text-decoration: none; }
.status-evidence a:hover { text-decoration: underline; }

.spec-section { background: #07131f; color: #fff; }
.spec-section .section-intro h2,
.spec-section .section-intro p { color: inherit; }
.spec-section .section-intro > p:last-child { color: rgba(255,255,255,.68); }

.artifact-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1rem;
  margin-top: 2rem;
}

.artifact-card {
  display: flex;
  flex-direction: column;
  min-height: 13rem;
  padding: 1.3rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: rgba(255,255,255,.055);
  text-decoration: none;
  color: #fff;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.artifact-card:hover { transform: translateY(-3px); border-color: rgba(119,228,200,.5); background: rgba(255,255,255,.08); }
.artifact-card span { color: #79dfc3; font-size: .64rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.artifact-card strong { margin: .75rem 0 .5rem; font-size: 1.02rem; line-height: 1.35; }
.artifact-card p { margin: 0; color: rgba(255,255,255,.62); font-size: .78rem; line-height: 1.55; }
.artifact-card small { margin-top: auto; padding-top: 1.2rem; color: rgba(255,255,255,.45); font-size: .66rem; word-break: break-word; }

.repo-disclosure {
  margin-top: 1rem;
  padding: .9rem 1rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 12px;
  color: rgba(255,255,255,.7);
  font-size: .78rem;
  line-height: 1.55;
}
.repo-disclosure strong { color: #fff; }

.project-section { background: #f7f9fa; }
.project-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 2.2rem; align-items: start; }
.project-facts { display: grid; gap: .75rem; }
.project-fact { padding: 1rem 1.1rem; border: 1px solid rgba(14,49,69,.1); border-radius: 14px; background: #fff; }
.project-fact span { display:block; color:#708590; font-size:.65rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.project-fact strong { display:block; margin-top:.32rem; color:#102d3e; font-size:.9rem; line-height:1.4; }
.project-note { margin-top: 1rem; padding: 1rem 1.1rem; border-left: 3px solid #23978a; background: #eef7f5; color: #355967; font-size: .8rem; line-height: 1.6; }

.join-actions .join-tertiary { display: inline-block; margin-top: .7rem; color: rgba(255,255,255,.78); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

.footer-artifacts { display:flex; flex-wrap:wrap; gap:.55rem 1rem; margin-top:.6rem; }
.footer-artifacts a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.footer-repo-state { opacity: .72; }

.primary-nav a[aria-current="page"],
.footer-links a[aria-current="page"] { color: #fff; }
.primary-nav a[aria-current="page"] { position: relative; }
.primary-nav a[aria-current="page"]::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -8px;
  height: 2px;
  border-radius: 999px;
  background: #77e4c8;
}

.about-hero {
  position: relative;
  overflow: hidden;
  min-height: 760px;
  padding: 162px 0 96px;
  color: #fff;
  background:
    radial-gradient(circle at 72% 28%, rgba(44,108,255,.16), transparent 32%),
    linear-gradient(150deg, #06101e 0%, #0a1830 54%, #07121f 100%);
}

.about-hero-layout {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(430px, .88fr);
  gap: 5rem;
  align-items: center;
}

.about-hero-copy h1 {
  margin: 0;
  max-width: 760px;
  font-size: clamp(3.15rem, 6vw, 5.7rem);
  line-height: .96;
  letter-spacing: -.06em;
  font-weight: 650;
}

.about-hero-lede {
  max-width: 720px;
  margin: 1.5rem 0 0;
  color: rgba(255,255,255,.72);
  font-size: 1.08rem;
}

.about-boundary-mini {
  margin-top: 2rem;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(119,228,200,.25);
  border-left: 3px solid #77e4c8;
  border-radius: 14px;
  background: rgba(5,16,30,.58);
}
.about-boundary-mini span { display:block; margin-bottom:.3rem; color:#95e8d6; font-size:.64rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.about-boundary-mini strong { display:block; font-size:.92rem; line-height:1.5; }

.name-equation {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: .8rem;
  align-items: stretch;
  padding: 1rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 24px;
  background: rgba(255,255,255,.055);
  box-shadow: 0 28px 80px rgba(0,0,0,.24);
  backdrop-filter: blur(18px);
}

.name-term {
  min-height: 15rem;
  padding: 1.2rem;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 17px;
  background: rgba(4,14,27,.58);
}
.name-greek { display:block; margin-bottom:.8rem; font-family: Georgia, serif; font-size:2.5rem; color:#fff; }
.name-term small, .name-result small { display:block; color:#77e4c8; font-size:.62rem; font-weight:800; letter-spacing:.15em; }
.name-term strong { display:block; margin:.42rem 0 .55rem; font-size:1rem; }
.name-term p { margin:0; color:rgba(255,255,255,.58); font-size:.78rem; line-height:1.55; }
.name-operator { display:grid; place-items:center; color:rgba(255,255,255,.35); font-size:1.4rem; }
.name-result { grid-column:1 / -1; padding:1rem 1.1rem; border-radius:14px; background:linear-gradient(90deg, rgba(35,151,138,.17), rgba(44,108,255,.12)); border:1px solid rgba(119,228,200,.2); }
.name-result strong { display:block; margin:.3rem 0 .15rem; font-size:1.25rem; }
.name-result span { color:rgba(255,255,255,.62); font-size:.74rem; }

.name-section { background:#f4f7fb; }
.meaning-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; }
.meaning-card { position:relative; padding:1.7rem; border:1px solid rgba(14,49,69,.1); border-radius:22px; background:#fff; box-shadow:0 14px 42px rgba(11,42,60,.055); }
.meaning-number { position:absolute; top:1.2rem; right:1.35rem; color:#c9d5db; font-size:.72rem; font-weight:800; letter-spacing:.12em; }
.meaning-card h3 { margin:.2rem 0 1rem; max-width:520px; color:#102d3e; font-size:1.45rem; line-height:1.18; letter-spacing:-.025em; }
.meaning-card > p:not(.eyebrow) { color:#58707c; font-size:.88rem; line-height:1.65; }
.meaning-list { display:grid; gap:.45rem; margin-top:1.1rem; }
.meaning-list span { position:relative; padding:.62rem .75rem .62rem 1.7rem; border-radius:10px; background:#f5f9fa; color:#31505f; font-size:.76rem; }
.meaning-list span::before { content:""; position:absolute; left:.72rem; top:50%; width:6px; height:6px; border-radius:50%; background:#23978a; transform:translateY(-50%); }

.boundary-section { padding-top:0; background:#f4f7fb; }
.boundary-card { position:relative; overflow:hidden; padding:clamp(2rem,5vw,4.5rem); border-radius:30px; color:#fff; background:linear-gradient(145deg,#07131f,#0d2331); box-shadow:0 26px 80px rgba(9,34,50,.14); }
.boundary-card::after { content:""; position:absolute; width:24rem; height:24rem; right:-9rem; top:-10rem; border-radius:50%; background:radial-gradient(circle,rgba(119,228,200,.18),transparent 68%); }
.boundary-card blockquote { position:relative; z-index:1; margin:.4rem 0 1.25rem; max-width:920px; font-size:clamp(2.3rem,5vw,4.8rem); line-height:1; letter-spacing:-.055em; font-weight:650; }
.boundary-card > p:not(.eyebrow) { position:relative; z-index:1; max-width:880px; margin:0; color:rgba(255,255,255,.67); font-size:.95rem; line-height:1.65; }
.boundary-flow { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; margin-top:2rem; }
.boundary-flow span, .boundary-flow strong { padding:.62rem .75rem; border-radius:10px; font-size:.72rem; }
.boundary-flow span { border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:rgba(255,255,255,.74); }
.boundary-flow strong { border:1px solid rgba(119,228,200,.25); background:rgba(119,228,200,.11); color:#c7f7eb; }
.boundary-flow i { color:rgba(255,255,255,.32); font-style:normal; }

.building-section { background:#fff; }
.building-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.building-card { min-height:17rem; padding:1.35rem; border:1px solid rgba(14,49,69,.1); border-radius:18px; background:#f8fafb; }
.building-card > span { color:#23978a; font-size:.66rem; font-weight:800; letter-spacing:.13em; }
.building-card h3 { margin:2.2rem 0 .7rem; color:#102d3e; font-size:1.08rem; }
.building-card p { margin:0; color:#607783; font-size:.78rem; line-height:1.6; }

.today-section { background:linear-gradient(180deg,#eef5f6,#f7f9fa); }
.today-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.7fr); gap:2.5rem; align-items:center; }
.today-panel { padding:1.6rem; border:1px solid rgba(14,49,69,.1); border-radius:22px; background:#fff; box-shadow:0 18px 52px rgba(11,42,60,.07); }
.today-stage { display:inline-flex; padding:.34rem .52rem; border-radius:999px; background:#e4f4f0; color:#176553; font-size:.62rem; font-weight:800; letter-spacing:.1em; }
.today-panel h3 { margin:1rem 0 .6rem; color:#102d3e; font-size:1.65rem; letter-spacing:-.03em; }
.today-panel p { margin:0; color:#5f7580; font-size:.84rem; line-height:1.6; }
.today-actions { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1.25rem; }
.today-actions .button-secondary { border:1px solid rgba(14,49,69,.12); background:#f4f7f8; color:#173747; }
.about-join { position:relative; }

@media (max-width: 1120px) {
  .about-hero-layout { grid-template-columns:1fr; gap:3rem; }
  .name-equation { max-width:760px; }
  .building-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 980px) {
  .status-head, .project-layout, .today-layout { grid-template-columns: 1fr; }
  .artifact-grid { grid-template-columns: 1fr 1fr; }
  .meaning-grid { grid-template-columns:1fr; }
}

@media (max-width: 680px) {
  .gate-grid, .artifact-grid, .building-grid { grid-template-columns: 1fr; }
  .gate-card { grid-template-columns: 2.15rem minmax(0,1fr); }
  .gate-state { grid-column: 2; justify-self: start; }
  .canvas-reality { position: relative; left: auto; right: auto; bottom: auto; margin: .8rem; }
  .about-hero { padding-top:130px; }
  .name-equation { grid-template-columns:1fr; }
  .name-operator { min-height:2rem; }
  .name-result { grid-column:auto; }
  .boundary-flow { align-items:stretch; }
  .boundary-flow i { display:none; }
  .boundary-flow span, .boundary-flow strong { width:100%; }
}
