/* ==================================================================
   PROJECT KAIROS — SHARED MINIMAL FOUNDATION v3.5.14
   ------------------------------------------------------------------
   Shared minimal overrides for all KAIROS brand pages.
   Scope:
   - compact typography
   - shorter vertical rhythm
   - slightly wider information area
   - denser cards / diagrams
   - desktop headings prefer one line; long text wraps naturally
   Not in scope:
   - header / footer redesign
   - dashboard redesign
   - language switching
   - page-content changes
   ================================================================== */

:root{
  --kairos-page-width: 1160px;
  --kairos-section-width: 1040px;
  --kairos-copy-width: 800px;

  --kairos-minimal-h1: clamp(40px, 3.2vw, 46px);
  --kairos-minimal-h2: clamp(26px, 2.15vw, 30px);
  --kairos-minimal-h3: clamp(18px, 1.4vw, 20px);
  --kairos-minimal-lead: clamp(18px, 1.25vw, 20px);

  --kairos-minimal-section-gap: clamp(48px, 4.8vw, 60px);
  --kairos-minimal-hero-bottom: clamp(44px, 4.5vw, 58px);
  --kairos-minimal-card-pad: clamp(20px, 2.2vw, 26px);
  --kairos-grid-cell-pad-y: clamp(14px, 1.35vw, 18px);
  --kairos-grid-cell-pad-x: clamp(16px, 1.6vw, 20px);
  --kairos-grid-copy-gap: 8px;
}

/* Page frame: keep the existing warm KAIROS surface, reduce excess depth. */
body.kairos-brand-page .content{
  margin-top: clamp(1.25rem, 2.4vw, 2.5rem);
  margin-bottom: clamp(2.75rem, 5vw, 4.5rem);
}

body.kairos-brand-page .main{
  padding:
    clamp(18px, 2.2vw, 30px)
    clamp(22px, 4vw, 56px)
    clamp(48px, 5vw, 72px);
}

/* Section rhythm. */
body.kairos-brand-page .article .yoin-page > section:not(.yoin-dark-section){
  max-width: var(--kairos-section-width);
  padding-block: var(--kairos-minimal-section-gap);
}

body.kairos-brand-page .article .yoin-page > section.yoin-page-hero{
  padding-top: clamp(16px, 1.8vw, 24px);
  padding-bottom: var(--kairos-minimal-hero-bottom);
}

body.kairos-brand-page .article .yoin-eyebrow{
  margin-bottom: 14px;
  font-size: 10.5px;
  letter-spacing: .16em;
}

/* Typography: editorial, compact, readable. */
body.kairos-brand-page .article .yoin-display{
  max-width: none;
  margin-bottom: 22px;
  font-size: var(--kairos-minimal-h1);
  line-height: 1.08;
  letter-spacing: -.035em;
  text-wrap: pretty;
}

body.kairos-brand-page .article .yoin-page h2{
  max-width: none;
  margin-bottom: 18px;
  font-size: var(--kairos-minimal-h2);
  line-height: 1.18;
  letter-spacing: -.025em;
  text-wrap: pretty;
}

body.kairos-brand-page .article .yoin-page h3{
  margin-bottom: 12px;
  padding-left: 12px;
  font-size: var(--kairos-minimal-h3);
  line-height: 1.3;
  letter-spacing: -.015em;
}

body.kairos-brand-page .article .yoin-lead{
  margin-bottom: 20px;
  font-size: var(--kairos-minimal-lead);
  line-height: 1.62;
}

body.kairos-brand-page .article .yoin-page section >
p:not(.yoin-eyebrow):not(.yoin-display):not(.yoin-lead){
  margin-bottom: 18px;
  font-size: 16px;
  line-height: 1.76;
}

body.kairos-brand-page .article .yoin-page blockquote{
  margin: 26px 0 30px;
  padding: 18px 24px;
  font-size: clamp(19px, 1.55vw, 23px);
  line-height: 1.55;
}

/* Desktop: remove editorial hard-breaks. Keep natural wrapping if needed. */
@media screen and (min-width: 769px) {
  body.kairos-brand-page .article .yoin-display .yoin-heading-line,
body.kairos-brand-page .article .yoin-page h2 .yoin-heading-line{
    display: inline !important;
    white-space: normal !important;
  }

  body.kairos-brand-page .article .yoin-display br,
body.kairos-brand-page .article .yoin-page h2 br{
    display: none;
  }

  body.kairos-brand-page .article .yoin-display .yoin-heading-line:not(:first-child)::before,
body.kairos-brand-page .article .yoin-page h2 .yoin-heading-line:not(:first-child)::before{
    content: " ";
  }
}

