
#kh{color-scheme:light;background:#fff;color:#242923;font-family:'Golos Text',sans-serif;--kh-line:#dedfd8;--kh-green:#344738;overflow:hidden}#kh *{box-sizing:border-box}#kh a{color:inherit;text-decoration:none}#kh button{font:inherit;cursor:pointer;background:transparent;color:inherit;border:0;padding:10px}#kh button[aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}#kh header{padding:22px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}#kh .brand{letter-spacing:.17em;font-weight:500}#kh nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap}#kh .langs{white-space:nowrap}#kh .intro{padding:32px 32px 28px;display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:end}#kh h1,#kh h2,#kh h3{font-family:inherit;font-weight:400;letter-spacing:-.035em;margin:0}#kh p{margin:0 0 16px}#kh .eyebrow{letter-spacing:.08em;margin-bottom:16px;color:#56604f}#kh .stage{position:relative;aspect-ratio:1672/941;background:#fff;overflow:hidden}#kh .stage img{display:block;width:100%;height:100%;object-fit:contain}#kh .trace{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}#kh .trace path{fill:none;stroke:#515b4b;stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}#kh .playing .hero-img{animation:kh-reveal 4.8s cubic-bezier(.2,.6,.3,1) both}#kh .playing .trace{animation:kh-outline 4.8s linear both}#kh .playing .trace path{stroke-dasharray:1;stroke-dashoffset:1;animation:kh-draw 1.8s ease both}#kh .playing .trace .detail{animation-delay:.4s}#kh .playing .intro h1{animation:kh-heading 4.8s ease both}#kh .caption{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:14px 32px;border-bottom:1px solid var(--kh-line)}#kh .caption button{border-bottom:1px solid var(--kh-line)}#kh .section{padding:64px 32px}#kh .section-head{display:flex;justify-content:space-between;gap:24px;align-items:baseline;margin-bottom:28px}#kh .projects{display:grid;grid-template-columns:1.15fr 1fr;gap:28px}#kh figure{margin:0}#kh .project img{width:100%;aspect-ratio:1.6;object-fit:cover;display:block}#kh .project:nth-child(2){padding-top:60px}#kh figcaption{border-top:1px solid var(--kh-line);padding-top:14px;margin-top:12px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}#kh .split{display:grid;grid-template-columns:1fr 1.5fr;gap:60px}#kh .approach{background:#f4f3ef}#kh .statement{border-left:2px solid #a5ae98;padding-left:24px}#kh .services{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:32px}#kh .service{border-top:1px solid var(--kh-line);padding-top:20px}#kh .service h3{margin:14px 0}#kh .steps{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid var(--kh-line);color:#56604f}#kh .steps span{flex:1;min-width:130px}#kh .journal{padding-top:0}#kh details{border-top:1px solid var(--kh-line);padding:20px 0}#kh summary{cursor:pointer;display:flex;justify-content:space-between;gap:22px;align-items:baseline}#kh details p{max-width:650px;margin:18px 0 0;color:#56604f}#kh .contact{background:var(--kh-green);color:#fff}#kh .contact .eyebrow{color:#d8dfd0}#kh .contact h2{margin-bottom:20px}#kh .contact-link{display:inline-block;padding:14px 0;border-bottom:1px solid #b9c6b4;margin-top:8px}#kh footer{background:var(--kh-green);color:#d8dfd0;padding:24px 32px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #65735f}#kh a:hover{text-decoration:underline;text-underline-offset:5px}@keyframes kh-draw{to{stroke-dashoffset:0}}@keyframes kh-outline{0%,42%{opacity:1}72%,100%{opacity:0}}@keyframes kh-reveal{0%,30%{clip-path:inset(0 100% 0 0);opacity:0}38%{opacity:1}85%,100%{clip-path:inset(0);opacity:1}}@keyframes kh-heading{0%,45%{opacity:0;transform:translateY(10px)}85%,100%{opacity:1;transform:none}}@media(max-width:620px){#kh header{padding:16px;flex-wrap:wrap}#kh nav{gap:12px}#kh .intro,#kh .split,#kh .projects,#kh .services{grid-template-columns:1fr;gap:24px}#kh .intro{padding:24px 16px}#kh .section{padding:40px 16px}#kh .project:nth-child(2){padding-top:0}#kh .caption{padding:12px 16px}#kh .section-head{flex-direction:column;gap:12px}#kh .journal{padding-top:0}#kh footer{padding:20px 16px}}@media(prefers-reduced-motion:reduce){#kh .playing .hero-img,#kh .playing .intro h1{animation:none}#kh .playing .trace{display:none}}
#kh{color:#242923!important;background:#ffffff!important;color-scheme:light!important;isolation:isolate;width:100%;max-width:100%}
#kh :is(h1,h2,h3,h4,p,span,a,button,summary,figcaption,details,nav,div,figure){color:inherit!important;-webkit-text-fill-color:currentColor!important}
#kh :is(header,.intro,.caption,.section,.projects,.project,figcaption,details){color:#242923!important}
#kh :is(h1,h2,h3,p,span,a,button,summary,figcaption){background-color:transparent!important;text-shadow:none!important}
#kh .contact,#kh footer{color:#fff!important;background:#344738!important}
#kh .contact :is(div,h2,p,a,span),#kh footer :is(span,a){color:#fff!important}
#kh .projects{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
#kh .project:nth-child(2){padding-top:0!important}
#kh .project{min-width:0}
#kh .project a{display:block}
#kh .project img{aspect-ratio:16/9!important;width:100%;height:auto;opacity:1!important;filter:none!important}
#kh figcaption{align-items:baseline;gap:8px 14px}
#kh .intro>* ,#kh .split>*,#kh .service{min-width:0}
#kh :is(h1,h2,h3,p,a,span){overflow-wrap:break-word}
@media(max-width:620px){#kh .projects{grid-template-columns:minmax(0,1fr)}}
#kh .intro{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:center;padding-top:38px;padding-bottom:36px}
#kh .intro h1{animation:none!important;text-wrap:balance}
#kh .intro h1 .title-line{display:block;color:#344738!important}
#kh .intro h1 .title-line:last-child{color:#8b603b!important}
#kh .intro p{max-width:36em;text-wrap:pretty}
#kh .intro .kh-cta{display:inline-flex;align-items:center;justify-content:center;background:#344738!important;color:#fff!important;padding:14px 22px;margin-top:8px;border-radius:2px;text-decoration:none}
#kh .intro .kh-cta:hover{background:#465b40!important}
#kh .eyebrow,#kh .service>span{color:#8b603b!important}
#kh .section-head h2,#kh .approach h2,#kh .service h3{color:#344738!important}
#kh .contact .eyebrow{color:#e0ccb3!important}
#kh .stage .hero-img{opacity:1;animation:none!important;clip-path:none!important}
#kh .stage.is-drawing .hero-img{opacity:0}
#kh .stage canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#kh .stage .trace{opacity:0}
#kh .stage.is-drawing .trace{opacity:1;animation:none!important}
#kh .stage.is-drawing .trace path{stroke-dasharray:1;stroke-dashoffset:1;animation:kh-draw 3.8s ease forwards;animation-delay:var(--delay,0s)}
#kh .trace .detail{stroke-width:.8;--delay:.6s}
#kh .trace .fine{stroke-width:.6;stroke:#83907b;--delay:1s}
@media(max-width:620px){#kh .intro{grid-template-columns:1fr;gap:22px;padding:24px 16px}}
@media(prefers-reduced-motion:reduce){#kh .stage.is-drawing .hero-img{opacity:1}#kh .stage canvas,#kh .stage .trace{display:none}}
#kh .intro{align-items:end;padding-top:24px}
#kh .intro .eyebrow{margin-bottom:34px!important;padding-top:0;letter-spacing:.04em}
#kh .intro h1 .title-line,#kh .intro h1 .title-line:last-child{color:#242923!important}
#kh .intro h1 .title-line:last-child{font-weight:700!important}
#kh .approach h2,#kh #kh-services .section-head h2,#kh #kh-journal .section-head h2{font-weight:700!important}
#kh .services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px;align-items:stretch}
#kh .service{display:grid;grid-template-rows:auto 3.2em 1fr;gap:12px;align-content:start;color:#242923!important;min-width:0}
#kh .service h3{margin:0!important;font-weight:500;align-self:start;letter-spacing:-.02em}
#kh .service p{margin:0;text-wrap:pretty;color:#41483e!important}
#kh .service>span{color:#8b603b!important}
#kh .service-note{max-width:650px;margin:0 0 28px;color:#41483e!important}
@media(max-width:620px){#kh .intro .eyebrow{margin-bottom:26px!important}#kh .services{grid-template-columns:1fr}#kh .service{grid-template-rows:auto auto auto;gap:10px}}
#kh .article-row{display:grid;grid-template-columns:32px minmax(0,1fr) 20px;gap:20px;align-items:start;border-top:1px solid #dedfd8;padding:24px 0;color:#242923!important}
#kh .article-row:hover{background:#f4f3ef!important;text-decoration:none}
#kh .article-row h3{color:#344738!important;font-weight:500;margin:0 0 10px}
#kh .article-row p{color:#56604f!important;margin:0}
#kh .article-row .article-number{color:#8b603b!important}
@media(max-width:620px){#kh .article-row{grid-template-columns:24px minmax(0,1fr) 16px;gap:10px}}
#kh .intro h1,#kh .intro h1 .title-line,#kh .intro h1 .title-line:last-child{color:#344738!important;-webkit-text-fill-color:#344738!important}
#kh .intro h1 .title-line{display:block!important}
#kh .intro h1 .title-line:last-child{font-weight:700!important}
#kh .intro .kh-cta{background:transparent!important;color:#344738!important;-webkit-text-fill-color:#344738!important;border:1px solid #bdc6b8;padding:12px 18px;box-shadow:none}
#kh .intro .kh-cta:hover{background:#f0f3ed!important;border-color:#899780}
#kh .article-read{display:inline-block;margin-top:18px;color:#344738!important;border-bottom:1px solid #bdc6b8;padding-bottom:4px}#kh .article-toggle{transition:transform .2s}#kh details[open] .article-toggle{transform:rotate(45deg)}

/* WordPress home: balanced desktop columns and compact mobile layout. */
#kh{font-size:16px;line-height:1.6}
#kh h1{font-size:32px;line-height:1.22}
#kh h2{font-size:28px;line-height:1.25}
#kh h3{font-size:20px;line-height:1.35}
#kh .intro{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:48px;row-gap:18px;padding:30px 0 34px}
#kh .intro>.eyebrow{grid-column:1/-1;margin:0!important;font-size:13px}
#kh .intro h1{margin:0}
#kh .intro>div:last-child p{margin-bottom:14px}
#kh .section{padding-left:0;padding-right:0}
#kh .section.approach,#kh .section.contact{padding-left:32px;padding-right:32px}
#kh .caption{padding:12px 0;font-size:13px;gap:12px}
#kh .trace{position:absolute!important;inset:0;pointer-events:none}
#kh .trace path{fill:none!important}
#kh .kh-replay{font-size:13px;padding:6px 0}
#kh :is(a,button,summary):focus-visible{outline:2px solid #657064;outline-offset:5px}
@media(max-width:700px){
 #kh .intro{grid-template-columns:1fr;gap:18px;padding:24px 0}
 #kh .intro>.eyebrow{grid-column:auto}
 #kh h1{font-size:27px}#kh h2{font-size:24px}
 #kh .projects,#kh .split,#kh .services{grid-template-columns:1fr;gap:24px}
 #kh .section{padding:36px 0}
 #kh .section.approach,#kh .section.contact{padding:28px 18px}
 #kh .section-head{flex-direction:column;gap:10px}
 #kh .caption{font-size:12px}
}

/* Lightweight automatic mobile drawing; the photograph remains visible. */
#kh .stage.is-outline .trace{animation:kh-mobile-outline 5.5s linear forwards!important}
#kh .stage.is-outline .trace path{stroke-dasharray:1;stroke-dashoffset:1;animation:kh-draw 2.8s ease forwards;animation-delay:var(--delay,0s)}
@keyframes kh-mobile-outline{0%,65%{opacity:.8}100%{opacity:0}}
