/* Clean restart stylesheet.
   Single coherent system; keeps existing HTML content/structure. */

:root{
  --content-max:1140px;
  --gutter:clamp(1rem,3vw,2rem);
  --ink:#111111;
  --ink-soft:#2a2a2a;
  --rule:rgba(0,0,0,.12);
  --muted:rgba(0,0,0,.58);
  --accent:#ef6a23;
}

html,body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);
}

/* Background grid visibility tune */
body::before{
  background:
    linear-gradient(rgba(0,0,0,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.03) 1px, transparent 1px) !important;
  background-size:28px 28px,28px 28px !important;
  opacity:.72 !important;
}

/* Orange axis streak only on home hero section */
.page[data-page="landing"] .mission{
  position:relative;
  z-index:0;
}

.page[data-page="landing"] .mission::before{
  content:none;
}

@media (max-width:900px){
  .page[data-page="landing"] .mission{
    position:relative;
  }
}

/* Orange axis lines only on home hero section */
.page[data-page="landing"] .mission::before{
  content:none;
}

.page[data-page="landing"] .mission > *{
  position:relative;
  z-index:1;
}

.shell{
  width:min(100%,var(--content-max));
  margin-inline:auto;
  padding-inline:var(--gutter) !important;
}

.page{
  isolation:isolate;
}

/* Type roles */
.mission__line,.hero__line,.contact__lead,.legal-title,.coda__line,.manifesto__lines p:first-child{
  font-family:inherit !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  line-height:1.05 !important;
  max-width:14ch !important;
}

.mission__line{font-size:clamp(2.6rem,5.5vw,4.6rem) !important}
.hero__line,.contact__lead,.legal-title{font-size:clamp(2.3rem,4.8vw,4rem) !important}
.coda__line,.manifesto__lines p:first-child{font-size:clamp(2rem,4vw,3.2rem) !important}

.instr__title,.section__body h2,.chronicle-ledger__head h2,.chronicle-correspondence__main h2,.engage-form__body h2,.engage-block h2,.legal-section h2,.legal-section h3,.legal-section h4,.pillar__title,.engage-card__title,.person__name,.chronicle-entry__title{
  font-family:inherit !important;
  font-weight:700 !important;
  letter-spacing:-.015em !important;
  line-height:1.12 !important;
}

p,li,.lead,.hero__sub p,.mission__sig .what,.belief__txt,.beliefs__intro,.instr__body,.pillar__body,.compare__txt,.person__bio,.chronicle-hero__body,.chronicle-hero__side p,.chronicle-entry__copy p,.chronicle-ledger__aside,.chronicle-correspondence__main p,.chronicle-track p,.engage-form__body>p,.engage-card p,.engage-detail p,.engage-note,.legal-subtitle,.legal-meta,.legal-aside p,.legal-contact p,.legal-section p,.legal-list li{
  font-family:inherit !important;
  font-size:clamp(1.1rem,1.4vw,1.36rem) !important;
  color:var(--ink-soft) !important;
  line-height:1.7 !important;
  max-width:62ch !important;
}

/* Keep the mono/gray metadata look */
.mono,.beliefs__num,.instr__num,.coda__num,.section__num,.belief__n,.contact__num,.contact__lab,.manifesto__num,.legal-kicker,.legal-aside-label,.chronicle-entry__meta,.chronicle-entry__source,.chronicle-track__label{
  color:var(--muted) !important;
}

.pillar__tag{
  font-size:.8rem !important;
  letter-spacing:.22em !important;
  font-weight:600 !important;
}

.k,.chronicle-accent{color:var(--accent) !important}

.person__name a.person__name-link{
  color:inherit;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:0.2em;
  text-decoration-color:rgba(17,17,17,.42);
  cursor:pointer;
  transition:color .2s ease,text-decoration-color .2s ease;
}
.person__name a.person__name-link:hover{
  color:var(--accent);
  text-decoration-color:var(--accent);
}
.person__name a.person__name-link:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:3px;
}

.mission__kicker{
  color:var(--muted) !important;
  font-size:.78rem !important;
  letter-spacing:.22em !important;
  font-weight:500 !important;
  text-transform:uppercase !important;
  line-height:1.2 !important;
}

