/* Shared by the public site and the visual editor. */
:root,.editor-styles-wrapper{
    --kl-blue:#0b3a8c;--kl-deep:#082c6c;--kl-ink:#101f32;--kl-slate:#47586d;
    --kl-line:#d9e2ed;--kl-mist:#f3f6fa;--kl-orange:#aa390d;--kl-radius:10px;
    --kl-gutter:clamp(20px,4vw,64px);--kl-section:clamp(48px,6vw,86px);
    --kl-heading:"Archivo",Arial,sans-serif;--kl-body:"IBM Plex Sans",system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:100px}
body{margin:0;-webkit-font-smoothing:antialiased}
.kl-wrap{width:min(1220px,calc(100% - var(--kl-gutter) * 2));margin-inline:auto!important;min-width:0}
.kl-section,.kl-callout,.kl-utility,.kl-mast,.kl-footer,.kl-reading{font-family:var(--kl-body)}
.kl-section,.kl-callout{color:var(--kl-ink)}
.kl-section{padding-block:var(--kl-section)}
.kl-section p,.kl-section figure,.kl-section h1,.kl-section h2,.kl-section h3,.kl-section h4,.kl-callout h2,.kl-footer p,.kl-mast p,.kl-utility p{margin:0}
.kl-section p{color:var(--kl-slate);overflow-wrap:break-word}
.kl-section h1,.kl-section h2,.kl-section h3,.kl-section h4,.kl-callout h2{font-family:var(--kl-heading);font-weight:700;line-height:1.1;letter-spacing:-.032em;text-wrap:pretty}
.kl-section h1{font-size:clamp(2.5rem,4.6vw,4rem);max-width:1040px}
.kl-section h2{font-size:clamp(1.9rem,3.1vw,2.85rem)}
.kl-section h3{font-size:clamp(1.13rem,1.45vw,1.35rem);letter-spacing:-.018em;line-height:1.2}
.kl-section h4{font-size:1.08rem;letter-spacing:-.01em}
.kl-section .kl-eyebrow,.kl-reading .kl-eyebrow{font-size:.79rem;color:var(--kl-orange);text-transform:uppercase;font-weight:600;letter-spacing:.105em;line-height:1.45;margin-bottom:12px}
.kl-section .kl-lead{font-size:clamp(1.12rem,1.45vw,1.32rem);max-width:66ch;line-height:1.56;margin-top:18px}
.kl-section .kl-intro-copy{max-width:66ch;margin-top:12px}
.kl-copy>p:not(.kl-eyebrow),.kl-product .kl-copy>p,.kl-brand-card>p:not(.kl-shop-mark){margin-top:12px}
.kl-section .kl-small-title{font-size:.9rem;font-weight:600;color:var(--kl-ink);margin-top:24px;margin-bottom:10px}
.kl-section .wp-block-buttons{margin-top:26px;display:flex;gap:12px;flex-wrap:wrap}
.wp-block-button__link,.kl-button,.kl-form button[type=submit]{transition:background-color .15s,color .15s,box-shadow .15s;cursor:pointer}
.wp-block-button__link:hover,.kl-button:hover,.kl-form button[type=submit]:hover{background-color:var(--kl-deep);color:white}
.wp-block-button.is-style-outline .wp-block-button__link{border:1.5px solid var(--kl-blue);color:var(--kl-blue);background:transparent}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--kl-mist)}
.kl-section .kl-text-button a{padding:0;background:transparent;color:var(--kl-blue);text-decoration:underline;text-underline-offset:4px}
:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:3px solid #d67b22;outline-offset:3px}
.kl-grid{display:grid!important;gap:clamp(18px,2.2vw,32px)}
.kl-grid>*{min-width:0}
.kl-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(24px,4vw,64px)}
.kl-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.kl-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.kl-wrap>h2+.kl-grid,.kl-wrap>.kl-intro-copy+.kl-grid,.kl-wrap>p+.kl-grid,.kl-wrap>h2+.kl-tabs{margin-top:30px}
.kl-stretch{align-items:stretch}.kl-top{align-items:start}.kl-mist,.kl-intro{background:var(--kl-mist);border-block:1px solid #e3e9f0}
.kl-intro{padding-block:clamp(46px,5.4vw,78px)}
.kl-hero{padding-block:clamp(48px,6vw,88px)}.kl-hero h1{font-size:clamp(2.7rem,4.85vw,4.55rem);font-weight:800;letter-spacing:-.045em}
.kl-hero .kl-lead{margin-top:22px;max-width:51ch}.kl-hero-grid{gap:clamp(30px,4vw,64px)}
.kl-utility{background:var(--kl-mist);border-bottom:1px solid var(--kl-line);color:#485971;font-size:.79rem}
.kl-utility-row,.kl-mast-row,.kl-lockup,.kl-callout-row{display:flex!important;align-items:center}
.kl-utility-row,.kl-mast-row,.kl-callout-row{justify-content:space-between;gap:24px}
.kl-utility-row{min-height:32px}.kl-utility a,.kl-footer a{color:inherit;text-underline-offset:3px}
.kl-mast{background:white;border-bottom:1px solid var(--kl-line)}
.kl-mast-row{min-height:78px}.kl-lockup{gap:12px}.kl-lockup img{display:block;max-width:100%;height:auto}
.kl-brand-name{font-size:.81rem;line-height:1.15;color:var(--kl-slate);border-left:1px solid var(--kl-line);padding-left:12px}
.kl-brand-name strong{font:700 1.07rem/1.25 var(--kl-heading);color:var(--kl-ink)}
.kl-nav .wp-block-navigation__container{gap:clamp(12px,2.1vw,34px)}
.kl-nav .wp-block-navigation-item__content{font-weight:600;font-size:clamp(.85rem,1.1vw,1rem);text-decoration:none;white-space:nowrap;padding:12px 0;color:var(--kl-ink)}
.kl-nav .wp-block-navigation-item__content:hover,.kl-nav .current-menu-item:not(.kl-nav-contact)>.wp-block-navigation-item__content{color:var(--kl-blue);text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
.kl-nav .kl-nav-contact>.wp-block-navigation-item__content{display:block;border-radius:6px;background:var(--kl-blue);color:white;padding:11px clamp(14px,2vw,29px);margin-left:clamp(2px,2vw,28px)}
.kl-nav .kl-nav-contact>.wp-block-navigation-item__content:hover{background:var(--kl-deep);color:white}
.kl-client-strip{border-block:1px solid var(--kl-line);padding-block:30px}
.kl-strip-label{text-align:center;text-transform:uppercase;letter-spacing:.11em;font-weight:600;font-size:.82rem}
.kl-logos,.kl-chips{display:flex!important;flex-wrap:wrap;align-items:center}
.kl-logos{justify-content:center;gap:clamp(28px,5vw,84px);margin-top:19px!important}
.kl-logos figure{display:grid;place-items:center}.kl-logos img{display:block;width:auto;height:36px;max-width:160px;object-fit:contain}.kl-logos figure:last-child img{height:48px}
.kl-steps{counter-reset:kl-step}.kl-step{counter-increment:kl-step;position:relative}
.kl-step::before{content:counter(kl-step);background:var(--kl-blue);color:white;display:grid;place-items:center;font:700 1rem var(--kl-heading);width:38px;height:38px;border-radius:50%;margin-bottom:14px}
.kl-steps:not(.kl-steps-vertical)>.kl-step{background:linear-gradient(var(--kl-line),var(--kl-line)) 50px 18px/calc(100% - 50px) 2px no-repeat}
.kl-step p,.kl-life-card p,.kl-milestone p,.kl-material-card p,.kl-product p{font-size:.97rem;margin-top:7px}
.kl-steps-vertical{display:grid!important;gap:18px}.kl-steps-vertical .kl-step{padding-left:45px}.kl-steps-vertical .kl-step::before{position:absolute;left:0;top:0;width:31px;height:31px;font-size:.85rem}
.kl-steps-vertical h3{font-size:1rem}.kl-steps-vertical p{font-size:.91rem;margin-top:3px}
.kl-process-panel,.kl-brand-card{background:white;border:1px solid var(--kl-line);padding:clamp(22px,2.4vw,36px);border-radius:var(--kl-radius)}
.kl-chips{gap:9px}.kl-chips .kl-chip{font-size:.9rem;color:inherit;border:1px solid var(--kl-line);padding:6px 13px;border-radius:99px;background:white}
.kl-blue,.kl-direct{background:var(--kl-blue);color:white}
.kl-blue p,.kl-direct p{color:#e0eaf9}.kl-blue .kl-eyebrow,.kl-direct .kl-eyebrow{color:#ffc294}.kl-blue .wp-element-button{background:white;color:var(--kl-blue)}.kl-blue .wp-element-button:hover{background:#e7eef8;color:var(--kl-deep)}
.kl-blue .kl-chip{background:transparent;color:white;border-color:#7193c1}
.kl-checks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px}.kl-checks li{padding-left:23px;position:relative}.kl-checks li::before{content:"✓";color:var(--kl-blue);position:absolute;left:0;font-weight:700}.kl-blue .kl-checks li::before{color:#ffbd87}
.kl-life-card,.kl-milestone{border-top:3px solid var(--kl-blue);padding:20px 0}.kl-life-card{background:var(--kl-mist);padding:22px;border-radius:0 0 8px 8px}
.kl-photo img{display:block;object-fit:cover;width:100%;aspect-ratio:1.63;border-radius:var(--kl-radius)}
.kl-section.kl-joined{padding-top:0}.kl-joined h2,.kl-section:has(.kl-photo) h2{font-size:clamp(1.8rem,2.55vw,2.46rem)}
.kl-product{border:1px solid var(--kl-line);border-radius:var(--kl-radius);overflow:hidden;background:white}
.kl-product .kl-copy{padding:19px}.kl-product .kl-copy>p{font-size:.95rem;margin-top:7px}
.kl-product-img img{display:block;width:100%;height:clamp(150px,15vw,220px);object-fit:contain;padding:15px;background:var(--kl-mist)}
.kl-photo-pair{display:grid!important;grid-template-columns:1fr 1fr;gap:12px}.kl-photo-pair img{border-radius:8px}
.kl-milestone h3{font-size:clamp(1.75rem,2.7vw,2.45rem);color:var(--kl-blue)}
.kl-brand-card{display:flex;flex-direction:column;align-items:flex-start}.kl-brand-card h3{margin-top:15px}.kl-brand-card .wp-block-buttons{margin-top:auto;padding-top:20px}
.kl-brand-mark img{width:auto;height:47px}.kl-shop-mark{font:800 1.8rem/47px var(--kl-heading)!important;color:var(--kl-ink)!important;letter-spacing:.04em}.kl-shop-mark strong{color:var(--kl-orange)}
.kl-center{text-align:center}.kl-center .kl-intro-copy{margin-inline:auto}.kl-center .wp-block-buttons{justify-content:center}
.kl-tabs{margin-top:23px!important}.kl-tab-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.kl-tab-list button{background:white;color:var(--kl-ink);border:1px solid var(--kl-line);border-radius:24px;padding:10px 16px;font:600 .95rem var(--kl-body);cursor:pointer}.kl-tab-list [aria-selected=true]{background:var(--kl-blue);color:white;border-color:var(--kl-blue)}
.kl-tabs-ready .kl-tab-name{display:none}.kl-material-panel[hidden]{display:none!important}.kl-material-panel .kl-grid{gap:14px}.kl-material-panel .kl-tab-name{margin-block:20px 12px}.kl-material-card{border:1px solid var(--kl-line);border-radius:8px;padding:20px}
.kl-callout{background:var(--kl-mist);border-top:1px solid var(--kl-line);padding-block:30px}.kl-callout h2{font-size:clamp(1.5rem,2.5vw,2.1rem)}
.kl-footer{background:#0f1d30;color:#e4ecf7;padding-block:46px 23px;font-size:.94rem}
.kl-footer .kl-foot-grid{display:grid;grid-template-columns:1.3fr 1fr .5fr;gap:36px;align-items:start}
.kl-foot-identity{max-width:340px}.kl-foot-identity>.kl-lockup{margin-bottom:12px}.kl-footer .wp-block-site-logo img{background:white;padding:4px;border-radius:5px}.kl-foot-nav .wp-block-navigation__container{gap:7px;align-items:flex-start}.kl-family-links p+p{margin-top:8px}
.kl-footer .kl-colophon{margin-top:35px;padding-top:18px;border-top:1px solid #35465a;font-size:.78rem;color:#c2ccda}
.kl-reading{padding:clamp(36px,7vw,85px) var(--kl-gutter);max-width:950px;margin-inline:auto;min-height:48vh}.kl-reading .wp-block-post-content>*+*,.kl-reading>*,.kl-reading .wp-block-post{margin-block:1.2rem}.kl-reading .wp-block-query-pagination{gap:12px}
body .wp-block-post-content.kl-canvas,.wp-site-blocks>.wp-block-template-part,.wp-site-blocks>main{margin-block-start:0}
@media(max-width:900px){
.kl-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.kl-nav .wp-block-navigation__responsive-container-open{display:flex!important}
.kl-nav .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item a{font-size:1.15rem;padding:10px 0}.kl-nav .is-menu-open .kl-nav-contact>.wp-block-navigation-item__content{margin:8px 0;padding:10px 20px!important;color:white}
.kl-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.kl-hero-grid{gap:25px}.kl-nav .wp-block-navigation__responsive-container{padding:24px}
}
@media(max-width:700px){
.kl-grid-2{grid-template-columns:1fr}.kl-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
.kl-mast-row{min-height:66px}.kl-lockup img{width:61px}.kl-utility-row{font-size:.68rem;gap:8px}.kl-brand-name{font-size:.75rem}
.kl-logos img{max-width:92px;height:24px}.kl-logos figure:last-child img{height:32px}
.kl-callout-row{flex-direction:column;align-items:flex-start}.kl-footer .kl-foot-grid{grid-template-columns:1fr 1fr}.kl-foot-identity{grid-column:1/-1}
.kl-steps:not(.kl-steps-vertical)>.kl-step{padding-right:0}.kl-hero h1{max-width:15ch}.kl-utility-row a{white-space:nowrap}
}
@media(max-width:460px){
.kl-grid-3,.kl-grid-4{grid-template-columns:1fr}.kl-steps.kl-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 14px}
.kl-utility-row{flex-wrap:wrap;gap:0 12px;padding:4px 0}.kl-logos{gap:20px}.kl-product-img img{height:190px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.kl-footer .kl-colophon{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35em}
.kl-footer .kl-colophon p{font:inherit}
.kl-service-details .klm-card-body{min-width:0}
