/* Design changes are developed and reviewed on staging before production. */
:root { --kai-ink:#20201d; --kai-muted:#76756e; --kai-paper:#f5f4ef; --kai-accent:#e1ff5b; --kai-line:rgba(32,32,29,.16); }
.kai-home { color:var(--kai-ink); background:var(--kai-paper); font-family:inherit; }
.kai-site-header{position:relative;z-index:5;background:var(--kai-paper)}.kai-header-inner{height:76px;display:flex;align-items:center;justify-content:space-between}.kai-brand{color:var(--kai-ink);font-size:19px;font-weight:700;letter-spacing:-.04em;text-decoration:none}.kai-brand span{color:#9ba373;margin-left:3px}.kai-site-header nav>ul{display:flex!important;align-items:center;gap:26px;margin:0!important;padding:0!important;list-style:none!important}.kai-site-header nav li{position:relative;margin:0!important;padding:0!important;list-style:none!important}.kai-site-header nav a{display:block;color:var(--kai-ink);font-size:13px;text-decoration:none;white-space:nowrap}.kai-site-header nav a:hover{color:#777c58}.kai-nav-dropdown>a span{font-size:15px;margin-left:3px}.kai-nav-dropdown>ul{position:absolute;top:calc(100% + 14px);left:-18px;display:block!important;min-width:170px;margin:0!important;padding:9px!important;background:#fff;border:1px solid var(--kai-line);box-shadow:8px 10px 0 rgba(32,32,29,.08);opacity:0!important;visibility:hidden!important;transform:translateY(-5px);transition:opacity .18s ease,transform .18s ease,visibility .18s;list-style:none!important}.kai-nav-dropdown:hover>ul,.kai-nav-dropdown:focus-within>ul{opacity:1!important;visibility:visible!important;transform:translateY(0)}.kai-nav-dropdown>ul li{padding:0!important}.kai-nav-dropdown>ul a{padding:10px 9px;font-size:12px}.kai-nav-dropdown>ul a:hover{background:var(--kai-paper)}.kai-site-footer{background:var(--kai-ink);color:#aaa99f;font-size:11px;letter-spacing:.04em}.kai-footer-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between}.kai-principles{padding:32px 0;background:#dedfd2;color:#55564e}.kai-principles p:last-child{max-width:680px;margin:0;font-size:14px;line-height:1.7}
.kai-about-page{background:#fff;color:var(--kai-ink)}.kai-about-intro{padding:clamp(100px,15vw,190px) 0;background:linear-gradient(125deg,#f5f4ef,#e5e8d8)}.kai-about-intro h1{margin:0;font-size:clamp(52px,9vw,112px);line-height:.95;letter-spacing:-.07em}.kai-about-intro h1 em{font-style:normal;color:#777c58}.kai-about-lede{max-width:500px;margin:35px 0 0;font-size:20px;line-height:1.7;color:var(--kai-muted)}.kai-about-body{padding:110px 0}.kai-about-body-grid{display:grid;grid-template-columns:1fr 2fr;gap:24px}.kai-about-body-grid>div:last-child{max-width:640px;font-size:20px;line-height:1.85}.kai-about-body-grid p{margin:0 0 22px}.kai-about-note{padding-top:26px;border-top:1px solid var(--kai-line);font-size:14px;color:var(--kai-muted)}
.kai-principles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;max-width:900px}.kai-principles-grid p{margin:0;font-size:16px;line-height:1.8}
.kai-container { width:min(1160px,calc(100% - 48px)); margin-inline:auto; }
.kai-hero { min-height:clamp(620px,78vh,820px); display:grid; align-items:center; background:linear-gradient(125deg,#f5f4ef 0%,#efeee7 62%,#e4e8d7 100%); }
.kai-hero-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr); gap:8vw; align-items:center; }
.kai-eyebrow { margin:0 0 22px; font-size:11px; font-weight:700; letter-spacing:.18em; color:var(--kai-muted); }
.kai-hero h1 { max-width:760px; margin:0; font-size:clamp(48px,8vw,104px); line-height:.98; letter-spacing:-.065em; font-weight:700; }
.kai-hero h1 em { color:#777c58; font-style:normal; }
.kai-lede { max-width:510px; margin:32px 0 0; color:var(--kai-muted); font-size:18px; line-height:1.75; }
.kai-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:38px; }
.kai-button { display:inline-flex; gap:16px; align-items:center; padding:14px 21px; border-radius:99px; font-size:14px; font-weight:600; text-decoration:none; transition:transform .2s ease,background .2s ease; }
.kai-button:hover { transform:translateY(-2px); }
.kai-button-primary { background:var(--kai-ink); color:#fff; }.kai-button-primary:hover{background:#45453d;color:#fff}.kai-button-quiet { color:var(--kai-ink); border:1px solid var(--kai-line); }
.kai-hero-note { justify-self:end; width:min(290px,100%); aspect-ratio:1; padding:34px; display:flex; flex-direction:column; justify-content:space-between; background:var(--kai-accent); transform:rotate(5deg); box-shadow:18px 20px 0 rgba(32,32,29,.08); }
.kai-note-mark { font-size:38px; }.kai-hero-note p { margin:0; font-size:25px; line-height:1.45; letter-spacing:-.03em; }.kai-hero-note strong{font-size:30px}.kai-note-line{width:100%;height:1px;background:rgba(32,32,29,.3)}.kai-hero-note small{font-size:9px;letter-spacing:.14em}
.kai-section { padding:clamp(90px,12vw,160px) 0; }.kai-work { background:#fff; }.kai-section-heading { display:grid; grid-template-columns:1fr 2fr; align-items:end; gap:24px; margin-bottom:58px; }.kai-section-heading h2,.kai-about h2{margin:0;font-size:clamp(38px,5vw,68px);line-height:1;letter-spacing:-.06em}.kai-section-heading>p:last-child{margin:0;color:var(--kai-muted);line-height:1.7}
.kai-work-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.kai-card{min-height:300px;padding:30px;border:1px solid var(--kai-line);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.kai-card:hover{transform:translateY(-5px);box-shadow:8px 10px 0 rgba(32,32,29,.08)}.kai-card-featured{background:var(--kai-accent);border-color:transparent}.kai-card-meta{margin:0;color:var(--kai-muted);font-size:10px;font-weight:700;letter-spacing:.15em}.kai-card h3{margin:48px 0 14px;font-size:27px;line-height:1.12;letter-spacing:-.04em}.kai-card h3 a{color:inherit}.kai-card>p:not(.kai-card-meta){margin:0;color:var(--kai-muted);line-height:1.7}.kai-card-link,.kai-text-link{margin-top:auto;color:var(--kai-ink);font-size:13px;font-weight:700;text-decoration:none}.kai-card-link span,.kai-text-link span{margin-left:8px}
.kai-about { background:var(--kai-ink); color:#f5f4ef; }.kai-about-grid{display:grid;grid-template-columns:1fr 2fr;gap:24px}.kai-about .kai-eyebrow{color:#aaa99f}.kai-about h2{font-size:clamp(48px,7vw,94px)}.kai-about div>p{max-width:490px;margin:38px 0;color:#aaa99f;font-size:18px;line-height:1.75}.kai-about .kai-text-link{color:var(--kai-accent)}
@media (max-width:760px){.kai-container{width:min(100% - 32px,560px)}.kai-header-inner{height:auto;min-height:68px;align-items:flex-start;padding-top:18px;padding-bottom:15px;flex-direction:column;gap:14px}.kai-site-header nav{width:100%;overflow:visible}.kai-site-header nav>ul{width:100%;justify-content:space-between;gap:8px}.kai-site-header nav a{font-size:12px}.kai-nav-dropdown>ul{position:static;display:none!important;min-width:0;margin-top:8px;padding:4px;box-shadow:none}.kai-nav-dropdown:hover>ul,.kai-nav-dropdown:focus-within>ul{display:block!important;opacity:1!important;visibility:visible!important}.kai-hero{min-height:auto;padding:85px 0 75px}.kai-hero-grid,.kai-section-heading,.kai-about-grid{grid-template-columns:1fr}.kai-hero-note{justify-self:start;width:220px;margin-top:55px}.kai-work-grid{grid-template-columns:1fr}.kai-card{min-height:250px}.kai-card h3{margin-top:34px}.kai-section{padding:78px 0}}

/* Utility-first information architecture. */
.kai-featured{background:#fff}.kai-feature-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px}.kai-feature{min-height:270px;padding:30px;border:1px solid var(--kai-line);display:flex;flex-direction:column;color:var(--kai-ink);text-decoration:none}.kai-feature:hover{color:var(--kai-ink);transform:translateY(-4px);box-shadow:8px 10px 0 rgba(32,32,29,.08)}.kai-feature-main{background:var(--kai-accent);border-color:transparent}.kai-feature h3{margin:46px 0 14px;font-size:26px;line-height:1.15;letter-spacing:-.04em}.kai-feature p{margin:0;color:var(--kai-muted);line-height:1.7}.kai-feature .kai-card-link{margin-top:auto}.kai-toolbox{background:#efeee7}.kai-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--kai-line);border-bottom:1px solid var(--kai-line)}.kai-tool-grid>div{min-height:220px;padding:26px 22px;border-right:1px solid var(--kai-line)}.kai-tool-grid>div:last-child{border-right:0}.kai-tool-number{font-size:12px;color:var(--kai-muted);letter-spacing:.12em}.kai-tool-grid h3{margin:52px 0 10px;font-size:22px;letter-spacing:-.03em}.kai-tool-grid p{margin:0;color:var(--kai-muted);line-height:1.65}.kai-research{background:#fff}.kai-post-list{border-top:1px solid var(--kai-line)}.kai-post-list article{display:grid;grid-template-columns:1fr 2fr 2fr auto;gap:22px;align-items:center;padding:27px 0;border-bottom:1px solid var(--kai-line)}.kai-post-list h3{margin:0;font-size:23px;letter-spacing:-.03em}.kai-post-list h3 a{color:var(--kai-ink)}.kai-post-list article>p{margin:0;color:var(--kai-muted);line-height:1.55}.kai-post-list .kai-card-link{margin:0;white-space:nowrap}.kai-notes{background:var(--kai-ink);color:#f5f4ef}.kai-notes-grid{display:grid;grid-template-columns:1fr 2fr;gap:24px}.kai-notes .kai-eyebrow{color:#aaa99f}.kai-notes h2{margin:0;font-size:clamp(48px,7vw,94px);line-height:1;letter-spacing:-.06em}.kai-notes p:not(.kai-eyebrow){max-width:500px;margin:38px 0;color:#aaa99f;font-size:18px;line-height:1.75}.kai-notes .kai-text-link{color:var(--kai-accent)}
@media (max-width:760px){.kai-feature-grid,.kai-tool-grid{grid-template-columns:1fr}.kai-tool-grid>div{border-right:0;border-bottom:1px solid var(--kai-line);min-height:170px}.kai-tool-grid>div:last-child{border-bottom:0}.kai-tool-grid h3{margin-top:30px}.kai-post-list article{grid-template-columns:1fr;gap:9px}.kai-post-list .kai-card-link{margin-top:7px}.kai-notes-grid{grid-template-columns:1fr}}
@media (max-width:760px){.kai-about-intro{padding:82px 0}.kai-about-body{padding:78px 0}.kai-about-body-grid{grid-template-columns:1fr;gap:30px}.kai-about-body-grid>div:last-child{font-size:17px}}
@media (max-width:760px){.kai-principles-grid{grid-template-columns:1fr;gap:16px}.kai-principles-grid p{font-size:14px}}

/* Navigation isolation: keep Blocksy's list defaults out of the custom menu. */
.kai-site-header nav > ul,
.kai-site-header nav > ul ul,
.kai-site-header nav > ul li { margin:0!important; padding:0!important; list-style:none!important; }
.kai-site-header nav > ul > li { position:relative; }
.kai-site-header nav > ul > li > ul { display:block!important; pointer-events:none!important; opacity:0!important; visibility:hidden!important; }
.kai-site-header nav > ul > li:hover > ul,
.kai-site-header nav > ul > li:focus-within > ul,
.kai-site-header nav > ul > li.is-open > ul { pointer-events:auto!important; opacity:1!important; visibility:visible!important; transform:translateY(0); }
.kai-menu-toggle { display:block; border:0; margin:0; padding:0; color:var(--kai-ink); background:transparent; font:inherit; font-size:13px; line-height:1.4; white-space:nowrap; cursor:pointer; }
.kai-menu-toggle:hover,.kai-menu-toggle:focus-visible { color:#777c58; }
.kai-menu-toggle span { font-size:15px; margin-left:3px; }
@media (max-width:760px){
    .kai-site-header nav > ul { align-items:flex-start; flex-wrap:wrap; }
    .kai-site-header nav > ul > li > ul { position:static; display:none!important; min-width:0; margin-top:8px!important; padding:4px!important; box-shadow:none; transform:none; }
    .kai-site-header nav > ul > li.is-open > ul { display:block!important; }
    .kai-site-header nav > ul > li > ul a { padding:8px 9px; }
}

/* Refined navigation and full-page editorial routes. */
.kai-site-header nav > ul { gap:6px!important; }
.kai-site-header nav > ul > li > a,
.kai-menu-toggle { padding:9px 12px; border:1px solid transparent; border-radius:999px; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.kai-site-header nav > ul > li > a:hover,
.kai-menu-toggle:hover,
.kai-menu-toggle:focus-visible,
.kai-nav-dropdown.is-open > .kai-menu-toggle { background:#e8eadc; border-color:rgba(32,32,29,.1); color:var(--kai-ink); }
.kai-nav-dropdown > ul { left:0; min-width:205px; padding:8px!important; border-radius:14px; }
.kai-nav-dropdown::after { content:""; position:absolute; top:100%; left:0; width:100%; height:14px; }
.kai-nav-dropdown > ul a { border-radius:8px; }
.kai-menu-home { margin-bottom:5px!important; padding-bottom:5px!important; border-bottom:1px solid var(--kai-line); }
.kai-menu-home a { font-weight:700; }
.kai-section-page { color:var(--kai-ink); background:var(--kai-paper); }
.kai-section-page-hero { padding:clamp(105px,14vw,180px) 0 90px; background:linear-gradient(125deg,#f5f4ef 0%,#efeee7 62%,#e4e8d7 100%); }
.kai-back-link { display:inline-block; margin-bottom:48px; color:var(--kai-muted); font-size:13px; text-decoration:none; }
.kai-back-link:hover { color:var(--kai-ink); }
.kai-section-page h1 { max-width:800px; margin:0; font-size:clamp(58px,10vw,124px); line-height:.94; letter-spacing:-.07em; }
.kai-section-page-lede { max-width:540px; margin:34px 0 0; color:var(--kai-muted); font-size:20px; line-height:1.7; }
.kai-section-page-body { padding:clamp(72px,10vw,130px) 0; background:#fff; }
.kai-section-page-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.kai-section-page-card { min-height:270px; padding:30px; display:flex; flex-direction:column; color:var(--kai-ink); border:1px solid var(--kai-line); text-decoration:none; transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.kai-section-page-card:hover,.kai-section-page-card.is-active { background:var(--kai-accent); border-color:transparent; transform:translateY(-4px); box-shadow:8px 10px 0 rgba(32,32,29,.08); }
.kai-section-page-card h2 { margin:54px 0 14px; font-size:27px; letter-spacing:-.04em; }
.kai-section-page-card p { margin:0; color:var(--kai-muted); line-height:1.7; }
.kai-section-page-card .kai-card-link { margin-top:auto; }
.kai-topic-focus { max-width:700px; margin-bottom:48px; padding:28px 30px; background:var(--kai-accent); }
.kai-topic-focus h2 { margin:0 0 12px; font-size:34px; letter-spacing:-.04em; }
.kai-topic-focus p:not(.kai-eyebrow) { margin:0 0 24px; color:#56574c; line-height:1.7; }
.kai-about-thesis { max-width:680px; margin-top:0!important; color:var(--kai-ink); font-size:24px; line-height:1.55!important; letter-spacing:-.025em; }
.kai-about-pillars { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:38px 0 42px; }
.kai-about-pillars > div { padding:20px; background:#efeee7; border-top:2px solid #777c58; }
.kai-about-pillars span { color:var(--kai-muted); font-size:10px; font-weight:700; letter-spacing:.16em; }
.kai-about-pillars h2 { margin:26px 0 8px; font-size:20px; letter-spacing:-.03em; }
.kai-about-pillars p { margin:0; color:var(--kai-muted); font-size:14px; line-height:1.65; }
@media (max-width:760px){
    .kai-site-header nav > ul { gap:4px!important; }
    .kai-site-header nav > ul > li > a,.kai-menu-toggle { padding:8px 10px; }
    .kai-nav-dropdown > ul { border-radius:10px; }
    .kai-section-page-hero { padding:78px 0 68px; }
    .kai-back-link { margin-bottom:34px; }
    .kai-section-page-lede { font-size:17px; }
    .kai-section-page-grid { grid-template-columns:1fr; }
    .kai-section-page-card { min-height:220px; }
    .kai-about-thesis { font-size:20px; }
    .kai-about-pillars { grid-template-columns:1fr; }
}
@media (min-width:761px){
    .kai-nav-dropdown:hover > ul,
    .kai-nav-dropdown:focus-within > ul { pointer-events:auto!important; opacity:1!important; visibility:visible!important; transform:translateY(0); }
}

/* Banner system: CSS-native diagrams keep each section light, distinct and easy to evolve. */
.kai-section-page-hero .kai-container,.kai-about-intro .kai-container { position:relative; }
.kai-banner-art { position:absolute; top:50%; right:0; width:360px; height:220px; transform:translateY(-40%); pointer-events:none; }
.kai-art-line { position:absolute; top:50%; left:12%; width:76%; height:1px; background:rgba(32,32,29,.28); transform:rotate(-12deg); }
.kai-art-module { position:absolute; width:92px; height:64px; border:1px solid rgba(32,32,29,.32); background:rgba(245,244,239,.7); box-shadow:8px 8px 0 rgba(32,32,29,.07); }
.kai-art-module::after { content:""; position:absolute; left:14px; right:14px; bottom:14px; height:1px; background:rgba(32,32,29,.25); box-shadow:0 -8px 0 rgba(32,32,29,.16); }
.kai-art-module-a { top:17%; left:7%; transform:rotate(-7deg); }.kai-art-module-b { top:5%; right:7%; transform:rotate(6deg); }.kai-art-module-c { bottom:7%; left:22%; transform:rotate(5deg); background:var(--kai-accent); border-color:transparent; }.kai-art-module-d { bottom:2%; right:18%; transform:rotate(-8deg); }
.kai-art-orbit { position:absolute; border:1px solid rgba(32,32,29,.3); border-radius:50%; transform:rotate(-18deg); }.kai-art-orbit-a { inset:16% 8% 19% 8%; }.kai-art-orbit-b { inset:3% 22% 31% 22%; border-color:rgba(119,124,88,.52); transform:rotate(37deg); }.kai-art-node { position:absolute; width:12px; height:12px; border-radius:50%; background:var(--kai-ink); box-shadow:0 0 0 6px rgba(32,32,29,.08); }.kai-art-node-a { top:27%; left:18%; }.kai-art-node-b { right:17%; top:46%; background:#777c58; }.kai-art-node-c { left:43%; bottom:14%; background:var(--kai-accent); }
.kai-art-index { position:absolute; width:180px; height:120px; border:1px solid rgba(32,32,29,.28); background:rgba(255,255,255,.55); box-shadow:10px 10px 0 rgba(32,32,29,.06); }.kai-art-index::after { content:""; position:absolute; top:30px; left:24px; width:105px; height:1px; background:rgba(32,32,29,.23); box-shadow:0 15px 0 rgba(32,32,29,.17),0 30px 0 rgba(32,32,29,.17); }.kai-art-index-a { top:7%; left:8%; transform:rotate(-7deg); }.kai-art-index-b { top:16%; left:18%; transform:rotate(3deg); background:#e4e8d7; }.kai-art-index-c { top:25%; left:28%; transform:rotate(11deg); background:var(--kai-accent); border-color:transparent; }.kai-art-index-label { position:absolute; right:15%; bottom:8%; font-size:28px; letter-spacing:.12em; color:rgba(32,32,29,.65); }
.kai-art-note-sheet { position:absolute; top:5%; left:24%; width:170px; height:185px; background:#fff; border:1px solid rgba(32,32,29,.18); box-shadow:15px 15px 0 rgba(32,32,29,.08); transform:rotate(7deg); }.kai-art-note-sheet::before { content:""; position:absolute; inset:22px 23px; background:repeating-linear-gradient(to bottom,transparent 0 18px,rgba(32,32,29,.16) 19px 20px); }.kai-art-note-line { position:absolute; width:65px; height:1px; background:#777c58; }.kai-art-note-line-a { top:22%; left:5%; transform:rotate(-16deg); }.kai-art-note-line-b { right:3%; bottom:20%; transform:rotate(-16deg); background:var(--kai-accent); }.kai-art-note-star { position:absolute; right:8%; top:13%; font-size:28px; color:var(--kai-ink); }
.kai-art-path { position:absolute; top:55%; left:7%; width:86%; height:1px; background:rgba(32,32,29,.34); transform:rotate(-17deg); transform-origin:left center; }.kai-art-path::before,.kai-art-path::after { content:""; position:absolute; width:90px; height:1px; background:rgba(119,124,88,.52); }.kai-art-path::before { left:28%; top:-22px; transform:rotate(32deg); }.kai-art-path::after { left:63%; top:25px; transform:rotate(-30deg); }.kai-art-path-node { position:absolute; display:grid; place-items:center; width:35px; height:35px; border-radius:50%; background:var(--kai-paper); border:1px solid rgba(32,32,29,.35); font-size:10px; letter-spacing:.08em; }.kai-art-path-node-a { left:5%; top:57%; }.kai-art-path-node-b { left:43%; top:28%; background:#e4e8d7; }.kai-art-path-node-c { right:4%; top:7%; background:var(--kai-accent); border-color:transparent; }
@media (max-width:760px){
    .kai-banner-art { position:relative; top:auto; right:auto; width:min(100%,320px); height:170px; margin:42px 0 0 auto; transform:none; }
    .kai-art-module { width:78px; height:54px; }.kai-art-index { width:155px; height:102px; }.kai-art-note-sheet { width:145px; height:155px; }
    .kai-about-intro .kai-banner-art { margin-top:36px; }
}