/* Layout: balanced and simple */
.hero,.mission,.beliefs,.instr,.coda,.chronicle-hero,.chronicle-ledger,.chronicle-correspondence,.engage-hero,.engage-form,.engage-directory,.engage-presence,.manifesto,.legal-page{
  padding-block:clamp(3rem,6vw,5rem);
}

.mission .stagger,.hero .stagger,.mission__sig,.hero__sub,.section__grid,.beliefs__head,.beliefs__list,.instr__grid,.coda__grid,.chronicle-hero__grid,.chronicle-correspondence__grid,.engage-form__body,.engage-presence__grid,.legal-frame,.manifesto{
  display:grid !important;
  grid-template-columns:minmax(120px,150px) minmax(0,1fr);
  gap:clamp(1rem,2.4vw,2.2rem);
  align-items:start;
}

.mission .stagger > *,.hero .stagger > *,.mission__sig > *,.hero__sub > *,.section__grid > *,.beliefs__head > *,.beliefs__list > *,.instr__grid > *,.coda__grid > *,.chronicle-hero__grid > *,.chronicle-correspondence__grid > *,.engage-form__body > *,.engage-presence__grid > *,.legal-frame > *,.manifesto > *{
  grid-column:2;
}

/* (landing-only divider overrides removed) */

.pillars,.people,.compare,.engage-cards{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  border:1px solid var(--rule) !important;
  overflow:hidden;
}

.pillar:nth-child(2n){
  border-right:none !important;
}

.compare__row:nth-child(2n){
  border-right:none !important;
}

.person:nth-child(2n){
  border-right:none !important;
}

.engage-card:nth-child(2n){
  border-right:none !important;
}

/* One consistent section divider system for non-landing pages */
.page:not([data-page="landing"]) section{
  border-top:none !important;
  border-bottom:none !important;
}

.page:not([data-page="landing"]) section + section{
  border-top:1px solid var(--rule) !important;
}

/* Product hero -> diagram divider should follow shell width, not viewport width */
.page[data-page="product"] .hero + .diagram{
  border-top:none !important;
}

.page[data-page="product"] .hero + .diagram > .shell{
  border-top:1px solid var(--rule) !important;
}

/* When boxed grids are present, rely on the box frame (no extra section line) */
.page:not([data-page="landing"]) section:has(.pillars),
.page:not([data-page="landing"]) section:has(.compare),
.page:not([data-page="landing"]) section:has(.people),
.page:not([data-page="landing"]) section:has(.engage-cards){
  border-top:none !important;
}

/* Chronicle: prevent stacked divider lines between major sections */
.page[data-page="chronicle"] .chronicle-quote + .chronicle-ledger,
.page[data-page="chronicle"] .chronicle-ledger + .chronicle-correspondence{
  border-top:none !important;
}

.chronicle-entry__source a,.chronicle-entry__title-link{color:inherit;text-decoration:none}
.chronicle-entry__source a:hover,.chronicle-entry__title-link:hover{color:var(--accent)}

.chronicle-quote__body{
  margin-top:.9rem;
}

.page[data-page="chronicle"] .chronicle-hero__body{
  margin-left:calc(clamp(3.5rem,8vw,8rem) + 0.95in) !important;
  margin-top:0;
  position:relative;
  width:min(100%,84ch);
  max-width:none !important;
}

.page[data-page="chronicle"] .chronicle-hero__divider{
  margin-top:clamp(1.2rem,2.1vw,1.8rem);
  margin-bottom:clamp(1rem,1.9vw,1.5rem);
  margin-left:clamp(1.1rem,2vw,1.8rem);
  width:calc(100% - clamp(2.2rem,4vw,3.6rem));
  border-top:1px solid var(--rule);
}

/* Keep Chronicle hero as positioning context only */
.page[data-page="chronicle"] .chronicle-hero{
  position:relative;
}

.page[data-page="chronicle"] .chronicle-hero::after{
  content:none;
}

.page[data-page="chronicle"] .chronicle-hero__body .chronicle-line{
  display:block;
  white-space:nowrap;
}

.page[data-page="chronicle"] .chronicle-hero__meta-bottom{
  margin-top:clamp(.85rem,1.8vw,1.25rem);
  display:flex;
  justify-content:flex-end;
}

