:root {
  --kc-ink: #1f201e;
  --kc-charcoal: #292a27;
  --kc-paper: #eeece7;
  --kc-card: #f7f6f2;
  --kc-amber: #8d8172;
  --kc-moss: #6f736c;
  --kc-muted: #77766f;
  --kc-line: #d3d0c8;
  --kc-serif: "Iowan Old Style", "Palatino Linotype", Baskerville, Georgia, serif;
  --kc-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
body, .editor-styles-wrapper { background: var(--kc-paper); color: var(--kc-ink); }
::selection { background: #d6d1c7; color: #1b1c1a; }
a { transition: color .2s ease, opacity .2s ease, border-color .2s ease, transform .2s ease; }

.kc-site-header {
  position: relative;
  z-index: 20;
  padding-top: 1.3rem;
  padding-bottom: 1.3rem;
  border-bottom: 1px solid rgba(23,25,23,.12);
  background: rgba(238,236,231,.92);
  backdrop-filter: blur(16px);
}
.kc-header-inner { min-height: 3rem; }
.kc-wordmark a,
.kc-footer-mark a {
  font-family: var(--kc-serif);
  font-size: clamp(1.18rem,2vw,1.55rem);
  letter-spacing: -.02em;
  text-decoration: none;
}
.kc-wordmark a::first-letter { color: var(--kc-amber); font-style: italic; }
.kc-navigation { font-size: .71rem; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.kc-navigation a { text-decoration: none; }
.kc-navigation .current-menu-item > a { color: var(--kc-amber); }

.kc-main { min-height: 60vh; }
.kc-main.kc-page { padding-top: clamp(3rem,8vw,8rem); padding-bottom: clamp(5rem,10vw,9rem); }
.kc-eyebrow {
  margin: 0;
  color: #817566;
  font-size: .66rem;
  font-weight: 750;
  letter-spacing: .17em;
  line-height: 1.4;
  text-transform: uppercase;
}
.kc-eyebrow-dark { color: #615a51; }
.kc-display em,
.kc-page-intro em,
.kc-not-found em { color: var(--kc-amber); font-weight: 400; }
.kc-lede { max-width: 43rem; font-family: var(--kc-serif); font-size: clamp(1.25rem,2.2vw,1.72rem); line-height: 1.45; color: #585b54; }
.kc-body-large { max-width: 47rem; color: #62655e; font-family: var(--kc-serif); font-size: clamp(1.18rem,2vw,1.55rem); line-height: 1.55; }
.kc-text-link a { display: inline-flex; gap: .65rem; align-items: center; border-bottom: 1px solid #a9a69c; padding-bottom: .3rem; font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.kc-text-link a:hover { border-color: var(--kc-amber); }
.kc-actions { margin-top: 2rem; }
.wp-block-button.is-style-outline .wp-block-button__link { border-color: rgba(23,25,23,.35); color: var(--kc-ink); }
.wp-block-button__link:hover { transform: translateY(-2px); }

.kc-hero {
  position: relative;
  min-height: min(850px, calc(100vh - 90px));
  display: grid;
  align-items: center;
  overflow: hidden;
  padding-top: clamp(3.5rem,8vw,8rem);
  padding-bottom: 2rem;
  background:
    radial-gradient(circle at 84% 28%, rgba(117,108,96,.13), transparent 28%),
    radial-gradient(circle at 48% 0%, #f7f6f2 0, transparent 48%),
    linear-gradient(155deg, #f1efea 0%, #e7e4de 68%, #dedbd4 100%);
}
.kc-hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .16; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E"); }
.kc-hero-grid { position: relative; z-index: 1; gap: clamp(2.5rem,5vw,6rem); }
.kc-display { max-width: none; margin-top: 1.4rem; margin-bottom: 1.8rem; overflow-wrap: normal; word-break: normal; hyphens: none; font-size: clamp(4rem,7vw,7.5rem) !important; line-height: .94; }
.kc-brand-stage { position: relative; min-height: 490px; margin: 0; overflow: hidden; border: 1px solid rgba(61,61,57,.18); background: #e7e4de; box-shadow: 0 36px 80px rgba(43,42,38,.12); }
.kc-brand-stage > img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; }
.kc-place-photo a { color: inherit; text-decoration-color: currentColor; text-underline-offset: .15em; }
.kc-index-strip { position: relative; z-index: 2; margin-top: clamp(3rem,7vw,7rem); padding-top: 1.2rem; border-top: 1px solid rgba(23,25,23,.16); }
.kc-index-strip p { margin: 0; color: #797b74; font-size: .58rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }

.kc-section { padding-top: clamp(5rem,10vw,10rem); padding-bottom: clamp(5rem,10vw,10rem); }
.kc-manifesto { background: var(--kc-card); }
.kc-split { gap: clamp(2rem,7vw,8rem); }
.kc-section-heading { margin-bottom: 2.5rem; }
.kc-index { color: #888a82; font-size: .66rem; letter-spacing: .13em; }
.kc-principles { color: #e9e6dc; background: #1d211e; }
.kc-principles .kc-eyebrow { color: #b7aea2; }
.kc-principles .kc-index { color: #777d76; }
.kc-card-grid { gap: 1rem; }
.kc-principle-card { min-height: 285px; padding: clamp(1.5rem,3vw,2.4rem); border: 1px solid rgba(130,133,125,.3); background: rgba(255,255,255,.025); }
.kc-principle-card h3 { margin-top: 4rem; font-size: 1.85rem; }
.kc-principle-card p:last-child { color: #969b94; font-size: .92rem; }
.kc-manifesto .kc-principle-card,
.kc-page .kc-principle-card { color: var(--kc-ink); border-color: var(--kc-line); background: var(--kc-card); }
.kc-page .kc-principle-card p:last-child { color: #6e716a; }
.kc-card-number { margin: 0; color: #84786a; font-size: .61rem; font-weight: 750; letter-spacing: .15em; text-transform: uppercase; }
.kc-development { background: #dfddd7; }
.kc-development-grid { gap: clamp(3rem,8vw,10rem); }
.kc-formula-sheet { transform: rotate(1.4deg); padding: clamp(1.6rem,4vw,3rem); border: 1px solid #c9c0b1; background: rgba(251,250,246,.78); box-shadow: 0 30px 70px rgba(57,45,30,.12); }
.kc-formula-sheet > div { display: flex; justify-content: space-between; border-bottom: 1px solid #c7beb1; padding-bottom: 1rem; color: #6f6e67; font-size: .59rem; font-weight: 700; letter-spacing: .13em; }
.kc-formula-sheet ol { list-style: none; margin: 1.6rem 0; padding: 0; }
.kc-formula-sheet li { display: grid; grid-template-columns: 2rem 1fr auto; gap: 1rem; align-items: center; padding: .9rem 0; color: #74766f; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.kc-formula-sheet li i { height: 1px; background: #c9c0b1; }
.kc-formula-sheet li b { font-family: var(--kc-serif); font-size: 1.1rem; font-weight: 400; }
.kc-formula-sheet > p { margin: 0; color: #98958d; font-size: .56rem; letter-spacing: .1em; text-align: right; text-transform: uppercase; }
.kc-closing { text-align: center; color: #ece9df; background: var(--kc-charcoal); }
.kc-closing .wp-block-group { max-width: 850px; }
.kc-closing .kc-body-large { margin-right: auto; margin-left: auto; color: #aeb1aa; }
.kc-closing .wp-block-buttons { justify-content: center; margin-top: 2rem; }
.kc-closing .wp-block-button__link { background: #c9c2b8; color: #1f201e; }
.kc-closing .is-style-outline .wp-block-button__link { color: #eeeae0; border-color: #6f746e; background: transparent; }

.kc-page-intro { margin-bottom: clamp(4rem,9vw,9rem); }
.kc-page-intro h1 { max-width: 12ch; margin-top: 1.25rem; margin-bottom: 1.6rem; }
.kc-page-columns { gap: clamp(2rem,7vw,8rem); }
.kc-founder-roles { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 2.75rem; }
.kc-founder-role { padding: clamp(1.5rem,3vw,2.4rem); border: 1px solid var(--kc-line); background: rgba(247,246,242,.72); }
.kc-founder-role h3 { margin: .8rem 0 1.25rem; font-size: clamp(2rem,4vw,3rem); }
.kc-founder-role p:not(.kc-card-number) { color: #666961; line-height: 1.72; }
.kc-founder-role p:last-child { margin-bottom: 0; }
.kc-house-maxim { margin-top: 1.25rem; border-left: 2px solid var(--kc-amber); padding: 1.15rem 0 1.15rem 1.4rem; color: #54564f; font-family: var(--kc-serif); font-size: clamp(1.15rem,2vw,1.45rem); font-style: italic; line-height: 1.5; }
.kc-rule { margin-top: 5rem; margin-bottom: 5rem; border-color: var(--kc-line); }
.kc-place-note,
.kc-mission,
.kc-material-note { margin-top: clamp(4rem,9vw,9rem); }
.kc-place-note { padding: clamp(2rem,6vw,6rem); border: 1px solid var(--kc-line); background: #e4e2dc; }
.kc-place-photo { margin: 0 0 clamp(2rem,5vw,4rem); }
.kc-place-photo img { display: block; width: 100%; height: auto; aspect-ratio: 1.5; object-fit: cover; object-position: center; }
.kc-place-photo figcaption { margin-top: .7rem; color: #65665f; font: 700 .5rem/1.5 var(--kc-sans); letter-spacing: .11em; text-align: right; }
.kc-place-note h2,
.kc-mission h2,
.kc-material-note h2 { max-width: 15ch; }
.kc-mission { max-width: 980px; text-align: center; }
.kc-mission h2,
.kc-mission .kc-body-large { margin-right: auto; margin-left: auto; }
.kc-values-grid { margin-top: 3rem; flex-wrap: wrap !important; }
.kc-values-grid > .wp-block-column { flex-basis: calc(50% - .5rem) !important; }
.kc-material-note { padding-top: clamp(3rem,7vw,6rem); border-top: 1px solid var(--kc-line); }
.kc-release-card,
.kc-contact-card { margin-bottom: 4rem; padding: clamp(2rem,6vw,6rem); border: 1px solid var(--kc-line); background: var(--kc-card); box-shadow: 0 25px 70px rgba(51,43,29,.06); }
.kc-release-card h2,
.kc-contact-card h2 { max-width: 14ch; }
.kc-citrus-card { position: relative; overflow: hidden; background: linear-gradient(135deg,#f7f6f2 0%,#ebe8e1 70%,#d8d3ca 100%); }
.kc-citrus-card::after { content: ""; position: absolute; right: -7rem; bottom: -11rem; width: 27rem; aspect-ratio: 1; border: 1px solid rgba(105,98,88,.28); border-radius: 50%; box-shadow: inset 0 0 0 3.2rem rgba(255,255,255,.14), inset 0 0 0 3.3rem rgba(105,98,88,.12); pointer-events: none; }
.kc-citrus-card > * { position: relative; z-index: 1; }
.kc-citrus-card em { color: #71685c; font-weight: 400; }
.kc-note-pyramid { max-width: 800px; margin: 2.5rem 0; border-top: 1px solid #c8c3ba; }
.kc-note-pyramid > div { display: grid; grid-template-columns: 7rem 1fr; gap: 1.5rem; align-items: baseline; padding: .9rem 0; border-bottom: 1px solid #c8c3ba; }
.kc-note-pyramid span { color: #756d62; font-size: .56rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.kc-note-pyramid p { margin: 0; color: #4f504c; font-family: var(--kc-serif); font-size: 1rem; }
.kc-release-meta { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; max-width: 760px; margin: 2.5rem 0; border: 1px solid #cbc7bf; background: #cbc7bf; }
.kc-release-meta p { margin: 0; padding: 1rem; background: rgba(251,250,246,.86); font-family: var(--kc-serif); font-size: 1rem; }
.kc-release-meta span { display: block; margin-bottom: .35rem; color: #736d64; font: 700 .55rem/1.3 var(--kc-sans); letter-spacing: .12em; text-transform: uppercase; }
.kc-small-note { color: var(--kc-muted); font-size: .72rem; line-height: 1.55; }
.kc-edition-note { margin-top: clamp(4rem,8vw,8rem); margin-bottom: clamp(4rem,8vw,8rem); }
.kc-process-grid { gap: 0; }
.kc-process-grid .wp-block-column { padding: 2rem 1.4rem; border-top: 1px solid var(--kc-line); border-bottom: 1px solid var(--kc-line); }
.kc-process-grid .wp-block-column + .wp-block-column { border-left: 1px solid var(--kc-line); }
.kc-process-grid span { color: var(--kc-amber); font-size: .62rem; font-weight: 700; }
.kc-process-grid h3 { margin: 2.5rem 0 .75rem; font-size: 1.55rem; }
.kc-process-grid p { color: var(--kc-muted); font-size: .85rem; }
.kc-contact-intro { margin-bottom: 4rem; }
.kc-contact-layout { gap: clamp(1.5rem,5vw,5rem); align-items: flex-start !important; }
.kc-contact-aside { position: sticky; top: 2rem; padding-top: 1rem; }
.kc-contact-aside h2 { margin-top: 1rem; font-size: 2rem; }
.kc-contact-aside > p:not(.kc-card-number) { color: var(--kc-muted); }
.kc-contact-aside a { overflow-wrap: anywhere; }
.kc-contact-card { margin-bottom: 0; }
.kc-contact-card h2 { margin-top: .9rem; font-size: clamp(2rem,4vw,3.6rem); }
.kc-contact-note { margin-top: clamp(5rem,10vw,10rem); padding-top: clamp(3rem,7vw,6rem); border-top: 1px solid var(--kc-line); }
.kc-contact-form { margin-top: 2rem; }
.kc-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.kc-field { margin: 0 0 1.1rem; }
.kc-field label { display: block; margin-bottom: .45rem; color: #676960; font-size: .61rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.kc-field input,
.kc-field select,
.kc-field textarea { box-sizing: border-box; width: 100%; border: 1px solid #cbc8be; border-radius: 0; padding: .9rem 1rem; color: var(--kc-ink); background: #f8f6ef; font: inherit; outline: 0; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.kc-field textarea { min-height: 190px; resize: vertical; }
.kc-field input:focus,
.kc-field select:focus,
.kc-field textarea:focus { border-color: var(--kc-amber); background: #fbfaf7; box-shadow: 0 0 0 3px rgba(105,98,88,.1); }
.kc-field-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.kc-contact-submit { border: 0; border-radius: 999px; padding: .95rem 1.45rem; color: var(--kc-card); background: var(--kc-charcoal); cursor: pointer; font-size: .68rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; transition: transform .2s ease, background .2s ease; }
.kc-contact-submit:hover { transform: translateY(-2px); background: #343a35; }
.kc-contact-privacy { margin-top: 1rem; color: #85877f; font-size: .65rem; line-height: 1.55; }
.kc-form-notice { margin: 1rem 0 2rem; padding: 1rem 1.1rem; border-left: 3px solid var(--kc-moss); background: #edf1eb; color: #385343; font-size: .85rem; }
.kc-form-notice.is-error { border-color: #9a4d3f; background: #f5ebe7; color: #7c3f35; }

.kc-journal { padding-top: clamp(4rem,9vw,9rem); padding-bottom: clamp(5rem,10vw,9rem); }
.kc-post-query { margin-top: 4rem; }
.kc-post-query .wp-block-post-template { gap: 1rem; }
.kc-post-card { min-height: 260px; padding: 1.7rem; border: 1px solid var(--kc-line); background: var(--kc-card); }
.kc-post-card .wp-block-post-title { margin-top: 3.5rem; }
.kc-post-card .wp-block-post-title a { text-decoration: none; }
.kc-post-card .wp-block-post-excerpt { color: var(--kc-muted); font-size: .85rem; }
.kc-post-card .wp-block-post-excerpt__more-link { font-size: .65rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.kc-empty-notes { padding: 4rem; border: 1px dashed #bbb7ad; color: var(--kc-muted); text-align: center; }
.kc-single { padding-top: clamp(4rem,9vw,9rem); padding-bottom: clamp(5rem,10vw,9rem); }
.kc-single > h1 { max-width: 12ch; }
.kc-single .wp-block-post-content { margin-top: 3rem; font-family: var(--kc-serif); font-size: 1.18rem; }
.kc-single .wp-block-post-content h2 { margin-top: 3.5rem; }
.kc-signoff { margin-top: 3rem; color: #777970; font-family: var(--kc-sans); font-size: .72rem; font-weight: 650; letter-spacing: .07em; line-height: 1.8; text-transform: uppercase; }
.kc-not-found { min-height: 70vh; display: grid; align-content: center; padding-top: 4rem; padding-bottom: 6rem; }

.kc-site-footer { padding-top: 4rem; padding-bottom: 2rem; color: #b8bbb3; background: #171a18; }
.kc-footer-top { padding-bottom: 4rem; border-bottom: 1px solid #343934; }
.kc-footer-mark a { color: #f0ede4; }
.kc-footer-line { margin: 0; color: #7f847d; font-family: var(--kc-serif); font-size: 1rem; }
.kc-footer-bottom { padding-top: 1.5rem; }
.kc-footer-bottom p { margin: 0; color: #6f746d; font-size: .57rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.kc-photo-policy { margin: 2.2rem auto 0; color: #565b55; font-size: .48rem; font-weight: 700; letter-spacing: .1em; }

@media (max-width: 900px) {
  .kc-hero { min-height: auto; }
  .kc-hero-grid { flex-direction: column; }
  .kc-hero-grid > .wp-block-column { flex-basis: auto !important; width: 100%; }
  .kc-brand-stage { min-height: 410px; }
  .kc-vessel { width: 165px; height: 290px; }
  .kc-halo { width: 320px; }
  .kc-card-grid { flex-wrap: wrap !important; }
  .kc-card-grid > .wp-block-column { flex-basis: calc(50% - .5rem) !important; }
  .kc-process-grid { flex-wrap: wrap !important; }
  .kc-process-grid > .wp-block-column { flex-basis: 50% !important; }
  .kc-process-grid .wp-block-column:nth-child(3) { border-left: 0; }
}

@media (max-width: 640px) {
  .kc-site-header { padding-top: .85rem; padding-bottom: .85rem; }
  .kc-navigation .wp-block-navigation__responsive-container-open { display: flex; }
  .kc-hero { padding-top: 4rem; }
  .kc-display { font-size: clamp(3rem,13vw,4rem) !important; }
  .kc-lede { font-size: 1.18rem; }
  .kc-brand-stage { min-height: 345px; }
  .kc-vessel { width: 140px; height: 245px; }
  .kc-vessel::after { font-size: 2.5rem; }
  .kc-index-strip { display: grid !important; grid-template-columns: 1fr 1fr; gap: .8rem; }
  .kc-index-strip p:nth-child(even) { text-align: right; }
  .kc-split,
  .kc-development-grid,
  .kc-page-columns { flex-direction: column; }
  .kc-split > .wp-block-column,
  .kc-development-grid > .wp-block-column,
  .kc-page-columns > .wp-block-column { flex-basis: auto !important; width: 100%; }
  .kc-contact-layout { flex-direction: column; }
  .kc-contact-layout > .wp-block-column { flex-basis: auto !important; width: 100%; }
  .kc-contact-aside { position: static; }
  .kc-card-grid { flex-direction: column; }
  .kc-card-grid > .wp-block-column { flex-basis: auto !important; width: 100%; }
  .kc-principle-card { min-height: 245px; }
  .kc-principle-card h3 { margin-top: 3rem; }
  .kc-process-grid { flex-direction: column; }
  .kc-process-grid > .wp-block-column { flex-basis: auto !important; width: 100%; border-left: 0 !important; border-bottom: 0; }
  .kc-process-grid > .wp-block-column:last-child { border-bottom: 1px solid var(--kc-line); }
  .kc-release-meta { grid-template-columns: 1fr; }
  .kc-note-pyramid > div { grid-template-columns: 1fr; gap: .35rem; }
  .kc-field-row { grid-template-columns: 1fr; gap: 0; }
  .kc-post-query .wp-block-post-template { grid-template-columns: 1fr; }
  .kc-footer-top { display: grid !important; gap: 1rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}
