/* ==================================================================
   PROJECT KAIROS — PAGE COMPONENTS v3.1
   Grids / diagrams / projects / journal / navigation refinements
   ================================================================== */

/* ------------------------------------------------------------------
   SHARED SECTION ANCHORS
   ------------------------------------------------------------------ */

body.kairos-brand-page .yoin-page [id]{
  scroll-margin-top: 120px;
}

/* ------------------------------------------------------------------
   GENERIC EDITORIAL GRIDS
   Used by Projects and Journal. Mission/Organization retain the
   dedicated three-column rules in kairos-pages.css.
   ------------------------------------------------------------------ */

body.kairos-brand-page .article
.yoin-page .yoin-values{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 52px;
  border-top: 1px solid var(--kairos-line);
  border-left: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article
.yoin-page .yoin-value{
  min-height: 250px;
  padding: 34px 30px 38px;
  border-right: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article
.yoin-page .yoin-value h3{
  min-height: 2.4em;
  margin-bottom: 22px;
  font-size: clamp(22px, 1.75vw, 28px);
}

body.kairos-brand-page .article
.yoin-page .yoin-value p{
  margin-bottom: 17px;
  font-size: 15px;
  line-height: 1.78;
}

/* Subtle depth without turning the grid into cards. */
body.kairos-brand-page .article .yoin-value{
  transition:
    background-color 180ms ease,
    border-color 180ms ease;
}

@media (hover: hover) {
  body.kairos-brand-page .article .yoin-value:hover{
    background: rgba(235, 229, 220, 0.22);
    border-color: rgba(154, 125, 95, 0.24);
  }
}

/* ------------------------------------------------------------------
   MISSION GRID POLISH
   ------------------------------------------------------------------ */







/* ------------------------------------------------------------------
   ORGANIZATION — NAMED AI ROLE PROFILES
   ------------------------------------------------------------------ */

body.kairos-brand-page .article .yoin-role-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 48px;
  border-top: 1px solid var(--kairos-line);
  border-left: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article .yoin-role-card{
  position: relative;
  min-height: 300px;
  padding: clamp(30px, 4vw, 44px);
  border-right: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
  color: inherit;
  background: transparent;
  text-decoration: none;
  transition: background-color 180ms ease, transform 180ms ease;
}

body.kairos-brand-page .article .yoin-role-card:hover,
body.kairos-brand-page .article .yoin-role-card:focus-visible{
  color: inherit;
  background: rgba(235, 229, 220, 0.30);
  transform: translateY(-2px);
}

body.kairos-brand-page .article .yoin-role-card:focus-visible,
body.kairos-brand-page .article .yoin-role-back-link:focus-visible{
  outline: 2px solid var(--kairos-bronze);
  outline-offset: 4px;
}

body.kairos-brand-page .article .yoin-role-mark{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 70px;
  min-height: 70px;
  margin-bottom: 30px;
  padding: 12px;
  border: 1px solid rgba(154, 125, 95, 0.56);
  border-radius: 999px;
  color: var(--kairos-charcoal);
  background: rgba(244, 240, 233, 0.58);
  font-family: var(--kairos-font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

body.kairos-brand-page .article .yoin-role-card-kicker,
body.kairos-brand-page .article .yoin-role-status{
  margin: 0 0 12px !important;
  color: var(--kairos-taupe) !important;
  font-family: var(--kairos-font-sans);
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1.5 !important;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body.kairos-brand-page .article .yoin-role-card h3{
  min-height: 0 !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  font-size: clamp(34px, 3vw, 46px) !important;
}

body.kairos-brand-page .article .yoin-role-card p:not(.yoin-role-card-kicker){
  max-width: 34ch;
  margin: 0 0 28px;
  color: var(--kairos-copy);
  font-size: 14.5px;
  line-height: 1.75;
}

body.kairos-brand-page .article .yoin-role-card-cta{
  color: var(--kairos-bronze);
  font-family: var(--kairos-font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
}

body.kairos-brand-page .article .yoin-role-disclosure,
body.kairos-brand-page .article .yoin-role-source-note{
  max-width: 800px !important;
  color: #675f57 !important;
  font-size: 13.5px !important;
  line-height: 1.8 !important;
}

body.kairos-brand-page .article .yoin-role-profile-card{
  display: grid;
  grid-template-columns: minmax(210px, 0.72fr) minmax(0, 1.6fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: start;
  margin-top: 42px;
  padding: clamp(30px, 5vw, 56px);
  border-top: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
  background: rgba(235, 229, 220, 0.24);
}

body.kairos-brand-page .article .yoin-role-mark--large{
  min-width: 112px;
  min-height: 112px;
  margin-bottom: 34px;
  font-size: 15px;
  letter-spacing: 0.14em;
}

body.kairos-brand-page .article .yoin-role-profile-identity h2{
  max-width: none;
  margin-bottom: 10px;
  font-size: clamp(42px, 4vw, 60px);
}

body.kairos-brand-page .article .yoin-role-title{
  margin: 0 !important;
  color: var(--kairos-copy) !important;
  font-family: var(--kairos-font-sans);
  font-size: 14px !important;
  line-height: 1.7 !important;
  letter-spacing: 0.04em;
}

body.kairos-brand-page .article .yoin-role-facts{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  border-top: 1px solid var(--kairos-line);
  border-left: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article .yoin-role-facts > div{
  min-width: 0;
  padding: 24px 26px 28px;
  border-right: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article .yoin-role-facts dt{
  margin-bottom: 10px;
  color: var(--kairos-taupe);
  font-family: var(--kairos-font-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.kairos-brand-page .article .yoin-role-facts dd{
  margin: 0;
  color: var(--kairos-charcoal);
  font-size: 14.5px;
  line-height: 1.75;
}

body.kairos-brand-page .article .yoin-role-facts dd span{
  color: #675f57;
  font-size: 13.5px;
}

body.kairos-brand-page .article .yoin-setup-list{
  margin: 44px 0 0;
  padding: 0;
  border-top: 1px solid var(--kairos-line);
  list-style: none;
  counter-reset: kairos-setup;
}

body.kairos-brand-page .article .yoin-setup-list li{
  display: grid;
  grid-template-columns: 48px minmax(190px, 0.7fr) minmax(0, 1.3fr);
  gap: 20px;
  align-items: baseline;
  padding: 22px 0;
  border-bottom: 1px solid var(--kairos-line);
  counter-increment: kairos-setup;
}

body.kairos-brand-page .article .yoin-setup-list li::before{
  content: counter(kairos-setup, decimal-leading-zero);
  color: var(--kairos-bronze);
  font-family: var(--kairos-font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.10em;
}

body.kairos-brand-page .article .yoin-setup-list strong{
  color: var(--kairos-charcoal);
  font-family: var(--kairos-font-serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4;
}

body.kairos-brand-page .article .yoin-setup-list span{
  color: var(--kairos-copy);
  font-size: 14px;
  line-height: 1.75;
}

body.kairos-brand-page .article .yoin-role-capability-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 44px;
  border-top: 1px solid var(--kairos-line);
  border-left: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article .yoin-role-capability{
  min-height: 170px;
  padding: 28px 30px;
  border-right: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article .yoin-role-capability h3{
  min-height: 0;
  margin-bottom: 14px;
  font-size: 22px;
}

body.kairos-brand-page .article .yoin-role-capability p{
  margin: 0;
  color: var(--kairos-copy);
  font-size: 14px;
  line-height: 1.75;
}

body.kairos-brand-page .article .yoin-kit-status{
  margin-top: 48px;
  padding: clamp(28px, 4vw, 42px);
  border-left: 1px solid var(--kairos-bronze);
  background: rgba(235, 229, 220, 0.48);
}

body.kairos-brand-page .article .yoin-kit-status strong{
  display: block;
  margin-bottom: 16px;
  color: var(--kairos-charcoal);
  font-family: var(--kairos-font-serif);
  font-size: clamp(26px, 2.5vw, 34px);
  font-weight: 400;
  line-height: 1.25;
}

body.kairos-brand-page .article .yoin-kit-status p:not(.yoin-eyebrow){
  max-width: 760px;
  margin: 0 0 14px;
  color: var(--kairos-copy);
  font-size: 14px;
  line-height: 1.75;
}

body.kairos-brand-page .article .yoin-role-back-link{
  color: var(--kairos-ivory);
  font-family: var(--kairos-font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-decoration: none;
  text-transform: uppercase;
}

@media (max-width: 860px) {
  body.kairos-brand-page .article .yoin-role-grid,
body.kairos-brand-page .article .yoin-role-capability-grid,
body.kairos-brand-page .article .yoin-role-facts{
    grid-template-columns: 1fr;
  }

  body.kairos-brand-page .article .yoin-role-card{
    min-height: 0;
  }

  body.kairos-brand-page .article .yoin-role-profile-card{
    grid-template-columns: 1fr;
  }

  body.kairos-brand-page .article .yoin-setup-list li{
    grid-template-columns: 38px minmax(0, 1fr);
  }

  body.kairos-brand-page .article .yoin-setup-list li span{
    grid-column: 2;
  }
}

/* ------------------------------------------------------------------
   MISSION / PROJECTS / JOURNAL HEADING RHYTHM
   ------------------------------------------------------------------ */






/* ------------------------------------------------------------------
   TRUST PAGES / SINGLE-LINE HEADING RHYTHM
   Privacy Policy, Contact, Corrections and Publication Policy.
   The no-wrap treatment begins at tablet width; smaller screens retain
   natural wrapping so legal and policy headings remain readable.
   ------------------------------------------------------------------ */

body.kairos-brand-page .article
.yoin-page-policy h2.yoin-heading--single-line{
  max-width: none;
}

@media screen and (min-width: 769px) {
  body.kairos-brand-page .article
  .yoin-page-policy h2.yoin-heading--single-line .yoin-heading-line{
    display: inline-block;
    max-width: 100%;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: keep-all;
    hyphens: none;
  }

  body.kairos-brand-page .article
  .yoin-page-policy h2.yoin-heading--single-line{
    font-size: clamp(28px, 2.35vw, 40px);
    letter-spacing: -0.045em;
  }

  body.kairos-brand-page .article
  .yoin-page-policy h2.yoin-heading--single-line-long{
    font-size: clamp(23px, 1.9vw, 32px);
  }

  body.kairos-brand-page .article
  .yoin-page-policy h2.yoin-heading--single-line-xlong{
    font-size: clamp(20px, 1.65vw, 28px);
  }
}

body.kairos-brand-page .article .yoin-diagram{
  width: 100%;
  max-width: var(--kairos-section-width);
  margin: clamp(42px, 5vw, 64px) auto clamp(46px, 6vw, 72px);
}

body.kairos-brand-page .article .yoin-diagram img{
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  border: 1px solid rgba(44, 41, 37, 0.10);
  background: rgba(244, 240, 233, 0.74);
  box-shadow: 0 24px 70px rgba(44, 41, 37, 0.07);
}

body.kairos-brand-page .article .yoin-diagram figcaption{
  margin-top: 14px;
  color: var(--kairos-taupe);
  font-family: var(--kairos-font-sans);
  font-size: 12px;
  line-height: 1.65;
  letter-spacing: 0.06em;
}

body.kairos-brand-page .article .yoin-diagram--organization{
  max-width: 900px;
}

body.kairos-brand-page .article .yoin-diagram--process,
body.kairos-brand-page .article .yoin-diagram--decision-rights{
  max-width: 940px;
}

body.kairos-brand-page .article .yoin-diagram--memory{
  max-width: 860px;
}

/* ------------------------------------------------------------------
   PROJECTS
   ------------------------------------------------------------------ */

















/* ------------------------------------------------------------------
   JOURNAL
   ------------------------------------------------------------------ */





/* Supports a Query Loop placed after the Custom HTML block. */
body.kairos-brand-page .article > .wp-block-query,
body.kairos-brand-page .article > .wp-block-latest-posts{
  width: 100%;
  max-width: var(--kairos-section-width);
  margin: 0 auto clamp(72px, 8vw, 112px);
}

body.kairos-brand-page .article .wp-block-post-template{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--kairos-line);
  border-left: 1px solid var(--kairos-line);
  list-style: none;
}

body.kairos-brand-page .article .wp-block-post-template > li{
  min-width: 0;
  margin: 0;
  padding: clamp(28px, 3vw, 40px);
  border-right: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
  background: transparent;
}

body.kairos-brand-page .article .wp-block-post-date,
body.kairos-brand-page .article .wp-block-post-terms{
  margin-bottom: 16px;
  color: var(--kairos-taupe);
  font-family: var(--kairos-font-sans);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body.kairos-brand-page .article .wp-block-post-title{
  margin: 0 0 18px;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: var(--kairos-font-serif);
  font-size: clamp(25px, 2vw, 32px);
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -0.025em;
}

body.kairos-brand-page .article .wp-block-post-title a{
  color: var(--kairos-charcoal);
  text-decoration: none;
}

body.kairos-brand-page .article .wp-block-post-title a:hover{
  color: var(--kairos-bronze);
}

body.kairos-brand-page .article .wp-block-post-excerpt{
  color: var(--kairos-copy);
  font-size: 14.5px;
  line-height: 1.8;
}

body.kairos-brand-page .article .wp-block-post-excerpt__more-link{
  display: inline-block;
  margin-top: 12px;
  color: var(--kairos-bronze);
  font-family: var(--kairos-font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-decoration: none;
  text-transform: uppercase;
}

body.kairos-brand-page .article .wp-block-query-pagination{
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid var(--kairos-line);
  font-family: var(--kairos-font-sans);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* ------------------------------------------------------------------
   DESKTOP NAVIGATION — FIVE PRIMARY ITEMS
   ------------------------------------------------------------------ */

@media screen and (min-width: 1024px) {
  .navi-in > ul .menu-item > a{
    padding-inline: clamp(0.78rem, 1.1vw, 1.15rem);
  }
}


/* ------------------------------------------------------------------
   JOURNAL v1.1
   ------------------------------------------------------------------ */

body.kairos-brand-page .article .yoin-journal-status{
  display: grid;
  grid-template-columns: minmax(180px, .38fr) minmax(0, 1fr);
  gap: 28px;
  align-items: center;
  margin-top: clamp(38px, 5vw, 58px);
  padding: 24px 28px;
  border-top: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
  background: rgba(235, 229, 220, .28);
}

body.kairos-brand-page .article .yoin-journal-status div{
  display: flex;
  flex-direction: column;
  gap: 6px;
}

body.kairos-brand-page .article .yoin-journal-status span{
  color: var(--kairos-taupe);
  font-family: var(--kairos-font-sans);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .16em;
}

body.kairos-brand-page .article .yoin-journal-status strong{
  font-family: var(--kairos-font-serif);
  font-size: clamp(28px, 2.6vw, 38px);
  font-weight: 400;
}

body.kairos-brand-page .article .yoin-journal-status p{
  margin: 0 !important;
}

body.kairos-brand-page .article .yoin-journal-entry-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 44px;
  border-top: 1px solid var(--kairos-line);
  border-left: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article .yoin-journal-entry{
  min-height: 300px;
  padding: clamp(28px, 3vw, 38px);
  border-right: 1px solid var(--kairos-line);
  border-bottom: 1px solid var(--kairos-line);
}

body.kairos-brand-page .article .yoin-journal-entry h3{
  margin: 20px 0 24px;
  font-family: var(--kairos-font-serif);
  font-size: clamp(27px, 2.2vw, 36px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -.025em;
}

body.kairos-brand-page .article .yoin-journal-entry p:not(.yoin-eyebrow){
  margin-bottom: 17px;
  font-size: 15px;
  line-height: 1.78;
}

body.kairos-brand-page .article .yoin-journal-link-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.kairos-brand-page .article .yoin-journal-link{
  display: block;
  color: inherit;
  text-decoration: none;
  transition: background-color .2s ease, transform .2s ease;
}

body.kairos-brand-page .article .yoin-journal-link:hover,
body.kairos-brand-page .article .yoin-journal-link:focus-visible{
  color: inherit;
  background: rgba(138, 125, 112, .08);
  transform: translateY(-2px);
}

body.kairos-brand-page .article .yoin-journal-link-cta{
  display: inline-block;
  margin-top: 10px;
  color: var(--kairos-charcoal);
  font-family: var(--kairos-font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
}

@media (max-width: 860px) {
  body.kairos-brand-page .article .yoin-journal-entry-grid{
    grid-template-columns: 1fr;
  }

  body.kairos-brand-page .article .yoin-journal-entry{
    min-height: 0;
  }
}

@media (max-width: 600px) {
  body.kairos-brand-page .article .yoin-journal-status{
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 22px;
  }
}


/* ------------------------------------------------------------------
   PROJECTS v1.1 — two-line hero statement
   ------------------------------------------------------------------ */