.page[data-page="chronicle"] .chronicle-hero{
  border-bottom:1px solid var(--rule);
}

/* Contact page: explicit layout to avoid overlap and match site rhythm */
.engage-hero .stagger{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  grid-template-areas:
    "kicker"
    "title"
    "copy";
  align-items:start;
  gap:clamp(.75rem,1.8vw,1.2rem);
}

.engage-hero .editorial-kicker{
  grid-area:kicker;
  margin:0;
  color:var(--muted) !important;
}
.engage-hero .contact__lead{
  grid-area:title;
  justify-self:start;
  margin:0;
  max-width:9ch !important;
  text-align:left;
}
.engage-hero .lead{
  grid-area:copy;
  margin:0;
  max-width:40ch !important;
}

.engage-form__body{
  display:grid !important;
  grid-template-columns:minmax(220px,.85fr) minmax(0,1.15fr) !important;
  grid-template-areas:
    "heading form"
    "copy form";
  align-items:start;
  gap:clamp(1rem,2.5vw,2rem) clamp(1.5rem,3vw,2.5rem) !important;
}

.engage-form__body > h2{
  grid-area:heading;
  margin:0;
  max-width:8ch !important;
}

.engage-form__body > p{
  grid-area:copy;
  margin:0;
  max-width:30ch !important;
}

.engage-form__shell{
  grid-area:form;
  width:100%;
}

.contact-inquiry-form{
  width:100%;
  display:grid;
  gap:1rem;
}

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

.contact-field input,
.contact-field textarea{
  width:100%;
  max-width:none;
}

@media (max-width:900px){
  .mission .stagger,.hero .stagger,.mission__sig,.hero__sub,.section__grid,.beliefs__head,.beliefs__list,.instr__grid,.coda__grid,.chronicle-hero__grid,.chronicle-correspondence__grid,.engage-form__body,.engage-presence__grid,.legal-frame,.manifesto{
    grid-template-columns:1fr;
  }
  .mission .stagger > *,.hero .stagger > *,.mission__sig > *,.hero__sub > *,.section__grid > *,.beliefs__head > *,.beliefs__list > *,.instr__grid > *,.coda__grid > *,.chronicle-hero__grid > *,.chronicle-correspondence__grid > *,.engage-form__body > *,.engage-presence__grid > *,.legal-frame > *,.manifesto > *{
    grid-column:1;
  }
  .pillars,.people,.compare,.engage-cards{grid-template-columns:1fr !important}

  .engage-hero .stagger{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "kicker"
      "title"
      "copy";
    gap:1rem;
  }

  .engage-hero .contact__lead{
    justify-self:start;
    max-width:10ch !important;
  }

  .engage-form__body{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "heading"
      "copy"
      "form";
    gap:1rem !important;
  }

  .contact-field-grid{
    grid-template-columns:1fr;
  }

  .page[data-page="chronicle"] .chronicle-hero__body{
    margin-left:0 !important;
    max-width:42ch !important;
  }

  .page[data-page="chronicle"] .chronicle-hero__divider{
    margin-left:0;
    width:100%;
  }

  .page[data-page="chronicle"] .chronicle-hero__body .chronicle-line{
    display:inline;
    white-space:normal;
  }

  .page[data-page="chronicle"] .chronicle-hero__meta-bottom{
    justify-content:flex-start;
  }
}

/* Mobile navigation: burger dropdown (desktop unchanged) */
.nav__burger{
  display:none;
  background:none;
  border:none;
  padding:0.25rem 0;
  cursor:pointer;
}

.nav__burger-lines{
  display:block;
  width:1.35rem;
  height:1px;
  background:rgba(0,0,0,.78);
  box-shadow:
    0 -4px 0 rgba(0,0,0,.78),
    0  4px 0 rgba(0,0,0,.78);
}

@media (max-width:760px){
  .nav{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:center !important;gap:.75rem 1rem !important}
  .nav__brand{flex:1 1 auto !important;min-width:0 !important;max-width:calc(100% - 3rem) !important}
  .nav__burger{display:inline-flex !important;margin-left:auto !important;align-items:center !important}
  .nav__links{display:none !important;flex-basis:100% !important}
  .nav.nav--open .nav__links{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:.6rem !important;
    flex-basis:100% !important;
  }
}
