/* Shared person card: a real portrait on the left, all contact details on the right. */
.jkc-person-card,.jkc-person-card.jkc-person-card--framed{display:grid;grid-template-columns:minmax(100px,34%) minmax(0,1fr);padding:0;min-height:230px;align-items:stretch;gap:0;isolation:isolate}
.jkc-person-card .jkc-person-card__body{grid-column:2;grid-row:1;padding:24px 20px;gap:12px;align-self:center;min-width:0}
.jkc-person-card .jkc-person-card__aside{grid-column:1;grid-row:1;position:relative;min-height:230px;align-self:stretch;margin:0;flex:initial;width:auto;overflow:hidden}
.jkc-person-card .jkc-person-card__aside picture{display:block;width:100%;height:100%}
.jkc-person-card .jkc-person-card__img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 25%;transform:none;border-radius:0}
.jkc-person-card .jkc-person-card__mark{display:none}
.jkc-person-card .jkc-person-card__name{font-size:19px;line-height:1.25;white-space:normal}
.jkc-person-card .jkc-person-card__list{gap:8px}
.jkc-person-card .jkc-person-card__list li{gap:8px}
.jkc-person-card .jkc-person-card__list a{font-size:14px;line-height:1.45;letter-spacing:0}
.jkc-person-card .jkc-person-card__badge{flex-basis:26px;width:26px;height:26px}
#jkc-cta-talk .jkc-talk-contact-card{width:100%;margin-top:0;border-radius:20px}
/* Compact discipline section, with the video in a landscape frame. */
.home .jkc-services{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:center;min-height:0;max-width:1400px;margin-inline:auto;padding:clamp(24px,4svh,48px) 20px}
.home .jkc-services__inner{display:contents}
.home .jkc-services__content{width:auto;max-width:none;padding:0;min-width:0}
.home .jkc-services__intro{margin-bottom:18px}
.home .jkc-services__intro h2{font-size:clamp(28px,3.1vw,42px);line-height:1.12}
.home .jkc-services__media{position:relative;inset:auto;left:auto;width:100%;height:auto;aspect-ratio:16/11;border-radius:24px;align-self:center}
.home .jkc-services__media::after{content:none}
.home .jkc-discipline{padding:10px 0}
.home .jkc-discipline__toggle{min-height:38px;gap:10px}
.home .jkc-discipline__toggle .jkc-icon-circle{width:36px;height:36px;flex-basis:36px;font-size:16px}
.home .jkc-discipline__title{font-size:18px;line-height:22px}
.home .jkc-discipline__text{font-size:14px;line-height:20px;letter-spacing:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:6px}
.home .jkc-discipline__panel-inner{padding-top:7px}
.home .jkc-discipline__link{font-size:14px;line-height:22px}
/* Film first; the matching poster stays behind it until the first decoded frame. */
.jkc-page-hero__media--film{position:relative;aspect-ratio:16/11;overflow:hidden;border-radius:24px}
.jkc-page-hero__film-poster,.jkc-page-hero__film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.jkc-page-hero__film{opacity:0;transition:opacity .3s ease}
.jkc-page-hero__media--film.is-playing .jkc-page-hero__film{opacity:1}
.jkc-film-toggle{position:absolute;bottom:14px;right:14px;z-index:3;display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid #fff8;border-radius:50%;color:#fff;background:#04155ed9;font-size:18px;cursor:pointer}
.jkc-film-toggle:focus-visible{outline:3px solid #007af4;outline-offset:3px}
.jkc-service-example{padding:0 0 32px}
.jkc-service-example__inner{display:flex;align-items:center;gap:24px;border-top:1px solid #e2e6ef;padding-top:20px;max-width:700px}
.jkc-service-example__label{font-size:14px;color:#667085;max-width:150px}
.jkc-service-example__visual{position:relative;flex:0 1 350px;width:350px;height:210px;border-radius:16px;overflow:hidden;background:#f3f6fb}
.jkc-service-example__visual .jkc-ambition-card__stage{height:100%;width:100%}
@media(max-width:991.98px){
 .home .jkc-services{grid-template-columns:1fr;gap:16px;padding-block:24px}
 .home .jkc-services__intro{margin-bottom:12px}
 .home .jkc-services__intro h2{font-size:29px;line-height:1.1}
 .home .jkc-services__media{height:clamp(140px,23svh,220px);aspect-ratio:auto}
 .home .jkc-discipline{padding:6px 0}
 .home .jkc-discipline__toggle{min-height:34px}
 .home .jkc-discipline__panel-inner{padding-top:4px}
 .home .jkc-discipline__text{-webkit-line-clamp:2}
 .jkc-person-card .jkc-person-card__body{padding:18px 12px}
 .jkc-person-card,.jkc-person-card.jkc-person-card--framed{grid-template-columns:minmax(94px,32%) minmax(0,1fr);min-height:215px}
 .jkc-person-card .jkc-person-card__aside{min-height:215px}
 .jkc-person-card .jkc-person-card__name{font-size:17px}
 .jkc-person-card .jkc-person-card__list a{font-size:13px}
 .jkc-person-card .jkc-person-card__list li{gap:6px}
 .jkc-person-card .jkc-person-card__badge{width:24px;height:24px;flex-basis:24px}
}
@media(max-width:575.98px){.jkc-service-example__inner{gap:12px}.jkc-service-example__label{max-width:90px;font-size:12px}.jkc-service-example__visual{height:155px;min-width:0;flex:1 1 0}}
@media(prefers-reduced-motion:reduce){.jkc-page-hero__film{transition:none}}

.jkc-services__pane.has-video-frame .jkc-services__video{opacity:1}