/* Dense reusable content blocks.
   Table-like value grids are intentionally compact so more information
   fits within one viewport without sacrificing readability. */
body.kairos-brand-page .article
.yoin-page .yoin-values{
  margin-top: 18px;
}

body.kairos-brand-page .article .yoin-value,
body.kairos-brand-page .article
.yoin-page .yoin-value{
  min-height: 0;
  padding:
    var(--kairos-grid-cell-pad-y)
    var(--kairos-grid-cell-pad-x);
}

body.kairos-brand-page .article
.yoin-page .yoin-values .yoin-value h3{
  min-height: 0;
  margin: 0 0 10px;
  padding-left: 10px;
  font-size: clamp(18px, 1.35vw, 20px);
  line-height: 1.24;
}

body.kairos-brand-page .article
.yoin-page .yoin-values .yoin-value p{
  margin: 0 0 var(--kairos-grid-copy-gap);
  font-size: 15px;
  line-height: 1.62;
}

body.kairos-brand-page .article
.yoin-page .yoin-values .yoin-value p:last-child{
  margin-bottom: 0;
}

/* Shared AI role directory cards.
   Keep directory cards compact; detailed role-profile layout is handled separately. */
body.kairos-brand-page .article .yoin-role-grid{
  margin-top: 20px;
}

body.kairos-brand-page .article .yoin-role-card{
  min-height: 174px;
  padding: clamp(16px, 1.8vw, 20px);
}

body.kairos-brand-page .article .yoin-role-mark{
  min-width: 44px;
  min-height: 44px;
  margin-bottom: 13px;
  padding: 7px;
  font-size: 9.5px;
}

body.kairos-brand-page .article .yoin-role-card-kicker{
  margin-bottom: 7px !important;
}

body.kairos-brand-page .article .yoin-role-card h3{
  margin-bottom: 8px !important;
  font-size: clamp(20px, 1.65vw, 24px) !important;
  line-height: 1.18 !important;
}

body.kairos-brand-page .article .yoin-role-card p:not(.yoin-role-card-kicker){
  margin-bottom: 11px;
  font-size: 14.5px;
  line-height: 1.55;
}

body.kairos-brand-page .article .yoin-role-card-cta{
  font-size: 10px;
}

body.kairos-brand-page .article .yoin-role-profile-card{
  gap: clamp(24px, 3vw, 42px);
  margin-top: 28px;
  padding: clamp(24px, 3vw, 36px);
}

body.kairos-brand-page .article .yoin-role-mark--large{
  min-width: 84px;
  min-height: 84px;
  margin-bottom: 22px;
  font-size: 13px;
}

body.kairos-brand-page .article .yoin-role-profile-identity h2{
  font-size: clamp(28px, 2.6vw, 36px);
}

body.kairos-brand-page .article .yoin-role-facts > div{
  padding: 18px 20px 20px;
}

/* Projects: remove the oversized project-title treatment for this foundation. */






/* Shared diagrams: compact presentation without page-specific rules. */
body.kairos-brand-page .article .yoin-diagram{
  max-width: 860px;
  margin: 18px auto 24px;
}

body.kairos-brand-page .article .yoin-diagram img{
  box-shadow: 0 12px 32px rgba(44, 41, 37, 0.055);
}

body.kairos-brand-page .article .yoin-diagram figcaption{
  margin-top: 8px;
  font-size: 11px;
  line-height: 1.5;
}

/* Media / notes / dark sections. */

body.kairos-brand-page .article .yoin-note{
  margin-block: 30px;
}

body.kairos-brand-page .article .yoin-dark-section{
  margin-top: clamp(36px, 4vw, 50px) !important;
  padding: clamp(36px, 4vw, 52px);
}

body.kairos-brand-page .article .yoin-dark-section h2{
  font-size: var(--kairos-minimal-h2);
  line-height: 1.18;
}

/* Journal index cards use the same tighter content density. */
body.kairos-brand-page .article > .wp-block-query,
body.kairos-brand-page .article > .wp-block-latest-posts{
  margin-bottom: clamp(48px, 5vw, 64px);
}

