:root{--ink:#162d34;--deep:#0d4651;--blue:#a9d3dc;--blue-pale:#dfeff0;--gold:#e5b849;--cream:#fbf5df;--paper:#fffaf0;--sage:#8ea99b;
      --line:rgba(22,45,52,.17);--serif:Georgia,"Times New Roman",serif;--sans:Inter,Avenir,"Segoe UI",sans-serif}*{box-sizing:border-box}
html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}
button,input,textarea,select{font:inherit;color:inherit}
.save-state{display:flex;align-items:center;gap:.45rem;color:#547078;font-size:.75rem}.save-dot{width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 4px rgba(142,169,155,.15)}
.hero{min-height:calc(100vh - 70px);position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;padding:clamp(5rem,10vw,9rem) clamp(1.4rem,8vw,8rem);background:radial-gradient(circle at 78% 30%,rgba(169,211,220,.72),transparent 29rem),linear-gradient(135deg,var(--cream),#f8edc8 52%,#edf6f3)}
.hero:after{content:"";position:absolute;inset:auto -8% -42% 15%;height:65%;border:1px solid rgba(13,70,81,.15);border-radius:50%;transform:rotate(-6deg);z-index:-1}
.hero-grain{position:absolute;inset:0;opacity:.14;z-index:-1;background-image:radial-gradient(#153f48 .7px,transparent .7px);background-size:10px 10px;mask-image:linear-gradient(90deg,#000,transparent 70%)}.eyebrow{margin:0 0 .7rem;color:#48717a;font-size:.7rem;font-weight:900;letter-spacing:.19em;text-transform:uppercase}.hero h1,.manifesto blockquote,.comparison-break h2,.atlas h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}.hero h1{max-width:700px;margin:.2rem 0 1.3rem;font-size:clamp(4rem,8vw,8rem);line-height:.85}.hero h1 em{display:block;color:var(--deep);font-weight:700}.lead{max-width:650px;margin:0;color:#405d64;font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.55}.hero-actions{display:flex;align-items:center;gap:1.4rem;margin-top:2rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;padding:.85rem 1.15rem;border:0;border-radius:4px;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-2px)}.primary{color:#fff;background:var(--deep);box-shadow:7px 7px 0 var(--gold)}.text-link{font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.permission{max-width:590px;margin-top:3rem;padding-top:1.2rem;border-top:1px solid var(--line);color:#587078;font-size:.83rem}.permission span{display:inline-grid;place-items:center;width:27px;height:27px;margin-right:.55rem;border:1px solid #779aa0;border-radius:50%}.hero-art{position:relative;min-height:480px;display:grid;place-items:center}.orbit-mark{width:min(100%,520px);overflow:visible}.wash{fill:rgba(255,250,240,.64);stroke:rgba(13,70,81,.12);stroke-width:2}.orbit{fill:none;stroke:var(--deep);stroke-width:1.4;stroke-dasharray:5 9}.two{stroke:var(--gold)}.three{stroke:var(--sage)}.compass{fill:var(--deep);opacity:.88}.core,.dot{fill:var(--cream);stroke:var(--deep);stroke-width:4}.dot{fill:var(--blue-pale);stroke-width:2}.dot.gold{fill:var(--gold)}.art-note{position:absolute;padding:.4rem .7rem;background:var(--paper);border:1px solid var(--line);font-family:var(--serif);font-style:italic;font-size:.8rem;box-shadow:4px 4px 0 rgba(13,70,81,.1);transform:rotate(-4deg)}.note-one{left:0;top:24%}.note-two{right:0;bottom:24%;transform:rotate(4deg)}
.manifesto{padding:clamp(5rem,9vw,9rem) clamp(1.4rem,12vw,13rem);background:var(--deep);color:#f8f3df}
.manifesto .eyebrow{color:var(--blue)}
.manifesto blockquote{max-width:950px;margin:0 0 3rem;font-size:clamp(2.2rem,4.4vw,4.6rem);line-height:1.13}

.manifesto-grid{max-width:870px;margin-left:auto;display:grid;grid-template-columns:1fr 1fr;gap:3rem;color:#c9dadd}
.journey{padding:clamp(5rem,9vw,9rem) clamp(1.4rem,8vw,8rem);background:var(--paper)}
.section-head{max-width:1200px;margin:0 auto 5rem;display:flex;justify-content:space-between;align-items:end;gap:2rem}
.section-head h2{max-width:720px;margin:0;font-family:var(--serif);font-size:clamp(2.6rem,5vw,5rem);font-weight:400;line-height:1.05}
.progress-copy{white-space:nowrap;color:#668086;font-size:.8rem}.progress-copy strong{color:var(--deep);font-size:1.6rem}
.chapter-list{max-width:1200px;margin:auto;border-top:1px solid var(--line)}
.chapter{display:grid;grid-template-columns:150px 1fr;border-bottom:1px solid var(--line);padding:4rem 0}.chapter-side{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.chapter-number{color:#729098;font-family:var(--serif);font-size:1rem}.chapter-symbol{display:grid;place-items:center;width:64px;height:64px;color:var(--deep);border:1px solid var(--deep);border-radius:50%;font-size:1.6rem}.chapter-body{display:grid;grid-template-columns:.65fr 1.35fr;column-gap:4rem}.kicker{grid-column:1/-1;margin:0;color:#618087;font-size:.7rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.chapter h3{margin:.25rem 0;font-family:var(--serif);font-size:clamp(3.2rem,6vw,6rem);font-weight:400;line-height:1}.chapter-intro{max-width:330px;color:#577078}.prompts{display:grid;gap:2rem}.prompt span{display:block;margin-bottom:.7rem;font-family:var(--serif);font-size:1.1rem;font-weight:700;line-height:1.35}.prompt textarea,.coordinate textarea,.builder-form input,.builder-form select{width:100%;border:0;border-bottom:1px solid #9ab1b5;border-radius:0;background:transparent;padding:.7rem .1rem;outline:0;resize:vertical}.prompt textarea:focus,.coordinate textarea:focus,.builder-form input:focus,.builder-form select:focus{border-color:var(--deep);box-shadow:0 2px 0 var(--gold)}::placeholder{color:#8c9c9d}
.comparison-break{position:relative;overflow:hidden;padding:clamp(6rem,11vw,11rem) clamp(1.4rem,12vw,13rem);background:var(--blue);color:var(--ink)}
.comparison-break h2{position:relative;z-index:2;max-width:950px;margin:.4rem 0 1.5rem;font-size:clamp(3.4rem,7vw,7.8rem);line-height:.93}.comparison-break h2 em{color:var(--deep)}.comparison-break>p:last-child{position:relative;z-index:2;max-width:690px;margin-left:auto;font-size:1.05rem}.constellation{position:absolute;inset:8% 4% auto 48%;height:260px;opacity:.35}.constellation svg{position:absolute;inset:0;width:100%;height:100%}.constellation path{fill:none;stroke:var(--deep);stroke-width:1;stroke-dasharray:5 8}.constellation i{position:absolute;width:13px;height:13px;border-radius:50%;background:var(--paper);border:2px solid var(--deep)}.constellation i:nth-child(1){left:6%;top:74%}.constellation i:nth-child(2){left:27%;top:30%}.constellation i:nth-child(3){left:49%;top:67%}.constellation i:nth-child(4){left:69%;top:15%}.constellation i:nth-child(5){right:5%;top:56%}
.atlas{padding:clamp(5rem,9vw,9rem) clamp(1.4rem,8vw,8rem);background:#f7f0d8}.atlas-intro{max-width:880px;margin-bottom:4rem}.atlas-intro h2{margin:.3rem 0 1rem;font-size:clamp(3rem,6vw,6.5rem);line-height:.95}.atlas-intro>p:last-child{max-width:630px;color:#5c7478}.coordinate-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.coordinate{grid-column:span 2;min-height:250px;padding:1.4rem;border:1px solid var(--line);background:rgba(255,250,240,.64)}.coordinate:nth-child(4),.coordinate:nth-child(5){grid-column:span 3}.coordinate>span{display:block;color:var(--deep);font-family:var(--serif);font-size:1.35rem;font-weight:700}.coordinate small{display:block;min-height:48px;margin:.35rem 0 1.2rem;color:#718588;line-height:1.4}.coordinate textarea{min-height:100px}.timeline-builder{margin-top:5rem;padding-top:4rem;border-top:1px solid var(--line)}.builder-head{display:flex;justify-content:space-between;align-items:end;gap:2rem}.builder-head h3{margin:0;font-family:var(--serif);font-size:clamp(2.5rem,5vw,5rem);font-weight:400}.builder-head>p{color:#6d8184}.builder-form{display:grid;grid-template-columns:.65fr 1.2fr 1.2fr 1.2fr auto;gap:1rem;align-items:end;margin:2rem 0 4rem}.builder-form label span{display:block;margin-bottom:.3rem;color:#5c7478;font-size:.68rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.builder-form .add{min-height:48px}.milestone-track{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.milestone-track:before{content:"";position:absolute;left:0;right:0;top:24px;border-top:1px dashed var(--deep);opacity:.35}.empty{grid-column:1/-1;position:relative;z-index:1;min-height:180px;display:grid;place-items:center;text-align:center;border:1px dashed #8ea4a4;background:rgba(255,250,240,.4);color:#667b7e}.empty span{display:grid;place-items:center;width:48px;height:48px;margin:auto;border-radius:50%;background:var(--deep);color:#fff;font-size:1.5rem}.milestone{position:relative;z-index:1;margin-top:22px;padding:1.4rem;background:var(--paper);border-top:4px solid var(--deep);box-shadow:0 12px 30px rgba(22,45,52,.08)}.milestone button{position:absolute;right:1rem;top:1rem;border:0;background:transparent;cursor:pointer}.milestone-index{display:inline-grid;place-items:center;width:38px;height:38px;margin-top:-40px;border-radius:50%;background:var(--gold);font-size:.75rem;font-weight:900}.milestone small{display:block;margin-top:1rem;color:#678084;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.milestone h4{margin:.4rem 0 1rem;font-family:var(--serif);font-size:1.5rem}.milestone p{font-size:.85rem}.closing-card{margin-top:7rem;padding:3rem;display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;background:var(--deep);color:#f8f2df}.closing-symbol{font-size:3rem;color:var(--gold)}.closing-card .eyebrow{color:var(--blue)}.closing-card h2{margin:.2rem 0;font-size:clamp(2.3rem,4vw,4rem)}.closing-card p{max-width:650px;color:#c7dadb}.button.dark{background:var(--gold);color:var(--ink);white-space:nowrap}footer{padding:2rem clamp(1.4rem,8vw,8rem);display:flex;justify-content:space-between;gap:1.5rem;align-items:center;background:#082f38;color:#d8e5e3;font-size:.78rem}footer span{font-family:var(--serif);font-size:1rem;color:var(--gold)}footer a{color:inherit}
@media(max-width:1000px){.hero{grid-template-columns:1fr}.hero-art{min-height:360px;max-width:520px;margin:auto}.chapter-body{grid-template-columns:1fr}.prompts{margin-top:2rem}.coordinate-grid{grid-template-columns:1fr 1fr}.coordinate,.coordinate:nth-child(4),.coordinate:nth-child(5){grid-column:auto}.builder-form{grid-template-columns:1fr 1fr}.builder-form .add{grid-column:1/-1}.milestone-track{grid-template-columns:1fr 1fr}}@media(max-width:700px){.save-state{font-size:0}.hero{padding-top:4rem}.hero h1{font-size:clamp(3.8rem,18vw,6rem)}.hero-art{min-height:290px}.manifesto-grid{grid-template-columns:1fr;gap:.5rem}.section-head{align-items:flex-start;flex-direction:column}.chapter{grid-template-columns:60px 1fr;padding:3rem 0}.chapter-symbol{width:42px;height:42px}.coordinate-grid,.builder-form,.milestone-track{grid-template-columns:1fr}.builder-form .add{grid-column:auto}.builder-head{align-items:flex-start;flex-direction:column}.closing-card{grid-template-columns:1fr}.closing-symbol{display:none}footer{align-items:flex-start;flex-direction:column}.comparison-break>p:last-child{margin-left:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* ================================================================
   WONDER VERSE — SHARED LOGO AND NAVIGATION
   This is intentionally last so page styles cannot override it.
   ================================================================ */
:root {
  --wv-nav-ink: #18293f;
  --wv-nav-teal: #1f5a63;
  --wv-nav-gold: #e7bd4d;
  --wv-nav-paper: #fffaf0;
  --wv-nav-line: rgba(24, 41, 63, 0.13);
  --wv-nav-shadow: 0 18px 50px rgba(18, 38, 52, 0.13);
}

.wv-header,
.wv-header * {
  box-sizing: border-box;
}

.wv-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  width: 100%;
  color: var(--wv-nav-ink);
  background: rgba(255, 250, 240, 0.93);
  border-bottom: 1px solid var(--wv-nav-line);
  box-shadow: 0 5px 22px rgba(18, 38, 52, 0.045);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.wv-nav {
  width: min(1240px, calc(100% - 36px));
  min-height: 82px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: clamp(18px, 2.7vw, 38px);
}

.wv-brand {
  min-width: max-content;
  margin-right: auto;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--wv-nav-ink);
  text-decoration: none;
}

.wv-brand-image-wrap {
  position: relative;
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  display: grid;
  place-items: center;
}

.wv-brand-image-wrap::after {
  content: "";
  position: absolute;
  right: -2px;
  bottom: 2px;
  width: 9px;
  height: 9px;
  background: var(--wv-nav-gold);
  border: 2px solid var(--wv-nav-paper);
  border-radius: 50%;
}

.wv-brand-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.wv-brand-copy {
  display: grid;
  gap: 2px;
  line-height: 1;
}

.wv-brand-name {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.18rem;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.wv-brand-note {
  color: #66747d;
  font: 700 0.56rem/1.2 Arial, sans-serif;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.wv-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2px;
}

.wv-links a {
  position: relative;
  padding: 10px;
  color: #34445a;
  border-radius: 999px;
  font: 700 0.76rem/1 Arial, sans-serif;
  letter-spacing: 0.035em;
  text-decoration: none;
  white-space: nowrap;
  transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}

.wv-links a:hover,
.wv-links a:focus-visible {
  color: var(--wv-nav-teal);
  background: rgba(31, 90, 99, 0.08);
  transform: translateY(-1px);
}

.wv-links a[aria-current="page"] {
  color: #fffdf6;
  background: var(--wv-nav-teal);
  box-shadow: 3px 4px 0 var(--wv-nav-gold);
}

.wv-menu {
  display: none;
  min-height: 42px;
  padding: 0 14px;
  align-items: center;
  gap: 9px;
  color: var(--wv-nav-ink);
  background: transparent;
  border: 1px solid rgba(24, 41, 63, 0.24);
  border-radius: 999px;
  font: 800 0.69rem/1 Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}

.wv-menu-lines,
.wv-menu-lines::before,
.wv-menu-lines::after {
  width: 16px;
  height: 1.5px;
  display: block;
  background: currentColor;
  transition: transform 180ms ease, opacity 180ms ease;
}

.wv-menu-lines { position: relative; }
.wv-menu-lines::before,
.wv-menu-lines::after { content: ""; position: absolute; left: 0; }
.wv-menu-lines::before { top: -5px; }
.wv-menu-lines::after { top: 5px; }
.wv-menu[aria-expanded="true"] .wv-menu-lines { background: transparent; }
.wv-menu[aria-expanded="true"] .wv-menu-lines::before { top: 0; transform: rotate(45deg); }
.wv-menu[aria-expanded="true"] .wv-menu-lines::after { top: 0; transform: rotate(-45deg); }

@media (max-width: 1080px) {
  .wv-brand-note { display: none; }
  .wv-brand-image-wrap { width: 56px; height: 56px; flex-basis: 56px; }
  .wv-nav { min-height: 74px; }
  .wv-links a { padding-inline: 8px; font-size: 0.72rem; }
}

@media (max-width: 900px) {
  .wv-nav {
    position: relative;
    width: min(100% - 24px, 720px);
    min-height: 70px;
  }

  .wv-brand-image-wrap { width: 52px; height: 52px; flex-basis: 52px; }
  .wv-brand-name { font-size: 1.08rem; }
  .wv-menu { display: inline-flex; }

  .wv-links {
    position: absolute;
    top: calc(100% + 9px);
    right: 0;
    left: 0;
    max-height: calc(100vh - 92px);
    padding: 10px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    overflow-y: auto;
    background: rgba(255, 250, 240, 0.985);
    border: 1px solid var(--wv-nav-line);
    border-radius: 20px;
    box-shadow: var(--wv-nav-shadow);
  }

  .wv-links.is-open { display: flex; }

  .wv-links a {
    width: 100%;
    padding: 13px 14px;
    border-radius: 12px;
    font-size: 0.8rem;
  }

  .wv-links a[aria-current="page"] { box-shadow: none; }
}

@media (max-width: 430px) {
  .wv-brand-image-wrap { width: 47px; height: 47px; flex-basis: 47px; }
  .wv-brand-name { font-size: 1rem; }
  .wv-menu { padding-inline: 11px; }
  .wv-menu-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .wv-header *,
  .wv-header *::before,
  .wv-header *::after {
    transition: none !important;
  }
}
