/* KJM content widgets 1.8.4. Scoped styles; optional row alignment script. */
.kjm-block{--kjm-accent:#008080;--kjm-button-bg:#008080;--kjm-pad-t:0px;--kjm-pad-r:0px;--kjm-pad-b:0px;--kjm-pad-l:0px;--kjm-content-gap:18px;--kjm-columns:2;--kjm-column-gap:40px;--kjm-row-gap:24px;--kjm-bar-colour:var(--kjm-accent);--kjm-bar-thickness:3px;--kjm-bar-length:100%;--kjm-bar-alignment:flex-start;--kjm-bar-gap:0px;--kjm-divider-colour:#d6e3e7;--kjm-divider-thickness:1px;--kjm-divider-length:100%;--kjm-divider-gap:24px;--kjm-divider-margin:0 auto 0 0;position:relative;box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin-inline:auto;padding:var(--kjm-pad-t) var(--kjm-pad-r) var(--kjm-pad-b) var(--kjm-pad-l);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;color:#324a6d;overflow-wrap:anywhere;text-align:left}
.kjm-block *,.kjm-block *::before,.kjm-block *::after{box-sizing:border-box}
.kjm-block :is(h2,h3,h4,p,figure){margin:0}
.kjm-block .kjm-b-title,.kjm-block .kjm-b-subheading{font-family:inherit;color:#1d4159;font-style:normal;font-weight:600;letter-spacing:-.025em;text-transform:none;line-height:1.2;text-wrap:balance}
.kjm-block .kjm-b-title{font-size:clamp(29px,3vw,42px)}
.kjm-block .kjm-b-subheading{font-size:21px}
.kjm-block mark{color:var(--kjm-accent);background:none;padding:0;font:inherit}
.kjm-block .kjm-b-label{font-size:12px;line-height:1.4;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--kjm-accent)}
.kjm-block .kjm-b-body{font-size:16px;line-height:1.65;min-width:0}
.kjm-block .kjm-b-body>:first-child,.kjm-block .kjm-b-result>:first-child{margin-top:0}
.kjm-block .kjm-b-body>:last-child,.kjm-block .kjm-b-result>:last-child{margin-bottom:0}
.kjm-block .kjm-b-body p+p,.kjm-block .kjm-b-result p+p{margin-top:16px}
.kjm-block .kjm-b-body ul,.kjm-block .kjm-b-body ol{margin:12px 0;padding-inline-start:24px}
.kjm-block .kjm-b-body a,.kjm-block .kjm-b-link{color:var(--kjm-accent);text-decoration:underline;text-underline-offset:4px}
.kjm-block .kjm-b-link{font-size:15px;font-weight:700;display:inline-block}
.kjm-block a:focus-visible{outline:3px solid #467ff7;outline-offset:4px}
.kjm-block .kjm-b-stack{display:flex;flex-direction:column;gap:var(--kjm-content-gap);min-width:0}
.kjm-block .kjm-b-grid{display:grid;grid-template-columns:repeat(var(--kjm-columns),minmax(0,1fr));column-gap:var(--kjm-column-gap);row-gap:var(--kjm-row-gap);min-width:0}
.kjm-block .kjm-b-meta{color:var(--kjm-accent);font-size:13px;line-height:1.5}
.kjm-block .kjm-b-accent{position:absolute;left:0;right:0;top:0;display:flex;justify-content:var(--kjm-bar-alignment);pointer-events:none}
.kjm-block .kjm-b-accent>span{display:block;flex:none;width:min(100%,var(--kjm-bar-length));height:var(--kjm-bar-thickness);background:var(--kjm-bar-colour)}
.kjm-block.kjm-accent-top{padding-top:calc(var(--kjm-pad-t) + var(--kjm-bar-gap) + var(--kjm-bar-thickness))}
.kjm-block.kjm-accent-bottom{padding-bottom:calc(var(--kjm-pad-b) + var(--kjm-bar-gap) + var(--kjm-bar-thickness))}
.kjm-block.kjm-accent-bottom>.kjm-b-accent{top:auto;bottom:0}
.kjm-block.kjm-accent-left{padding-left:calc(var(--kjm-pad-l) + var(--kjm-bar-gap) + var(--kjm-bar-thickness))}
.kjm-block.kjm-accent-left>.kjm-b-accent{top:0;bottom:0;right:auto;width:var(--kjm-bar-thickness);flex-direction:column}
.kjm-block.kjm-accent-left>.kjm-b-accent>span{width:var(--kjm-bar-thickness);height:min(100%,var(--kjm-bar-length))}
.kjm-block .kjm-b-line{width:min(100%,var(--kjm-divider-length));height:var(--kjm-divider-thickness);background:var(--kjm-divider-colour);margin:var(--kjm-divider-margin);flex:none}
.kjm-block.kjm-no-dividers .kjm-b-line{display:none!important}
.kjm-b-section-heading{display:flex;flex-direction:column;gap:var(--kjm-content-gap)}
.kjm-b-section-heading.kjm-layout-split{display:grid;grid-template-columns:minmax(0,var(--kjm-heading-width,40%)) minmax(0,1fr);column-gap:var(--kjm-column-gap,60px);align-items:start}
.kjm-b-section-heading>.kjm-b-body{max-width:var(--kjm-intro-width,720px)}
.elementor-widget-kjm-service-card,.elementor-widget-kjm-service-card>.elementor-widget-container{height:100%}
.kjm-b-service-card{--kjm-pad-t:30px;--kjm-pad-r:30px;--kjm-pad-b:30px;--kjm-pad-l:30px;display:flex;flex-direction:column;gap:var(--kjm-content-gap);height:100%;border:1px solid #d6e3e7;border-radius:0 0 14px 14px;background:#fff}
.kjm-b-service-card .kjm-b-title{font-size:24px}
.kjm-b-service-card .kjm-b-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;margin-bottom:8px}
.kjm-block .kjm-b-number{font-size:29px;line-height:1;font-weight:400;color:var(--kjm-accent)}
.kjm-block .kjm-b-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--kjm-accent);font-size:30px;line-height:1}
.kjm-block .kjm-b-icon svg{height:1em;width:1em;fill:currentColor}
.kjm-b-service-card .kjm-b-badge{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;background:#edf6f7;padding:5px 9px;border-radius:4px}
.kjm-b-service-card .kjm-b-problem{font-size:16px;color:#1d4159;font-weight:700;line-height:1.5}
.kjm-b-service-card .kjm-b-body{font-size:15px}
.kjm-b-service-card .kjm-b-card-end{margin-top:auto;padding-top:10px;display:flex;flex-direction:column;gap:12px}
.kjm-b-service-card .kjm-b-outcome{font-weight:700}
.kjm-b-text-list .kjm-b-entry{min-width:0;display:flex;flex-direction:column;gap:var(--kjm-divider-gap)}
.kjm-b-text-list.kjm-no-dividers .kjm-b-entry{gap:0}
.kjm-b-text-list.kjm-divider-bottom .kjm-b-line{order:2}
.kjm-b-text-list .kjm-b-entry-content{gap:12px}
.kjm-b-callout{--kjm-pad-t:30px;--kjm-pad-r:30px;--kjm-pad-b:30px;--kjm-pad-l:30px;background:#f7fafb}
.kjm-b-callout .kjm-b-title{font-size:24px}
.kjm-b-callout.kjm-callout-note{background:transparent}
.kjm-b-callout.kjm-callout-cta .kjm-b-title{font-size:clamp(29px,3vw,42px)}
.kjm-block .kjm-b-buttons{display:flex;gap:12px;flex-wrap:wrap;justify-content:var(--kjm-button-alignment,flex-start)}
.kjm-block .kjm-b-button{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:48px;padding:14px 22px;border:1px solid var(--kjm-button-bg);border-radius:7px;font-size:15px;line-height:1.4;font-weight:700;text-align:center;text-decoration:none;color:var(--kjm-button-text,#fff);background:var(--kjm-button-bg);transition:background-color .18s,color .18s,border-color .18s}
.kjm-block .kjm-b-button:hover{background:var(--kjm-button-hover,#006868);border-color:var(--kjm-button-hover,#006868);color:var(--kjm-button-text,#fff)}
.kjm-block .kjm-button-outline{background:transparent;color:var(--kjm-button-bg)}
.kjm-block .kjm-button-text{background:transparent;border-color:transparent;padding-inline:0;color:var(--kjm-button-bg);text-decoration:underline;text-underline-offset:4px}
.kjm-block .kjm-button-text:hover{background:transparent;border-color:transparent;color:var(--kjm-button-hover,#006868)}
.kjm-b-case-study{--kjm-panel-padding:40px;border:1px solid #d6e3e7;border-radius:18px;overflow:hidden;background:#f7fafb}
.kjm-b-case-study .kjm-b-case-head{background:#1d4159;color:#fff;padding:var(--kjm-panel-padding)}
.kjm-b-case-study .kjm-b-case-head .kjm-b-title{color:#fff}
.kjm-b-case-study .kjm-b-case-head .kjm-b-label{color:#8fe0d8}
.kjm-b-case-study .kjm-b-case-head .kjm-b-body{color:#e0eaf0}
.kjm-b-case-study .kjm-b-case-main{padding:var(--kjm-panel-padding);background:#f7fafb;gap:28px}
.kjm-b-case-study .kjm-b-case-result{display:flex;flex-direction:column;gap:var(--kjm-divider-gap)}
.kjm-b-case-study .kjm-b-result{font-size:18px;font-weight:700;color:#1d4159}
.kjm-b-person-card{--kjm-photo-size:104px;--kjm-photo-height:130px;--kjm-photo-radius:12px;--kjm-photo-x:50%;--kjm-photo-y:50%}
.kjm-b-person-card .kjm-b-title{font-size:21px}
.kjm-b-person-card .kjm-b-photo{line-height:0}
.kjm-b-person-card .kjm-b-photo img{display:inline-block;max-width:100%;width:var(--kjm-photo-size);height:var(--kjm-photo-size);object-fit:cover;object-position:var(--kjm-photo-x) var(--kjm-photo-y);border-radius:50%;border:3px solid #fff}
.kjm-b-person-card.kjm-photo-rounded .kjm-b-photo img{height:var(--kjm-photo-height);border-radius:var(--kjm-photo-radius)}
.kjm-b-person-card .kjm-b-person-links{display:flex;justify-content:var(--kjm-button-alignment,flex-start);flex-wrap:wrap;gap:16px}
@media(max-width:767px){.kjm-block{--kjm-columns:1;--kjm-column-gap:24px}.kjm-b-section-heading.kjm-layout-split{grid-template-columns:minmax(0,1fr)}.kjm-b-case-study{--kjm-panel-padding:25px}}
@media(prefers-reduced-motion:reduce){.kjm-block .kjm-b-button{transition:none}}

/* Hide first-row separators using the same responsive column value as the grid. */
.kjm-divider-between .kjm-b-entry:nth-child(1){--kjm-entry-index:1}
.kjm-divider-between .kjm-b-entry:nth-child(2){--kjm-entry-index:2}
.kjm-divider-between .kjm-b-entry:nth-child(3){--kjm-entry-index:3}
.kjm-b-text-list.kjm-divider-between .kjm-b-entry:nth-child(-n+3){--kjm-divider-factor:clamp(0,calc(var(--kjm-entry-index) - var(--kjm-columns)),1);gap:calc(var(--kjm-divider-gap) * var(--kjm-divider-factor))}
.kjm-b-text-list.kjm-divider-between .kjm-b-entry:nth-child(-n+3) .kjm-b-line{height:calc(var(--kjm-divider-thickness) * var(--kjm-divider-factor))}


/* A straight accent meets a square edge, including cards with saved radii. */
.kjm-b-service-card{border-radius:14px}
.kjm-b-callout{border-radius:16px}
.kjm-block.kjm-corners-auto.kjm-accent-top{border-top-left-radius:0!important;border-top-right-radius:0!important}
.kjm-block.kjm-corners-auto.kjm-accent-bottom{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}
.kjm-block.kjm-corners-auto.kjm-accent-left{border-top-left-radius:0!important;border-bottom-left-radius:0!important}

/* JS supplies minimums per visible row, never fixed heights or truncation. */
.kjm-b-service-card[data-kjm-row-align="yes"],.kjm-b-case-study[data-kjm-row-align="yes"]{height:auto;min-height:var(--kjm-row-height,0px)}
.kjm-b-service-card[data-kjm-matched-padding]{padding-top:var(--kjm-row-pad-top)!important;padding-right:var(--kjm-row-pad-right)!important;padding-bottom:var(--kjm-row-pad-bottom)!important;padding-left:var(--kjm-row-pad-left)!important}
.kjm-b-service-card[data-kjm-row-align="yes"]>:not(.kjm-b-accent){flex-shrink:0}
.kjm-b-service-card[data-kjm-row-align="yes"]>.kjm-b-title{margin-top:var(--kjm-row-title-offset,0px);min-height:var(--kjm-row-title-height,0px)}
.kjm-b-service-card[data-kjm-row-align="yes"]>.kjm-b-body{margin-top:var(--kjm-row-body-offset,0px)}
.kjm-b-case-study{display:flex;flex-direction:column}
.kjm-b-case-study>.kjm-b-case-head{flex-shrink:0;min-height:var(--kjm-row-head-height,0px)}
.kjm-b-case-study>.kjm-b-case-main{flex:1;min-height:0}
.kjm-b-case-main>.kjm-b-grid{min-height:var(--kjm-row-grid-height,0px)}
.kjm-b-case-main>.kjm-b-case-result{min-height:var(--kjm-row-result-height,0px)}