body.kairos-brand-page .article .wp-block-post-template > li{
  padding: var(--kairos-minimal-card-pad);
}

/* Mobile remains readable; do not force one-line headings. */
@media screen and (max-width: 768px) {
  :root{
    --kairos-minimal-h1: clamp(34px, 9vw, 40px);
    --kairos-minimal-h2: clamp(24px, 6.4vw, 28px);
    --kairos-minimal-h3: 18px;
    --kairos-minimal-lead: 18px;
    --kairos-minimal-section-gap: 40px;
    --kairos-minimal-hero-bottom: 44px;
  }

  body.kairos-brand-page .main{
    width: calc(100% - 1rem);
    padding: 20px 18px 52px;
  }

  body.kairos-brand-page .article .yoin-page > section:not(.yoin-dark-section){
    padding-block: var(--kairos-minimal-section-gap);
  }

  body.kairos-brand-page .article .yoin-page > section.yoin-page-hero{
    padding-top: 18px;
    padding-bottom: var(--kairos-minimal-hero-bottom);
  }

  body.kairos-brand-page .article .yoin-value,
body.kairos-brand-page .article
  .yoin-page .yoin-value{
    padding: 16px 16px 17px;
  }

  body.kairos-brand-page .article
  .yoin-page .yoin-values .yoin-value h3{
    margin-bottom: 9px;
    font-size: 18px;
  }

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

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

  body.kairos-brand-page .article .yoin-role-mark{
    min-width: 40px;
    min-height: 40px;
    margin-bottom: 11px;
  }

  body.kairos-brand-page .article .yoin-diagram{
    max-width: 100%;
    margin-top: 16px;
    margin-bottom: 22px;
  }

  body.kairos-brand-page .article .yoin-dark-section{
    margin-top: 36px !important;
    padding: 34px 20px;
  }




}



/* ==================================================================
   SHARED CONTENT COMPONENTS v3.5.3
   ------------------------------------------------------------------
   Page names are intentionally not used here.
   Mission, Projects and Journal now inherit the same page system.
   Component classes may still express content type (project, journal),
   but typography and vertical rhythm come from shared tokens above.
   ================================================================== */

/* Project content block: reusable anywhere, not tied to /projects/. */
body.kairos-brand-page .article .yoin-project {
  position: relative;
  width: 100%;
  max-width: var(--kairos-section-width);
  margin-inline: auto;
  padding-block: var(--kairos-minimal-section-gap);
}

body.kairos-brand-page .article .yoin-project h2 {
  max-width: none;
  margin-bottom: 14px;
  font-size: var(--kairos-minimal-h2);
  line-height: 1.18;
}

body.kairos-brand-page .article .yoin-project .yoin-lead {
  max-width: 860px;
  margin-bottom: 16px;
}

body.kairos-brand-page .article .yoin-project >
p:not(.yoin-eyebrow):not(.yoin-lead):not(.yoin-note) {
  max-width: 860px;
  margin-bottom: 12px;
}

body.kairos-brand-page .article .yoin-project .yoin-note {
  margin-top: 12px;
}

/* Journal directory components: reusable, not tied to /journal/. */
body.kairos-brand-page .article .yoin-journal-status {
  gap: 20px;
  margin-top: 24px;
  padding: 16px 20px;
}

body.kairos-brand-page .article .yoin-journal-status strong {
  font-size: clamp(22px, 1.8vw, 28px);
  line-height: 1.15;
}

body.kairos-brand-page .article .yoin-journal-entry-grid {
  margin-top: 24px;
}

body.kairos-brand-page .article .yoin-journal-entry {
  min-height: 0;
  padding: var(--kairos-minimal-card-pad);
}

body.kairos-brand-page .article .yoin-journal-entry h3 {
  margin: 12px 0 14px;
  padding-left: 0;
  font-size: var(--kairos-minimal-h3);
  line-height: 1.25;
}

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

