/* KAPNAM About v2.5: isolated from the original page templates. */
.kap-about-v250 {
  --ka-ink:#0a1c2d; --ka-muted:#536478; --ka-paper:#f5f1e8;
  --ka-gold:var(--kap-gold,#d6ad54); --ka-bright:var(--kap-gold-bright,#f0cf78);
  --ka-gap:clamp(28px,5.5vw,86px); color:var(--ka-ink); background:var(--ka-paper);
  font-family:inherit; width:100%;
}
.kap-about-v250 *, .kap-about-v250 *::before, .kap-about-v250 *::after { box-sizing:border-box; }
.kap-about-v250 .ka-container { width:min(1280px,calc(100% - 80px)); margin-inline:auto; min-width:0; }
.kap-about-v250 section { position:relative; scroll-margin-top:calc(var(--kap-header-h,84px) + 48px); }
.kap-about-v250 .ka-section { padding-block:clamp(72px,7.5vw,112px); }
.kap-about-v250 h1,.kap-about-v250 h2,.kap-about-v250 h3 { color:inherit; margin:0; font-weight:700; overflow-wrap:break-word; }
.kap-about-v250 .ka-heading { font-size:clamp(28px,3.5vw,46px); line-height:1.16; letter-spacing:-.035em; margin-bottom:36px; }
.kap-about-v250 .ka-heading::before,.kap-about-v250 .ka-title::before { content:""; display:block; width:42px; height:2px; background:var(--ka-gold); margin-bottom:24px; }
.kap-about-v250 .ka-copy { font-size:clamp(17px,1.4vw,19px); line-height:1.78; color:inherit; overflow-wrap:anywhere; }
.kap-about-v250 .ka-copy > :first-child { margin-top:0; }
.kap-about-v250 .ka-copy > :last-child { margin-bottom:0; }
.kap-about-v250 .ka-copy p { margin:0 0 1em; }
.kap-about-v250 .ka-copy + .ka-copy { margin-top:22px; }
.kap-about-v250 .ka-copy strong,.kap-about-v250 .ka-copy b { font-weight:800; }
.kap-about-v250 .ka-copy ul,.kap-about-v250 .ka-copy ol { padding-left:1.3em; }
.kap-about-v250 .ka-copy a { color:inherit; text-decoration:underline; text-underline-offset:4px; }
.kap-about-v250 .ka-image { width:100%; margin:0; position:relative; isolation:isolate; overflow:hidden; border-radius:18px; background:linear-gradient(140deg,#193957,#071827); }
.kap-about-v250 .ka-image img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; transition:transform .8s cubic-bezier(.22,1,.36,1); }
.kap-about-v250 .ka-image img[hidden] { display:none; }
.kap-about-v250 .ka-image::after { content:""; position:absolute; inset:0; border:1px solid rgba(255,255,255,.16); border-radius:inherit; background:linear-gradient(180deg,transparent 58%,rgba(6,19,32,.18)); pointer-events:none; }
.kap-about-v250 .ka-image.is-unavailable { background:radial-gradient(ellipse at 28% 20%,#2a5477 0%,#0a1b2e 65%); }
.kap-about-v250 .ka-image.is-unavailable img { visibility:hidden; }
.kap-about-v250 .ka-image.is-unavailable::after { background:url('../images/kapnam-k-symbol.png') center / 76px auto no-repeat; opacity:.7; }
/* Opening: one heading, two approved paragraphs, one editorial image. */
.kap-about-v250 .ka-hero { color:#f5f7fa; background:radial-gradient(ellipse at 3% 0%,#153756 0,transparent 64%),#071827; padding:calc(var(--kap-header-h,84px) + 64px) 0 84px; }
.kap-about-v250 .ka-hero__grid { display:grid; grid-template-columns:1.08fr .92fr; gap:var(--ka-gap); align-items:center; }
.kap-about-v250 .ka-hero__copy,.kap-about-v250 .ka-hero__visual { min-width:0; }
.kap-about-v250 .ka-title { font-size:clamp(36px,4.8vw,66px); line-height:1.08; letter-spacing:-.04em; margin-bottom:32px; }
.kap-about-v250 .ka-lead { font-size:clamp(23px,2.05vw,29px); line-height:1.49; letter-spacing:-.024em; font-weight:500; }
.kap-about-v250 .ka-support { color:#b7c5d2; font-size:clamp(17px,1.35vw,18px); line-height:1.78; padding-top:24px; border-top:1px solid rgba(225,231,239,.16); margin-top:30px !important; }
.kap-about-v250 .ka-image--hero { aspect-ratio:4/4.7; box-shadow:0 26px 70px rgba(0,0,0,.22); }
.kap-about-v250 .ka-hero__visual { position:relative; padding:18px 0 18px 18px; }
.kap-about-v250 .ka-hero__corner { position:absolute; left:0; top:0; bottom:0; width:48%; border:1px solid rgba(214,173,84,.65); border-right:0; border-radius:24px 0 0 24px; pointer-events:none; }
/* Opportunity */
.kap-about-v250 .ka-opportunity__grid { display:grid; grid-template-columns:1.03fr .97fr; gap:var(--ka-gap); align-items:center; }
.kap-about-v250 .ka-opportunity__copy { min-width:0; }
.kap-about-v250 .ka-opportunity .ka-copy { color:var(--ka-muted); }
.kap-about-v250 .ka-closing { color:var(--ka-ink) !important; padding:20px 0 0 22px; border-left:2px solid #b17c24; font-weight:600; }
.kap-about-v250 .ka-image--opportunity { aspect-ratio:4/4.7; }
/* Model cards retain full-card links without repeated navigation labels. */
.kap-about-v250 .ka-model { background:#091b2e; color:#f6f7f9; }
.kap-about-v250 .ka-model__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.kap-about-v250 .ka-model__item { min-width:0; display:flex; }
.kap-about-v250 .ka-model__card { display:flex; flex-direction:column; min-width:0; width:100%; color:inherit; text-decoration:none; border-radius:18px; border:1px solid rgba(255,255,255,.14); overflow:hidden; background:rgba(255,255,255,.03); transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease; }
.kap-about-v250 .ka-image--card { aspect-ratio:16/10; border-radius:0; }
.kap-about-v250 .ka-model__body { padding:24px 20px 28px; flex:1; }
.kap-about-v250 .ka-model__title-row { display:flex; gap:8px; justify-content:space-between; align-items:center; margin-bottom:14px; }
.kap-about-v250 .ka-model__title-row h3 { font-size:clamp(16px,1.3vw,19px); letter-spacing:.02em; line-height:1.3; }
.kap-about-v250 .ka-model__title-row > span { color:var(--ka-bright); flex:0 0 auto; }
.kap-about-v250 .ka-model__body .ka-copy { font-size:16px; color:#bfccd8; line-height:1.68; }
.kap-about-v250 .ka-model__connection { margin-top:40px; padding:28px 0 0; border-top:1px solid rgba(255,255,255,.16); }
.kap-about-v250 .ka-model__connection .ka-copy { max-width:1050px; font-size:clamp(21px,2vw,27px); line-height:1.55; letter-spacing:-.02em; color:#dde5ed; }
.kap-about-v250 .ka-experience { display:grid; grid-template-columns:.7fr 1.3fr; gap:var(--ka-gap); margin-top:64px; padding-top:42px; border-top:1px solid rgba(255,255,255,.16); align-items:start; }
.kap-about-v250 .ka-experience h3 { font-size:clamp(21px,2vw,28px); line-height:1.3; color:var(--ka-bright); max-width:22ch; letter-spacing:-.02em; }
.kap-about-v250 .ka-experience .ka-copy { color:#bfccd8; }
.kap-about-v250 .ka-image--wide { aspect-ratio:3.5; margin-top:36px; }
/* Philosophy */
.kap-about-v250 .ka-philosophy__grid { display:grid; grid-template-columns:1.1fr .9fr; gap:var(--ka-gap); align-items:stretch; }
.kap-about-v250 .ka-principles { min-width:0; }
.kap-about-v250 .ka-principle { display:grid; grid-template-columns:12px minmax(0,1fr); gap:20px; border-bottom:1px solid rgba(7,23,44,.16); padding:24px 0; }
.kap-about-v250 .ka-principle:first-child { padding-top:0; }
.kap-about-v250 .ka-principle:last-child { padding-bottom:0; border-bottom:0; }
.kap-about-v250 .ka-principle__mark { height:8px; width:8px; margin-top:11px; border:1px solid #ae741f; transform:rotate(45deg); }
.kap-about-v250 .ka-principle h3 { font-size:clamp(21px,1.9vw,25px); line-height:1.35; margin-bottom:10px; letter-spacing:-.025em; }
.kap-about-v250 .ka-principle .ka-copy { color:var(--ka-muted); font-size:17px; line-height:1.66; }
.kap-about-v250 .ka-philosophy__visual { min-width:0; }
.kap-about-v250 .ka-image--philosophy { height:100%; min-height:520px; }
/* Vision before the short founder introduction. */
.kap-about-v250 .ka-vision { color:#f5f7f9; background:radial-gradient(ellipse at 90% 15%,#204360 0,transparent 60%),#071827; }
.kap-about-v250 .ka-vision__grid { display:grid; grid-template-columns:1.03fr .97fr; gap:var(--ka-gap); align-items:center; }
.kap-about-v250 .ka-vision__statement { font-size:clamp(24px,2.35vw,33px); line-height:1.52; letter-spacing:-.026em; }
.kap-about-v250 .ka-image--vision { aspect-ratio:5/4; }
.kap-about-v250 .ka-founder { background:#ede8dd; }
.kap-about-v250 .ka-founder__grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(36px,7vw,110px); align-items:center; }
.kap-about-v250 .ka-image--founder { aspect-ratio:4/5; max-width:430px; box-shadow:0 20px 50px rgba(7,23,44,.08); }
.kap-about-v250 .ka-image--founder img { object-position:50% 18%; }
.kap-about-v250 .ka-founder__intro { font-size:clamp(22px,2.1vw,29px); line-height:1.52; letter-spacing:-.025em; }
.kap-about-v250 .ka-founder__signature { margin-top:32px; padding-top:24px; border-top:1px solid rgba(7,23,44,.2); display:flex; flex-direction:column; gap:3px; }
.kap-about-v250 .ka-founder__signature strong { font-size:22px; }
.kap-about-v250 .ka-founder__signature span { font-size:16px; color:var(--ka-muted); }
.kap-about-v250 .ka-founder__link { display:inline-flex; align-items:center; gap:28px; min-height:50px; padding:12px 0; margin-top:23px; border-bottom:1px solid #a87421; color:var(--ka-ink); font-weight:700; text-decoration:none; line-height:1.5; }
.kap-about-v250 .ka-founder__link > span:last-child { color:#936316; transition:transform .25s ease; }
.kap-about-v250 a:focus-visible { outline:3px solid var(--ka-gold); outline-offset:5px; }
@media (hover:hover) and (pointer:fine) {
  .kap-about-v250 .ka-model__card:hover { transform:translateY(-5px); border-color:rgba(214,173,84,.75); box-shadow:0 18px 34px rgba(0,0,0,.18); }
  .kap-about-v250 .ka-model__card:hover img { transform:scale(1.055); }
  .kap-about-v250 .ka-founder__link:hover > span:last-child { transform:translateX(6px); }
}
/* These are content-sized layouts, not viewport-sized panels or pinned sections. */
@media (max-width:1100px) {
  .kap-about-v250 .ka-model__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
  .kap-about-v250 .ka-hero__grid { grid-template-columns:1.08fr .92fr; gap:36px; }
  .kap-about-v250 .ka-hero__visual { padding-left:12px; }
  .kap-about-v250 .ka-opportunity__grid,.kap-about-v250 .ka-philosophy__grid,.kap-about-v250 .ka-vision__grid { gap:36px; }
}
@media (max-width:800px) {
  .kap-about-v250 .ka-container { width:calc(100% - 48px); }
  .kap-about-v250 .ka-hero { padding-top:calc(var(--kap-header-h,84px) + 42px); padding-bottom:60px; }
  .kap-about-v250 .ka-hero__grid,.kap-about-v250 .ka-opportunity__grid,.kap-about-v250 .ka-philosophy__grid,.kap-about-v250 .ka-vision__grid,.kap-about-v250 .ka-experience { grid-template-columns:1fr; gap:32px; }
  .kap-about-v250 .ka-image--hero { aspect-ratio:16/10; }
  .kap-about-v250 .ka-title { font-size:clamp(34px,7.4vw,54px); }
  .kap-about-v250 .ka-image--opportunity { aspect-ratio:16/10; }
  .kap-about-v250 .ka-philosophy__visual { margin-top:16px; }
  .kap-about-v250 .ka-image--philosophy { aspect-ratio:16/10; min-height:0; height:auto; }
  .kap-about-v250 .ka-image--vision { aspect-ratio:16/10; }
  .kap-about-v250 .ka-founder__grid { grid-template-columns:.8fr 1.2fr; gap:28px; align-items:start; }
  .kap-about-v250 .ka-founder .ka-heading { font-size:28px; }
  .kap-about-v250 .ka-founder__intro { font-size:21px; }
  .kap-about-v250 .ka-experience { margin-top:44px; padding-top:32px; gap:18px; }
  .kap-about-v250 .ka-image--wide { aspect-ratio:2.4; }
}
@media (max-width:560px) {
  .kap-about-v250 .ka-container { width:calc(100% - 36px); }
  .kap-about-v250 .ka-section { padding-block:60px; }
  .kap-about-v250 .ka-title { font-size:clamp(30px,8.6vw,44px); margin-bottom:26px; }
  .kap-about-v250 .ka-lead { font-size:22px; }
  .kap-about-v250 .ka-heading { font-size:28px; margin-bottom:28px; }
  .kap-about-v250 .ka-copy { font-size:16px; line-height:1.75; }
  .kap-about-v250 .ka-lead { font-size:22px; line-height:1.5; }
  .kap-about-v250 .ka-support { font-size:16px; }
  .kap-about-v250 .ka-hero__visual { padding:12px 0 12px 12px; }
  .kap-about-v250 .ka-image { border-radius:13px; }
  .kap-about-v250 .ka-image--hero,.kap-about-v250 .ka-image--opportunity { aspect-ratio:6/5; }
  .kap-about-v250 .ka-model__grid { grid-template-columns:1fr; gap:22px; }
  .kap-about-v250 .ka-model__title-row h3 { font-size:18px; }
  .kap-about-v250 .ka-model__connection .ka-copy { font-size:22px; }
  .kap-about-v250 .ka-principle { gap:14px; }
  .kap-about-v250 .ka-principle h3 { font-size:21px; }
  .kap-about-v250 .ka-principle .ka-copy { font-size:16px; }
  .kap-about-v250 .ka-image--wide { aspect-ratio:16/10; }
  .kap-about-v250 .ka-vision__statement { font-size:25px; line-height:1.52; }
  .kap-about-v250 .ka-founder__grid { grid-template-columns:1fr; gap:34px; }
  .kap-about-v250 .ka-image--founder { max-width:360px; margin-inline:auto; }
  .kap-about-v250 .ka-founder__intro { font-size:23px; }
}
@media (prefers-reduced-motion:reduce) {
  .kap-about-v250 * { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
/* Do not shrink the full page with a CSS transform while editing. */
body.kap-builder-active .kap-about-v250 .ka-container { width:calc(100% - 48px); }
@media (min-width:981px) {
  body.kap-builder-active .kap-about-v250 .ka-hero__grid,
  body.kap-builder-active .kap-about-v250 .ka-opportunity__grid,
  body.kap-builder-active .kap-about-v250 .ka-philosophy__grid,
  body.kap-builder-active .kap-about-v250 .ka-vision__grid { gap:28px; }
  body.kap-builder-active .kap-about-v250 .ka-model__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Stretched semantic heading links keep the whole card clickable without
   nesting links added inside rich-text paragraphs. */
.kap-about-v250 .ka-model__card { position:relative; }
.kap-about-v250 .ka-model__title-row h3 > a { color:inherit; text-decoration:none; }
.kap-about-v250 .ka-model__title-row h3 > a::after { content:""; position:absolute; inset:0; z-index:1; }
.kap-about-v250 .ka-model__body .ka-copy a { position:relative; z-index:2; }
.kap-about-v250 .ka-model__card:focus-within { outline:3px solid var(--ka-gold); outline-offset:4px; }