@media screen and (max-width: 768px) {
  body.kairos-brand-page .article .yoin-project {
    padding-block: 44px;
  }

  body.kairos-brand-page .article .yoin-journal-status {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}

/* ------------------------------------------------------------------
   SHARED AI ROLE PROFILE
   Reusable profile component for REI / SENA / YURA / RIN.
   Page HTML contains structure/content only; presentation lives here.
   ------------------------------------------------------------------ */

body.kairos-brand-page .article .yoin-role-profile{
  --kairos-role-gap: clamp(22px, 3.6vw, 44px);
}

/* Compact profile section rhythm.
   Adjacent sections previously inherited the global page padding on both sides,
   making heading-to-heading gaps feel too large. */
body.kairos-brand-page .article
.yoin-role-profile > section:not(.yoin-page-hero):not(.yoin-dark-section){
  padding-block: clamp(26px, 2.7vw, 34px);
}

body.kairos-brand-page .article
.yoin-role-profile > section.yoin-profile-shell{
  padding-block: clamp(30px, 3vw, 38px);
}

body.kairos-brand-page .article
.yoin-role-profile > hr{
  margin-block: 0;
}


body.kairos-brand-page .article .yoin-role-profile .yoin-profile-shell{
  display: grid;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  gap: var(--kairos-role-gap);
  align-items: start;
  margin-top: 22px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-portrait{
  aspect-ratio: 4 / 5;
  overflow: hidden;
  min-height: 0;
  border: 1px solid var(--kairos-line);
  border-radius: 16px;
  background: #ebe7e0;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-portrait img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-portrait-placeholder{
  display: flex;
  min-height: 340px;
  padding: 20px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-portrait-placeholder strong{
  display: block;
  font-size: clamp(32px, 6vw, 64px);
  letter-spacing: .08em;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-portrait-placeholder span{
  display: block;
  margin-top: 8px;
  font-size: 11px;
  letter-spacing: .12em;
  opacity: .65;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-summary{
  min-width: 0;
  padding-top: 2px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-summary h2{
  margin-top: 2px;
  margin-bottom: 12px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-meta{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-meta article{
  min-width: 0;
  padding: 14px 15px;
  border: 1px solid var(--kairos-line);
  border-radius: 10px;
  background: rgba(255,255,255,.18);
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-meta h3{
  min-height: 0;
  margin: 0 0 6px !important;
  padding: 0 !important;
  border: 0 !important;
  font-family: var(--kairos-font-sans);
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1.4 !important;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-meta p{
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-language-block{
  scroll-margin-top: 32px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-language-label{
  display: inline-block;
  margin-bottom: 12px;
  padding: 6px 9px;
  border: 1px solid var(--kairos-line);
  border-radius: 999px;
  font-family: var(--kairos-font-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-list{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-list article{
  min-width: 0;
  padding: 15px 16px;
  border: 1px solid var(--kairos-line);
  border-radius: 10px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-list h3{
  min-height: 0;
  margin: 0 0 7px !important;
  font-size: clamp(18px, 1.4vw, 20px) !important;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-profile-list p{
  margin: 0;
  font-size: 14.5px;
  line-height: 1.6;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-role-note{
  margin-top: 12px;
  padding: 12px 14px;
  border-left: 2px solid var(--kairos-bronze);
  background: rgba(0,0,0,.022);
  color: #675f57;
  font-size: 12.5px;
  line-height: 1.6;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-setup-box{
  padding: 18px 20px;
  border: 1px solid var(--kairos-line);
  border-radius: 12px;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-setup-box ol{
  margin-bottom: 0;
}

body.kairos-brand-page .article .yoin-role-profile .yoin-setup-box li{
  margin-bottom: 5px;
}

@media screen and (max-width: 780px){
  body.kairos-brand-page .article
  .yoin-role-profile > section:not(.yoin-page-hero):not(.yoin-dark-section){
    padding-block: 24px;
  }

  body.kairos-brand-page .article
  .yoin-role-profile > section.yoin-profile-shell{
    padding-block: 28px;
  }

  body.kairos-brand-page .article .yoin-role-profile .yoin-profile-shell{
    grid-template-columns: 1fr;
    gap: 22px;
  }

  body.kairos-brand-page .article .yoin-role-profile .yoin-profile-portrait{
    width: min(100%, 320px);
  }

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

  body.kairos-brand-page .article .yoin-role-profile .yoin-profile-meta article,
  body.kairos-brand-page .article .yoin-role-profile .yoin-profile-list article{
    padding: 14px 15px;
  }

  body.kairos-brand-page .article .yoin-role-profile .yoin-setup-box{
    padding: 16px;
  }
}
