.ki-home-hero,.ki-products-hero,.ki-product-detail-hero{padding:100px 0}.ki-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:56px;align-items:center}.ki-hero-grid h1{font-size:clamp(44px,6vw,82px);line-height:.98;margin:0 0 22px;letter-spacing:-.04em}.ki-hero-grid p{font-size:clamp(17px,2vw,21px);color:#c5cad5;max-width:680px}.ki-cad-panel{min-height:360px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);border-radius:var(--ki-radius);display:grid;place-items:center;position:relative;overflow:hidden}.ki-cad-panel:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:42px 42px}.ki-cad-panel>span{position:absolute;bottom:22px;font-family:var(--ki-mono);letter-spacing:.18em;color:#9ea7b7;font-size:12px}.ki-cad-target{width:210px;height:210px;border:2px solid var(--ki-accent);border-radius:50%;position:relative}.ki-cad-target:before,.ki-cad-target:after{content:"";position:absolute;inset:44px;border:1px dashed rgba(255,255,255,.55);border-radius:50%}.ki-cad-target:after{inset:88px;background:var(--ki-accent);border:0}.ki-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}.ki-section-head h2{font-size:clamp(32px,4vw,54px);line-height:1.05;margin:0;color:inherit;letter-spacing:-.03em}.ki-section-head p{max-width:620px;color:#627083}.ki-section-head small{font-family:var(--ki-mono);font-size:14px;color:var(--ki-accent);font-weight:500}.ki-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.ki-split h2{font-size:clamp(34px,4vw,58px);line-height:1.04;margin:0 0 20px}.ki-feature-list{display:grid;gap:14px}.ki-feature-list p{margin:0;padding:18px 20px;background:#fff;border:1px solid var(--ki-line);border-left:4px solid var(--ki-accent);border-radius:12px;font-weight:700;color:#17202a}.ki-section-dark .ki-feature-list p{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12);color:#fff}.ki-category-nav{background:#fff;border-bottom:1px solid var(--ki-line);position:sticky;top:78px;z-index:40}.ki-category-nav .ki-container{display:flex;gap:14px;align-items:center;overflow:auto;padding:14px 0}.ki-category-nav span{font-family:var(--ki-mono);font-size:12px;color:var(--ki-muted);white-space:nowrap}.ki-category-nav a{white-space:nowrap;padding:8px 13px;border:1px solid var(--ki-line);border-radius:999px;font-size:13px;font-weight:700}.ki-product-category-section{padding:86px 0;background:#fff}.ki-product-category-section.is-alt{background:var(--ki-soft)}.ki-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ki-product-card{background:#fff;border:1px solid var(--ki-line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;min-height:100%;box-shadow:0 10px 30px rgba(18,27,35,.04)}.ki-product-card__top{display:flex;justify-content:space-between;padding:16px 18px 0;font-family:var(--ki-mono);font-size:12px;color:#8490a4}.ki-product-visual{height:150px;margin:16px 18px 0;border:1px solid #cad2df;background:#f7f9fc;position:relative;display:grid;place-items:center;overflow:hidden}.ki-product-visual.big{height:330px;margin:0}.ki-product-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#dfe5ef 1px,transparent 1px),linear-gradient(90deg,#dfe5ef 1px,transparent 1px);background-size:28px 28px}.ki-product-visual__label{position:relative;z-index:1;font-family:var(--ki-mono);font-weight:800;color:var(--ki-navy);letter-spacing:.08em}.ki-corner{position:absolute;width:18px;height:18px;border-color:var(--ki-accent);z-index:2}.ki-corner.tl{top:8px;left:8px;border-top:2px solid;border-left:2px solid}.ki-corner.tr{top:8px;right:8px;border-top:2px solid;border-right:2px solid}.ki-corner.bl{bottom:8px;left:8px;border-bottom:2px solid;border-left:2px solid}.ki-corner.br{bottom:8px;right:8px;border-bottom:2px solid;border-right:2px solid}.ki-product-card__body{padding:18px;flex:1}.ki-product-card__meta{font-family:var(--ki-mono);font-size:11px;color:#8791a4;margin-bottom:9px}.ki-product-card h3{font-size:22px;line-height:1.18;margin:0 0 10px}.ki-product-card p{color:#596678;margin:0 0 16px}.ki-tags{display:flex;flex-wrap:wrap;gap:8px}.ki-tags span{font-size:12px;background:#f0f3f7;border:1px solid #dfe4ec;border-radius:999px;padding:5px 9px;font-weight:700;color:#425066}.ki-product-card__foot{border-top:1px solid var(--ki-line);padding:15px 18px;display:flex;justify-content:space-between;align-items:center}.ki-quote-link{font-family:var(--ki-mono);font-size:13px;color:var(--ki-ink);font-weight:800}.ki-guidance{padding:80px 0}.ki-guidance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ki-guidance-card{padding:28px;border:1px solid var(--ki-line);border-radius:18px;background:#fff}.ki-section-dark .ki-guidance-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}.ki-guidance-card span{font-family:var(--ki-mono);color:var(--ki-accent);font-weight:800}.ki-guidance-card h3{font-size:24px;margin:16px 0 10px}.ki-guidance-card p{color:#667386;margin:0}.ki-section-dark .ki-guidance-card p{color:#bac1ce}.ki-breadcrumb{display:flex;gap:10px;align-items:center;font-family:var(--ki-mono);font-size:12px;color:#aeb6c4;margin-bottom:28px}.ki-breadcrumb a{color:#fff}.ki-product-detail-card{padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.05)}.ki-rich-text{color:#596678}.ki-rich-text p{margin-top:0}.ki-faq-list{display:grid;gap:12px;max-width:900px}.ki-faq-list details{border:1px solid var(--ki-line);border-radius:14px;padding:18px;background:#fff}.ki-faq-list summary{cursor:pointer;font-weight:800}.ki-faq-list p{color:#667386;margin:10px 0 0}.ki-cta{padding:86px 0;text-align:center}.ki-cta h2{font-size:clamp(32px,4vw,58px);max-width:780px;margin:0 auto}.ki-cta .ki-actions{justify-content:center}@media(max-width:1050px){.ki-hero-grid{grid-template-columns:1fr}.ki-cad-panel{min-height:300px}.ki-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ki-split{grid-template-columns:1fr}.ki-guidance-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.ki-home-hero,.ki-products-hero,.ki-product-detail-hero{padding:70px 0}.ki-product-grid,.ki-guidance-grid{grid-template-columns:1fr}.ki-section-head{display:block}.ki-category-nav{top:72px}.ki-hero-grid h1{font-size:42px}.ki-product-visual.big{height:240px}}

/* Homepage visual refinement v2 */
.ki-home-hero{padding:118px 0 92px;background:radial-gradient(circle at 78% 34%,rgba(228,28,10,.20),transparent 28%),radial-gradient(circle at 15% 10%,rgba(36,74,114,.55),transparent 34%),var(--ki-ink)}
.ki-hero-copy{position:relative;z-index:2}.ki-hero-copy h1{max-width:780px}.ki-hero-copy p{max-width:650px}.ki-hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:38px;max-width:620px}.ki-hero-proof div{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:16px;padding:18px 16px}.ki-hero-proof strong{display:block;font-size:28px;line-height:1;color:#fff}.ki-hero-proof span{display:block;margin-top:7px;color:#aeb7c8;font-size:13px;font-family:var(--ki-mono);letter-spacing:.06em;text-transform:uppercase}.ki-home-cad-panel{min-height:430px;border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025));box-shadow:0 30px 80px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.06)}.ki-cad-window-bar{position:absolute;top:0;left:0;right:0;height:48px;border-bottom:1px solid rgba(255,255,255,.12);display:flex;align-items:center;gap:8px;padding:0 18px;background:rgba(8,12,17,.48);z-index:2}.ki-cad-window-bar span{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.35)}.ki-cad-window-bar span:first-child{background:var(--ki-accent)}.ki-cad-window-bar em{margin-left:10px;font-style:normal;font-family:var(--ki-mono);font-size:11px;letter-spacing:.12em;color:#a9b2c1}.ki-cad-axis{position:absolute;right:22px;top:72px;display:grid;gap:8px;z-index:2}.ki-cad-axis b{width:28px;height:28px;border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;border-radius:50%;font-family:var(--ki-mono);font-size:10px;color:#c6ccd8;background:rgba(0,0,0,.15)}.ki-cad-specs{position:absolute;left:22px;bottom:58px;display:flex;gap:8px;z-index:2;flex-wrap:wrap}.ki-cad-specs span{border:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.16);border-radius:999px;padding:7px 10px;font-family:var(--ki-mono);font-size:10px;color:#b9c1d0}.ki-solution-strip{background:#fff;border-bottom:1px solid var(--ki-line);box-shadow:0 18px 46px rgba(19,27,35,.05)}.ki-strip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.ki-strip-grid>div{padding:28px 26px;border-right:1px solid var(--ki-line)}.ki-strip-grid>div:last-child{border-right:0}.ki-strip-grid span{font-family:var(--ki-mono);color:var(--ki-accent);font-size:12px;font-weight:900}.ki-strip-grid strong{display:block;margin:10px 0 7px;font-size:18px;line-height:1.2;color:var(--ki-ink)}.ki-strip-grid p{margin:0;color:#657286;font-size:14px}.ki-intro-section{padding-top:100px;padding-bottom:54px}.ki-intro-split h2{font-size:clamp(36px,4.5vw,62px);line-height:1.02;margin:0;letter-spacing:-.035em}.ki-large-copy p{font-size:18px;color:#536073}.ki-featured-products-section{padding-top:54px}.ki-why-section{padding:104px 0}.ki-dark-lead{color:#b7c0d0;max-width:620px;font-size:18px}.ki-numbered-list p{display:flex;gap:16px;align-items:flex-start;padding:20px 22px}.ki-numbered-list span{font-family:var(--ki-mono);color:var(--ki-accent);font-size:12px;font-weight:900;margin-top:3px}.ki-process-section{padding:96px 0;background:linear-gradient(180deg,#fff 0%,#f5f7fa 100%)}.ki-section-head-centered{justify-content:center;text-align:center}.ki-section-head-centered p{margin:12px auto 0}.ki-process-grid .ki-guidance-card{position:relative;overflow:hidden;min-height:230px}.ki-process-grid .ki-guidance-card:after{content:"";position:absolute;right:-50px;bottom:-50px;width:150px;height:150px;border:1px solid rgba(228,28,10,.18);border-radius:50%}.ki-cta-copy{margin:18px auto 0}.ki-cta .ki-actions{margin-top:28px}
@media(max-width:1050px){.ki-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ki-strip-grid>div:nth-child(2){border-right:0}.ki-strip-grid>div{border-bottom:1px solid var(--ki-line)}.ki-strip-grid>div:nth-child(n+3){border-bottom:0}.ki-home-cad-panel{min-height:360px}.ki-hero-proof{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.ki-home-hero{padding:80px 0 68px}.ki-hero-proof{grid-template-columns:1fr}.ki-strip-grid{grid-template-columns:1fr}.ki-strip-grid>div{border-right:0!important;border-bottom:1px solid var(--ki-line)!important}.ki-strip-grid>div:last-child{border-bottom:0!important}.ki-home-cad-panel{min-height:320px}.ki-cad-specs{bottom:52px}.ki-intro-section,.ki-why-section,.ki-process-section{padding:68px 0}.ki-featured-products-section{padding-top:20px}.ki-large-copy p{font-size:16px}}

/* Contact page layout v1.4 */
.ki-contact-hero{padding:104px 0 90px;background:radial-gradient(circle at 74% 30%,rgba(228,28,10,.18),transparent 28%),radial-gradient(circle at 15% 12%,rgba(36,74,114,.58),transparent 34%),var(--ki-ink)}
.ki-contact-cad-panel{min-height:390px;border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025));box-shadow:0 30px 80px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.06)}
.ki-map-radar{position:absolute;inset:72px 42px 82px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:34px 34px;overflow:hidden}.ki-map-radar i{position:absolute;width:260px;height:260px;border:1px solid rgba(228,28,10,.45);border-radius:50%}.ki-map-radar i:nth-child(2){width:170px;height:170px;border-color:rgba(255,255,255,.35)}.ki-map-radar i:nth-child(3){width:80px;height:80px;border-color:rgba(36,74,114,.85)}.ki-map-radar b{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--ki-accent);color:#fff;font-family:var(--ki-mono);letter-spacing:.08em;z-index:2}.ki-contact-main{padding:92px 0 70px}.ki-contact-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:28px;align-items:start}.ki-contact-panel,.ki-contact-details .ki-detail-card{background:#fff;border:1px solid var(--ki-line);border-radius:22px;box-shadow:0 14px 40px rgba(19,27,35,.05)}.ki-contact-panel{padding:34px}.ki-contact-panel h2{font-size:clamp(30px,3vw,46px);line-height:1.08;margin:8px 0 12px;color:var(--ki-ink);letter-spacing:-.025em}.ki-contact-lead{color:#647186;margin:0 0 24px;max-width:680px}.ki-contact-form{display:grid;gap:16px}.ki-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ki-contact-form label{font-weight:800;color:#202b38;font-size:14px}.ki-contact-form input,.ki-contact-form select,.ki-contact-form textarea{width:100%;margin-top:8px;border:1px solid #d9e0ea;border-radius:12px;background:#f8fafc;color:#131b23;padding:13px 14px;font:inherit;outline:none}.ki-contact-form input:focus,.ki-contact-form select:focus,.ki-contact-form textarea:focus{border-color:var(--ki-accent);box-shadow:0 0 0 4px rgba(228,28,10,.08)}.ki-contact-form textarea{resize:vertical;min-height:132px}.ki-contact-form .ki-btn{border:0;justify-self:start;margin-top:4px}.ki-contact-details{display:grid;gap:18px}.ki-detail-card{padding:24px}.ki-detail-card span{font-family:var(--ki-mono);color:var(--ki-accent);font-weight:900;font-size:12px}.ki-detail-card h3{font-size:22px;margin:12px 0 8px;color:var(--ki-ink)}.ki-detail-card p{color:#647186;margin:0 0 14px}.ki-detail-card a{font-weight:900;color:var(--ki-navy)}.ki-map-section{padding:40px 0 92px}.ki-map-placeholder{height:430px;border:1px solid var(--ki-line);border-radius:24px;position:relative;overflow:hidden;background:#f8fafc;display:grid;place-items:center}.ki-map-grid-bg{position:absolute;inset:0;background-image:linear-gradient(#dfe5ef 1px,transparent 1px),linear-gradient(90deg,#dfe5ef 1px,transparent 1px);background-size:40px 40px}.ki-map-grid-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 48%,rgba(228,28,10,.16),transparent 28%)}.ki-map-pin{position:relative;z-index:2;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:var(--ki-accent);color:#fff;font-family:var(--ki-mono);font-weight:900;box-shadow:0 0 0 14px rgba(228,28,10,.12),0 0 0 34px rgba(228,28,10,.07)}.ki-map-card{position:absolute;left:24px;bottom:24px;z-index:2;background:#fff;border:1px solid var(--ki-line);border-radius:16px;padding:16px 18px;box-shadow:0 12px 30px rgba(19,27,35,.08)}.ki-map-card strong{display:block;font-family:var(--ki-mono);font-size:12px;color:var(--ki-ink);letter-spacing:.1em}.ki-map-card span{display:block;margin-top:4px;color:#68758a}
@media(max-width:1050px){.ki-contact-grid{grid-template-columns:1fr}.ki-contact-cad-panel{min-height:340px}.ki-map-radar{inset:70px 26px 80px}}
@media(max-width:700px){.ki-contact-hero{padding:76px 0 64px}.ki-contact-main{padding:64px 0 48px}.ki-contact-panel{padding:24px}.ki-form-row{grid-template-columns:1fr}.ki-map-placeholder{height:330px}.ki-map-card{left:16px;right:16px;bottom:16px}.ki-contact-cad-panel{min-height:310px}.ki-map-radar{inset:66px 18px 76px}}

/* Elementor Free generated layout compatibility */
.elementor-section.ki-section-dark{background:var(--ki-ink);color:#fff;}
.elementor-section.ki-section-light{background:#fff;color:var(--ki-ink);}
.elementor-section.ki-hero-grid>.elementor-container{display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:56px;align-items:center;max-width:1280px!important;margin:0 auto;padding-left:24px;padding-right:24px;}
.elementor-section.ki-split>.elementor-container{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;max-width:1280px!important;margin:0 auto;padding-left:24px;padding-right:24px;}
.elementor-section.ki-contact-grid>.elementor-container{display:grid;grid-template-columns:1.35fr .75fr;gap:28px;max-width:1280px!important;margin:0 auto;padding-left:24px;padding-right:24px;}
.elementor-section.ki-home-hero,.elementor-section.ki-products-hero,.elementor-section.ki-product-detail-hero,.elementor-section.ki-contact-hero{padding:100px 0;}
.elementor-section.ki-intro-section,.elementor-section.ki-why-section,.elementor-section.ki-process-section,.elementor-section.ki-featured-products-section,.elementor-section.ki-contact-main,.elementor-section.ki-map-section{padding:86px 0;}
.elementor-section.ki-cta{padding:86px 0;text-align:center;}
.elementor-section.ki-solution-strip{background:#fff;border-bottom:1px solid var(--ki-line);}
.elementor-section.ki-solution-strip>.elementor-container{max-width:none!important;}
.elementor-section.ki-solution-strip .elementor-column{width:100%!important;}
.elementor-widget-text-editor .ki-kicker{display:inline-block;margin-bottom:16px;}
.elementor-widget-heading h1,.elementor-widget-heading h2,.elementor-widget-heading h3{font-family:inherit;}
.elementor-section.ki-hero-grid .elementor-widget-heading h1{font-size:clamp(44px,6vw,82px);line-height:.98;letter-spacing:-.04em;margin:0 0 22px;color:inherit;}
.elementor-section.ki-hero-grid .elementor-widget-text-editor p{font-size:clamp(17px,2vw,21px);color:#c5cad5;max-width:680px;}
.elementor-section.ki-section-light .elementor-widget-text-editor p{color:#596678;}
.elementor-section.ki-section-dark .elementor-widget-text-editor p{color:#c5cad5;}
.elementor-section.ki-split .elementor-widget-heading h2,.elementor-section.ki-process-section .elementor-widget-heading h2,.elementor-section.ki-featured-products-section .elementor-widget-heading h2,.elementor-section.ki-map-section .elementor-widget-heading h2{font-size:clamp(34px,4vw,58px);line-height:1.04;letter-spacing:-.03em;margin:0 0 20px;color:inherit;}
.elementor-section.ki-products-dynamic-section>.elementor-container{max-width:none!important;}
.elementor-section.ki-products-dynamic-section .elementor-column{width:100%!important;}
.elementor-section.ki-related-wrapper>.elementor-container{max-width:none!important;}
@media(max-width:1050px){.elementor-section.ki-hero-grid>.elementor-container,.elementor-section.ki-split>.elementor-container,.elementor-section.ki-contact-grid>.elementor-container{grid-template-columns:1fr}.elementor-section.ki-hero-grid .elementor-column,.elementor-section.ki-split .elementor-column,.elementor-section.ki-contact-grid .elementor-column{width:100%!important}}
@media(max-width:700px){.elementor-section.ki-home-hero,.elementor-section.ki-products-hero,.elementor-section.ki-product-detail-hero,.elementor-section.ki-contact-hero{padding:70px 0}.elementor-section.ki-hero-grid .elementor-widget-heading h1{font-size:42px}.elementor-section.ki-intro-section,.elementor-section.ki-why-section,.elementor-section.ki-process-section,.elementor-section.ki-contact-main,.elementor-section.ki-map-section{padding:68px 0}}

/* Elementor editable layout repair v1.6 */
.elementor-section.ki-hero-grid,
.elementor-section.ki-split,
.elementor-section.ki-contact-main-layout,
.elementor-section.ki-products-static-section,
.elementor-section.ki-solution-strip{display:block!important;}
.elementor-section.ki-hero-grid>.elementor-container,
.elementor-section.ki-split>.elementor-container,
.elementor-section.ki-contact-main-layout>.elementor-container,
.elementor-section.ki-map-section>.elementor-container,
.elementor-section.ki-products-static-section>.elementor-container,
.elementor-section.ki-featured-products-section>.elementor-container,
.elementor-section.ki-process-section>.elementor-container,
.elementor-section.ki-solution-strip>.elementor-container,
.elementor-section.ki-cta>.elementor-container{width:min(1280px,calc(100% - 40px));max-width:1280px!important;margin-inline:auto!important;padding-left:0!important;padding-right:0!important;}
.elementor-section.ki-hero-grid>.elementor-container>.elementor-column,
.elementor-section.ki-split>.elementor-container>.elementor-column,
.elementor-section.ki-contact-main-layout>.elementor-container>.elementor-column{width:100%!important;min-width:0;}
.elementor-section.ki-contact-main-layout>.elementor-container{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:28px;align-items:start;}
.elementor-section.ki-contact-main-layout .elementor-column-wrap,
.elementor-section.ki-contact-main-layout .elementor-widget-wrap,
.elementor-section.ki-hero-grid .elementor-column-wrap,
.elementor-section.ki-hero-grid .elementor-widget-wrap,
.elementor-section.ki-split .elementor-column-wrap,
.elementor-section.ki-split .elementor-widget-wrap{width:100%;}
.elementor-section.ki-products-static-section{padding:0!important;background:#fff;}
.elementor-section.ki-products-static-section>.elementor-container{width:100%!important;max-width:none!important;}
.elementor-section.ki-products-static-section .elementor-column{width:100%!important;}
.elementor-section.ki-products-static-section .elementor-widget-container>.ki-category-nav{top:78px;}
.ki-elementor-product-grid{width:100%;margin-top:28px;}
.elementor-widget-button .elementor-button{border-radius:999px;background:var(--ki-accent);font-weight:800;}
.ki-related-placeholder{padding:32px;border:1px dashed var(--ki-line);border-radius:18px;background:#fff;color:#667386;text-align:center;font-weight:700;}
@media(max-width:1050px){.elementor-section.ki-contact-main-layout>.elementor-container{grid-template-columns:1fr}.elementor-section.ki-hero-grid>.elementor-container,.elementor-section.ki-split>.elementor-container{grid-template-columns:1fr!important}}
@media(max-width:700px){.elementor-section.ki-hero-grid>.elementor-container,.elementor-section.ki-split>.elementor-container,.elementor-section.ki-contact-main-layout>.elementor-container,.elementor-section.ki-map-section>.elementor-container,.elementor-section.ki-featured-products-section>.elementor-container,.elementor-section.ki-process-section>.elementor-container,.elementor-section.ki-solution-strip>.elementor-container,.elementor-section.ki-cta>.elementor-container{width:min(100% - 28px,1280px)}}

/* v1.8 Elementor/product content compatibility */
.ki-elementor-product-canvas { background: var(--ki-ink); color: var(--ki-paper); min-height: 50vh; }
.ki-elementor-product-canvas .elementor { width: 100%; }
.ki-breadcrumb a { color: inherit; text-decoration: none; }
.ki-breadcrumb a:hover { color: var(--ki-accent); }


/* v1.9 Product detail reference alignment */
:root{--ink:#131B23;--ink-2:#1a2330;--navy:#244A72;--navy-2:#2d5a8a;--accent:#E41C0A;--accent-2:#ff3b29;--lavender:#848AA0;--lavender-soft:#c8ccd9;--paper:#ffffff;--paper-2:#f6f7f9;--paper-3:#eef0f4;--line:#e3e6ec;--line-dark:rgba(255,255,255,.08);--font-display:'Plus Jakarta Sans',Inter,system-ui,sans-serif;--font-body:Inter,system-ui,sans-serif;--font-mono:'JetBrains Mono',ui-monospace,'SF Mono',monospace;--radius-sm:4px;--radius:8px;--radius-lg:14px;--container:1280px;--gutter:32px}
.pd-page{font-family:var(--font-body);color:var(--ink);background:var(--paper);line-height:1.55}.pd-page *{box-sizing:border-box}.pd-page a{text-decoration:none}.pd-page .container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.pd-page .accent{color:var(--accent)}
.pd-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;border-radius:4px;font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid transparent;transition:all .18s ease;white-space:nowrap}.pd-page .btn-sm{padding:10px 14px;font-size:10px}.pd-page .btn-primary{background:var(--accent);color:#fff}.pd-page .btn-primary:hover{background:var(--accent-2);transform:translateY(-1px)}.pd-page .btn-ghost-light{color:#fff;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.03)}.pd-page .btn-ghost-light:hover{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.06)}.pd-page .btn-ghost-dark{color:var(--ink);border-color:var(--line);background:#fff}.pd-page .btn-ghost-dark:hover{border-color:var(--ink);background:var(--paper-2)}
.pd-page .cad-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(36,74,114,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(36,74,114,.35) 1px,transparent 1px);background-size:96px 96px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.15));pointer-events:none}.pd-page .ph-corner{position:absolute;width:18px;height:18px;border:1.5px solid var(--accent)}
.pd-page .eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:10px}.pd-page .eyebrow:before{content:'';width:24px;height:1px;background:currentColor}.pd-page .eyebrow.muted-dark{color:rgba(255,255,255,.55)}
.pd-page .arrow-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.pd-page .product-card-mini{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;min-height:100%}.pd-page .pcm-thumb{height:130px;background:var(--paper-2);border-bottom:1px solid var(--line);display:grid;place-items:center;position:relative;font-family:var(--font-mono);font-size:10px;color:var(--lavender);letter-spacing:.08em}.pd-page .pcm-id{position:absolute;top:10px;left:12px;color:var(--accent);font-size:10px}.pd-page .pcm-body{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}.pd-page .pcm-body h4{font-family:var(--font-display);font-size:18px;line-height:1.18;margin:0;color:var(--ink)}.pd-page .pcm-body p{margin:0;font-size:13px;color:var(--lavender);line-height:1.55;flex:1}.pd-page .pcm-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.pd-page .pcm-tags .tag{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;padding:3px 7px;background:var(--paper-3);color:var(--ink);border-radius:3px;text-transform:uppercase}.pd-page .pcm-foot{padding:12px 18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:8px}.pd-page .quote-link{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--lavender);text-transform:uppercase}
.pd-page .cta-band{background:var(--ink);color:#fff;position:relative;overflow:hidden;padding:100px 0}.pd-page .cta-band .cad-grid{opacity:.7}.pd-page .cta-band .ribbon{position:absolute;right:-120px;top:40px;width:420px;height:420px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.pd-page .cta-band .inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 360px;gap:60px;align-items:center}.pd-page .cta-band h2{font-family:var(--font-display);font-size:clamp(38px,5vw,64px);line-height:1.02;letter-spacing:-.025em;margin:18px 0}.pd-page .cta-band p{color:rgba(255,255,255,.65);font-size:16px;line-height:1.7;max-width:620px}.pd-page .cta-actions{display:flex;gap:12px;flex-wrap:wrap}.pd-page .cta-mini{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11);border-radius:var(--radius);padding:22px}.pd-page .cta-mini .row{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(255,255,255,.08);padding:11px 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em}.pd-page .cta-mini .row:last-child{border-bottom:none}.pd-page .cta-mini .k{color:rgba(255,255,255,.55);text-transform:uppercase}.pd-page .cta-mini .v{color:#fff}.pd-page .cta-mini .v.accent{color:var(--accent)}
.pd-page .faq-list{display:grid;gap:12px}.pd-page .faq-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.pd-page .faq-q{width:100%;display:grid;grid-template-columns:54px 1fr 34px;align-items:center;gap:16px;padding:22px 24px;text-align:left;color:var(--ink);font-family:var(--font-display);font-size:18px;font-weight:600;cursor:pointer}.pd-page .faq-q .num{font-family:var(--font-mono);font-size:11px;color:var(--accent)}.pd-page .faq-q .toggle{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;position:relative}.pd-page .faq-a{display:grid;grid-template-columns:54px 1fr 34px;gap:16px;padding:0 24px 22px}.pd-page .faq-a p{grid-column:2;margin:0;color:var(--lavender);line-height:1.7}.pd-page details.faq-item summary::-webkit-details-marker{display:none}.pd-page details.faq-item:not([open]) .faq-a{display:none}.pd-page details.faq-item[open] .toggle{background:var(--accent);border-color:var(--accent)}

/* =========================================================
   Khodiyar Infotech — Product Detail page styles
   ========================================================= */

/* ---------- Breadcrumb ---------- */
.breadcrumb {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  color: rgba(255,255,255,0.5);
  text-transform: uppercase;
  margin-bottom: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.breadcrumb a { color: rgba(255,255,255,0.5); transition: color 0.15s ease; }
.breadcrumb a:hover { color: var(--accent); }
.breadcrumb .sep { color: rgba(255,255,255,0.25); }
.breadcrumb .current { color: #fff; }

/* ---------- Product Hero ---------- */
.pd-hero {
  position: relative;
  background: var(--ink);
  color: #fff;
  padding: 56px 0 88px;
  overflow: hidden;
}
.pd-hero .cad-grid { opacity: 0.85; }
.pd-hero .glow {
  position: absolute;
  width: 800px; height: 800px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(36,74,114,0.45), transparent 60%);
  right: -260px; top: -200px;
  pointer-events: none;
}
.pd-hero .grid {
  position: relative; z-index: 2;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 64px;
  align-items: center;
}
.pd-hero .label-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 7px 14px;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 100px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.85);
  margin-bottom: 22px;
}
.pd-hero .label-pill .dot {
  width: 6px; height: 6px;
  background: var(--accent);
  border-radius: 50%;
}
.pd-hero h1 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(44px, 5.6vw, 76px);
  line-height: 1.02;
  letter-spacing: -0.025em;
  margin: 0 0 20px;
}
.pd-hero h1 .accent { color: var(--accent); }
.pd-hero p.lead {
  color: rgba(255,255,255,0.72);
  font-size: 17px;
  margin: 0 0 28px;
  max-width: 560px;
  line-height: 1.6;
}
.pd-hero .badges {
  display: flex; gap: 8px; flex-wrap: wrap;
  margin-bottom: 32px;
}
.pd-hero .badges .b {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 5px 10px;
  border: 1px solid rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.7);
  border-radius: 3px;
}
.pd-hero .cta-row { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 36px; }
.pd-hero .trust {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px 24px;
  border-top: 1px solid rgba(255,255,255,0.1);
  padding-top: 22px;
  max-width: 540px;
}
.pd-hero .trust .item {
  display: flex; align-items: center; gap: 10px;
  font-size: 13px;
  color: rgba(255,255,255,0.72);
}
.pd-hero .trust .item::before {
  content: ''; width: 6px; height: 6px;
  background: var(--accent); flex: none;
}

/* Product visual frame */
.pd-frame {
  position: relative;
  aspect-ratio: 1 / 0.95;
  background:
    radial-gradient(ellipse at 50% 40%, rgba(36,74,114,0.35) 0%, transparent 65%),
    var(--ink-2);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 4px;
  overflow: hidden;
}
.pd-frame .vp-toolbar {
  position: absolute; top: 0; left: 0; right: 0;
  display: flex; align-items: center; gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  background: rgba(0,0,0,0.25);
  font-family: var(--font-mono);
  font-size: 10px;
  color: rgba(255,255,255,0.5);
  letter-spacing: 0.08em;
}
.pd-frame .vp-toolbar .dot { width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,0.18); }
.pd-frame .vp-toolbar .dot.red { background: var(--accent); }
.pd-frame .vp-toolbar .spacer { flex: 1; }
.pd-frame .vp-grid {
  position: absolute; inset: 40px 0 0;
  background-image:
    linear-gradient(rgba(132,138,160,0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(132,138,160,0.08) 1px, transparent 1px);
  background-size: 40px 40px;
}
.pd-model {
  position: absolute;
  left: 50%; top: 54%;
  transform: translate(-50%, -50%);
  width: 64%;
  aspect-ratio: 1;
}
.pd-model .ring {
  position: absolute;
  inset: 0;
  border: 1.5px solid var(--accent);
  border-radius: 50%;
  animation: spin 22s linear infinite;
}
.pd-model .ring.r2 { inset: 18%; border-color: rgba(255,255,255,0.4); border-style: dashed; animation-duration: 32s; animation-direction: reverse; }
.pd-model .ring.r3 { inset: 36%; border-color: var(--navy-2); animation-duration: 14s; }
.pd-model .core {
  position: absolute; inset: 50%;
  width: 14%; height: 14%;
  margin: -7% 0 0 -7%;
  background: var(--accent);
  border-radius: 50%;
  box-shadow: 0 0 60px rgba(228,28,10,0.5);
}
.pd-model .node {
  position: absolute;
  width: 10px; height: 10px;
  border: 1.5px solid var(--accent);
  background: var(--ink);
}
.pd-model .node.n1 { top: 6%; left: 50%; transform: translateX(-50%); }
.pd-model .node.n2 { bottom: 12%; left: 12%; }
.pd-model .node.n3 { bottom: 12%; right: 12%; }

.pd-anno {
  position: absolute;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  color: rgba(255,255,255,0.7);
  text-transform: uppercase;
  display: flex; align-items: center; gap: 8px;
}
.pd-anno .leader { width: 50px; height: 1px; background: var(--accent); position: relative; }
.pd-anno .leader::after { content: ''; position: absolute; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); top: -2.5px; }
.pd-anno.left { left: 16px; } 
.pd-anno.left .leader::after { right: -3px; }
.pd-anno.right { right: 16px; flex-direction: row-reverse; }
.pd-anno.right .leader::after { left: -3px; }

.pd-readout {
  position: absolute;
  right: 16px; bottom: 16px;
  display: flex; flex-direction: column; gap: 4px;
  font-family: var(--font-mono);
  font-size: 10px;
  color: rgba(255,255,255,0.55);
  letter-spacing: 0.08em;
  text-align: right;
}
.pd-readout span strong { color: #fff; font-weight: 500; }

.pd-axes {
  position: absolute;
  bottom: 16px; left: 16px;
  width: 56px; height: 56px;
}

/* ---------- Sticky in-page nav ---------- */
.pd-nav {
  position: sticky;
  top: 72px;
  z-index: 30;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.pd-nav .inner {
  display: flex; align-items: center; gap: 8px;
  padding: 14px 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.pd-nav .inner::-webkit-scrollbar { display: none; }
.pd-nav .label {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--lavender);
  text-transform: uppercase;
  flex: none;
  margin-right: 12px;
}
.pd-nav .tab {
  flex: none;
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--navy);
  background: var(--paper-2);
  border: 1px solid var(--line);
  border-radius: 100px;
  cursor: pointer;
  transition: all 0.18s ease;
  white-space: nowrap;
}
.pd-nav .tab:hover { border-color: var(--navy); }
.pd-nav .tab.active {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}
.pd-nav .nav-cta {
  margin-left: auto;
  flex: none;
}

/* ---------- Section primitive ---------- */
.pd-section { padding: 96px 0; position: relative; }
.pd-section.alt { background: var(--paper-2); }
.pd-section-head {
  margin-bottom: 56px;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 48px;
  align-items: end;
}
.pd-section-head .num {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.15em;
  color: var(--accent);
  text-transform: uppercase;
  margin-bottom: 14px;
  display: block;
}
.pd-section-head h2 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(34px, 4.2vw, 52px);
  letter-spacing: -0.02em;
  margin: 0;
  color: var(--ink);
}
.pd-section-head p.lead {
  margin: 0;
  color: var(--lavender);
  font-size: 16px;
  line-height: 1.65;
  max-width: 540px;
}

/* ---------- Overview ---------- */
.overview-grid {
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 56px;
  align-items: start;
}
.overview-text p {
  font-size: 17px;
  line-height: 1.7;
  color: var(--ink);
  margin: 0 0 24px;
}
.overview-text ul {
  list-style: none; padding: 0; margin: 0 0 28px;
  display: grid; gap: 12px;
}
.overview-text ul li {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 15px;
  color: var(--ink);
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}
.overview-text ul li::before {
  content: '✓';
  font-family: var(--font-mono);
  font-weight: 600;
  color: var(--accent);
  flex: none;
  width: 18px;
}
.overview-visual {
  position: relative;
  aspect-ratio: 4 / 3;
  background:
    repeating-linear-gradient(135deg,
      rgba(36,74,114,0.06) 0 8px,
      rgba(36,74,114,0.02) 8px 16px),
    var(--paper-2);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  display: grid; place-items: center;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--lavender);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  overflow: hidden;
}
.overview-visual .ph-corner {
  position: absolute; width: 14px; height: 14px;
  border: 1px solid var(--accent);
}
.overview-visual .ph-corner.tl { top: 10px; left: 10px; border-right: none; border-bottom: none; }
.overview-visual .ph-corner.tr { top: 10px; right: 10px; border-left: none; border-bottom: none; }
.overview-visual .ph-corner.bl { bottom: 10px; left: 10px; border-right: none; border-top: none; }
.overview-visual .ph-corner.br { bottom: 10px; right: 10px; border-left: none; border-top: none; }
.overview-visual .ov-toolbar {
  position: absolute; top: 0; left: 0; right: 0;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
  background: #fff;
  display: flex; gap: 8px; align-items: center;
  font-size: 10px; color: var(--lavender);
}
.overview-visual .ov-toolbar .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--lavender-soft); }
.overview-visual .ov-toolbar .dot.red { background: var(--accent); }
.overview-visual .ov-toolbar .spacer { flex: 1; }
.overview-visual .ov-label {
  position: relative; z-index: 1;
}

/* ---------- Benefits ---------- */
.benefits-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.benefit-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px;
  display: flex; flex-direction: column;
  gap: 14px;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
  overflow: hidden;
}
.benefit-card::before {
  content: ''; position: absolute;
  top: 0; left: 0;
  width: 36px; height: 3px;
  background: var(--accent);
}
.benefit-card:hover {
  transform: translateY(-3px);
  border-color: var(--ink);
  box-shadow: 0 14px 40px -22px rgba(19,27,35,0.2);
}
.benefit-card .b-num {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--lavender);
}
.benefit-card .b-icon {
  width: 48px; height: 48px;
  color: var(--ink);
}
.benefit-card h4 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 20px;
  margin: 0;
  color: var(--ink);
  letter-spacing: -0.01em;
}
.benefit-card p {
  margin: 0;
  font-size: 14px;
  color: var(--lavender);
  line-height: 1.55;
}

/* ---------- Capabilities (alternating rows) ---------- */
.capabilities { background: #fff; }
.cap-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
  padding: 64px 0;
  border-top: 1px solid var(--line);
}
.cap-row:first-child { border-top: none; padding-top: 0; }
.cap-row.flip .cap-text { order: 2; }
.cap-row .cap-num {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.12em;
  color: var(--accent);
  text-transform: uppercase;
  margin-bottom: 14px;
  display: block;
}
.cap-row h3 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(28px, 3.4vw, 40px);
  letter-spacing: -0.02em;
  color: var(--ink);
  margin: 0 0 18px;
}
.cap-row p {
  font-size: 16px;
  color: var(--lavender);
  line-height: 1.7;
  margin: 0 0 24px;
}
.cap-visual {
  position: relative;
  aspect-ratio: 4 / 3;
  background:
    repeating-linear-gradient(135deg,
      rgba(36,74,114,0.06) 0 8px,
      rgba(36,74,114,0.02) 8px 16px),
    var(--paper-2);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  display: grid; place-items: center;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--lavender);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.cap-visual .ph-corner {
  position: absolute; width: 14px; height: 14px;
  border: 1px solid var(--accent);
}
.cap-visual .ph-corner.tl { top: 10px; left: 10px; border-right: none; border-bottom: none; }
.cap-visual .ph-corner.tr { top: 10px; right: 10px; border-left: none; border-bottom: none; }
.cap-visual .ph-corner.bl { bottom: 10px; left: 10px; border-right: none; border-top: none; }
.cap-visual .ph-corner.br { bottom: 10px; right: 10px; border-left: none; border-top: none; }

/* ---------- Comparison Table ---------- */
.compare-wrap {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
}
.compare-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.compare-table thead th {
  background: #fff;
  padding: 24px 20px;
  text-align: left;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 17px;
  color: var(--navy);
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 0;
  z-index: 1;
}
.compare-table thead th.feat { color: var(--lavender); font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 500; }
.compare-table thead th.recommended {
  background: var(--ink);
  color: #fff;
  position: relative;
}
.compare-table thead th.recommended .pkg-tag {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.12em;
  background: var(--accent);
  color: #fff;
  padding: 3px 7px;
  border-radius: 3px;
  margin-left: 10px;
  vertical-align: middle;
}
.compare-table tbody tr { border-bottom: 1px solid var(--line); }
.compare-table tbody tr:last-child { border-bottom: none; }
.compare-table tbody td {
  padding: 16px 20px;
  color: var(--ink);
}
.compare-table tbody td.feat-name {
  color: var(--ink);
  font-weight: 500;
  background: var(--paper-2);
  width: 36%;
}
.compare-table tbody td.recommended-col {
  background: rgba(228,28,10,0.04);
  border-left: 1px solid rgba(228,28,10,0.15);
  border-right: 1px solid rgba(228,28,10,0.15);
}
.compare-table tbody tr:last-child td.recommended-col { border-bottom: 1px solid rgba(228,28,10,0.15); }
.compare-table .check {
  display: inline-grid;
  place-items: center;
  width: 22px; height: 22px;
  border-radius: 50%;
  background: var(--ink);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
}
.compare-table .check.acc { background: var(--accent); }
.compare-table .dash {
  color: var(--lavender);
  font-family: var(--font-mono);
  font-size: 14px;
}

.guidance-cta {
  margin-top: 32px;
  background: var(--ink);
  color: #fff;
  border-radius: var(--radius);
  padding: 36px 40px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 32px;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.guidance-cta::before {
  content: '';
  position: absolute;
  inset: auto -40px -40px auto;
  width: 200px; height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(228,28,10,0.18), transparent 70%);
  pointer-events: none;
}
.guidance-cta h4 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 24px;
  margin: 0 0 6px;
  color: #fff;
  letter-spacing: -0.01em;
}
.guidance-cta p {
  margin: 0;
  color: rgba(255,255,255,0.7);
  font-size: 15px;
  max-width: 560px;
}

/* ---------- Licensing cards ---------- */
.lic-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.lic-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 32px;
  display: flex; flex-direction: column;
  gap: 16px;
  transition: all 0.2s ease;
  position: relative;
  overflow: hidden;
}
.lic-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 40px; height: 3px;
  background: var(--accent);
}
.lic-card:hover {
  border-color: var(--ink);
  transform: translateY(-3px);
}
.lic-card .lic-num {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--lavender);
}
.lic-card .lic-icon {
  width: 48px; height: 48px;
  color: var(--ink);
}
.lic-card h3 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 22px;
  margin: 0;
  color: var(--ink);
  letter-spacing: -0.01em;
}
.lic-card p {
  margin: 0;
  color: var(--lavender);
  font-size: 14px;
  line-height: 1.6;
}
.lic-card ul {
  list-style: none; padding: 0; margin: 0;
  display: grid; gap: 8px;
  border-top: 1px solid var(--line);
  padding-top: 16px;
}
.lic-card ul li {
  font-size: 13px;
  color: var(--ink);
  display: flex; align-items: center; gap: 10px;
}
.lic-card ul li::before {
  content: ''; width: 6px; height: 6px;
  background: var(--accent); flex: none;
}
.lic-card .btn { margin-top: auto; align-self: flex-start; }

/* ---------- Support (dark) ---------- */
.support {
  background: var(--ink);
  color: #fff;
  position: relative;
  overflow: hidden;
}
.support .cad-grid { opacity: 0.6; }
.support .pd-section-head h2 { color: #fff; }
.support .pd-section-head p.lead { color: rgba(255,255,255,0.65); }
.support-grid {
  position: relative; z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.support-card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius);
  padding: 28px;
  display: flex; flex-direction: column;
  gap: 14px;
  transition: all 0.2s ease;
}
.support-card:hover {
  border-color: var(--accent);
  background: rgba(255,255,255,0.05);
  transform: translateY(-3px);
}
.support-card .s-num {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--accent);
  letter-spacing: 0.1em;
}
.support-card .s-icon {
  width: 44px; height: 44px;
  color: rgba(255,255,255,0.85);
}
.support-card h4 {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 19px;
  margin: 0;
  color: #fff;
  letter-spacing: -0.005em;
}
.support-card p {
  margin: 0;
  font-size: 13px;
  color: rgba(255,255,255,0.65);
  line-height: 1.6;
}

/* ---------- Training cards ---------- */
.training-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.train-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 32px;
  display: flex; flex-direction: column;
  gap: 14px;
  transition: all 0.2s ease;
}
.train-card:hover { border-color: var(--ink); transform: translateY(-3px); }
.train-card .t-num {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--accent);
}
.train-card h4 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 22px;
  margin: 0;
  color: var(--ink);
  letter-spacing: -0.01em;
}
.train-card p {
  margin: 0;
  font-size: 14px;
  color: var(--lavender);
  line-height: 1.6;
}
.train-card ul {
  list-style: none; padding: 0; margin: 0;
  display: grid; gap: 8px;
  border-top: 1px solid var(--line);
  padding-top: 16px;
}
.train-card ul li {
  font-size: 13px;
  color: var(--ink);
  display: flex; align-items: center; gap: 10px;
}
.train-card ul li::before {
  content: '+';
  font-family: var(--font-mono);
  color: var(--accent);
  font-weight: 700;
}
.train-card .arrow-link { margin-top: auto; }

/* ---------- Related products ---------- */
.related-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}
@media (max-width: 1180px) { .related-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 720px)  { .related-grid { grid-template-columns: 1fr; } }

/* ---------- Industry use cases ---------- */
.usecase-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.uc-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px;
  display: flex;
  align-items: center;
  gap: 18px;
  transition: all 0.2s ease;
}
.uc-card:hover { border-color: var(--ink); background: var(--paper-2); }
.uc-card .uc-icon {
  width: 44px; height: 44px;
  color: var(--ink);
  flex: none;
}
.uc-card h5 {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 17px;
  margin: 0 0 4px;
  color: var(--ink);
}
.uc-card p {
  margin: 0;
  font-size: 13px;
  color: var(--lavender);
  line-height: 1.45;
}

/* Responsive */
@media (max-width: 1080px) {
  .pd-hero .grid { grid-template-columns: 1fr; }
  .pd-section-head { grid-template-columns: 1fr; }
  .overview-grid { grid-template-columns: 1fr; }
  .benefits-grid { grid-template-columns: repeat(2, 1fr); }
  .cap-row { grid-template-columns: 1fr; gap: 32px; padding: 48px 0; }
  .cap-row.flip .cap-text { order: 0; }
  .lic-grid, .training-grid { grid-template-columns: 1fr; }
  .support-grid { grid-template-columns: repeat(2, 1fr); }
  .usecase-grid { grid-template-columns: repeat(2, 1fr); }
  .guidance-cta { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .pd-section { padding: 64px 0; }
  .benefits-grid { grid-template-columns: 1fr; }
  .support-grid { grid-template-columns: 1fr; }
  .usecase-grid { grid-template-columns: 1fr; }
  .compare-wrap { overflow-x: auto; }
  .compare-table { min-width: 720px; }
}

/* v2.6 widget control fixes */
.ki-cad-image{position:relative;z-index:2;max-width:82%;max-height:72%;width:auto;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 20px 55px rgba(0,0,0,.28)}
.pd-frame .pd-hero-image{position:absolute;z-index:3;inset:54px 28px 72px;width:calc(100% - 56px);height:calc(100% - 126px);object-fit:contain;border-radius:14px;background:rgba(255,255,255,.03)}
.ki-contact-main-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:28px;align-items:start;}
.ki-contact-main-layout .ki-contact-panel,.ki-contact-main-layout .ki-contact-details{min-width:0;}
.ki-contact-details{display:grid;gap:18px;}
@media(max-width:1050px){.ki-contact-main-layout{grid-template-columns:1fr}.pd-frame .pd-hero-image{inset:48px 24px 72px;width:calc(100% - 48px);height:calc(100% - 120px)}}

/* v2.7 stable widget control upgrade */
.ki-widget-page-section,
.ki-widget-page-section > .elementor-container,
.ki-widget-page-section > .elementor-container > .elementor-column,
.ki-widget-page-section .elementor-widget-wrap,
.ki-widget-page-section .elementor-widget,
.ki-widget-page-section .elementor-widget-container{width:100%!important;max-width:none!important;}
.ki-widget-layout > .ki-home-hero,
.ki-widget-layout > .ki-products-hero,
.ki-widget-layout > .ki-contact-hero,
.pd-page > .pd-hero{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
.ki-product-visual.has-image{background:#f7f9fc;}
.ki-product-visual.has-image:before{opacity:.35;}
.ki-product-visual.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;}
.ki-product-visual.has-image .ki-product-visual__label{position:absolute;left:14px;bottom:12px;z-index:3;background:rgba(255,255,255,.86);border:1px solid #dfe4ec;border-radius:999px;padding:5px 9px;}
.pd-nav .inner{gap:10px;}
.pd-nav .tab{white-space:nowrap;}

/* v2.8 final stabilization */
.ki-site-main{display:block;}
.ki-widget-page-section,
.ki-widget-page-section .elementor-widget-wrap,
.ki-widget-page-section .elementor-widget-container{padding-top:0!important;margin-top:0!important;}
.ki-widget-layout{margin-top:0!important;padding-top:0!important;}
.ki-widget-layout > .ki-home-hero,
.ki-widget-layout > .ki-products-hero,
.ki-widget-layout > .ki-contact-hero,
.pd-page > .pd-hero{margin-top:0!important;}
.elementor-section-wrap > .elementor-section:first-child,
.elementor-location-single > .elementor-section:first-child{margin-top:0!important;padding-top:0!important;}
body.elementor-page .ki-site-main > .elementor{margin-top:0!important;}
body.elementor-page .ki-site-main .elementor-top-section:first-child{margin-top:0!important;}

.ki-category-nav a.is-active,
.ki-category-nav a.active,
.pd-nav .tab.is-active,
.pd-nav .tab.active{
  background:var(--ki-accent,#E41C0A)!important;
  border-color:var(--ki-accent,#E41C0A)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(228,28,10,.22);
}
.pd-nav .tab.is-active:hover,
.ki-category-nav a.is-active:hover{color:#fff!important;}

.overview-visual,.cap-visual{overflow:hidden;}
.pd-inline-image{position:absolute;inset:28px;width:calc(100% - 56px);height:calc(100% - 56px);object-fit:contain;z-index:2;border-radius:14px;background:rgba(255,255,255,.04);}
.cap-visual .pd-inline-image{inset:24px;width:calc(100% - 48px);height:calc(100% - 48px);}
.overview-visual .ov-label{z-index:2;}

.ki-header-extra{display:flex;align-items:center;gap:14px;}
.ki-header-extra .ki-editable-widget,.ki-header-actions .ki-editable-widget{margin:0;}
.ki-header-actions .wp-block-buttons{margin:0;display:flex;gap:12px;}
.ki-header-actions .wp-block-button__link{border-radius:999px;padding:11px 18px;font-weight:800;}
.ki-editable-widget-title{margin:0 0 12px;font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:#fff;}
.ki-footer-col .ki-editable-widget{margin-bottom:18px;}
.ki-footer-bottom .ki-editable-widget{margin:0;}
.ki-footer-bottom:has(.ki-editable-widget){align-items:flex-start;}
@media(max-width:900px){.ki-header-extra{display:none}.ki-header-actions{width:100%;justify-content:flex-start;}}

/* v3.0 homepage reference alignment */
.ki-home-ref{--ink:#131B23;--ink-2:#1a2330;--navy:#244A72;--accent:#E41C0A;--lavender:#848AA0;--paper:#fff;--paper-2:#f6f7f9;--line:#e3e6ec;--font-display:var(--ki-font);--font-mono:var(--ki-mono);background:var(--paper);color:var(--ink);overflow:hidden}
.ki-home-ref *{box-sizing:border-box}.ki-home-ref .home-container{width:min(1240px,calc(100% - 40px));margin-inline:auto}.ki-home-ref .section-pad{padding:104px 0}.ki-home-ref .cad-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(36,74,114,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(36,74,114,.25) 1px,transparent 1px);background-size:120px 120px;opacity:.42;pointer-events:none}.ki-home-ref .home-eyebrow{display:inline-block;font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:800}.ki-home-ref .display{font-size:clamp(38px,4.8vw,68px);line-height:.98;letter-spacing:-.045em;margin:18px 0 0;color:var(--ink)}.ki-home-ref .lead{font-size:18px;line-height:1.7;color:#647184}.ki-home-ref .mark,.ki-home-ref .accent{color:var(--accent)}
.ki-home-ref .home-hero{position:relative;background:radial-gradient(circle at 78% 34%,rgba(228,28,10,.22),transparent 28%),radial-gradient(circle at 15% 10%,rgba(36,74,114,.58),transparent 34%),var(--ink);color:#fff;padding:104px 0 0;margin:0!important}.ki-home-ref .hero-glow{position:absolute;right:5%;top:8%;width:420px;height:420px;background:rgba(228,28,10,.18);filter:blur(90px);border-radius:50%}.ki-home-ref .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:70px;align-items:center}.ki-home-ref .hero-eyebrow{display:inline-flex;gap:10px;align-items:center;font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#d9dee8;margin-bottom:24px}.ki-home-ref .hero-eyebrow .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px rgba(228,28,10,.15)}.ki-home-ref .hero-copy h1{font-size:clamp(48px,6.8vw,88px);line-height:.96;letter-spacing:-.055em;margin:0 0 24px;color:#fff}.ki-home-ref .hero-copy h1 .underline{position:relative;color:#fff}.ki-home-ref .hero-copy h1 .underline:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:10px;background:rgba(228,28,10,.55);z-index:-1}.ki-home-ref .hero-copy .lead{max-width:720px;color:#c5cad5}.ki-home-ref .hero-cta,.ki-home-ref .cta-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.ki-home-ref .home-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:13px 22px;border-radius:999px;font-weight:800;font-size:14px;border:1px solid transparent;transition:.18s}.ki-home-ref .home-btn-primary{background:var(--accent);color:#fff}.ki-home-ref .home-btn-ghost{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.22);color:#fff}.ki-home-ref .home-btn-sm{min-height:38px;padding:10px 16px;font-size:12px}.ki-home-ref .trust-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:36px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035)}.ki-home-ref .trust-row div{padding:16px 14px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#b9c1d0;border-right:1px solid rgba(255,255,255,.08)}.ki-home-ref .trust-row div:last-child{border-right:0}
.ki-home-ref .hero-viewport{position:relative;min-height:520px;border:1px solid rgba(255,255,255,.14);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025));overflow:hidden;box-shadow:0 32px 90px rgba(0,0,0,.32)}.ki-home-ref .vp-toolbar{height:48px;border-bottom:1px solid rgba(255,255,255,.12);display:flex;align-items:center;gap:8px;padding:0 16px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:#b8c1d0;background:rgba(8,12,17,.55);position:relative;z-index:3}.ki-home-ref .vp-toolbar .dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.35)}.ki-home-ref .vp-toolbar .red{background:var(--accent)}.ki-home-ref .vp-toolbar .spacer{flex:1}.ki-home-ref .vp-grid{position:absolute;inset:48px 0 0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:38px 38px}.ki-home-ref .vp-image{position:absolute;z-index:2;inset:70px 28px 86px;width:calc(100% - 56px);height:calc(100% - 156px);object-fit:contain;border-radius:18px;background:rgba(255,255,255,.03)}.ki-home-ref .model{position:absolute;left:50%;top:52%;width:300px;height:300px;transform:translate(-50%,-50%);z-index:2}.ki-home-ref .ring{position:absolute;border:2px solid rgba(255,255,255,.25);border-radius:50%;inset:20px}.ki-home-ref .r1{border-color:var(--accent)}.ki-home-ref .r2{inset:55px;border-style:dashed}.ki-home-ref .r3{inset:92px;border-color:rgba(36,74,114,.9)}.ki-home-ref .r4{inset:126px;border-color:rgba(255,255,255,.55)}.ki-home-ref .axis{position:absolute;left:50%;top:50%;width:220px;height:2px;background:rgba(255,255,255,.35);transform-origin:left center}.ki-home-ref .a1{transform:rotate(0deg)}.ki-home-ref .a2{transform:rotate(60deg)}.ki-home-ref .a3{transform:rotate(-60deg)}.ki-home-ref .node,.ki-home-ref .core{position:absolute;border-radius:50%;background:var(--accent);box-shadow:0 0 24px rgba(228,28,10,.55)}.ki-home-ref .core{width:44px;height:44px;left:128px;top:128px}.ki-home-ref .n1{width:16px;height:16px;left:58px;top:80px}.ki-home-ref .n2{width:14px;height:14px;right:64px;top:202px}.ki-home-ref .n3{width:12px;height:12px;left:172px;top:44px}.ki-home-ref .vp-corner,.ki-home-ref .vp-anno{position:absolute;z-index:3;font-family:var(--font-mono);font-size:10px;color:#aab4c4;letter-spacing:.08em}.ki-home-ref .vp-corner.tl{top:66px;left:18px}.ki-home-ref .vp-corner.tr{top:66px;right:18px}.ki-home-ref .vp-anno.left{top:34%;left:18px}.ki-home-ref .vp-anno.right{top:64%;right:18px}.ki-home-ref .vp-readout{position:absolute;left:18px;right:18px;bottom:18px;z-index:3;display:flex;gap:8px;flex-wrap:wrap}.ki-home-ref .vp-readout span{padding:7px 9px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.22);border-radius:999px;font-family:var(--font-mono);font-size:10px;color:#b9c1d0}.ki-home-ref .vp-readout strong{color:#fff}.ki-home-ref .quick-cards{position:relative;z-index:2;margin-top:72px;background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 18px 48px rgba(0,0,0,.18)}.ki-home-ref .quick-cards .row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.ki-home-ref .qc{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:26px 20px;border-right:1px solid var(--line)}.ki-home-ref .qc:last-child{border-right:0}.ki-home-ref .qc-num{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:900}.ki-home-ref .qc-title{font-weight:800;line-height:1.2}.ki-home-ref .qc-arrow{color:var(--accent);font-weight:900}
.ki-home-ref .intro{background:#fff}.ki-home-ref .intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.ki-home-ref .value-cards{display:grid;gap:16px}.ki-home-ref .value-card{display:grid;grid-template-columns:90px 1fr 28px;gap:20px;align-items:center;padding:24px;border:1px solid var(--line);background:#fff}.ki-home-ref .value-card .num{font-family:var(--font-mono);color:var(--accent);font-weight:900}.ki-home-ref .value-card h3,.ki-home-ref .value-card h4{margin:0 0 8px;font-size:20px}.ki-home-ref .value-card p{margin:0;color:#667386}.ki-home-ref .software,.ki-home-ref .products,.ki-home-ref .stats,.ki-home-ref .faq{background:#f6f7f9}.ki-home-ref .section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:end;margin-bottom:42px}.ki-home-ref .section-head .lead{margin:0}.ki-home-ref .software-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ki-home-ref .software-card{position:relative;min-height:340px;padding:28px;border:1px solid var(--line);background:#fff;overflow:hidden}.ki-home-ref .card-num{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:900}.ki-home-ref .tech-icon{width:72px;height:72px;border:1px solid #d8deea;margin:28px 0 26px;border-radius:18px;position:relative;background:linear-gradient(135deg,#fff,#f1f4f8)}.ki-home-ref .tech-icon:before{content:"";position:absolute;inset:18px;border:2px solid var(--navy);transform:rotate(45deg)}.ki-home-ref .software-card h3,.ki-home-ref .software-card h4{font-size:24px;line-height:1.1;margin:0 0 12px}.ki-home-ref .software-card p{color:#667386;margin:0 0 18px}.ki-home-ref .tag-list{display:flex;flex-wrap:wrap;gap:8px}.ki-home-ref .tag-list span{font-size:11px;font-weight:800;border:1px solid #dde3ec;border-radius:999px;padding:6px 9px;background:#f7f9fc;color:#526174}.ki-home-ref .home-arrow-link{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:900;text-transform:uppercase}.ki-home-ref .industries{background:#fff}.ki-home-ref .ind-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ki-home-ref .ind-card{min-height:210px;padding:24px;border:1px solid var(--line);background:#fff;position:relative;overflow:hidden}.ki-home-ref .ind-card.wide{grid-column:span 2;background:var(--ink);color:#fff}.ki-home-ref .ind-num{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:900}.ki-home-ref .ind-card h3,.ki-home-ref .ind-card h4{font-size:22px;margin:18px 0 10px}.ki-home-ref .ind-card p{color:#b9c1d0}.ki-home-ref .ind-illu{position:absolute;right:-30px;bottom:-30px;width:140px;height:140px;border:1px solid rgba(36,74,114,.18);border-radius:32px;transform:rotate(18deg)}.ki-home-ref .services-split{background:#fff}.ki-home-ref .split-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ki-home-ref .split-card{padding:42px;border-radius:28px;color:#fff;min-height:520px;display:flex;flex-direction:column}.ki-home-ref .split-card.dark{background:var(--ink)}.ki-home-ref .split-card.navy{background:var(--navy)}.ki-home-ref .split-eyebrow,.ki-home-ref .meta{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.62)}.ki-home-ref .split-card h3,.ki-home-ref .split-card h4{font-size:34px;line-height:1.02;margin:24px 0 12px;color:#fff}.ki-home-ref .split-card .lead{color:rgba(255,255,255,.72)}.ki-home-ref .split-list{list-style:none;margin:26px 0 30px;padding:0;display:grid;gap:12px}.ki-home-ref .split-list li{padding-left:22px;position:relative;color:rgba(255,255,255,.86)}.ki-home-ref .split-list li:before{content:"";position:absolute;left:0;top:.75em;width:8px;height:8px;border-radius:50%;background:var(--accent)}.ki-home-ref .split-foot{margin-top:auto;display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.ki-home-ref .stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ki-home-ref .stat{padding:28px;background:#fff;border:1px solid var(--line);min-height:230px}.ki-home-ref .stat-tag{font-family:var(--font-mono);font-size:11px;color:var(--accent);font-weight:900;text-transform:uppercase}.ki-home-ref .stat-num{font-size:64px;line-height:1;margin:28px 0 20px;font-weight:900;letter-spacing:-.06em}.ki-home-ref .stat-num .suffix{font-size:.45em;color:var(--accent)}.ki-home-ref .stat-label{font-weight:800;color:#526174}.ki-home-ref .cta-band{position:relative;background:var(--ink);color:#fff;padding:96px 0;overflow:hidden}.ki-home-ref .cta-inner{position:relative;display:grid;grid-template-columns:1fr 420px;gap:64px;align-items:center}.ki-home-ref .cta-band h2{font-size:clamp(36px,4.6vw,64px);line-height:1.02;margin:18px 0;color:#fff}.ki-home-ref .cta-band p{color:#c3cad6;font-size:18px;line-height:1.7}.ki-home-ref .cta-mini{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);border-radius:22px;padding:22px}.ki-home-ref .cta-mini .row{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.08);font-family:var(--font-mono);font-size:12px}.ki-home-ref .cta-mini .row:last-child{border-bottom:0}.ki-home-ref .cta-mini b{color:#fff}.ki-home-ref .faq-list{border-top:1px solid var(--line)}.ki-home-ref .faq-item{border-bottom:1px solid var(--line);background:transparent}.ki-home-ref .faq-item summary{list-style:none;display:grid;grid-template-columns:60px 1fr 38px;gap:20px;align-items:center;padding:26px 0;font-size:21px;font-weight:800;cursor:pointer}.ki-home-ref .faq-item summary::-webkit-details-marker{display:none}.ki-home-ref .faq-item summary span{font-family:var(--font-mono);font-size:12px;color:var(--accent)}.ki-home-ref .faq-item summary i{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;position:relative}.ki-home-ref .faq-item summary i:before,.ki-home-ref .faq-item summary i:after{content:"";position:absolute;background:var(--ink);left:50%;top:50%;transform:translate(-50%,-50%)}.ki-home-ref .faq-item summary i:before{width:12px;height:2px}.ki-home-ref .faq-item summary i:after{width:2px;height:12px}.ki-home-ref .faq-item[open] summary i{background:var(--accent);border-color:var(--accent)}.ki-home-ref .faq-item[open] summary i:before{background:#fff}.ki-home-ref .faq-item[open] summary i:after{display:none}.ki-home-ref .faq-item p{margin:0 40px 28px 80px;color:#667386;max-width:760px}.ki-home-ref .ki-product-grid{margin-top:10px}
@media(max-width:1080px){.ki-home-ref .hero-grid,.ki-home-ref .intro-grid,.ki-home-ref .section-head,.ki-home-ref .split-grid,.ki-home-ref .cta-inner{grid-template-columns:1fr}.ki-home-ref .hero-viewport{max-width:620px;margin-inline:auto;width:100%}.ki-home-ref .quick-cards .row{grid-template-columns:repeat(2,minmax(0,1fr))}.ki-home-ref .software-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ki-home-ref .ind-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ki-home-ref .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ki-home-ref .home-container{width:min(100% - 28px,1240px)}.ki-home-ref .section-pad{padding:72px 0}.ki-home-ref .home-hero{padding-top:70px}.ki-home-ref .hero-copy h1{font-size:42px}.ki-home-ref .trust-row,.ki-home-ref .quick-cards .row,.ki-home-ref .software-grid,.ki-home-ref .ind-grid,.ki-home-ref .stat-grid{grid-template-columns:1fr}.ki-home-ref .ind-card.wide{grid-column:span 1}.ki-home-ref .hero-viewport{min-height:390px}.ki-home-ref .model{transform:translate(-50%,-50%) scale(.72)}.ki-home-ref .value-card{grid-template-columns:1fr}.ki-home-ref .split-card{padding:28px;min-height:auto}.ki-home-ref .faq-item summary{grid-template-columns:38px 1fr 34px;font-size:17px}.ki-home-ref .faq-item p{margin-left:58px}}

/* v3.1 final full-width + link-control QA */
body.elementor-page .ki-site-main,
body.elementor-page .ki-site-main > article,
body.elementor-page .entry-content,
body.elementor-page .page-content{margin-top:0!important;padding-top:0!important;margin-bottom:0!important;padding-bottom:0!important;}
.elementor-widget-ki_home_layout,
.elementor-widget-ki_products_archive_layout,
.elementor-widget-ki_contact_layout,
.elementor-widget-ki_product_detail_layout,
.elementor-widget-ki_home_layout > .elementor-widget-container,
.elementor-widget-ki_products_archive_layout > .elementor-widget-container,
.elementor-widget-ki_contact_layout > .elementor-widget-container,
.elementor-widget-ki_product_detail_layout > .elementor-widget-container{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;}
.ki-widget-layout,.pd-page{margin:0!important;padding:0!important;overflow:hidden;}
.ki-widget-layout > section:first-child,
.pd-page > section:first-child{margin-top:0!important;}
.ki-widget-layout > section:last-child,
.pd-page > section:last-child{margin-bottom:0!important;}
.ki-home-ref > .home-hero,
.ki-products-widget-layout > .ki-products-hero,
.ki-contact-widget-layout > .ki-contact-hero,
.pd-page > .pd-hero,
.ki-home-ref > .cta-band,
.ki-widget-layout > .ki-cta,
.pd-page > .cta-band{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}
.ki-home-ref > .home-hero{padding-top:104px!important;}
.ki-products-widget-layout > .ki-products-hero,
.ki-contact-widget-layout > .ki-contact-hero,
.pd-page > .pd-hero{padding-top:96px!important;}
.ki-home-ref > .cta-band,
.ki-widget-layout > .ki-cta,
.pd-page > .cta-band{margin-top:0!important;margin-bottom:0!important;}
.ki-home-ref a.qc,
.ki-home-ref a.value-card,
.ki-home-ref a.software-card,
.ki-home-ref a.ind-card,
.ki-home-ref a.stat,
.uc-card-link{color:inherit;text-decoration:none;}
.ki-home-ref a.qc:hover,
.ki-home-ref a.value-card:hover,
.ki-home-ref a.software-card:hover,
.ki-home-ref a.ind-card:hover,
.ki-home-ref a.stat:hover,
.uc-card-link:hover{border-color:var(--ki-accent,#E41C0A);box-shadow:0 18px 45px rgba(19,27,35,.08);transform:translateY(-2px);}
.ki-home-ref .qc,.ki-home-ref .value-card,.ki-home-ref .software-card,.ki-home-ref .ind-card,.ki-home-ref .stat,.uc-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
@media(max-width:640px){.ki-home-ref > .home-hero{padding-top:70px!important}.ki-products-widget-layout > .ki-products-hero,.ki-contact-widget-layout > .ki-contact-hero,.pd-page > .pd-hero{padding-top:72px!important}}

/* v3.2 final edge-to-edge layout, editable icons, and square UI consistency */
html, body { overflow-x: hidden; }
body.elementor-page .ki-site-main,
body.elementor-page .ki-site-main > article,
body.elementor-page .entry-content,
body.elementor-page .page-content,
body.elementor-page .elementor,
body.elementor-page .elementor-section-wrap { width: 100% !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
.elementor-widget-ki_home_layout,
.elementor-widget-ki_products_archive_layout,
.elementor-widget-ki_contact_layout,
.elementor-widget-ki_product_detail_layout { width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; padding-left: 0 !important; padding-right: 0 !important; }
.elementor-widget-ki_home_layout > .elementor-widget-container,
.elementor-widget-ki_products_archive_layout > .elementor-widget-container,
.elementor-widget-ki_contact_layout > .elementor-widget-container,
.elementor-widget-ki_product_detail_layout > .elementor-widget-container { width: 100vw !important; max-width: 100vw !important; margin: 0 !important; padding: 0 !important; }
.elementor-widget-ki_home_layout .ki-widget-layout,
.elementor-widget-ki_products_archive_layout .ki-widget-layout,
.elementor-widget-ki_contact_layout .ki-widget-layout,
.elementor-widget-ki_product_detail_layout .ki-widget-layout,
.elementor-widget-ki_product_detail_layout .pd-page { width: 100vw !important; max-width: 100vw !important; margin: 0 !important; padding: 0 !important; }
body.elementor-page .elementor-column-gap-default > .elementor-column > .elementor-element-populated,
body.elementor-page .elementor-column-gap-narrow > .elementor-column > .elementor-element-populated,
body.elementor-page .elementor-column-gap-extended > .elementor-column > .elementor-element-populated,
body.elementor-page .elementor-column-gap-wide > .elementor-column > .elementor-element-populated,
body.elementor-page .elementor-column-gap-wider > .elementor-column > .elementor-element-populated { padding-left: 0 !important; padding-right: 0 !important; }
body.elementor-page .elementor-section.elementor-section-boxed > .elementor-container,
body.elementor-page .elementor-section.elementor-section-full_width > .elementor-container { max-width: none !important; width: 100% !important; }
.ki-home-ref > .home-hero,
.ki-products-widget-layout > .ki-products-hero,
.ki-contact-widget-layout > .ki-contact-hero,
.pd-page > .pd-hero,
.ki-home-ref > .cta-band,
.ki-widget-layout > .ki-cta,
.pd-page > .cta-band { width: 100vw !important; max-width: 100vw !important; margin-left: 0 !important; margin-right: 0 !important; }
.ki-home-ref .home-container,
.ki-container,
.pd-page .container { box-sizing: border-box; }
.ki-home-ref .tech-icon-image { display: flex; align-items: center; justify-content: center; padding: 12px; }
.ki-home-ref .tech-icon-image:before { display: none; }
.ki-home-ref .tech-icon-image img { width: 100%; height: 100%; object-fit: contain; display: block; }
.ki-home-ref .ind-illu-image { border: 0; background: transparent; opacity: .18; transform: rotate(0deg); }
.ki-home-ref .ind-illu-image img { width: 100%; height: 100%; object-fit: contain; display: block; filter: grayscale(1); }
.ki-home-ref .ind-card:hover { border-color: var(--accent) !important; background: #151f2b !important; color: #fff !important; transform: translateY(-4px); }
.ki-home-ref .ind-card:hover p { color: rgba(255,255,255,.72) !important; }
.ki-home-ref .ind-card:hover .ind-illu { border-color: rgba(228,28,10,.5); opacity: .32; }
/* Square visual language across Khodiyar layouts */
.ki-home-ref .qc,
.ki-home-ref .value-card,
.ki-home-ref .software-card,
.ki-home-ref .ind-card,
.ki-home-ref .split-card,
.ki-home-ref .stat,
.ki-home-ref .cta-mini,
.ki-home-ref .faq-item summary i,
.ki-btn,
.home-btn,
.btn,
.ki-card,
.ki-detail-card,
.ki-contact-panel,
.ki-contact-form input,
.ki-contact-form textarea,
.ki-contact-form select,
.ki-cad-panel,
.ki-map-placeholder,
.ki-map-card,
.pd-page .hero-viewport,
.pd-page .badge,
.pd-page .trust-card,
.pd-page .benefit-card,
.pd-page .overview-visual,
.pd-page .cap-visual,
.pd-page .compare-wrap,
.pd-page .guidance-cta,
.pd-page .lic-card,
.pd-page .support-card,
.pd-page .train-card,
.pd-page .uc-card,
.pd-page .cta-mini,
.pd-page .faq-item,
.ki-product-card,
.ki-product-visual,
.ki-category-section { border-radius: 0 !important; }
.ki-home-ref .tag-list span,
.pd-page .pkg-tag,
.pd-page .dot,
.ki-cad-window-bar span { border-radius: 0 !important; }
@media (max-width: 767px) {
  .elementor-widget-ki_home_layout,
  .elementor-widget-ki_products_archive_layout,
  .elementor-widget-ki_contact_layout,
  .elementor-widget-ki_product_detail_layout,
  .elementor-widget-ki_home_layout > .elementor-widget-container,
  .elementor-widget-ki_products_archive_layout > .elementor-widget-container,
  .elementor-widget-ki_contact_layout > .elementor-widget-container,
  .elementor-widget-ki_product_detail_layout > .elementor-widget-container { width: 100vw !important; max-width: 100vw !important; }
}
/* v3.2 square refinements missed by legacy selectors */
:root { --ki-radius: 0px; }
.ki-home-ref .tech-icon,
.ki-home-ref .ind-illu,
.ki-home-ref .vp-image,
.ki-home-ref .vp-readout span,
.ki-map-embed iframe,
.ki-brand-mark,
.ki-cad-target,
.ki-cad-target:before,
.ki-cad-target:after { border-radius: 0 !important; }


/* v3.2.1 sticky jump navigation patch
   The previous full-width wrapper used overflow:hidden on widget/page wrappers, which prevents position:sticky from working in browsers.
   Keep horizontal overflow controlled on the document, but allow the Products and Product Detail jump navs to stick. */
html, body { overflow-x: hidden; }
.ki-widget-layout,
.ki-products-widget-layout,
.pd-page,
.elementor-widget-ki_products_archive_layout,
.elementor-widget-ki_product_detail_layout,
.elementor-widget-ki_products_archive_layout > .elementor-widget-container,
.elementor-widget-ki_product_detail_layout > .elementor-widget-container {
  overflow: visible !important;
}
.ki-category-nav,
.pd-nav {
  position: sticky !important;
  top: var(--ki-sticky-nav-top, 78px) !important;
  z-index: 60 !important;
}
body.admin-bar .ki-category-nav,
body.admin-bar .pd-nav {
  top: calc(var(--ki-sticky-nav-top, 78px) + 32px) !important;
}
@media (max-width: 782px) {
  body.admin-bar .ki-category-nav,
  body.admin-bar .pd-nav {
    top: calc(var(--ki-sticky-nav-top-mobile, 72px) + 46px) !important;
  }
}
@media (max-width: 700px) {
  .ki-category-nav,
  .pd-nav { top: var(--ki-sticky-nav-top-mobile, 72px) !important; }
}

/* v3.2.2 robust sticky jump navigation fallback.
   Uses JS fixed positioning so the nav still sticks when Elementor wrappers block CSS position:sticky. */
.ki-category-nav.ki-js-sticky-active,
.pd-nav.ki-js-sticky-active {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  z-index: 999 !important;
  box-shadow: 0 12px 30px rgba(13,19,25,.14);
}
.ki-category-nav.ki-js-sticky-active { background: #fff !important; }
.pd-nav.ki-js-sticky-active { background: #0d1319 !important; }
.ki-jump-nav-placeholder { width: 100%; flex: 0 0 auto; }


/* v3.2.3 frozen header patch
   Keeps the main header fixed on all pages and coordinates jump-nav offsets with the fixed header height. */
:root { --ki-fixed-header-height: 78px; --ki-adminbar-height: 0px; }
html { scroll-padding-top: calc(var(--ki-fixed-header-height, 78px) + var(--ki-adminbar-height, 0px) + 18px); }
body.admin-bar { --ki-adminbar-height: 32px; }
@media (max-width: 782px) { body.admin-bar { --ki-adminbar-height: 46px; } }
.ki-site-header {
  position: fixed !important;
  top: var(--ki-adminbar-height, 0px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 1200 !important;
  transform: translateZ(0);
}
.ki-site-main {
  padding-top: var(--ki-fixed-header-height, 78px) !important;
}
body.elementor-editor-active .ki-site-header {
  position: sticky !important;
  top: 0 !important;
}
body.elementor-editor-active .ki-site-main {
  padding-top: 0 !important;
}
.ki-category-nav.ki-js-sticky-active,
.pd-nav.ki-js-sticky-active {
  top: calc(var(--ki-fixed-header-height, 78px) + var(--ki-adminbar-height, 0px)) !important;
  z-index: 1100 !important;
}
.ki-category-nav,
.pd-nav {
  scroll-margin-top: calc(var(--ki-fixed-header-height, 78px) + var(--ki-adminbar-height, 0px) + 20px);
}
@media (max-width: 900px) {
  :root { --ki-fixed-header-height: 72px; }
}

/* v3.3 additional editable page widgets */
.ki-simple-page-widget-layout .ki-simple-hero,
.ki-simple-page-widget-layout .ki-cta {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
.ki-simple-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ki-simple-card {
  display: grid;
  grid-template-columns: 132px 1fr;
  min-height: 260px;
  background: #fff;
  border: 1px solid rgba(19,27,35,.12);
  box-shadow: 0 20px 50px rgba(19,27,35,.08);
  overflow: hidden;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.ki-simple-card:hover {
  transform: translateY(-5px);
  border-color: rgba(228,28,10,.45);
  box-shadow: 0 24px 60px rgba(19,27,35,.14);
}
.ki-simple-card-media {
  background: #101820;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  position: relative;
  overflow: hidden;
}
.ki-simple-card-media:before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 28px 28px;
  opacity: .35;
}
.ki-simple-card-media span {
  position: relative;
  z-index: 1;
  width: 54px;
  height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.35);
  color: #fff;
  font-family: var(--ki-mono, monospace);
}
.ki-simple-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
  z-index: 1;
}
.ki-simple-card-body {
  padding: 28px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
.ki-simple-card-body .ki-card-num {
  font-family: var(--ki-mono, monospace);
  color: var(--ki-red, #e41c0a);
  font-size: 12px;
  letter-spacing: .12em;
}
.ki-simple-card-body h3,
.ki-simple-card-body h4 { margin: 0; }
.ki-simple-card-body p { margin: 0; }
.ki-small-card-image {
  width: 56px;
  height: 56px;
  object-fit: cover;
  display: block;
  margin: 0 0 14px;
}
.ki-simple-support .ki-guidance-card {
  background: rgba(255,255,255,.035);
  border-color: rgba(255,255,255,.12);
}
@media (max-width: 1100px) {
  .ki-simple-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .ki-simple-card-grid { grid-template-columns: 1fr; }
  .ki-simple-card { grid-template-columns: 1fr; }
  .ki-simple-card-media { min-height: 170px; }
  .ki-simple-card-body { padding: 22px; }
}

/* v3.3.1 corrective pass: compact dropdown menu, restored header spacing, cleaner new page layouts */
.ki-primary-nav li { position: relative; }
.ki-primary-nav > ul > li > a { display: inline-flex; align-items: center; min-height: 42px; }
.ki-primary-nav .menu-item-has-children > a:after,
.ki-primary-nav > ul > li > a[href="#"]:after { content: '▾'; font-size: 10px; margin-left: 7px; opacity: .72; }
.ki-primary-nav .sub-menu {
  position: absolute;
  top: calc(100% + 14px);
  left: 0;
  min-width: 238px;
  display: none !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 10px 0 !important;
  margin: 0 !important;
  list-style: none;
  background: #0d1319;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 70px rgba(0,0,0,.28);
  z-index: 1300;
}
.ki-primary-nav li:hover > .sub-menu,
.ki-primary-nav li:focus-within > .sub-menu { display: flex !important; }
.ki-primary-nav .sub-menu a {
  display: block;
  padding: 11px 16px;
  color: #dfe4ec;
  white-space: nowrap;
  font-size: 13px;
}
.ki-primary-nav .sub-menu a:hover { color: #fff; background: rgba(228,28,10,.16); }
.ki-header-inner { gap: 22px; }
.ki-brand { min-width: max-content; }
.ki-header-actions { flex-shrink: 0; }

/* cleaner structure for new simple pages */
.ki-simple-page-widget-layout { background: #fff; }
.ki-simple-page-widget-layout .ki-simple-hero {
  padding: clamp(86px, 8vw, 132px) 0 clamp(76px, 7vw, 118px);
  min-height: auto;
}
.ki-simple-page-widget-layout .ki-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: clamp(34px, 6vw, 86px);
  align-items: center;
}
.ki-simple-page-widget-layout .ki-hero-copy h1,
.ki-simple-page-widget-layout .ki-hero-copy h2 {
  margin: 0 0 22px;
  font-size: clamp(42px, 6vw, 76px);
  line-height: .98;
  letter-spacing: -.055em;
  max-width: 920px;
}
.ki-simple-page-widget-layout .ki-hero-copy p {
  margin: 0;
  max-width: 680px;
  color: #c9d0dc;
  font-size: clamp(17px, 1.6vw, 20px);
}
.ki-simple-page-widget-layout .ki-simple-cad-panel { min-height: 420px; }
.ki-simple-page-widget-layout .ki-simple-listing { padding: clamp(78px, 8vw, 118px) 0; }
.ki-simple-page-widget-layout .ki-section-head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 32px;
  margin-bottom: 42px;
}
.ki-simple-page-widget-layout .ki-section-head > div { max-width: 820px; }
.ki-simple-page-widget-layout .ki-section-head h2 { margin: 0 0 14px; font-size: clamp(34px, 4.2vw, 58px); line-height: 1; }
.ki-simple-page-widget-layout .ki-section-head p { margin: 0; color: #53606e; font-size: 17px; max-width: 720px; }
.ki-simple-card-grid { gap: 24px; align-items: stretch; }
.ki-simple-card {
  grid-template-columns: 1fr !important;
  min-height: 100%;
  background: #fff;
  border: 1px solid rgba(19,27,35,.14);
  box-shadow: none;
}
.ki-simple-card-media { min-height: 188px; }
.ki-simple-card-body { min-height: 300px; }
.ki-simple-card-body h3,
.ki-simple-card-body h4 { font-size: 22px; line-height: 1.12; }
.ki-simple-card-body p { color: #53606e; }
.ki-simple-card-body .ki-arrow-link { margin-top: auto; }
.ki-simple-support { padding: clamp(76px, 7vw, 108px) 0; }
.ki-simple-support .ki-guidance-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ki-simple-support .ki-guidance-card { min-height: 260px; }
.ki-simple-page-widget-layout .ki-cta { padding: clamp(76px, 7vw, 110px) 0; }
.ki-simple-page-widget-layout .ki-cta h2 { max-width: 880px; }
.ki-simple-page-widget-layout .ki-cta-copy { max-width: 720px; }

@media (max-width: 1100px) {
  .ki-header-actions .ki-link-subtle { display: none; }
  .ki-primary-nav ul { gap: 18px; }
  .ki-simple-page-widget-layout .ki-hero-grid { grid-template-columns: 1fr; }
  .ki-simple-page-widget-layout .ki-simple-cad-panel { min-height: 340px; }
}
@media (max-width: 900px) {
  .ki-primary-nav .sub-menu {
    position: static;
    display: flex !important;
    min-width: 0;
    padding: 4px 0 4px 14px !important;
    background: transparent;
    border: 0;
    box-shadow: none;
  }
  .ki-primary-nav .sub-menu a { padding: 8px 0; white-space: normal; color: #aeb7c7; }
  .ki-primary-nav .menu-item-has-children > a:after,
  .ki-primary-nav > ul > li > a[href="#"]:after { content: ''; }
  .ki-simple-page-widget-layout .ki-section-head { display: block; }
  .ki-simple-support .ki-guidance-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .ki-simple-page-widget-layout .ki-simple-hero { padding: 68px 0 64px; }
  .ki-simple-page-widget-layout .ki-hero-copy h1,
  .ki-simple-page-widget-layout .ki-hero-copy h2 { font-size: clamp(38px, 12vw, 54px); }
  .ki-simple-card-media { min-height: 154px; }
  .ki-simple-card-body { min-height: auto; padding: 22px; }
}

/* v3.4 richer training/services pages */
.ki-deep-dive-section,
.ki-faq-lite-section {
  padding: clamp(78px, 8vw, 118px) 0;
}
.ki-deep-dive-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.ki-deep-card {
  position: relative;
  min-height: 340px;
  overflow: hidden;
  background: #f4f7fb;
  border: 1px solid rgba(36, 74, 114, 0.14);
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  isolation: isolate;
}
.ki-deep-card:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(19, 27, 35, 0.04), rgba(19, 27, 35, 0.86));
  opacity: 0;
  transition: opacity .25s ease;
  z-index: -1;
}
.ki-deep-card:hover:before { opacity: 1; }
.ki-deep-card-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
  opacity: .35;
  filter: grayscale(1);
  transition: transform .3s ease, opacity .3s ease;
}
.ki-deep-card:hover .ki-deep-card-bg { transform: scale(1.04); opacity: .5; }
.ki-deep-card > span {
  color: var(--ki-red);
  font-family: var(--ki-mono, monospace);
  letter-spacing: .12em;
  font-size: 12px;
  margin-bottom: 18px;
}
.ki-deep-card h3,
.ki-deep-card h4,
.ki-deep-card h5 { margin: 0 0 12px; color: #131b23; }
.ki-deep-card p { color: #53606e; margin: 0 0 18px; }
.ki-deep-card:hover h3,
.ki-deep-card:hover h4,
.ki-deep-card:hover h5,
.ki-deep-card:hover p { color: #fff; }
.ki-process-section {
  padding: clamp(78px, 8vw, 118px) 0;
}
.ki-section-head-dark h2,
.ki-section-head-dark h3,
.ki-section-head-dark p { color: #fff; }
.ki-process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid rgba(255,255,255,.14);
  border-left: 1px solid rgba(255,255,255,.14);
  margin-top: 34px;
}
.ki-process-step {
  padding: 30px;
  min-height: 250px;
  border-right: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.035);
}
.ki-process-step > span {
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  background: var(--ki-red);
  color: #fff;
  font-family: var(--ki-mono, monospace);
  margin-bottom: 24px;
}
.ki-process-step h3,
.ki-process-step h4,
.ki-process-step h5 { color: #fff; margin: 0 0 12px; }
.ki-process-step p { color: rgba(255,255,255,.72); margin: 0; }
.ki-faq-lite-layout {
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: clamp(32px, 5vw, 72px);
  align-items: start;
}
.ki-faq-lite-list {
  border-top: 1px solid rgba(36, 74, 114, 0.18);
}
.ki-faq-lite-item {
  border-bottom: 1px solid rgba(36, 74, 114, 0.18);
  padding: 22px 0;
}
.ki-faq-lite-item summary {
  cursor: pointer;
  font-weight: 700;
  color: #131b23;
  list-style: none;
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.ki-faq-lite-item summary::-webkit-details-marker { display: none; }
.ki-faq-lite-item summary:after { content: "+"; color: var(--ki-red); }
.ki-faq-lite-item[open] summary:after { content: "−"; }
.ki-faq-lite-item p { color: #53606e; margin: 14px 0 0; }
@media (max-width: 1024px) {
  .ki-deep-dive-grid { grid-template-columns: 1fr; }
  .ki-process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ki-faq-lite-layout { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .ki-process-grid { grid-template-columns: 1fr; }
  .ki-process-step, .ki-deep-card { min-height: auto; padding: 24px; }
}

/* v3.4.1 menu hover + full-width page patch
   Keep this as a layout-only override so existing widgets and controls remain untouched. */
html, body { max-width: 100%; overflow-x: clip; }
body.ki-theme,
body.ki-theme .ki-site-main,
body.ki-theme .ki-site-main > article,
body.ki-theme .ki-site-main > .elementor,
body.ki-theme .ki-site-main .entry-content,
body.ki-theme .ki-site-main .page,
body.ki-theme .ki-site-main .type-page {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.ki-theme .elementor-widget-ki_home_layout > .elementor-widget-container,
body.ki-theme .elementor-widget-ki_products_archive_layout > .elementor-widget-container,
body.ki-theme .elementor-widget-ki_product_detail_layout > .elementor-widget-container,
body.ki-theme .elementor-widget-ki_contact_layout > .elementor-widget-container,
body.ki-theme .elementor-widget-ki_training_layout > .elementor-widget-container,
body.ki-theme .elementor-widget-ki_services_layout > .elementor-widget-container,
body.ki-theme .elementor-widget-ki_who_we_are_layout > .elementor-widget-container,
body.ki-theme .elementor-widget-ki_awards_layout > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}
body.ki-theme .ki-widget-layout,
body.ki-theme .ki-home-widget-layout,
body.ki-theme .ki-products-widget-layout,
body.ki-theme .ki-contact-widget-layout,
body.ki-theme .ki-simple-page-widget-layout {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow-x: clip;
}
body.ki-theme .ki-widget-layout > section,
body.ki-theme .ki-home-ref > section,
body.ki-theme .ki-products-widget-layout > section,
body.ki-theme .ki-contact-widget-layout > section,
body.ki-theme .ki-simple-page-widget-layout > section,
body.ki-theme .ki-cta,
body.ki-theme .ki-home-ref .cta-band {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.ki-theme .elementor-section.elementor-section-boxed > .elementor-container,
body.ki-theme .e-con.e-con-boxed > .e-con-inner {
  max-width: none !important;
}
body.ki-theme .elementor-section,
body.ki-theme .e-con {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.ki-theme .ki-container,
body.ki-theme .home-container {
  max-width: var(--ki-container, 1200px);
}

/* Dropdown bridge: removes the hover gap between parent item and submenu. */
.ki-primary-nav { overflow: visible !important; }
.ki-primary-nav ul { overflow: visible !important; }
.ki-primary-nav li { position: relative; }
.ki-primary-nav .sub-menu {
  top: 100% !important;
  margin-top: 0 !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  pointer-events: auto;
}
.ki-primary-nav .sub-menu:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -16px;
  height: 16px;
  background: transparent;
}
.ki-primary-nav li:hover > .sub-menu,
.ki-primary-nav li:focus-within > .sub-menu,
.ki-primary-nav .sub-menu:hover {
  display: flex !important;
}
.ki-primary-nav > ul > li { padding: 0 0 2px; }
@media (max-width: 900px) {
  .ki-primary-nav .sub-menu:before { display: none; }
  .ki-primary-nav > ul > li { padding-bottom: 0; }
  body.ki-theme .elementor-section,
  body.ki-theme .e-con { padding-left: 0 !important; padding-right: 0 !important; }
}

/* v3.5.1 safe polish for information pages - no widget restructure */
.ki-simple-page-widget-layout .ki-simple-hero,
.ki-simple-page-widget-layout .ki-cta,
.ki-simple-page-widget-layout .ki-process-section,
.ki-simple-page-widget-layout .ki-simple-support {
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
}
.ki-simple-page-widget-layout .ki-simple-listing,
.ki-simple-page-widget-layout .ki-deep-dive-section,
.ki-simple-page-widget-layout .ki-faq-lite-section {
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
}
.ki-simple-page-widget-layout .ki-section-light,
.ki-simple-page-widget-layout .ki-section-dark {
  padding-top: clamp(70px, 8vw, 110px);
  padding-bottom: clamp(70px, 8vw, 110px);
}
.ki-simple-page-widget-layout .ki-simple-hero {
  padding-top: clamp(90px, 10vw, 140px);
  overflow: hidden;
}
.ki-simple-page-widget-layout .ki-section-head {
  margin-bottom: 34px;
}
.ki-simple-page-widget-layout .ki-section-head p {
  max-width: 760px;
  color: var(--ki-muted);
}
.ki-simple-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ki-simple-card {
  background: #fff;
  border: 1px solid rgba(19,27,35,.12);
  box-shadow: 0 18px 50px rgba(19,27,35,.08);
  min-height: 100%;
  display: flex;
  flex-direction: column;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.ki-simple-card:hover {
  transform: translateY(-4px);
  border-color: rgba(228,28,10,.45);
  box-shadow: 0 24px 60px rgba(19,27,35,.14);
}
.ki-simple-card-media {
  min-height: 160px;
  background: linear-gradient(135deg, #162433, #0f171f);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.ki-simple-card-media::before {
  content: '';
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 24px 24px;
}
.ki-simple-card-media span {
  position: relative;
  z-index: 1;
  color: var(--ki-red);
  font-size: 42px;
  font-weight: 800;
  letter-spacing: .08em;
}
.ki-simple-card-media img {
  width: 100%;
  height: 100%;
  min-height: 160px;
  object-fit: cover;
  position: relative;
  z-index: 1;
}
.ki-simple-card-body {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
}
.ki-simple-card-body h3,
.ki-deep-card h3,
.ki-process-step h3,
.ki-guidance-card h3 {
  margin: 0;
}
.ki-simple-card-body p,
.ki-deep-card p,
.ki-process-step p,
.ki-guidance-card p {
  margin: 0;
  color: var(--ki-muted);
}
.ki-deep-dive-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ki-deep-card {
  position: relative;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(19,27,35,.12);
  padding: 28px;
  min-height: 260px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 12px;
  box-shadow: 0 18px 50px rgba(19,27,35,.08);
}
.ki-deep-card > span {
  color: var(--ki-red);
  font-weight: 800;
  letter-spacing: .1em;
}
.ki-deep-card-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .16;
  filter: grayscale(1);
}
.ki-process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.ki-process-step {
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  padding: 26px;
}
.ki-process-step > span,
.ki-guidance-card > span {
  display: inline-flex;
  color: var(--ki-red);
  font-weight: 800;
  letter-spacing: .08em;
  margin-bottom: 18px;
}
.ki-faq-lite-layout {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 40px;
  align-items: start;
}
.ki-faq-lite-list {
  display: grid;
  gap: 12px;
}
.ki-faq-lite-item {
  border: 1px solid rgba(19,27,35,.12);
  background: #fff;
  padding: 18px 20px;
}
.ki-faq-lite-item summary {
  cursor: pointer;
  font-weight: 800;
  color: var(--ki-ink);
}
.ki-faq-lite-item p {
  margin: 12px 0 0;
  color: var(--ki-muted);
}
.ki-simple-support .ki-guidance-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ki-simple-support .ki-guidance-card {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.14);
  color: var(--ki-paper);
}
.ki-small-card-image {
  width: 100%;
  height: 140px;
  object-fit: cover;
  margin: 0 0 18px;
  border: 1px solid rgba(255,255,255,.14);
}
@media (max-width: 1024px) {
  .ki-simple-card-grid,
  .ki-deep-dive-grid,
  .ki-process-grid,
  .ki-simple-support .ki-guidance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ki-faq-lite-layout { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .ki-simple-card-grid,
  .ki-deep-dive-grid,
  .ki-process-grid,
  .ki-simple-support .ki-guidance-grid { grid-template-columns: 1fr; }
  .ki-simple-page-widget-layout .ki-section-light,
  .ki-simple-page-widget-layout .ki-section-dark { padding-top: 58px; padding-bottom: 58px; }
}


/* v3.5.2 final menu stabilization: compact dropdowns without squeeze or hover gaps */
.ki-site-header { z-index: 5000; }
.ki-header-inner { display: flex; align-items: center; gap: 18px; }
.ki-brand { flex: 0 0 auto; min-width: 0; }
.ki-primary-nav { flex: 1 1 auto; min-width: 0; overflow: visible !important; }
.ki-primary-nav > ul { display: flex; align-items: center; justify-content: center; gap: clamp(12px, 1.8vw, 24px); margin: 0; padding: 0; list-style: none; overflow: visible !important; }
.ki-primary-nav li { position: relative; list-style: none; }
.ki-primary-nav > ul > li > a { white-space: nowrap; display: inline-flex; align-items: center; min-height: 46px; line-height: 1; }
.ki-primary-nav .menu-item-has-children > a:after,
.ki-primary-nav > ul > li > a[href="#"]:after { content: '▾'; font-size: 10px; margin-left: 8px; opacity: .72; }
.ki-primary-nav .sub-menu {
  position: absolute !important;
  top: calc(100% - 1px) !important;
  left: 0 !important;
  min-width: 250px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  padding: 12px 0 !important;
  margin: 0 !important;
  list-style: none !important;
  background: #0d1319 !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.34) !important;
  z-index: 6000 !important;
  pointer-events: none;
}
.ki-primary-nav .sub-menu:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -18px;
  height: 18px;
  background: transparent;
}
.ki-primary-nav li:hover > .sub-menu,
.ki-primary-nav li:focus-within > .sub-menu,
.ki-primary-nav .sub-menu:hover {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.ki-primary-nav .sub-menu a { display: block; padding: 12px 17px; color: #dfe4ec; white-space: nowrap; font-size: 13px; line-height: 1.25; }
.ki-primary-nav .sub-menu a:hover { color: #fff; background: rgba(228,28,10,.18); }
.ki-header-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; }
@media (max-width: 1100px) {
  .ki-header-inner { gap: 12px; }
  .ki-primary-nav > ul { gap: 12px; }
  .ki-primary-nav > ul > li > a { font-size: 13px; }
  .ki-header-actions .ki-link-subtle { display: none; }
}
@media (max-width: 900px) {
  .ki-primary-nav { overflow: hidden !important; }
  .ki-primary-nav > ul { display: block; }
  .ki-primary-nav .sub-menu {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    display: block !important;
    min-width: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
    background: transparent !important;
    padding: 6px 0 6px 16px !important;
  }
  .ki-primary-nav .sub-menu:before { display: none; }
  .ki-primary-nav .sub-menu a { padding: 8px 0; white-space: normal; }
}


/* v3.5.3 mobile menu + responsive stabilization
   Scope: mobile/tablet only. Desktop layout remains unchanged. */
@media (max-width: 900px) {
  html.ki-mobile-menu-open,
  body.ki-mobile-menu-open {
    overflow: hidden !important;
    touch-action: none;
  }

  .ki-site-header {
    position: fixed !important;
    top: var(--ki-adminbar-height, 0px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    overflow: visible !important;
  }

  .ki-header-inner.ki-container {
    width: 100% !important;
    max-width: none !important;
    padding: 12px 18px !important;
    min-height: 72px !important;
    height: auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  .ki-brand {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .ki-brand strong,
  .ki-brand small {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: calc(100vw - 120px) !important;
  }

  .ki-menu-toggle {
    display: inline-flex !important;
    width: 46px !important;
    height: 46px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    background: rgba(255,255,255,.06) !important;
    color: #fff !important;
    font-size: 0 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 10002 !important;
  }

  .ki-menu-toggle:before {
    content: "☰";
    font-size: 25px;
    line-height: 1;
  }

  .ki-menu-toggle[aria-expanded="true"]:before { content: "×"; font-size: 31px; }

  .ki-header-actions,
  .ki-header-extra { display: none !important; }

  .ki-primary-nav {
    display: none !important;
    position: fixed !important;
    top: calc(var(--ki-fixed-header-height, 72px) + var(--ki-adminbar-height, 0px)) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    max-height: calc(100vh - var(--ki-fixed-header-height, 72px) - var(--ki-adminbar-height, 0px)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: #0d1319 !important;
    border-top: 1px solid rgba(255,255,255,.1) !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.45) !important;
    padding: 0 !important;
    z-index: 10000 !important;
    order: initial !important;
    -webkit-overflow-scrolling: touch;
  }

  .ki-primary-nav.is-open { display: block !important; }

  .ki-primary-nav > ul,
  .ki-primary-nav .menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 10px 18px 22px !important;
    list-style: none !important;
    overflow: visible !important;
  }

  .ki-primary-nav li {
    width: 100% !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    padding: 0 !important;
  }

  .ki-primary-nav li:last-child { border-bottom: 0 !important; }

  .ki-primary-nav > ul > li > a,
  .ki-primary-nav .menu > li > a,
  .ki-primary-nav a {
    width: 100% !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 0 !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }

  .ki-primary-nav .menu-item-has-children > a:after,
  .ki-primary-nav > ul > li > a[href="#"]:after {
    content: "▾" !important;
    transform: none !important;
    margin-left: 10px !important;
  }

  .ki-primary-nav .sub-menu {
    position: static !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: -4px 0 8px !important;
    padding: 0 0 8px 16px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .ki-primary-nav .sub-menu:before { display: none !important; }

  .ki-primary-nav .sub-menu li {
    border-bottom: 0 !important;
  }

  .ki-primary-nav .sub-menu a {
    min-height: 38px !important;
    padding: 9px 0 9px 14px !important;
    color: rgba(255,255,255,.74) !important;
    font-size: 14px !important;
    border-left: 2px solid rgba(228,28,10,.35) !important;
    background: transparent !important;
    white-space: normal !important;
  }

  .ki-primary-nav .sub-menu a:hover,
  .ki-primary-nav .sub-menu a:focus {
    color: #fff !important;
    background: rgba(228,28,10,.12) !important;
  }
}

@media (max-width: 1024px) {
  body.ki-theme .ki-container,
  body.ki-theme .home-container,
  .pd-page .container {
    width: min(100% - 36px, var(--ki-container, 1200px)) !important;
    max-width: none;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .ki-hero-grid,
  .home-hero .hero-grid,
  .ki-contact-main-layout,
  .intro-grid,
  .split-grid,
  .pd-hero .grid,
  .pd-page .cta-band .inner {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .software-grid,
  .ind-grid,
  .quick-cards,
  .value-cards,
  .stat-grid,
  .ki-product-grid,
  .ki-guidance-grid,
  .ki-simple-card-grid,
  .ki-deep-dive-grid,
  .ki-process-grid,
  .ki-simple-support .ki-guidance-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .pd-benefit-grid,
  .pd-package-grid,
  .pd-license-grid,
  .pd-support-grid,
  .pd-training-grid,
  .pd-usecase-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  body.ki-theme .ki-site-main {
    overflow-x: clip !important;
  }

  body.ki-theme .ki-widget-layout,
  body.ki-theme .ki-home-widget-layout,
  body.ki-theme .ki-products-widget-layout,
  body.ki-theme .ki-contact-widget-layout,
  body.ki-theme .ki-simple-page-widget-layout,
  .pd-page {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  body.ki-theme .ki-container,
  body.ki-theme .home-container,
  .pd-page .container {
    width: min(100% - 28px, var(--ki-container, 1200px)) !important;
  }

  .ki-home-hero,
  .ki-products-hero,
  .ki-contact-hero,
  .ki-product-detail-hero,
  .home-hero,
  .pd-hero,
  .ki-simple-page-widget-layout .ki-simple-hero {
    padding-top: 68px !important;
    padding-bottom: 58px !important;
  }

  .ki-section-light,
  .section-pad,
  .intro,
  .software,
  .products,
  .industries,
  .services-split,
  .stats,
  .faq,
  .ki-product-category-section,
  .ki-guidance,
  .ki-contact-main,
  .ki-map-section,
  .ki-simple-page-widget-layout .ki-section-light,
  .ki-simple-page-widget-layout .ki-section-dark {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }

  .ki-cta,
  .cta-band,
  .pd-page .cta-band,
  .ki-home-ref .cta-band {
    padding-top: 62px !important;
    padding-bottom: 62px !important;
  }

  .ki-hero-grid h1,
  .hero-copy h1,
  .pd-hero h1,
  .ki-simple-page-widget-layout .ki-hero-copy h1,
  .ki-simple-page-widget-layout .ki-hero-copy h2 {
    font-size: clamp(36px, 11vw, 52px) !important;
    line-height: 1.02 !important;
    overflow-wrap: anywhere;
  }

  .display,
  .ki-section-head h2,
  .pd-page .cta-band h2,
  .ki-cta h2 {
    font-size: clamp(30px, 9vw, 44px) !important;
    line-height: 1.06 !important;
  }

  .ki-hero-grid p,
  .hero-copy .lead,
  .lead,
  .ki-section-head p,
  .pd-hero p.lead {
    font-size: 15px !important;
    line-height: 1.65 !important;
  }

  .software-grid,
  .ind-grid,
  .quick-cards,
  .value-cards,
  .stat-grid,
  .ki-product-grid,
  .ki-guidance-grid,
  .ki-simple-card-grid,
  .ki-deep-dive-grid,
  .ki-process-grid,
  .ki-simple-support .ki-guidance-grid,
  .pd-benefit-grid,
  .pd-package-grid,
  .pd-license-grid,
  .pd-support-grid,
  .pd-training-grid,
  .pd-usecase-grid,
  .ki-footer-grid,
  .ki-contact-details {
    grid-template-columns: 1fr !important;
  }

  .ki-section-head,
  .section-head {
    display: block !important;
  }

  .ki-actions,
  .hero-cta,
  .cta-actions,
  .pd-hero .cta-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .ki-btn,
  .home-btn,
  .pd-page .btn {
    width: 100% !important;
    justify-content: center !important;
    white-space: normal !important;
    text-align: center !important;
  }

  .ki-cad-panel,
  .hero-viewport,
  .ki-simple-cad-panel,
  .ki-product-visual.big,
  .pd-visual,
  .pd-overview-visual,
  .pd-capability-visual {
    min-height: 260px !important;
    height: auto !important;
  }

  .ki-category-nav,
  .pd-nav {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .ki-category-nav .ki-container,
  .pd-nav .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .trust-row,
  .pd-hero .trust {
    grid-template-columns: 1fr !important;
  }

  .ki-product-card__foot,
  .pcm-foot,
  .ki-footer-bottom {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }

  .ki-site-footer { padding-top: 52px !important; }
}

/* v3.5.5 Product detail section visibility controls */
.ki-section-disabled { display: none !important; }


/* v3.5.7 editability framework */
.ki-widget-breadcrumbs,.pd-page .ki-widget-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 18px;font:700 11px/1.3 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.72)}
.ki-widget-breadcrumbs a{color:rgba(255,255,255,.78);text-decoration:none}.ki-widget-breadcrumbs a:hover{color:#E41C0A}.ki-widget-breadcrumbs .sep{color:rgba(255,255,255,.3)}.ki-widget-breadcrumbs .current{color:#fff}
.ki-section-light .ki-widget-breadcrumbs{color:#5f6677}.ki-section-light .ki-widget-breadcrumbs a{color:#3b4254}.ki-section-light .ki-widget-breadcrumbs .current{color:#131B23}
.ki-cad-panel:has(img.ki-cad-image) .ki-cad-target,.ki-cad-panel:has(img.ki-cad-image) .ki-map-radar,.pd-frame:has(img.pd-hero-image) .pd-model,.overview-visual:has(img.pd-inline-image) .ov-label{display:none!important;}
.ki-cad-panel img.ki-cad-image,.pd-frame img.pd-hero-image,.overview-visual img.pd-inline-image,.cap-visual img.pd-inline-image{display:block;width:100%;height:100%;object-fit:cover;position:relative;z-index:5;}
.ki-simple-card-media:has(img) span,.tech-icon:has(img)::before,.ind-illu:has(img)::before{display:none!important;}
.ki-simple-card-media img,.ki-small-card-image,.ki-deep-card-bg,.tech-icon img,.ind-illu img{display:block;width:100%;height:100%;object-fit:cover;}

/* v3.5.8 - Image replacement + Elementor-style image sizing support */
.ki-widget-layout .overview-visual.has-uploaded-image,
.ki-widget-layout .cap-visual.has-uploaded-image,
.ki-widget-layout .ki-cad-panel:has(img.ki-cad-image),
.ki-widget-layout .pd-frame:has(img.pd-hero-image) {
  background-image: none !important;
}
.ki-widget-layout .overview-visual.has-uploaded-image .ov-label,
.ki-widget-layout .cap-visual.has-uploaded-image .ov-label,
.ki-widget-layout .ki-cad-panel:has(img.ki-cad-image) > span:not(.dot),
.ki-widget-layout .ki-simple-cad-panel:has(img.ki-cad-image) > span:not(.dot) {
  display: none !important;
}
.ki-widget-layout img.ki-cad-image,
.ki-widget-layout img.pd-inline-image,
.ki-widget-layout img.pd-hero-image,
.ki-widget-layout .ki-simple-card-media img,
.ki-widget-layout .ind-illu img,
.ki-widget-layout .tech-icon img {
  object-position: center center;
}
.ki-widget-layout .overview-visual.has-uploaded-image img.pd-inline-image,
.ki-widget-layout .cap-visual.has-uploaded-image img.pd-inline-image {
  z-index: 5;
}

/* v3.5.10 - Uploaded visual image should fully replace placeholder frame */
.ki-widget-layout .overview-visual.has-uploaded-image,
.ki-widget-layout .cap-visual.has-uploaded-image,
.ki-widget-layout .pd-frame.has-uploaded-image,
.ki-widget-layout .ki-cad-panel:has(img.ki-cad-image),
.ki-widget-layout .ki-simple-cad-panel:has(img.ki-cad-image) {
  background: none !important;
  background-image: none !important;
}
.ki-widget-layout .overview-visual.has-uploaded-image .ph-corner,
.ki-widget-layout .cap-visual.has-uploaded-image .ph-corner,
.ki-widget-layout .overview-visual.has-uploaded-image .ov-toolbar,
.ki-widget-layout .overview-visual.has-uploaded-image .ov-label,
.ki-widget-layout .cap-visual.has-uploaded-image .ov-label {
  display: none !important;
}
.ki-widget-layout .overview-visual.has-uploaded-image img.pd-inline-image,
.ki-widget-layout .cap-visual.has-uploaded-image img.pd-inline-image {
  position: absolute !important;
  inset: 0 !important;
  left: 0 !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 100% !important;
  min-height: 100% !important;
  display: block !important;
  border-radius: 0 !important;
  background: transparent !important;
  z-index: 10 !important;
}
.ki-widget-layout .overview-visual.has-uploaded-image,
.ki-widget-layout .cap-visual.has-uploaded-image {
  padding: 0 !important;
}

/* v3.5.11 - Product detail uploaded visuals must fully replace placeholder frame */
.pd-page .overview-visual.has-uploaded-image,
.pd-page .cap-visual.has-uploaded-image {
  background: transparent !important;
  background-image: none !important;
  padding: 0 !important;
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
}
.pd-page .overview-visual.has-uploaded-image .ph-corner,
.pd-page .cap-visual.has-uploaded-image .ph-corner,
.pd-page .overview-visual.has-uploaded-image .ov-toolbar,
.pd-page .overview-visual.has-uploaded-image .ov-label,
.pd-page .cap-visual.has-uploaded-image .ov-label {
  display: none !important;
}
.pd-page .overview-visual.has-uploaded-image img.pd-inline-image,
.pd-page .cap-visual.has-uploaded-image img.pd-inline-image {
  position: absolute !important;
  inset: 0 !important;
  left: 0 !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  border-radius: 0 !important;
  z-index: 20 !important;
  background: transparent !important;
}
.pd-page .overview-visual.has-uploaded-image img.pd-inline-image[style],
.pd-page .cap-visual.has-uploaded-image img.pd-inline-image[style] {
  position: absolute !important;
  inset: 0 !important;
  margin: 0 !important;
}

/* v3.5.12 - Product detail image render stability
   Uploaded images must fill the visual slot and Elementor/page content should not overflow into image grids. */
.pd-page .pd-frame,
.pd-page .overview-visual,
.pd-page .cap-visual {
  overflow: hidden !important;
  position: relative !important;
}
.pd-page .pd-frame:has(img.pd-hero-image) {
  min-height: 420px;
}
.pd-page .pd-frame img.pd-hero-image,
.pd-page .overview-visual img.pd-inline-image,
.pd-page .cap-visual img.pd-inline-image {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover;
  object-position: center center;
  z-index: 3 !important;
  margin: 0 !important;
  border: 0 !important;
  transform: none !important;
}
.pd-page .pd-frame:has(img.pd-hero-image) .pd-model,
.pd-page .pd-frame:has(img.pd-hero-image) .vp-grid,
.pd-page .pd-frame:has(img.pd-hero-image) .pd-anno,
.pd-page .pd-frame:has(img.pd-hero-image) .pd-axes,
.pd-page .pd-frame:has(img.pd-hero-image) .pd-readout,
.pd-page .overview-visual.has-uploaded-image .ov-label,
.pd-page .overview-visual.has-uploaded-image .ph-corner,
.pd-page .overview-visual.has-uploaded-image .ov-toolbar,
.pd-page .cap-visual.has-uploaded-image .ph-corner {
  display: none !important;
}
.pd-page .pd-frame:has(img.pd-hero-image) .vp-toolbar {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 5 !important;
}
.pd-page .overview-grid,
.pd-page .cap-row {
  align-items: center;
}
.pd-page .overview-text,
.pd-page .cap-text {
  overflow-wrap: anywhere;
}

/* v3.6.5 requested header mega menu + blog card styles */
.ki-mega-nav .ki-main-menu{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}.ki-mega-nav .ki-main-menu>li>a{display:flex;align-items:center;min-height:78px;font-size:14px;font-weight:700;color:#d7dbe4}.ki-mega-nav .ki-main-menu>li>a:hover{color:#fff}.ki-menu-products{position:static}.ki-mega-panel{position:absolute;left:50%;top:100%;transform:translateX(-50%);width:min(1120px,calc(100vw - 48px));background:#fff;color:#111827;border:1px solid rgba(17,24,39,.14);box-shadow:0 28px 70px rgba(0,0,0,.24);display:none;z-index:100;border-radius:0}.ki-menu-products:hover>.ki-mega-panel,.ki-menu-products:focus-within>.ki-mega-panel{display:block}.ki-mega-inner{display:grid;grid-template-columns:1.2fr 1.05fr 1.05fr;gap:34px 42px;padding:34px 38px 30px}.ki-mega-col h3{font-size:13px;line-height:1.2;text-transform:uppercase;letter-spacing:.08em;color:#05070a;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #ccd2dc;font-weight:800}.ki-mega-col h3:before{content:"";display:inline-block;width:10px;height:2px;background:var(--ki-accent);margin-right:10px;vertical-align:middle}.ki-mega-col ul{list-style:none;margin:0;padding:0;display:block}.ki-mega-col li{margin:0}.ki-mega-col a{display:block;padding:7px 0;color:#17202a;font-size:15px;font-weight:500;transition:.18s}.ki-mega-col a:hover{color:var(--ki-accent);transform:translateX(4px)}.ki-mega-actions{grid-column:1/-1;border-top:1px solid #e2e6ee;padding-top:16px}.ki-mega-actions a{font-family:var(--ki-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ki-accent);font-weight:800}.ki-simple-dropdown{position:relative}.ki-simple-dropdown>.sub-menu{position:absolute;top:100%;left:0;min-width:250px;background:#fff;color:#17202a;border:1px solid rgba(17,24,39,.14);box-shadow:0 18px 50px rgba(0,0,0,.22);padding:10px;display:none;list-style:none;margin:0;z-index:90}.ki-simple-dropdown:hover>.sub-menu,.ki-simple-dropdown:focus-within>.sub-menu{display:block}.ki-simple-dropdown>.sub-menu a{display:block;padding:11px 12px;color:#17202a;font-weight:600}.ki-simple-dropdown>.sub-menu a:hover{background:#f3f5f8;color:var(--ki-accent)}.ki-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ki-blog-card{border:1px solid var(--ki-line);background:#fff;padding:28px;min-height:280px;transition:.22s}.ki-blog-card:hover{transform:translateY(-5px);box-shadow:0 18px 50px rgba(13,19,25,.12);border-color:rgba(228,28,10,.35)}.ki-blog-meta{font-family:var(--ki-mono);font-size:11px;color:var(--ki-accent);letter-spacing:.14em;text-transform:uppercase}.ki-blog-card h2{font-size:24px;line-height:1.18;margin:16px 0 12px;color:#111827}.ki-blog-card p{color:#526071;margin-bottom:18px}@media(max-width:1024px){.ki-mega-inner{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.ki-mega-nav .ki-main-menu{display:block}.ki-mega-nav .ki-main-menu>li>a{min-height:0;padding:14px 0}.ki-mega-panel{position:static;transform:none;width:100%;display:block;background:rgba(255,255,255,.04);color:#fff;border:0;box-shadow:none;padding:0;margin:6px 0 14px}.ki-mega-inner{display:block;padding:12px 16px}.ki-mega-col{margin-bottom:18px}.ki-mega-col h3{color:#fff;border-color:rgba(255,255,255,.16)}.ki-mega-col a{color:#cbd3df;padding:8px 0}.ki-mega-col a:hover{color:#fff;transform:none}.ki-mega-actions{border-color:rgba(255,255,255,.14)}.ki-simple-dropdown>.sub-menu{position:static;display:block;background:rgba(255,255,255,.04);border:0;box-shadow:none;padding:8px 14px;margin:0 0 8px}.ki-simple-dropdown>.sub-menu a{color:#cbd3df;padding:8px 0}.ki-simple-dropdown>.sub-menu a:hover{background:transparent;color:#fff}.ki-blog-grid{grid-template-columns:1fr}}@media(min-width:901px){.ki-mega-nav .sub-menu{display:none!important}}
@media(min-width:901px){.ki-mega-nav .ki-simple-dropdown:hover>.sub-menu,.ki-mega-nav .ki-simple-dropdown:focus-within>.sub-menu{display:block!important}}

/* v3.6.6 - mobile header actions + improved blog layout */
.ki-mobile-only{display:none!important;}
.ki-mobile-menu-actions{border-bottom:0!important;padding-top:14px!important;display:none!important;gap:10px!important;}
.ki-mobile-menu-actions a{justify-content:center!important;text-align:center!important;border-radius:999px!important;font-weight:800!important;min-height:44px!important;}
.ki-mobile-menu-actions .ki-mobile-demo-link{border:1px solid rgba(255,255,255,.22)!important;background:rgba(255,255,255,.06)!important;color:#fff!important;}
.ki-mobile-menu-actions .ki-mobile-quote-link{border:1px solid var(--ki-accent)!important;background:var(--ki-accent)!important;color:#fff!important;}
.ki-blog-hero{padding:112px 0 92px;}
.ki-blog-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.75fr);gap:52px;align-items:center;}
.ki-blog-hero h1{font-size:clamp(42px,6vw,76px);line-height:.98;margin:0 0 22px;letter-spacing:-.055em;}
.ki-blog-hero p{max-width:760px;color:#cbd3df;font-size:18px;}
.ki-blog-hero-card{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.14);padding:34px;box-shadow:0 24px 80px rgba(0,0,0,.22);}
.ki-blog-hero-card span{font-family:var(--ki-mono);font-size:12px;color:var(--ki-accent);letter-spacing:.14em;text-transform:uppercase;}
.ki-blog-hero-card h2{font-size:31px;line-height:1.12;margin:18px 0 14px;color:#fff;}
.ki-blog-list-section{background:#f5f7fa;}
.ki-blog-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:40px;align-items:end;margin-bottom:34px;}
.ki-blog-head h2{font-size:clamp(32px,4vw,52px);line-height:1.03;margin:0;color:#101820;letter-spacing:-.035em;}
.ki-blog-head p{margin:0;color:#526071;}
.ki-blog-featured{margin-bottom:26px;}
.ki-blog-featured article{background:#fff;border:1px solid #dfe4ec;padding:38px;display:grid;grid-template-columns:.22fr 1fr;gap:22px 34px;align-items:start;}
.ki-blog-featured .ki-blog-meta{grid-column:1;}
.ki-blog-featured h2{grid-column:2;font-size:34px;line-height:1.1;margin:0;color:#101820;}
.ki-blog-featured p{grid-column:2;color:#526071;margin:0;}
.ki-blog-featured a{grid-column:2;}
.ki-blog-grid-modern{grid-template-columns:repeat(3,minmax(0,1fr));}
.ki-blog-grid-modern .ki-blog-card{background:#fff;border:1px solid #dfe4ec;min-height:320px;display:flex;flex-direction:column;}
.ki-blog-grid-modern .ki-blog-card h2{font-size:25px;}
.ki-blog-grid-modern .ki-blog-card .ki-arrow-link{margin-top:auto;}
.ki-blog-cta{padding:84px 0;}
.ki-blog-cta h2{font-size:clamp(34px,4vw,58px);line-height:1;margin:0 0 16px;letter-spacing:-.04em;max-width:760px;}
.ki-blog-cta p{max-width:760px;color:#cbd3df;}
@media(max-width:900px){
  .ki-mobile-only{display:block!important;}
  .ki-mobile-menu-actions{display:grid!important;grid-template-columns:1fr!important;}
  .ki-primary-nav.is-open{max-height:calc(100vh - 82px);overflow-y:auto!important;padding-bottom:18px;}
  .ki-primary-nav.is-open .ki-main-menu{padding-bottom:20px!important;}
  .ki-blog-hero{padding:78px 0 62px;}
  .ki-blog-hero-grid,.ki-blog-head{grid-template-columns:1fr;gap:28px;}
  .ki-blog-hero-card{padding:26px;}
  .ki-blog-featured article{display:block;padding:28px;}
  .ki-blog-featured h2{font-size:28px;margin:12px 0;}
  .ki-blog-grid-modern{grid-template-columns:1fr;}
}

/* v3.6.7 - Mega menu final list, mobile actions, dropdown visibility, footer and home extras */
.ki-mega-panel{width:min(1280px,calc(100vw - 32px))!important;}
.ki-mega-inner{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px 36px!important;padding:32px 36px 28px!important;}
.ki-mega-col a{font-size:14px!important;line-height:1.25!important;padding:6px 0!important;}
.ki-simple-dropdown>.sub-menu{background:#101820!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 20px 60px rgba(0,0,0,.28)!important;}
.ki-simple-dropdown>.sub-menu a{color:#eef3fb!important;opacity:1!important;}
.ki-simple-dropdown>.sub-menu a:hover{background:rgba(228,28,10,.12)!important;color:#fff!important;}
.ki-mobile-only{display:none!important;}
.ki-site-footer{background:#0d141c;color:#dce3ed;padding:82px 0 30px;}
.ki-site-footer .ki-footer-grid{grid-template-columns:minmax(260px,1.25fr) repeat(4,minmax(150px,1fr));gap:48px;align-items:start;}
.ki-site-footer h3{position:relative;margin:0 0 18px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.16);font-size:14px;letter-spacing:.08em;color:#fff;}
.ki-site-footer h3:before{content:"";display:inline-block;width:10px;height:2px;background:var(--ki-accent);margin-right:10px;vertical-align:middle;}
.ki-footer-brand .ki-brand-mark{width:150px;height:72px;border-radius:10px;background:#fff;color:var(--ki-accent);font-size:26px;margin-bottom:22px;}
.ki-footer-brand h2{display:none;}
.ki-footer-brand p{max-width:320px;color:#d2d9e3;line-height:1.7;margin:0 0 22px;}
.ki-footer-contact{margin-top:22px!important;}
.ki-footer-contact li{color:#dbe2ec!important;margin:12px 0!important;}
.ki-footer-bottom{border-top:1px solid rgba(255,255,255,.13);margin-top:58px;padding-top:26px;letter-spacing:.12em;text-transform:uppercase;font-family:var(--ki-mono);font-size:12px;}
.ki-home-ref .software-card{transition:transform .28s ease,background .28s ease,border-color .28s ease,box-shadow .28s ease}.ki-home-ref .software-card:hover{background:#111922;color:#fff;border-color:#111922;transform:translateY(-8px);box-shadow:0 24px 60px rgba(17,25,34,.18)}.ki-home-ref .software-card:hover p{color:#c6ceda}.ki-home-ref .software-card:hover .tag-list span{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff}.ki-home-ref .tech-icon{width:100%;height:160px;border-radius:0;margin:24px 0 26px;background:#eef2f7;border:1px solid #dce3ed;overflow:hidden;position:relative}.ki-home-ref .tech-icon:before{display:none!important}.ki-home-ref .tech-icon-image{padding:0!important}.ki-home-ref .tech-icon-image img{width:100%!important;height:100%!important;object-fit:cover!important}.ki-home-ref .software-card:not(:has(img)) .tech-icon:after{content:"SOFTWARE IMAGE";position:absolute;inset:0;display:grid;place-items:center;font-family:var(--ki-mono);font-size:12px;color:#7c8798;letter-spacing:.12em}.ki-home-ref .software-card:hover .tech-icon{border-color:rgba(255,255,255,.16);background:#1b2633}.ki-home-ref .logo-showcase{background:#fff}.ki-home-ref .clients{background:#f6f7f9}.ki-home-ref .logo-slider{overflow:hidden;border:1px solid var(--line,#dfe4ec);background:#fff}.ki-home-ref .logo-track{display:flex;gap:0;width:max-content;animation:kiLogoSlide 28s linear infinite}.ki-home-ref .logo-track.reverse{animation-direction:reverse}.ki-home-ref .logo-slider:hover .logo-track{animation-play-state:paused}.ki-home-ref .logo-card{width:220px;height:116px;border-right:1px solid var(--line,#dfe4ec);display:grid;place-items:center;padding:22px;background:#fff}.ki-home-ref .logo-card img{max-width:100%;max-height:72px;object-fit:contain}.ki-home-ref .logo-card span{font-weight:900;color:#526174;text-align:center}.ki-home-ref .client-feedback{background:#111922;color:#fff}.ki-home-ref .client-feedback .display,.ki-home-ref .client-feedback .lead{color:#fff}.ki-home-ref .testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ki-home-ref .testimonial-card{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);padding:30px;min-height:260px}.ki-home-ref .testimonial-card .quote-mark{color:var(--accent,var(--ki-accent));font-size:56px;line-height:1}.ki-home-ref .testimonial-card p{color:#d5dbe5;line-height:1.7}.ki-home-ref .testimonial-card strong{display:block;color:#fff}.ki-home-ref .testimonial-card small{display:block;color:#8e98aa;margin-top:4px}.ki-home-ref .home-blog{background:#fff}.ki-home-ref .blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ki-home-ref .blog-card{border:1px solid var(--line,#dfe4ec);background:#fff;padding:30px;min-height:300px;display:flex;flex-direction:column;transition:.25s}.ki-home-ref .blog-card:hover{transform:translateY(-6px);border-color:var(--accent,var(--ki-accent));box-shadow:0 18px 50px rgba(17,25,34,.1)}.ki-home-ref .blog-card span{font-family:var(--font-mono,var(--ki-mono));font-size:12px;color:var(--accent,var(--ki-accent));font-weight:900;text-transform:uppercase}.ki-home-ref .blog-card h3,.ki-home-ref .blog-card h4{font-size:24px;line-height:1.15;margin:22px 0 14px}.ki-home-ref .blog-card p{color:#667386}.ki-home-ref .blog-card b{margin-top:auto;color:var(--accent,var(--ki-accent));font-family:var(--font-mono,var(--ki-mono));font-size:12px;text-transform:uppercase}@keyframes kiLogoSlide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:1100px){.ki-mega-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ki-site-footer .ki-footer-grid{grid-template-columns:1fr 1fr}.ki-footer-brand{grid-column:1/-1}}
@media(max-width:900px){.ki-primary-nav.is-open{max-height:calc(100vh - 84px);overflow:auto;padding-bottom:18px}.ki-mega-nav .ki-main-menu>li>a{padding:13px 0!important;color:#eef3fb!important}.ki-mega-panel{display:block!important;width:100%!important;background:rgba(255,255,255,.04)!important}.ki-mega-inner{display:block!important;padding:14px!important}.ki-mega-col h3{color:#fff!important}.ki-mega-col a{color:#dbe3ef!important}.ki-simple-dropdown>.sub-menu{display:block!important;position:static!important;background:rgba(255,255,255,.06)!important;border:0!important;box-shadow:none!important;padding:8px 14px!important}.ki-simple-dropdown>.sub-menu a{color:#eef3fb!important;opacity:1!important}.ki-mobile-only{display:block!important}.ki-mobile-action-item a{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;margin:8px 0!important;padding:13px 16px!important;border-radius:0!important;font-weight:800!important}.ki-mobile-demo-link{border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;background:rgba(255,255,255,.06)!important}.ki-mobile-quote-link{background:var(--ki-accent)!important;color:#fff!important}.ki-blog-grid-modern,.ki-home-ref .testimonial-grid,.ki-home-ref .blog-grid{grid-template-columns:1fr!important}.ki-site-footer .ki-footer-grid{grid-template-columns:1fr!important;gap:28px}.ki-footer-bottom{display:block!important}.ki-footer-bottom span{display:block;margin-bottom:8px}}

/* v3.6.9 - Services/Training landing page sections */
.ki-simple-trust-strip{padding:34px 0;border-bottom:1px solid #e1e6eb;background:#f7f9fb!important}.ki-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ki-trust-item{background:#fff;border:1px solid #dfe5eb;padding:22px;min-height:150px;transition:.25s ease}.ki-trust-item:hover{transform:translateY(-4px);background:#111b24;color:#fff;border-color:#e62618}.ki-trust-item strong{display:block;color:#e62618;font-family:monospace;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.ki-trust-item span{display:block;font-size:17px;line-height:1.25;font-weight:700;margin-bottom:8px}.ki-trust-item p{margin:0;color:inherit;opacity:.75;line-height:1.6}.ki-lead-form-section{padding:90px 0;background:#f3f5f7!important}.ki-lead-form-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:start}.ki-lead-form-layout h2{margin:10px 0 18px}.ki-lead-form-layout p{color:#697386;line-height:1.75}.ki-lead-form-card{background:#fff;border:1px solid #dde4ea;padding:32px;box-shadow:0 24px 70px rgba(15,23,42,.08)}.ki-lead-form-card .ki-contact-form label{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#303846}.ki-lead-form-card input,.ki-lead-form-card textarea,.ki-lead-form-card select{background:#f8fafc;border:1px solid #dfe5eb;color:#111b24}.ki-lead-form-card input[type=file]{padding:14px;background:#fff}.ki-simple-card:hover{background:#111b24!important;color:#fff;border-color:#e62618!important;transform:translateY(-6px)}.ki-simple-card:hover p,.ki-simple-card:hover .ki-card-num{color:rgba(255,255,255,.76)}.ki-simple-card:hover .ki-tags span{background:rgba(230,38,24,.16);border-color:rgba(230,38,24,.5);color:#fff}.ki-simple-card-media img,.ki-deep-card-bg,.ki-small-card-image{object-fit:cover;object-position:center}@media(max-width:900px){.ki-trust-grid,.ki-lead-form-layout{grid-template-columns:1fr}.ki-trust-item{min-height:auto}.ki-lead-form-section{padding:60px 0}.ki-lead-form-card{padding:22px}}

/* v3.7.0 - Services and Training landing page depth and visibility fixes */
.ki-simple-page-widget-layout .ki-process-section,
.ki-services-widget-page .ki-process-section,
.ki-training-widget-page .ki-process-section {
  background: #101820 !important;
  color: #fff !important;
  position: relative;
  overflow: hidden;
}
.ki-simple-page-widget-layout .ki-process-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 72px 72px;
  pointer-events: none;
}
.ki-simple-page-widget-layout .ki-process-section .ki-container { position: relative; z-index: 1; }
.ki-simple-page-widget-layout .ki-process-section .ki-section-head,
.ki-simple-page-widget-layout .ki-process-section .ki-section-head-dark { margin-bottom: 44px; }
.ki-simple-page-widget-layout .ki-process-section .ki-kicker,
.ki-simple-page-widget-layout .ki-process-section h2,
.ki-simple-page-widget-layout .ki-process-section h3,
.ki-simple-page-widget-layout .ki-process-section h4,
.ki-simple-page-widget-layout .ki-process-section h5,
.ki-simple-page-widget-layout .ki-process-section p {
  color: #fff !important;
  opacity: 1 !important;
}
.ki-simple-page-widget-layout .ki-process-section .ki-section-head p,
.ki-simple-page-widget-layout .ki-process-step p {
  color: rgba(255,255,255,.74) !important;
  line-height: 1.75;
}
.ki-simple-page-widget-layout .ki-process-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  border: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin-right: 0 !important;
}
.ki-simple-page-widget-layout .ki-process-step {
  min-height: 250px;
  background: rgba(255,255,255,.055) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  padding: 28px !important;
  transition: .24s ease;
}
.ki-simple-page-widget-layout .ki-process-step:hover {
  transform: translateY(-5px);
  background: rgba(230,38,24,.14) !important;
  border-color: rgba(230,38,24,.55) !important;
}
.ki-simple-page-widget-layout .ki-simple-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ki-simple-page-widget-layout .ki-deep-dive-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ki-simple-page-widget-layout .ki-simple-card,
.ki-simple-page-widget-layout .ki-deep-card,
.ki-simple-page-widget-layout .ki-guidance-card { min-height: 310px; }
.ki-simple-page-widget-layout .ki-simple-card-body p,
.ki-simple-page-widget-layout .ki-deep-card p,
.ki-simple-page-widget-layout .ki-guidance-card p { line-height: 1.7; }
.ki-simple-page-widget-layout .ki-faq-lite-item p { line-height: 1.7; color: #53606e; }
@media(max-width:1024px){
  .ki-simple-page-widget-layout .ki-simple-card-grid,
  .ki-simple-page-widget-layout .ki-deep-dive-grid,
  .ki-simple-page-widget-layout .ki-process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width:700px){
  .ki-simple-page-widget-layout .ki-simple-card-grid,
  .ki-simple-page-widget-layout .ki-deep-dive-grid,
  .ki-simple-page-widget-layout .ki-process-grid { grid-template-columns: 1fr; }
  .ki-simple-page-widget-layout .ki-process-step,
  .ki-simple-page-widget-layout .ki-simple-card,
  .ki-simple-page-widget-layout .ki-deep-card,
  .ki-simple-page-widget-layout .ki-guidance-card { min-height: auto; }
}

/* v3.7.1 Services/Training final sections */
.ki-showcase-section { padding: 96px 0; }
.ki-showcase-grid { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:18px; }
.ki-showcase-card { background:#fff; border:1px solid rgba(16,24,32,.10); padding:26px; min-height:260px; box-shadow:0 18px 45px rgba(12,18,24,.06); display:flex; flex-direction:column; gap:12px; }
.ki-showcase-placeholder { height:86px; display:flex; align-items:center; justify-content:center; border:1px dashed rgba(16,24,32,.22); background:linear-gradient(135deg,#f7f9fb,#eef2f5); color:#5e6672; font-family:monospace; letter-spacing:.08em; text-transform:uppercase; font-size:12px; margin-bottom:6px; }
.ki-showcase-media { height:110px; background:#f5f7f9; border:1px solid rgba(16,24,32,.10); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.ki-showcase-media img { width:100%; height:100%; object-fit:cover; display:block; }
.ki-showcase-meta { color:#ef1f14; font-size:11px; text-transform:uppercase; letter-spacing:.08em; font-weight:700; }
.ki-showcase-card h3 { font-size:22px; line-height:1.15; margin:0; color:#101820; }
.ki-showcase-card p { color:#5f6875; line-height:1.7; margin:0; }
.ki-showcase-testimonial { background:#101820; border-color:rgba(255,255,255,.10); }
.ki-showcase-testimonial h3, .ki-showcase-testimonial p { color:#fff; }
.ki-showcase-testimonial .ki-showcase-placeholder { background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.18); color:#fff; }
.ki-simple-card, .ki-deep-card, .ki-process-step, .ki-guidance-card { min-height: unset; }
.ki-simple-card-body p, .ki-deep-card p, .ki-process-step p, .ki-guidance-card p { line-height:1.65; }
@media (max-width: 980px){ .ki-showcase-grid { grid-template-columns:1fr 1fr; } }
@media (max-width: 640px){ .ki-showcase-grid { grid-template-columns:1fr; } .ki-showcase-section { padding:64px 0; } }

/* v3.7.3 - Approved services/training landing content refinements */
.ki-industries-section,
.ki-software-covered-section,
.ki-centres-section { position: relative; }
.ki-industry-chip-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-top: 26px;
}
.ki-industry-chip {
  display: flex;
  align-items: center;
  min-height: 58px;
  padding: 14px 16px;
  border: 1px solid #dde3ea;
  background: #fff;
  color: #101820;
  font-size: 13px;
  letter-spacing: -0.01em;
  box-shadow: 0 14px 32px rgba(15,23,42,.045);
}
.ki-centre-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  margin-top: 28px;
}
.ki-centre-card {
  background: #fff;
  border: 1px solid #dde3ea;
  padding: 22px;
  min-height: 170px;
  box-shadow: 0 18px 44px rgba(15,23,42,.055);
}
.ki-centre-card span,
.ki-showcase-card .ki-showcase-meta {
  color: #ef1d12;
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: .14em;
}
.ki-centre-card h3 { margin: 12px 0 8px; }
.ki-centre-card p { color: #6f7b8a; font-size: 13px; line-height: 1.65; }
.ki-simple-card-grid,
.ki-deep-dive-grid,
.ki-process-grid,
.ki-showcase-grid,
.ki-guidance-grid { align-items: stretch; }
.ki-simple-card,
.ki-deep-card,
.ki-process-step,
.ki-showcase-card,
.ki-guidance-card { height: 100%; }
.ki-services-widget-layout .ki-simple-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ki-training-widget-layout .ki-simple-card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ki-training-widget-layout .ki-simple-card-body p,
.ki-services-widget-layout .ki-simple-card-body p { min-height: 118px; }
.ki-showcase-placeholder { min-height: 82px; }
@media (max-width: 1100px) {
  .ki-industry-chip-grid,
  .ki-centre-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ki-training-widget-layout .ki-simple-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .ki-industry-chip-grid,
  .ki-centre-grid,
  .ki-services-widget-layout .ki-simple-card-grid,
  .ki-training-widget-layout .ki-simple-card-grid { grid-template-columns: 1fr; }
  .ki-training-widget-layout .ki-simple-card-body p,
  .ki-services-widget-layout .ki-simple-card-body p { min-height: 0; }
}

/* v3.7.4 - Services and Training final section visibility/editability polish */
.ki-clients-logo-section,
.ki-testimonial-section,
.ki-career-support-section,
.ki-student-gallery-section,
.ki-student-feedback-section,
.ki-centres-section,
.ki-software-covered-section,
.ki-industries-section { position: relative; }
.ki-logo-placeholder-grid,
.ki-testimonial-grid,
.ki-centre-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.ki-logo-placeholder-card {
  min-height: 92px;
  background: #fff;
  border: 1px solid rgba(13, 23, 32, .12);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  box-shadow: 0 16px 34px rgba(11, 21, 31, .06);
}
.ki-logo-placeholder-card span {
  font-family: var(--ki-font-head);
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #7f8a96;
}
.ki-logo-placeholder-card img {
  max-width: 100%;
  max-height: 58px;
  object-fit: contain;
}
.ki-testimonial-card {
  background: #101b24;
  color: #d9e3ea;
  border: 1px solid rgba(255,255,255,.08);
  padding: 26px;
  min-height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.ki-section-light .ki-testimonial-card {
  background: #101b24;
}
.ki-testimonial-card p {
  color: #d9e3ea;
  margin: 0 0 22px;
  line-height: 1.75;
}
.ki-testimonial-card strong {
  color: #fff;
  font-family: var(--ki-font-head);
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ki-centre-card {
  background: #fff;
  border: 1px solid rgba(13, 23, 32, .12);
  padding: 24px;
  min-height: 170px;
  box-shadow: 0 16px 34px rgba(11, 21, 31, .06);
}
.ki-centre-card span {
  color: var(--ki-red);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ki-centre-card h3 { margin-top: 14px; }
.ki-career-support-section .ki-simple-card-grid,
.ki-student-gallery-section .ki-showcase-grid { margin-top: 28px; }
@media (max-width: 900px) {
  .ki-logo-placeholder-grid,
  .ki-testimonial-grid,
  .ki-centre-grid { grid-template-columns: 1fr; }
}

/* v3.7.6 - Services and Training UI/UX polish */
.ki-services-layout .ki-section-light,
.ki-services-layout .ki-section-dark,
.ki-training-layout .ki-section-light,
.ki-training-layout .ki-section-dark {
  padding-top: clamp(54px, 6vw, 82px) !important;
  padding-bottom: clamp(54px, 6vw, 82px) !important;
}
.ki-services-layout .ki-simple-hero,
.ki-training-layout .ki-simple-hero {
  padding-top: clamp(72px, 8vw, 108px) !important;
  padding-bottom: clamp(58px, 7vw, 86px) !important;
}
.ki-services-layout .ki-section-head,
.ki-training-layout .ki-section-head {
  margin-bottom: 24px !important;
}
.ki-services-layout .ki-section-head h2,
.ki-training-layout .ki-section-head h2 {
  max-width: 920px;
}
.ki-services-layout .ki-section-head p,
.ki-training-layout .ki-section-head p,
.ki-services-layout p,
.ki-training-layout p {
  line-height: 1.62 !important;
}
.ki-services-layout .ki-simple-card-grid,
.ki-training-layout .ki-simple-card-grid,
.ki-services-layout .ki-showcase-grid,
.ki-training-layout .ki-showcase-grid,
.ki-services-layout .ki-testimonial-grid,
.ki-training-layout .ki-testimonial-grid {
  gap: 18px !important;
}
.ki-services-layout .ki-simple-card,
.ki-training-layout .ki-simple-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  height: 100% !important;
  padding: 24px !important;
  background: #fff !important;
  color: #111b24 !important;
  border: 1px solid #dde4ea !important;
  box-shadow: 0 14px 34px rgba(15,23,42,.055) !important;
  transition: transform .22s ease, background-color .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
.ki-services-layout .ki-simple-card h3,
.ki-services-layout .ki-simple-card h4,
.ki-training-layout .ki-simple-card h3,
.ki-training-layout .ki-simple-card h4 {
  margin: 14px 0 10px !important;
  color: inherit !important;
  font-size: 21px !important;
  line-height: 1.16 !important;
}
.ki-services-layout .ki-simple-card p,
.ki-training-layout .ki-simple-card p {
  color: #5e6977 !important;
  margin: 0 !important;
  min-height: 0 !important;
}
.ki-services-layout .ki-icon-card .ki-card-icon,
.ki-training-layout .ki-icon-card .ki-card-icon {
  width: 48px !important;
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f5f7fa !important;
  border: 1px solid #dde4ea !important;
  color: #e62618 !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-family: Arial, sans-serif !important;
  letter-spacing: 0 !important;
  margin: 0 !important;
}
.ki-services-layout .ki-simple-card:hover,
.ki-training-layout .ki-simple-card:hover,
.ki-services-layout .ki-industry-chip:hover,
.ki-training-layout .ki-industry-chip:hover,
.ki-services-layout .ki-logo-placeholder-card:hover,
.ki-training-layout .ki-logo-placeholder-card:hover,
.ki-services-layout .ki-showcase-card:hover,
.ki-training-layout .ki-showcase-card:hover,
.ki-services-layout .ki-centre-card:hover,
.ki-training-layout .ki-centre-card:hover {
  transform: translateY(-5px) !important;
  background: #111b24 !important;
  color: #fff !important;
  border-color: #e62618 !important;
  box-shadow: 0 22px 50px rgba(15,23,42,.16) !important;
}
.ki-services-layout .ki-simple-card:hover p,
.ki-training-layout .ki-simple-card:hover p,
.ki-services-layout .ki-showcase-card:hover p,
.ki-training-layout .ki-showcase-card:hover p,
.ki-services-layout .ki-centre-card:hover p,
.ki-training-layout .ki-centre-card:hover p {
  color: rgba(255,255,255,.78) !important;
}
.ki-services-layout .ki-simple-card:hover .ki-card-icon,
.ki-training-layout .ki-simple-card:hover .ki-card-icon {
  background: rgba(230,38,24,.14) !important;
  border-color: rgba(230,38,24,.55) !important;
  color: #fff !important;
}
.ki-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}
.ki-chip-row em {
  font-style: normal;
  font-size: 11px;
  line-height: 1;
  padding: 8px 10px;
  background: #f1f4f7;
  border: 1px solid #dde4ea;
  color: #465162;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.ki-simple-card:hover .ki-chip-row em {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.18);
  color: #fff;
}
.ki-arrow-link {
  margin-top: auto;
  padding-top: 18px;
  color: #e62618 !important;
  font-weight: 700;
  text-decoration: none;
}
.ki-simple-card:hover .ki-arrow-link { color: #fff !important; }
.ki-services-layout .ki-section-dark .ki-simple-card,
.ki-training-layout .ki-section-dark .ki-simple-card {
  background: rgba(255,255,255,.055) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.14) !important;
  box-shadow: none !important;
}
.ki-services-layout .ki-section-dark .ki-simple-card p,
.ki-training-layout .ki-section-dark .ki-simple-card p {
  color: rgba(255,255,255,.75) !important;
}
.ki-services-layout .ki-section-dark .ki-simple-card:hover,
.ki-training-layout .ki-section-dark .ki-simple-card:hover {
  background: rgba(230,38,24,.16) !important;
  border-color: rgba(230,38,24,.65) !important;
}
.ki-services-layout .ki-industry-chip,
.ki-training-layout .ki-industry-chip,
.ki-services-layout .ki-logo-placeholder-card,
.ki-training-layout .ki-logo-placeholder-card,
.ki-training-layout .ki-centre-card,
.ki-services-layout .ki-centre-card {
  transition: transform .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
.ki-services-layout .ki-logo-placeholder-card span,
.ki-training-layout .ki-logo-placeholder-card span,
.ki-services-layout .ki-industry-chip,
.ki-training-layout .ki-industry-chip {
  color: inherit !important;
}
.ki-services-layout .ki-testimonial-card,
.ki-training-layout .ki-testimonial-card {
  padding: 24px !important;
  min-height: 0 !important;
  background: #111b24 !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: 0 18px 44px rgba(15,23,42,.10) !important;
  transition: transform .22s ease, border-color .22s ease !important;
}
.ki-services-layout .ki-testimonial-card:hover,
.ki-training-layout .ki-testimonial-card:hover {
  transform: translateY(-5px);
  border-color: #e62618 !important;
}
.ki-services-layout .ki-showcase-card,
.ki-training-layout .ki-showcase-card {
  min-height: 0 !important;
  padding: 22px !important;
  transition: transform .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
.ki-services-layout .ki-showcase-placeholder,
.ki-training-layout .ki-showcase-placeholder {
  height: 118px !important;
  margin-bottom: 12px !important;
}
.ki-services-layout .ki-lead-form-section,
.ki-training-layout .ki-lead-form-section,
.ki-services-layout .ki-lead-form-layout,
.ki-training-layout .ki-lead-form-layout {
  gap: 34px !important;
}
.ki-services-layout .ki-cta,
.ki-training-layout .ki-cta {
  padding-top: clamp(56px, 6vw, 80px) !important;
  padding-bottom: clamp(56px, 6vw, 80px) !important;
}
.ki-services-layout .ki-hero-grid,
.ki-training-layout .ki-hero-grid {
  gap: 36px !important;
}
.ki-services-layout .ki-simple-cad-panel,
.ki-training-layout .ki-simple-cad-panel {
  min-height: 320px !important;
}
@media (min-width: 1101px) {
  .ki-services-layout .ki-simple-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .ki-training-layout .ki-simple-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .ki-services-layout .ki-showcase-grid,
  .ki-training-layout .ki-showcase-grid,
  .ki-services-layout .ki-testimonial-grid,
  .ki-training-layout .ki-testimonial-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 1100px) {
  .ki-services-layout .ki-simple-card-grid,
  .ki-training-layout .ki-simple-card-grid,
  .ki-services-layout .ki-showcase-grid,
  .ki-training-layout .ki-showcase-grid,
  .ki-services-layout .ki-testimonial-grid,
  .ki-training-layout .ki-testimonial-grid,
  .ki-services-layout .ki-industry-chip-grid,
  .ki-training-layout .ki-industry-chip-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 700px) {
  .ki-services-layout .ki-section-light,
  .ki-services-layout .ki-section-dark,
  .ki-training-layout .ki-section-light,
  .ki-training-layout .ki-section-dark { padding-top: 46px !important; padding-bottom: 46px !important; }
  .ki-services-layout .ki-simple-card-grid,
  .ki-training-layout .ki-simple-card-grid,
  .ki-services-layout .ki-showcase-grid,
  .ki-training-layout .ki-showcase-grid,
  .ki-services-layout .ki-testimonial-grid,
  .ki-training-layout .ki-testimonial-grid,
  .ki-services-layout .ki-industry-chip-grid,
  .ki-training-layout .ki-industry-chip-grid { grid-template-columns: 1fr !important; }
  .ki-services-layout .ki-simple-card,
  .ki-training-layout .ki-simple-card { padding: 20px !important; }
}

/* v3.8.5 final header/footer gap cleanup + compact products menu */
:root { --ki-fixed-header-height: 0px !important; }
body.ki-has-cpt-header .ki-site-main,
body.ki-has-cpt-footer .ki-site-main,
body.ki-theme .ki-site-main,
body.elementor-page .ki-site-main,
body.ki-theme .ki-site-main > article,
body.elementor-page .ki-site-main > article,
body.ki-theme .entry-content,
body.elementor-page .entry-content {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.ki-has-cpt-header .ki-site-main { margin-top: -1px !important; }
body.ki-has-cpt-footer .ki-site-main { margin-bottom: -1px !important; }
body.ki-has-cpt-header .elementor-widget-ki_header_builder,
body.ki-has-cpt-footer .elementor-widget-ki_footer_builder,
body.ki-has-cpt-header .elementor-widget-ki_header_builder > .elementor-widget-container,
body.ki-has-cpt-footer .elementor-widget-ki_footer_builder > .elementor-widget-container,
body.ki-has-cpt-header .ki-elementor-header,
body.ki-has-cpt-footer .ki-elementor-footer {
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.ki-has-cpt-header .ki-elementor-header { margin-bottom: -1px !important; }
body.ki-has-cpt-footer .ki-elementor-footer { margin-top: -1px !important; }
body.ki-has-cpt-header .ki-site-main > .elementor,
body.ki-has-cpt-header .ki-site-main > .elementor > .elementor-section-wrap,
body.ki-has-cpt-header .ki-site-main .elementor-top-section:first-child,
body.ki-has-cpt-header .ki-site-main .elementor-widget:first-child,
body.ki-has-cpt-header .ki-site-main .elementor-widget-container:first-child,
body.ki-has-cpt-header .ki-site-main .ki-widget-layout:first-child,
body.ki-has-cpt-header .ki-site-main .pd-page:first-child,
body.ki-has-cpt-header .ki-site-main .ki-simple-page-widget-layout:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.ki-has-cpt-footer .ki-site-main .elementor-top-section:last-child,
body.ki-has-cpt-footer .ki-site-main .elementor-widget:last-child,
body.ki-has-cpt-footer .ki-site-main .elementor-widget-container:last-child,
body.ki-has-cpt-footer .ki-site-main .ki-widget-layout:last-child,
body.ki-has-cpt-footer .ki-site-main .pd-page:last-child,
body.ki-has-cpt-footer .ki-site-main .ki-simple-page-widget-layout:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.ki-has-cpt-header .ki-elementor-header,
.ki-elementor-header {
  position: sticky !important;
  top: var(--ki-header-sticky-top,0px) !important;
  z-index: 99999 !important;
  background: #fff !important;
  border-bottom: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.05) !important;
}
body.ki-has-cpt-header .ki-elementor-header-inner,
.ki-elementor-header-inner {
  min-height: 76px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
body.ki-has-cpt-header .ki-eh-menu,
.ki-eh-menu { gap: 24px !important; }
body.ki-has-cpt-header .ki-eh-menu > li > a,
.ki-eh-menu > li > a { padding: 20px 0 !important; line-height: 1.2 !important; }

body.ki-has-cpt-header .ki-eh-products { position: relative !important; }
body.ki-has-cpt-header .ki-eh-products > .ki-eh-mega,
.ki-eh-products > .ki-eh-mega {
  left: 50% !important;
  top: calc(100% + 8px) !important;
  width: min(860px, calc(100vw - 40px)) !important;
  max-height: min(68vh, 500px) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 22px 62px rgba(15,23,42,.18) !important;
}
body.ki-has-cpt-header .ki-eh-mega-tabbed,
.ki-eh-mega-tabbed { grid-template-columns: 250px minmax(0,1fr) !important; }
body.ki-has-cpt-header .ki-eh-mega-tabs,
.ki-eh-mega-tabs {
  min-height: 300px !important;
  padding: 12px !important;
  background: #f4f6f8 !important;
}
.ki-eh-mega-tab {
  padding: 11px 12px !important;
  border-radius: 10px !important;
  font-size: 13.5px !important;
  letter-spacing: -.01em !important;
}
.ki-eh-mega-tab.is-active,
.ki-eh-mega-tab:hover,
.ki-eh-mega-tab:focus {
  background: #fff !important;
  color: #e41c0a !important;
}
body.ki-has-cpt-header .ki-eh-mega-panels,
.ki-eh-mega-panels {
  min-height: 300px !important;
  padding: 20px 24px !important;
}
.ki-eh-mega-panel-section h3 { font-size: 18px !important; margin-bottom: 12px !important; }
.ki-eh-mega-panel-section ul { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 6px 12px !important; }
.ki-eh-mega-panel-section li a { padding: 8px 9px !important; font-size: 13.5px !important; }
.ki-eh-mega-all { padding: 12px 8px 2px !important; font-size: 13px !important; }

.ki-eh-simple-dropdown > a[href="#"] { cursor: default !important; }
.ki-eh-simple-dropdown > .ki-eh-sub-menu {
  top: calc(100% + 8px) !important;
  left: 50% !important;
  min-width: 260px !important;
}

@media (max-width: 980px) {
  body.ki-has-cpt-header .ki-eh-products { position: relative !important; }
  body.ki-has-cpt-header .ki-eh-products > .ki-eh-mega,
  .ki-eh-products > .ki-eh-mega { top: auto !important; width: 100% !important; max-height: none !important; }
  body.ki-has-cpt-header .ki-eh-mega-tabbed,
  .ki-eh-mega-tabbed { grid-template-columns: 1fr !important; }
  body.ki-has-cpt-header .ki-eh-mega-tabs,
  .ki-eh-mega-tabs { min-height: 0 !important; }
  body.ki-has-cpt-header .ki-eh-mega-panels,
  .ki-eh-mega-panels { min-height: 0 !important; }
  .ki-eh-mega-panel-section ul { grid-template-columns: 1fr !important; }
  .ki-eh-simple-dropdown > a[href="#"] { cursor: pointer !important; }
}

/* v3.8.6 authoritative header/footer slot, spacing and compact tabbed mega menu fix */
html body.ki-theme { margin: 0 !important; }
html body.ki-theme .ki-global-header-slot,
html body.ki-theme .ki-global-footer-slot {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  background: transparent !important;
}
html body.ki-theme .ki-global-header-slot {
  position: sticky !important;
  top: var(--ki-adminbar-height, 0px) !important;
  z-index: 99999 !important;
  background: #fff !important;
}
html body.admin-bar .ki-global-header-slot { top: 32px !important; }
@media (max-width: 782px) { html body.admin-bar .ki-global-header-slot { top: 46px !important; } }
html body.ki-theme .ki-global-header-slot > .elementor,
html body.ki-theme .ki-global-footer-slot > .elementor,
html body.ki-theme .ki-global-header-slot > .elementor > .elementor-section-wrap,
html body.ki-theme .ki-global-footer-slot > .elementor > .elementor-section-wrap,
html body.ki-theme .ki-global-header-slot .ki-header-template-section,
html body.ki-theme .ki-global-footer-slot .ki-footer-template-section,
html body.ki-theme .ki-global-header-slot .elementor-section,
html body.ki-theme .ki-global-footer-slot .elementor-section,
html body.ki-theme .ki-global-header-slot .elementor-container,
html body.ki-theme .ki-global-footer-slot .elementor-container,
html body.ki-theme .ki-global-header-slot .elementor-column,
html body.ki-theme .ki-global-footer-slot .elementor-column,
html body.ki-theme .ki-global-header-slot .elementor-widget-wrap,
html body.ki-theme .ki-global-footer-slot .elementor-widget-wrap,
html body.ki-theme .ki-global-header-slot .elementor-widget-ki_header_builder,
html body.ki-theme .ki-global-footer-slot .elementor-widget-ki_footer_builder,
html body.ki-theme .ki-global-header-slot .elementor-widget-ki_header_builder > .elementor-widget-container,
html body.ki-theme .ki-global-footer-slot .elementor-widget-ki_footer_builder > .elementor-widget-container {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
  line-height: 1 !important;
}
html body.ki-theme .ki-global-header-slot .ki-elementor-header,
html body.ki-theme .ki-global-footer-slot .ki-elementor-footer {
  margin: 0 !important;
  padding: 0 !important;
}
html body.ki-theme .ki-global-header-slot .ki-elementor-header {
  position: relative !important;
  top: auto !important;
  z-index: 1 !important;
  box-shadow: 0 8px 24px rgba(15,23,42,.05) !important;
}
html body.ki-theme .ki-site-main,
html body.ki-theme .ki-site-main > article,
html body.ki-theme .ki-site-main > article > .entry-content,
html body.ki-theme .ki-site-main > .elementor,
html body.ki-theme .ki-site-main .elementor[data-elementor-type="wp-page"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
html body.ki-theme .ki-site-main > *:first-child,
html body.ki-theme .entry-content > *:first-child,
html body.ki-theme .ki-site-main .elementor-widget-wrap > *:first-child { margin-top: 0 !important; }
html body.ki-theme .ki-site-main > *:last-child,
html body.ki-theme .entry-content > *:last-child,
html body.ki-theme .ki-site-main .elementor-widget-wrap > *:last-child { margin-bottom: 0 !important; }

/* fallback header sticky */
html body.ki-theme .ki-site-header {
  position: sticky !important;
  top: var(--ki-adminbar-height, 0px) !important;
  z-index: 99999 !important;
}
html body.admin-bar .ki-site-header { top: 32px !important; }
@media (max-width: 782px) { html body.admin-bar .ki-site-header { top: 46px !important; } }

/* Compact two-column Products mega menu */
html body.ki-theme .ki-eh-products { position: static !important; }
html body.ki-theme .ki-eh-products > .ki-eh-mega {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  top: 100% !important;
  transform: translateX(-50%) !important;
  width: min(760px, calc(100vw - 40px)) !important;
  max-height: min(70vh, 460px) !important;
  background: #fff !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  border-radius: 16px !important;
  box-shadow: 0 22px 58px rgba(15,23,42,.18) !important;
  overflow: hidden !important;
  display: none !important;
  padding: 0 !important;
  z-index: 100000 !important;
}
html body.ki-theme .ki-eh-products:hover > .ki-eh-mega,
html body.ki-theme .ki-eh-products:focus-within > .ki-eh-mega,
html body.ki-theme .ki-eh-products.ki-mega-open > .ki-eh-mega { display: block !important; }
html body.ki-theme .ki-eh-mega-inner.ki-eh-mega-tabbed {
  display: grid !important;
  grid-template-columns: 225px minmax(0, 1fr) !important;
  gap: 0 !important;
  padding: 0 !important;
  min-height: 330px !important;
  max-height: inherit !important;
}
html body.ki-theme .ki-eh-mega-tabs {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  padding: 14px !important;
  min-height: 330px !important;
  background: #f5f7fa !important;
  border-right: 1px solid #e6e9ef !important;
}
html body.ki-theme .ki-eh-mega-tab {
  width: 100% !important;
  display: block !important;
  text-align: left !important;
  border: 0 !important;
  background: transparent !important;
  color: #111827 !important;
  padding: 10px 12px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
  cursor: pointer !important;
}
html body.ki-theme .ki-eh-mega-tab.is-active,
html body.ki-theme .ki-eh-mega-tab:hover,
html body.ki-theme .ki-eh-mega-tab:focus {
  background: #fff !important;
  color: var(--ki-accent, #e41c0a) !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.07) !important;
}
html body.ki-theme .ki-eh-mega-all {
  margin-top: auto !important;
  display: block !important;
  color: var(--ki-accent, #e41c0a) !important;
  padding: 12px !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  border-top: 1px solid #e6e9ef !important;
}
html body.ki-theme .ki-eh-mega-panels {
  padding: 20px 24px !important;
  min-height: 330px !important;
  overflow: auto !important;
  background: #fff !important;
}
html body.ki-theme .ki-eh-mega-panel-section { display: none !important; }
html body.ki-theme .ki-eh-mega-panel-section.is-active { display: block !important; }
html body.ki-theme .ki-eh-mega-panel-section h3 {
  color: #111827 !important;
  font-size: 21px !important;
  line-height: 1.15 !important;
  margin: 0 0 14px !important;
  font-weight: 900 !important;
}
html body.ki-theme .ki-eh-mega-panel-section ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 3px !important;
}
html body.ki-theme .ki-eh-mega-panel-section li a {
  display: block !important;
  padding: 8px 10px !important;
  border-radius: 8px !important;
  color: #1f2937 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.25 !important;
}
html body.ki-theme .ki-eh-mega-panel-section li a:hover,
html body.ki-theme .ki-eh-mega-panel-section li a:focus {
  background: #f4f6f8 !important;
  color: var(--ki-accent, #e41c0a) !important;
}
html body.ki-theme .ki-eh-simple-dropdown > a[href="#"] { cursor: pointer !important; }
html body.ki-theme .ki-eh-simple-dropdown > .ki-eh-sub-menu {
  top: 100% !important;
  margin-top: 0 !important;
  border-radius: 12px !important;
}
@media (max-width: 980px) {
  html body.ki-theme .ki-global-header-slot { position: sticky !important; }
  html body.ki-theme .ki-eh-products { position: relative !important; }
  html body.ki-theme .ki-eh-products > .ki-eh-mega {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    max-height: none !important;
    box-shadow: none !important;
    border-radius: 10px !important;
    display: none !important;
  }
  html body.ki-theme .ki-eh-products.ki-mega-open > .ki-eh-mega { display: block !important; }
  html body.ki-theme .ki-eh-mega-inner.ki-eh-mega-tabbed { grid-template-columns: 1fr !important; min-height: 0 !important; }
  html body.ki-theme .ki-eh-mega-tabs { min-height: 0 !important; border-right: 0 !important; }
  html body.ki-theme .ki-eh-mega-panels { min-height: 0 !important; }
}

/* v3.8.7 final header/menu/gap/page polish */
html, body { margin: 0 !important; padding: 0 !important; }
body.ki-theme { background: var(--ki-bg, #081421) !important; overflow-x: hidden !important; }
body.ki-theme .ki-global-header-slot,
body.ki-theme .ki-global-footer-slot { display:block !important; margin:0 !important; padding:0 !important; }
body.ki-theme .ki-global-header-slot *,
body.ki-theme .ki-global-footer-slot * { box-sizing: border-box; }
body.ki-theme .ki-global-header-slot .elementor,
body.ki-theme .ki-global-header-slot .elementor-section-wrap,
body.ki-theme .ki-global-header-slot .elementor-section,
body.ki-theme .ki-global-header-slot .elementor-container,
body.ki-theme .ki-global-header-slot .elementor-column,
body.ki-theme .ki-global-header-slot .elementor-widget-wrap,
body.ki-theme .ki-global-header-slot .elementor-widget,
body.ki-theme .ki-global-header-slot .elementor-widget-container,
body.ki-theme .ki-global-footer-slot .elementor,
body.ki-theme .ki-global-footer-slot .elementor-section-wrap,
body.ki-theme .ki-global-footer-slot .elementor-section,
body.ki-theme .ki-global-footer-slot .elementor-container,
body.ki-theme .ki-global-footer-slot .elementor-column,
body.ki-theme .ki-global-footer-slot .elementor-widget-wrap,
body.ki-theme .ki-global-footer-slot .elementor-widget,
body.ki-theme .ki-global-footer-slot .elementor-widget-container {
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
}
body.ki-theme .ki-site-main,
body.ki-theme main,
body.ki-theme .entry-content,
body.ki-theme .page-content { margin:0 !important; padding:0 !important; }
body.ki-theme .entry-content > .elementor,
body.ki-theme .ki-site-main > .elementor { margin-top:0 !important; margin-bottom:0 !important; }
body.ki-theme .entry-content > .elementor > .elementor-section-wrap > .elementor-section:first-child,
body.ki-theme .entry-content > .elementor > .elementor-section:first-child { margin-top:0 !important; padding-top:0 !important; }
body.ki-theme .entry-content > .elementor > .elementor-section-wrap > .elementor-section:last-child,
body.ki-theme .entry-content > .elementor > .elementor-section:last-child { margin-bottom:0 !important; padding-bottom:0 !important; }
body.ki-theme .ki-global-header-slot + .ki-site-main,
body.ki-theme .ki-global-header-slot + main { margin-top:0 !important; padding-top:0 !important; }
body.ki-theme .ki-site-main + .ki-global-footer-slot,
body.ki-theme main + .ki-global-footer-slot { margin-top:0 !important; padding-top:0 !important; }

body.ki-theme .ki-global-header-slot { position:sticky !important; top:var(--ki-adminbar-height,0px) !important; z-index:99999 !important; background:#fff !important; box-shadow:0 8px 22px rgba(15,23,42,.08) !important; }
body.admin-bar.ki-theme .ki-global-header-slot { top:32px !important; }
@media(max-width:782px){ body.admin-bar.ki-theme .ki-global-header-slot { top:46px !important; } }

body.ki-theme .ki-elementor-header { background:#fff !important; margin:0 !important; padding:0 !important; border-bottom:1px solid rgba(15,23,42,.08) !important; box-shadow:none !important; }
body.ki-theme .ki-elementor-header-inner { min-height:76px !important; padding:14px 0 !important; display:grid !important; grid-template-columns:auto 1fr auto !important; align-items:center !important; gap:30px !important; }
body.ki-theme .ki-eh-logo { display:flex !important; align-items:center !important; gap:12px !important; min-width:240px !important; color:#0f172a !important; text-decoration:none !important; }
body.ki-theme .ki-eh-logo img { max-height:50px !important; width:auto !important; object-fit:contain !important; }
body.ki-theme .ki-brand-mark { width:42px !important; height:42px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; background:var(--ki-accent,#ed1c0c) !important; color:#fff !important; font-weight:900 !important; border-radius:0 !important; font-size:18px !important; }
body.ki-theme .ki-eh-logo strong { display:block !important; color:#111827 !important; font-size:19px !important; line-height:1.05 !important; font-weight:900 !important; }
body.ki-theme .ki-eh-logo small { display:block !important; margin-top:5px !important; color:#64748b !important; font-size:12.5px !important; line-height:1.2 !important; font-weight:600 !important; }
body.ki-theme .ki-elementor-nav { justify-self:center !important; }
body.ki-theme .ki-eh-menu { display:flex !important; align-items:center !important; gap:4px !important; margin:0 !important; padding:0 !important; list-style:none !important; }
body.ki-theme .ki-eh-menu > li > a { display:flex !important; align-items:center !important; min-height:42px !important; padding:0 14px !important; color:#111827 !important; font-size:14px !important; font-weight:800 !important; line-height:1 !important; text-decoration:none !important; border-radius:999px !important; transition:background .18s ease,color .18s ease,transform .18s ease !important; }
body.ki-theme .ki-eh-menu > li:hover > a,
body.ki-theme .ki-eh-menu > li:focus-within > a { background:#f3f6f9 !important; color:var(--ki-accent,#ed1c0c) !important; }
body.ki-theme .ki-eh-actions { display:flex !important; align-items:center !important; gap:10px !important; justify-self:end !important; }
body.ki-theme .ki-eh-actions a { display:inline-flex !important; align-items:center !important; justify-content:center !important; min-height:44px !important; padding:0 22px !important; border-radius:999px !important; font-size:14px !important; line-height:1 !important; font-weight:900 !important; text-decoration:none !important; }
body.ki-theme .ki-eh-demo { background:#f1f5f9 !important; color:#111827 !important; }
body.ki-theme .ki-eh-quote { background:#005fc4 !important; color:#fff !important; box-shadow:0 10px 20px rgba(0,95,196,.18) !important; }
body.ki-theme .ki-eh-demo:hover,
body.ki-theme .ki-eh-quote:hover { transform:translateY(-1px) !important; }

/* final premium compact tabbed mega menu */
body.ki-theme .ki-eh-products { position:relative !important; }
body.ki-theme .ki-eh-products > .ki-eh-mega { position:absolute !important; top:calc(100% + 10px) !important; left:50% !important; transform:translateX(-50%) !important; width:min(900px,calc(100vw - 48px)) !important; max-height:min(74vh,520px) !important; display:none !important; padding:0 !important; border-radius:22px !important; overflow:hidden !important; background:#fff !important; border:1px solid rgba(15,23,42,.10) !important; box-shadow:0 26px 70px rgba(15,23,42,.22) !important; z-index:100000 !important; }
body.ki-theme .ki-eh-products:hover > .ki-eh-mega,
body.ki-theme .ki-eh-products:focus-within > .ki-eh-mega,
body.ki-theme .ki-eh-products.ki-mega-open > .ki-eh-mega { display:block !important; }
body.ki-theme .ki-eh-products > .ki-eh-mega:before { content:""; position:absolute; top:-11px; left:0; right:0; height:11px; }
body.ki-theme .ki-eh-mega-inner.ki-eh-mega-tabbed { display:grid !important; grid-template-columns:280px minmax(0,1fr) !important; min-height:390px !important; max-height:inherit !important; padding:0 !important; gap:0 !important; }
body.ki-theme .ki-eh-mega-tabs { display:flex !important; flex-direction:column !important; gap:8px !important; padding:18px !important; background:linear-gradient(180deg,#f8fafc,#eef2f7) !important; border-right:1px solid #e5e7eb !important; min-height:390px !important; overflow:auto !important; }
body.ki-theme .ki-eh-mega-tab { position:relative !important; display:flex !important; align-items:center !important; min-height:50px !important; width:100% !important; border:0 !important; border-radius:14px !important; background:transparent !important; color:#172033 !important; text-align:left !important; cursor:pointer !important; padding:12px 14px 12px 42px !important; font-size:14px !important; line-height:1.18 !important; font-weight:900 !important; white-space:normal !important; transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease !important; }
body.ki-theme .ki-eh-mega-tab:before { content:""; position:absolute; left:14px; width:10px; height:10px; border-radius:999px; background:#cbd5e1; box-shadow:0 0 0 5px rgba(203,213,225,.25); }
body.ki-theme .ki-eh-mega-tab.is-active,
body.ki-theme .ki-eh-mega-tab:hover,
body.ki-theme .ki-eh-mega-tab:focus { background:#fff !important; color:var(--ki-accent,#ed1c0c) !important; box-shadow:0 10px 22px rgba(15,23,42,.09) !important; transform:translateX(2px) !important; }
body.ki-theme .ki-eh-mega-tab.is-active:before,
body.ki-theme .ki-eh-mega-tab:hover:before { background:var(--ki-accent,#ed1c0c); box-shadow:0 0 0 5px rgba(237,28,12,.12); }
body.ki-theme .ki-eh-mega-all { margin-top:auto !important; display:flex !important; align-items:center !important; min-height:46px !important; padding:0 14px !important; border-top:1px solid #e5e7eb !important; color:var(--ki-accent,#ed1c0c) !important; text-decoration:none !important; font-size:14px !important; font-weight:900 !important; }
body.ki-theme .ki-eh-mega-panels { padding:26px 32px !important; background:#fff !important; overflow:auto !important; min-height:390px !important; }
body.ki-theme .ki-eh-mega-panel-section { display:none !important; }
body.ki-theme .ki-eh-mega-panel-section.is-active { display:block !important; }
body.ki-theme .ki-eh-mega-panel-section h3 { margin:0 0 16px !important; color:#111827 !important; font-size:24px !important; line-height:1.1 !important; font-weight:900 !important; }
body.ki-theme .ki-eh-mega-panel-section ul { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:6px 12px !important; margin:0 !important; padding:0 !important; list-style:none !important; }
body.ki-theme .ki-eh-mega-panel-section li a { display:flex !important; align-items:center !important; min-height:38px !important; padding:9px 12px !important; border-radius:10px !important; color:#253044 !important; text-decoration:none !important; font-size:14px !important; font-weight:700 !important; line-height:1.25 !important; transition:background .18s ease,color .18s ease,transform .18s ease !important; }
body.ki-theme .ki-eh-mega-panel-section li a:before { content:"›"; margin-right:8px; color:var(--ki-accent,#ed1c0c); font-weight:900; }
body.ki-theme .ki-eh-mega-panel-section li a:hover,
body.ki-theme .ki-eh-mega-panel-section li a:focus { background:#f6f8fb !important; color:var(--ki-accent,#ed1c0c) !important; transform:translateX(2px) !important; }
body.ki-theme .ki-eh-simple-dropdown { position:relative !important; }
body.ki-theme .ki-eh-simple-dropdown > a[href="#"] { cursor:pointer !important; }
body.ki-theme .ki-eh-simple-dropdown > .ki-eh-sub-menu { position:absolute !important; top:calc(100% + 10px) !important; left:50% !important; transform:translateX(-50%) !important; min-width:245px !important; margin:0 !important; padding:10px !important; list-style:none !important; background:#fff !important; border:1px solid rgba(15,23,42,.10) !important; border-radius:16px !important; box-shadow:0 18px 44px rgba(15,23,42,.16) !important; display:none !important; z-index:100000 !important; }
body.ki-theme .ki-eh-simple-dropdown:hover > .ki-eh-sub-menu,
body.ki-theme .ki-eh-simple-dropdown:focus-within > .ki-eh-sub-menu,
body.ki-theme .ki-eh-simple-dropdown.ki-submenu-open > .ki-eh-sub-menu { display:block !important; }
body.ki-theme .ki-eh-sub-menu a { display:block !important; padding:12px 14px !important; border-radius:10px !important; color:#111827 !important; font-size:14px !important; font-weight:800 !important; text-decoration:none !important; }
body.ki-theme .ki-eh-sub-menu a:hover { background:#f4f6f8 !important; color:var(--ki-accent,#ed1c0c) !important; }

body.ki-theme .ki-about-final .ki-section-light,
body.ki-theme .ki-awards-final .ki-section-light { background:#fff !important; }
body.ki-theme .ki-about-final .ki-section-dark,
body.ki-theme .ki-awards-final .ki-section-dark { background:#101922 !important; }
body.ki-theme .ki-about-card-grid,
body.ki-theme .ki-awards-card-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
body.ki-theme .ki-about-final .ki-cta,
body.ki-theme .ki-awards-final .ki-cta { margin:0 !important; }

@media(max-width:1120px){
  body.ki-theme .ki-elementor-header-inner { grid-template-columns:auto auto !important; }
  body.ki-theme .ki-elementor-nav { justify-self:end !important; }
  body.ki-theme .ki-eh-actions { display:none !important; }
}
@media(max-width:980px){
  body.ki-theme .ki-elementor-header-inner { display:flex !important; min-height:68px !important; padding:10px 0 !important; }
  body.ki-theme .ki-menu-toggle { display:inline-flex !important; margin-left:auto !important; }
  body.ki-theme .ki-elementor-nav { position:absolute !important; top:100% !important; left:0 !important; right:0 !important; background:#fff !important; box-shadow:0 16px 40px rgba(15,23,42,.12) !important; display:none !important; padding:12px 20px 20px !important; }
  body.ki-theme .ki-elementor-nav.is-open { display:block !important; }
  body.ki-theme .ki-eh-menu { display:block !important; }
  body.ki-theme .ki-eh-menu > li > a { justify-content:space-between !important; border-radius:10px !important; }
  body.ki-theme .ki-eh-products { position:relative !important; }
  body.ki-theme .ki-eh-products > .ki-eh-mega { position:static !important; transform:none !important; width:100% !important; max-height:none !important; margin:8px 0 12px !important; border-radius:14px !important; box-shadow:none !important; }
  body.ki-theme .ki-eh-mega-inner.ki-eh-mega-tabbed { grid-template-columns:1fr !important; min-height:0 !important; }
  body.ki-theme .ki-eh-mega-tabs { min-height:0 !important; border-right:0 !important; }
  body.ki-theme .ki-eh-mega-panels { min-height:0 !important; }
  body.ki-theme .ki-eh-mega-panel-section ul { grid-template-columns:1fr !important; }
  body.ki-theme .ki-eh-simple-dropdown > .ki-eh-sub-menu { position:static !important; transform:none !important; box-shadow:none !important; margin:6px 0 12px !important; }
}
@media(max-width:760px){
  body.ki-theme .ki-eh-logo { min-width:0 !important; }
  body.ki-theme .ki-eh-logo strong { font-size:16px !important; }
  body.ki-theme .ki-about-card-grid,
  body.ki-theme .ki-awards-card-grid { grid-template-columns:1fr !important; }
}

/* v3.8.8 About page visibility and depth fix */
body.ki-theme .ki-about-final .ki-simple-hero { padding: 92px 0 86px !important; overflow:hidden !important; }
body.ki-theme .ki-about-final .ki-simple-hero-grid { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(320px,.85fr) !important; gap:64px !important; align-items:center !important; }
body.ki-theme .ki-about-final .ki-simple-hero h1 { max-width:900px !important; font-size:clamp(44px,5vw,76px) !important; line-height:.94 !important; letter-spacing:-.055em !important; }
body.ki-theme .ki-about-final .ki-simple-hero .ki-dark-lead { max-width:760px !important; font-size:18px !important; line-height:1.75 !important; color:rgba(231,238,247,.82) !important; }
body.ki-theme .ki-about-final .ki-simple-hero-image { display:block !important; min-height:340px !important; }
body.ki-theme .ki-about-final .ki-cad-window { display:block !important; min-height:340px !important; opacity:1 !important; visibility:visible !important; }
body.ki-theme .ki-about-final .ki-section-light,
body.ki-theme .ki-about-final .ki-section-dark { padding: 82px 0 !important; margin:0 !important; }
body.ki-theme .ki-about-final .ki-section-head { margin-bottom:34px !important; max-width:860px !important; }
body.ki-theme .ki-about-final .ki-section-head h2 { font-size:clamp(34px,4vw,58px) !important; line-height:1 !important; letter-spacing:-.045em !important; }
body.ki-theme .ki-about-final .ki-section-head p { font-size:17px !important; line-height:1.75 !important; color:#657286 !important; }
body.ki-theme .ki-about-final .ki-section-dark .ki-section-head p,
body.ki-theme .ki-about-final .ki-dark-lead { color:rgba(231,238,247,.78) !important; }
body.ki-theme .ki-about-final .ki-simple-card-grid { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:22px !important; }
body.ki-theme .ki-about-final .ki-about-journey .ki-simple-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
body.ki-theme .ki-about-final .ki-simple-card { min-height:260px !important; padding:28px !important; display:flex !important; flex-direction:column !important; gap:14px !important; background:#fff !important; border:1px solid #e1e7ee !important; box-shadow:0 18px 50px rgba(15,23,42,.08) !important; color:#101922 !important; opacity:1 !important; }
body.ki-theme .ki-about-final .ki-section-dark .ki-simple-card { background:rgba(255,255,255,.055) !important; border-color:rgba(255,255,255,.14) !important; box-shadow:none !important; color:#fff !important; }
body.ki-theme .ki-about-final .ki-simple-card h3 { color:inherit !important; font-size:21px !important; line-height:1.15 !important; margin:0 !important; }
body.ki-theme .ki-about-final .ki-simple-card p { color:#5f6c7c !important; line-height:1.65 !important; margin:0 !important; opacity:1 !important; }
body.ki-theme .ki-about-final .ki-section-dark .ki-simple-card p { color:rgba(235,241,248,.76) !important; }
body.ki-theme .ki-about-final .ki-card-icon { width:38px !important; height:38px !important; border-radius:12px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; background:rgba(237,28,12,.10) !important; color:#ed1c0c !important; font-weight:900 !important; }
body.ki-theme .ki-about-final .ki-section-dark .ki-card-icon { background:rgba(237,28,12,.16) !important; color:#fff !important; }
body.ki-theme .ki-about-final .ki-simple-card:hover { transform:translateY(-6px) !important; border-color:#ed1c0c !important; }
body.ki-theme .ki-about-final .ki-cta { padding:86px 0 !important; text-align:center !important; }
body.ki-theme .ki-about-final .ki-cta .ki-container { max-width:840px !important; }
@media(max-width:1100px){body.ki-theme .ki-about-final .ki-simple-hero-grid{grid-template-columns:1fr!important}body.ki-theme .ki-about-final .ki-simple-card-grid,body.ki-theme .ki-about-final .ki-about-journey .ki-simple-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){body.ki-theme .ki-about-final .ki-simple-card-grid,body.ki-theme .ki-about-final .ki-about-journey .ki-simple-card-grid{grid-template-columns:1fr!important}body.ki-theme .ki-about-final .ki-simple-hero{padding:64px 0!important}body.ki-theme .ki-about-final .ki-section-light,body.ki-theme .ki-about-final .ki-section-dark{padding:58px 0!important}}

/* v3.8.9 Awards page depth + card visibility fix */
body.ki-theme .ki-awards-v389 .ki-section-light,
body.ki-theme .ki-awards-v389 .ki-section-dark{
  padding:82px 0 !important;
  margin:0 !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-hero{
  padding:92px 0 86px !important;
  overflow:hidden !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(320px,.85fr) !important;
  gap:64px !important;
  align-items:center !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-hero h1{
  max-width:920px !important;
  font-size:clamp(44px,5vw,76px) !important;
  line-height:.94 !important;
  letter-spacing:-.055em !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-hero .ki-dark-lead{
  max-width:760px !important;
  font-size:18px !important;
  line-height:1.75 !important;
  color:rgba(231,238,247,.84) !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-hero-image,
body.ki-theme .ki-awards-v389 .ki-cad-window{
  display:block !important;
  min-height:340px !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.ki-theme .ki-awards-v389 .ki-section-head{
  max-width:920px !important;
  margin-bottom:34px !important;
}
body.ki-theme .ki-awards-v389 .ki-section-head h2{
  font-size:clamp(34px,4vw,58px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}
body.ki-theme .ki-awards-v389 .ki-section-head p{
  font-size:17px !important;
  line-height:1.75 !important;
  color:#64748b !important;
}
body.ki-theme .ki-awards-v389 .ki-section-dark .ki-section-head p,
body.ki-theme .ki-awards-v389 .ki-dark-lead{
  color:rgba(226,232,240,.78) !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-card-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-card,
body.ki-theme .ki-awards-v389 .ki-card,
body.ki-theme .ki-awards-v389 .ki-icon-card{
  background:#fff !important;
  border:1px solid rgba(15,23,42,.12) !important;
  color:#0f172a !important;
  box-shadow:0 20px 52px rgba(15,23,42,.08) !important;
  border-radius:0 !important;
  min-height:230px !important;
  padding:28px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-card:hover,
body.ki-theme .ki-awards-v389 .ki-card:hover,
body.ki-theme .ki-awards-v389 .ki-icon-card:hover{
  transform:translateY(-6px) !important;
  border-color:rgba(237,28,12,.42) !important;
  box-shadow:0 28px 70px rgba(15,23,42,.14) !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-card h3,
body.ki-theme .ki-awards-v389 .ki-simple-card h4,
body.ki-theme .ki-awards-v389 .ki-card h3,
body.ki-theme .ki-awards-v389 .ki-icon-card h3{
  color:#0f172a !important;
  font-size:20px !important;
  line-height:1.18 !important;
  margin:0 !important;
}
body.ki-theme .ki-awards-v389 .ki-simple-card p,
body.ki-theme .ki-awards-v389 .ki-card p,
body.ki-theme .ki-awards-v389 .ki-icon-card p{
  color:#4b5563 !important;
  font-size:15px !important;
  line-height:1.65 !important;
  margin:0 !important;
}
body.ki-theme .ki-awards-v389 .ki-section-dark .ki-simple-card,
body.ki-theme .ki-awards-v389 .ki-section-dark .ki-icon-card{
  background:#14202b !important;
  border-color:rgba(255,255,255,.12) !important;
  color:#fff !important;
  box-shadow:none !important;
}
body.ki-theme .ki-awards-v389 .ki-section-dark .ki-simple-card h3,
body.ki-theme .ki-awards-v389 .ki-section-dark .ki-icon-card h3{
  color:#fff !important;
}
body.ki-theme .ki-awards-v389 .ki-section-dark .ki-simple-card p,
body.ki-theme .ki-awards-v389 .ki-section-dark .ki-icon-card p{
  color:rgba(226,232,240,.76) !important;
}
body.ki-theme .ki-awards-v389 .ki-card-icon{
  width:42px !important;
  height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:12px !important;
  background:rgba(237,28,12,.10) !important;
  color:#ed1c0c !important;
  font-size:20px !important;
  font-weight:900 !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-dark-grid,
body.ki-theme .ki-awards-v389 .ki-awards-milestone-grid,
body.ki-theme .ki-awards-v389 .ki-awards-value-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-dark-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-gallery-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-gallery-card{
  background:#14202b !important;
  border:1px solid rgba(255,255,255,.12) !important;
  padding:18px !important;
  min-height:260px !important;
  transition:transform .24s ease,border-color .24s ease !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-gallery-card:hover{
  transform:translateY(-6px) !important;
  border-color:rgba(237,28,12,.55) !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-gallery-box{
  height:180px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02)) !important;
  border:1px dashed rgba(255,255,255,.18) !important;
  margin-bottom:14px !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-gallery-box span{
  color:rgba(226,232,240,.62) !important;
  font-size:12px !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
}
body.ki-theme .ki-awards-v389 .ki-awards-gallery-card strong{
  color:#fff !important;
  display:block !important;
  font-size:16px !important;
}
body.ki-theme .ki-awards-v389 .ki-cta{
  padding:96px 0 !important;
  margin:0 !important;
}
@media(max-width:1100px){
  body.ki-theme .ki-awards-v389 .ki-simple-hero-grid{grid-template-columns:1fr !important;}
  body.ki-theme .ki-awards-v389 .ki-awards-card-grid,
  body.ki-theme .ki-awards-v389 .ki-awards-dark-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:760px){
  body.ki-theme .ki-awards-v389 .ki-section-light,
  body.ki-theme .ki-awards-v389 .ki-section-dark{padding:58px 0 !important;}
  body.ki-theme .ki-awards-v389 .ki-awards-card-grid,
  body.ki-theme .ki-awards-v389 .ki-awards-dark-grid,
  body.ki-theme .ki-awards-v389 .ki-awards-milestone-grid,
  body.ki-theme .ki-awards-v389 .ki-awards-value-grid,
  body.ki-theme .ki-awards-v389 .ki-awards-gallery-grid{grid-template-columns:1fr !important;}
}


/* v3.9.1 authoritative CPT footer spacing fix
   This must live at the end of layouts.css because layouts.css loads after global.css. */
html body.ki-theme .ki-global-footer-slot,
html body.ki-theme .ki-global-footer-slot * {
  box-sizing: border-box !important;
}
html body.ki-theme .ki-global-footer-slot {
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  background:#07111f !important;
  line-height:1.5 !important;
  clear:both !important;
}
html body.ki-theme .ki-global-footer-slot > .elementor,
html body.ki-theme .ki-global-footer-slot > .elementor > .elementor-section-wrap,
html body.ki-theme .ki-global-footer-slot .elementor-section,
html body.ki-theme .ki-global-footer-slot .elementor-container,
html body.ki-theme .ki-global-footer-slot .elementor-column,
html body.ki-theme .ki-global-footer-slot .elementor-widget-wrap,
html body.ki-theme .ki-global-footer-slot .elementor-widget-ki_footer_builder,
html body.ki-theme .ki-global-footer-slot .elementor-widget-ki_footer_builder > .elementor-widget-container,
html body.ki-theme .ki-global-footer-slot .ki-footer-template-section {
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  line-height:normal !important;
}
html body.ki-theme .ki-global-footer-slot .ki-elementor-footer {
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:72px 0 30px !important;
  background:#07111f !important;
  color:#dbe7f5 !important;
  border-top:0 !important;
  line-height:1.55 !important;
  font-size:16px !important;
}
html body.ki-theme .ki-global-footer-slot .ki-elementor-footer .ki-container {
  width:min(1200px, calc(100% - 40px)) !important;
  max-width:1200px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-grid {
  display:grid !important;
  grid-template-columns:minmax(280px,1.45fr) repeat(4,minmax(140px,1fr)) !important;
  gap:54px !important;
  align-items:start !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-brand .ki-brand-mark {
  width:44px !important;
  height:44px !important;
  border-radius:0 !important;
  margin:0 0 14px !important;
  display:inline-grid !important;
  place-items:center !important;
  background:#ed1c0c !important;
  color:#fff !important;
  font-weight:900 !important;
  font-size:20px !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-brand h2 {
  display:block !important;
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:28px !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
  font-weight:850 !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-brand p {
  max-width:340px !important;
  margin:0 0 24px !important;
  color:#d7e2ef !important;
  font-size:16px !important;
  line-height:1.62 !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-brand ul,
html body.ki-theme .ki-global-footer-slot .ki-ef-col ul {
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  gap:10px !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-brand li,
html body.ki-theme .ki-global-footer-slot .ki-ef-col li {
  margin:0 !important;
  padding:0 !important;
  line-height:1.45 !important;
  color:#e7eef8 !important;
  font-size:16px !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-col h3 {
  margin:0 0 18px !important;
  padding:0 !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.1 !important;
  letter-spacing:-.015em !important;
  text-transform:none !important;
  font-weight:850 !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-col a {
  display:inline-flex !important;
  color:#dce7f5 !important;
  font-size:16px !important;
  line-height:1.45 !important;
  text-decoration:none !important;
  transition:color .18s ease, transform .18s ease !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-col a:hover,
html body.ki-theme .ki-global-footer-slot .ki-ef-col a:focus {
  color:#fff !important;
  transform:translateX(3px) !important;
  outline:none !important;
}
html body.ki-theme .ki-global-footer-slot .ki-ef-bottom {
  border-top:1px solid rgba(255,255,255,.14) !important;
  margin-top:54px !important;
  padding-top:24px !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:18px !important;
  color:#9ab0c9 !important;
  font-size:14px !important;
  line-height:1.4 !important;
}
html body.ki-theme .ki-site-main + .ki-global-footer-slot,
html body.ki-theme .ki-global-footer-slot + * {
  margin-top:0 !important;
}
@media(max-width:980px){
  html body.ki-theme .ki-global-footer-slot .ki-elementor-footer{padding:58px 0 26px !important;}
  html body.ki-theme .ki-global-footer-slot .ki-ef-grid{grid-template-columns:1fr 1fr !important;gap:34px !important;}
  html body.ki-theme .ki-global-footer-slot .ki-ef-brand{grid-column:1/-1 !important;}
}
@media(max-width:640px){
  html body.ki-theme .ki-global-footer-slot .ki-elementor-footer{padding:46px 0 24px !important;}
  html body.ki-theme .ki-global-footer-slot .ki-ef-grid{grid-template-columns:1fr !important;gap:30px !important;}
  html body.ki-theme .ki-global-footer-slot .ki-ef-bottom{display:block !important;margin-top:36px !important;}
  html body.ki-theme .ki-global-footer-slot .ki-ef-bottom span{display:block !important;margin-bottom:8px !important;}
}

/* v3.9.2 header menu polish: clean mega tabs, active state, dropdown icons, mobile menu */
body.ki-theme .ki-elementor-header,
body.ki-theme .ki-global-header-slot {
  overflow: visible !important;
}

body.ki-theme .ki-eh-menu > li.current-menu-item > a,
body.ki-theme .ki-eh-menu > li.current-menu-ancestor > a,
body.ki-theme .ki-eh-menu > li.current_page_item > a,
body.ki-theme .ki-eh-menu > li.current_page_ancestor > a {
  background: rgba(237,28,12,.10) !important;
  color: var(--ki-accent,#ed1c0c) !important;
}

body.ki-theme .ki-eh-products > a::after,
body.ki-theme .ki-eh-simple-dropdown > a::after {
  content: "⌄" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 7px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  color: currentColor !important;
  opacity: .75 !important;
  transform: translateY(-1px) !important;
}

body.ki-theme .ki-eh-products:hover > a::after,
body.ki-theme .ki-eh-products:focus-within > a::after,
body.ki-theme .ki-eh-simple-dropdown:hover > a::after,
body.ki-theme .ki-eh-simple-dropdown:focus-within > a::after {
  transform: rotate(180deg) translateY(1px) !important;
}

body.ki-theme .ki-eh-mega-tab::before,
body.ki-theme .ki-eh-mega-tab::after {
  display: none !important;
  content: none !important;
}

body.ki-theme .ki-eh-mega-tab {
  padding: 13px 42px 13px 16px !important;
  min-height: 46px !important;
  border-left: 3px solid transparent !important;
  overflow: visible !important;
  word-break: normal !important;
}

body.ki-theme .ki-eh-mega-tab .ki-mega-tab-label,
body.ki-theme .ki-eh-mega-tab {
  letter-spacing: -.01em !important;
}

body.ki-theme .ki-eh-mega-tab.is-active,
body.ki-theme .ki-eh-mega-tab:hover,
body.ki-theme .ki-eh-mega-tab:focus {
  border-left-color: var(--ki-accent,#ed1c0c) !important;
  padding-left: 16px !important;
}

body.ki-theme .ki-eh-mega-tab.is-active::after,
body.ki-theme .ki-eh-mega-tab:hover::after,
body.ki-theme .ki-eh-mega-tab:focus::after {
  content: "›" !important;
  display: inline-flex !important;
  position: absolute !important;
  right: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: var(--ki-accent,#ed1c0c) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

body.ki-theme .ki-eh-sub-menu li.current-menu-item > a,
body.ki-theme .ki-eh-sub-menu li.current_page_item > a {
  background: rgba(237,28,12,.10) !important;
  color: var(--ki-accent,#ed1c0c) !important;
}

@media (max-width: 980px) {
  body.ki-theme .ki-elementor-header {
    position: relative !important;
  }
  body.ki-theme .ki-menu-toggle {
    display: inline-flex !important;
    width: 44px !important;
    height: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(15,23,42,.14) !important;
    background: #f8fafc !important;
    color: #111827 !important;
    border-radius: 12px !important;
    font-size: 0 !important;
    cursor: pointer !important;
  }
  body.ki-theme .ki-menu-toggle::before {
    content: "☰" !important;
    font-size: 24px !important;
    line-height: 1 !important;
  }
  body.ki-theme .ki-menu-toggle[aria-expanded="true"]::before {
    content: "×" !important;
    font-size: 30px !important;
  }
  body.ki-theme .ki-elementor-nav {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-height: calc(100vh - var(--ki-fixed-header-height, 72px) - var(--ki-adminbar-height, 0px)) !important;
    overflow: auto !important;
    background: #fff !important;
    padding: 12px 18px 18px !important;
    border-top: 1px solid #e5e7eb !important;
    box-shadow: 0 18px 40px rgba(15,23,42,.16) !important;
    display: none !important;
    z-index: 100001 !important;
  }
  body.ki-theme .ki-elementor-nav.is-open {
    display: block !important;
  }
  body.ki-theme .ki-eh-menu > li > a {
    min-height: 46px !important;
    padding: 0 12px !important;
    width: 100% !important;
  }
  body.ki-theme .ki-eh-products > .ki-eh-mega,
  body.ki-theme .ki-eh-simple-dropdown > .ki-eh-sub-menu {
    display: none !important;
  }
  body.ki-theme .ki-eh-products.ki-mega-open > .ki-eh-mega,
  body.ki-theme .ki-eh-simple-dropdown.ki-submenu-open > .ki-eh-sub-menu {
    display: block !important;
  }
  body.ki-theme .ki-eh-mega-tab {
    min-height: 42px !important;
    padding: 11px 36px 11px 14px !important;
  }
  body.ki-theme .ki-eh-mega-panel-section h3 {
    font-size: 19px !important;
  }
}

/* v3.9.3 header menu final fix: icon alignment, clean tabs, mobile toggle */
html body.ki-theme .ki-eh-menu > li > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  white-space: nowrap !important;
}
html body.ki-theme .ki-eh-products > a::after,
html body.ki-theme .ki-eh-simple-dropdown > a::after {
  content: "" !important;
  display: inline-block !important;
  width: 7px !important;
  height: 7px !important;
  border-right: 2px solid currentColor !important;
  border-bottom: 2px solid currentColor !important;
  margin-left: 4px !important;
  opacity: .72 !important;
  transform: rotate(45deg) translateY(-2px) !important;
  transform-origin: center !important;
  flex: 0 0 auto !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  position: relative !important;
  top: -1px !important;
}
html body.ki-theme .ki-eh-products:hover > a::after,
html body.ki-theme .ki-eh-products:focus-within > a::after,
html body.ki-theme .ki-eh-simple-dropdown:hover > a::after,
html body.ki-theme .ki-eh-simple-dropdown:focus-within > a::after {
  transform: rotate(225deg) translateY(-1px) !important;
  top: 2px !important;
}
html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab::before,
html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab {
  padding: 13px 18px !important;
  min-height: 48px !important;
  border-left: 0 !important;
  border-radius: 14px !important;
  justify-content: flex-start !important;
  overflow: visible !important;
}
html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab.is-active,
html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab:hover,
html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab:focus {
  padding-left: 18px !important;
  transform: none !important;
}
html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab.is-active {
  background: #fff !important;
  color: var(--ki-accent,#ed1c0c) !important;
  box-shadow: 0 10px 22px rgba(15,23,42,.09) !important;
}
@media (max-width: 980px) {
  html body.ki-theme .ki-elementor-header .ki-container,
  html body.ki-theme .ki-elementor-header-inner {
    position: relative !important;
  }
  html body.ki-theme .ki-menu-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 100004 !important;
  }
  html body.ki-theme .ki-eh-actions { display: none !important; }
  html body.ki-theme .ki-elementor-nav {
    display: none !important;
    position: absolute !important;
    top: calc(100% + 1px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    background: #fff !important;
    z-index: 100003 !important;
  }
  html body.ki-theme .ki-elementor-nav.is-open,
  html body.ki-theme .ki-elementor-nav.ki-mobile-open {
    display: block !important;
  }
  html body.ki-theme .ki-eh-menu > li > a {
    display: flex !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 0 14px !important;
  }
  html body.ki-theme .ki-eh-products > .ki-eh-mega,
  html body.ki-theme .ki-eh-simple-dropdown > .ki-eh-sub-menu {
    display: none !important;
  }
  html body.ki-theme .ki-eh-products.ki-mega-open > .ki-eh-mega,
  html body.ki-theme .ki-eh-simple-dropdown.ki-submenu-open > .ki-eh-sub-menu {
    display: block !important;
  }
  html body.ki-theme .ki-eh-products > a::after,
  html body.ki-theme .ki-eh-simple-dropdown > a::after {
    margin-left: auto !important;
  }
}

/* v3.9.4 authoritative mobile menu layout fix */
@media (max-width: 980px) {
  html, body.ki-theme {
    overflow-x: hidden !important;
  }
  html body.ki-theme .ki-global-header-slot,
  html body.ki-theme .ki-elementor-header,
  html body.ki-theme .ki-site-header {
    z-index: 100000 !important;
  }
  html body.ki-theme .ki-elementor-header-inner {
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
  }
  html body.ki-theme .ki-eh-logo {
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }
  html body.ki-theme .ki-eh-logo img {
    max-width: 54px !important;
    flex: 0 0 auto !important;
  }
  html body.ki-theme .ki-elementor-nav,
  html body.ki-theme .ki-elementor-nav.ki-mobile-open,
  html body.ki-theme .ki-elementor-nav.is-open {
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  html body.ki-theme .ki-elementor-nav {
    position: fixed !important;
    top: calc(var(--ki-fixed-header-height, 72px) + var(--ki-adminbar-height, 0px)) !important;
    bottom: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    background: #fff !important;
    padding: 16px 16px 28px !important;
    border-top: 1px solid rgba(15,23,42,.10) !important;
    box-shadow: 0 22px 60px rgba(15,23,42,.18) !important;
    z-index: 100002 !important;
  }
  html body.ki-theme .ki-eh-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.ki-theme .ki-eh-menu > li {
    display: block !important;
    width: 100% !important;
    position: relative !important;
  }
  html body.ki-theme .ki-eh-menu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 0 18px !important;
    border-radius: 16px !important;
    background: #f8fafc !important;
    color: #111827 !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }
  html body.ki-theme .ki-eh-menu > li.current-menu-item > a,
  html body.ki-theme .ki-eh-menu > li.current_page_item > a,
  html body.ki-theme .ki-eh-menu > li > a:hover,
  html body.ki-theme .ki-eh-menu > li > a:focus,
  html body.ki-theme .ki-eh-products.ki-mega-open > a,
  html body.ki-theme .ki-eh-simple-dropdown.ki-submenu-open > a {
    color: var(--ki-accent,#ed1c0c) !important;
    background: #f1f5f9 !important;
  }
  html body.ki-theme .ki-eh-products > .ki-eh-mega {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
    margin: 10px 0 6px !important;
    padding: 0 !important;
    border-radius: 18px !important;
    border: 1px solid #e5e7eb !important;
    background: #fff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  html body.ki-theme .ki-eh-products:not(.ki-mega-open) > .ki-eh-mega {
    display: none !important;
  }
  html body.ki-theme .ki-eh-products.ki-mega-open > .ki-eh-mega {
    display: block !important;
  }
  html body.ki-theme .ki-eh-mega-inner.ki-eh-mega-tabbed {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    gap: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  html body.ki-theme .ki-eh-mega-tabs {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 12px !important;
    border: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    background: #f8fafc !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
  html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 46px !important;
    padding: 11px 14px !important;
    margin: 0 !important;
    border-radius: 12px !important;
    color: #172033 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: left !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    transform: none !important;
    white-space: normal !important;
    box-sizing: border-box !important;
  }
  html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab::before,
  html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab::after {
    display: none !important;
    content: none !important;
  }
  html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab.is-active,
  html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab:hover,
  html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab:focus {
    color: var(--ki-accent,#ed1c0c) !important;
    background: #fff !important;
    box-shadow: 0 8px 20px rgba(15,23,42,.07) !important;
  }
  html body.ki-theme .ki-eh-mega-all {
    width: 100% !important;
    margin: 6px 0 0 !important;
    padding: 12px 14px 0 !important;
    border-top: 1px solid #e5e7eb !important;
    color: var(--ki-accent,#ed1c0c) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    box-sizing: border-box !important;
  }
  html body.ki-theme .ki-eh-mega-panels {
    width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 16px 14px 18px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    background: #fff !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section {
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section.is-active {
    display: block !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section h3 {
    margin: 0 0 10px !important;
    font-size: 20px !important;
    line-height: 1.15 !important;
    color: #111827 !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section ul {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section li a {
    min-height: 40px !important;
    padding: 9px 8px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    color: #253044 !important;
    background: transparent !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
  html body.ki-theme .ki-eh-simple-dropdown > .ki-eh-sub-menu {
    position: static !important;
    display: none !important;
    width: 100% !important;
    margin: 8px 0 6px !important;
    padding: 8px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }
  html body.ki-theme .ki-eh-simple-dropdown.ki-submenu-open > .ki-eh-sub-menu {
    display: block !important;
  }
  html body.ki-theme .ki-eh-sub-menu li a {
    display: flex !important;
    width: 100% !important;
    min-height: 42px !important;
    align-items: center !important;
    padding: 0 12px !important;
    border-radius: 10px !important;
    color: #172033 !important;
    text-decoration: none !important;
    font-weight: 800 !important;
    box-sizing: border-box !important;
  }
  html body.ki-theme .ki-eh-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 14px 0 0 !important;
  }
  html body.ki-theme .ki-eh-actions a {
    min-height: 48px !important;
    width: 100% !important;
    justify-content: center !important;
  }
}

/* v3.9.5 FINAL mobile header/menu fix: no header buttons, no overflow, clean accordion */
@media (max-width: 980px) {
  html body.ki-theme,
  html body.ki-theme * {
    box-sizing: border-box;
  }
  html body.ki-theme {
    overflow-x: hidden !important;
  }
  html body.ki-theme.ki-mobile-menu-open,
  html.ki-mobile-menu-open body.ki-theme {
    overflow: hidden !important;
  }

  html body.ki-theme .ki-elementor-header,
  html body.ki-theme .ki-site-header,
  html body.ki-theme .ki-global-header-slot {
    overflow: visible !important;
  }

  html body.ki-theme .ki-elementor-header-inner,
  html body.ki-theme .ki-elementor-header .ki-container {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 48px !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  html body.ki-theme .ki-eh-logo {
    min-width: 0 !important;
    max-width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    overflow: hidden !important;
  }
  html body.ki-theme .ki-eh-logo span:last-child {
    min-width: 0 !important;
    overflow: hidden !important;
  }
  html body.ki-theme .ki-eh-logo strong,
  html body.ki-theme .ki-eh-logo small {
    display: block !important;
    max-width: 100% !important;
  }

  /* Hide all CTA buttons from mobile header and mobile menu as requested */
  html body.ki-theme .ki-eh-actions,
  html body.ki-theme .ki-mobile-action-item,
  html body.ki-theme .ki-mobile-menu-actions {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.ki-theme .ki-menu-toggle {
    display: inline-flex !important;
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    grid-column: 2 !important;
    justify-self: end !important;
    width: 46px !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    z-index: 100006 !important;
  }

  html body.ki-theme .ki-elementor-nav {
    position: fixed !important;
    top: calc(var(--ki-fixed-header-height, 76px) + var(--ki-adminbar-height, 0px)) !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    display: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 18px !important;
    margin: 0 !important;
    background: #fff !important;
    box-shadow: 0 24px 70px rgba(15,23,42,.20) !important;
    z-index: 100004 !important;
    transform: none !important;
    -webkit-overflow-scrolling: touch !important;
  }
  html body.ki-theme .ki-elementor-nav.is-open,
  html body.ki-theme .ki-elementor-nav.ki-mobile-open {
    display: block !important;
  }

  html body.ki-theme .ki-eh-menu,
  html body.ki-theme .ki-eh-menu > li {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  html body.ki-theme .ki-eh-products > .ki-eh-mega,
  html body.ki-theme .ki-eh-products.ki-mega-open > .ki-eh-mega {
    position: relative !important;
    display: block !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 10px 0 8px !important;
    padding: 0 !important;
    transform: none !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 34px rgba(15,23,42,.08) !important;
  }
  html body.ki-theme .ki-eh-products:not(.ki-mega-open) > .ki-eh-mega {
    display: none !important;
  }

  html body.ki-theme .ki-eh-mega-inner,
  html body.ki-theme .ki-eh-mega-inner.ki-eh-mega-tabbed,
  html body.ki-theme .ki-eh-mega-tabs,
  html body.ki-theme .ki-eh-mega-panels,
  html body.ki-theme .ki-eh-mega-panel-section {
    position: static !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
    overflow: visible !important;
  }
  html body.ki-theme .ki-eh-mega-inner.ki-eh-mega-tabbed {
    display: block !important;
  }
  html body.ki-theme .ki-eh-mega-tabs {
    display: flex !important;
    flex-direction: column !important;
    padding: 10px !important;
    gap: 6px !important;
  }
  html body.ki-theme .ki-eh-mega-tabs > .ki-eh-mega-tab {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    text-align: left !important;
  }
  html body.ki-theme .ki-eh-mega-panels {
    padding: 14px !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section:not(.is-active) {
    display: none !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section.is-active {
    display: block !important;
  }
  html body.ki-theme .ki-eh-mega-panel-section li a {
    width: 100% !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

/* v3.9.8 final fix: real sticky header + safe Elementor header/footer template editor canvas */
:root {
  --ki-fixed-header-height: 76px !important;
  --ki-adminbar-height: 0px;
}
body.admin-bar { --ki-adminbar-height: 32px; }
@media (max-width: 782px) {
  body.admin-bar { --ki-adminbar-height: 46px; }
}
@media (max-width: 980px) {
  :root { --ki-fixed-header-height: 68px !important; }
}
html {
  scroll-padding-top: calc(var(--ki-fixed-header-height, 76px) + var(--ki-adminbar-height, 0px) + 18px) !important;
}

html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .ki-global-header-slot,
html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .ki-site-header {
  position: fixed !important;
  top: var(--ki-adminbar-height, 0px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 100000 !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.06) !important;
}

html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .ki-global-header-slot .ki-elementor-header {
  position: relative !important;
  top: auto !important;
  z-index: 1 !important;
}

html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .ki-site-main {
  padding-top: var(--ki-fixed-header-height, 76px) !important;
}

html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .ki-category-nav.ki-js-sticky-active,
html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .pd-nav.ki-js-sticky-active {
  top: calc(var(--ki-fixed-header-height, 76px) + var(--ki-adminbar-height, 0px)) !important;
}

html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .ki-category-nav,
html body.ki-theme:not(.ki-theme-template-canvas):not(.elementor-editor-active) .pd-nav {
  scroll-margin-top: calc(var(--ki-fixed-header-height, 76px) + var(--ki-adminbar-height, 0px) + 20px) !important;
}

/* Keep the Theme Templates editor editable and avoid the_content() detection issues caused by fixed positioning. */
html body.ki-theme-template-canvas,
html body.ki-theme-template-canvas .ki-theme-template-main {
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
}
html body.ki-theme-template-canvas .ki-global-header-slot,
html body.ki-theme-template-canvas .ki-site-header,
html body.ki-theme-template-canvas .ki-elementor-header,
html body.elementor-editor-active .ki-global-header-slot,
html body.elementor-editor-active .ki-site-header,
html body.elementor-editor-active .ki-elementor-header {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  z-index: auto !important;
}
html body.ki-theme-template-canvas .ki-site-main,
html body.elementor-editor-active .ki-site-main {
  padding-top: 0 !important;
}


/* v3.9.9: keep WordPress/Elementor admin-bar dropdowns above the sticky site header */
body.admin-bar #wpadminbar,
body.admin-bar #wpadminbar .ab-sub-wrapper,
body.admin-bar #wpadminbar .menupop .ab-sub-wrapper {
  z-index: 9999999 !important;
}
body.admin-bar.ki-theme .ki-global-header-slot,
body.admin-bar.ki-theme .ki-site-header {
  z-index: 9999 !important;
}


/* v3.10.0: reliable admin-bar Header/Footer shortcuts and Elementor dropdown fallback */
#wpadminbar #wp-admin-bar-ki_theme_templates_admin_bar > .ab-item:before {
  content: "\f489";
  top: 2px;
}
#wpadminbar .ki-adminbar-theme-template-link > .ab-item {
  font-weight: 600 !important;
}
#wpadminbar #wp-admin-bar-elementor_edit_page .ki-adminbar-theme-template-link > .ab-item,
#wpadminbar #wp-admin-bar-ki_theme_templates_admin_bar .ki-adminbar-theme-template-link > .ab-item {
  white-space: nowrap !important;
}


/* v3.10.1: warning-free cards, hover readability, product card cleanup and mobile section helpers */
body.ki-theme .ki-about-final .ki-simple-card:hover,
body.ki-theme .ki-about-final .ki-icon-card:hover,
body.ki-theme .ki-awards-v389 .ki-simple-card:hover,
body.ki-theme .ki-awards-v389 .ki-card:hover,
body.ki-theme .ki-awards-v389 .ki-icon-card:hover {
  background: #111b24 !important;
  color: #ffffff !important;
  border-color: #ed1c0c !important;
  box-shadow: 0 28px 70px rgba(15,23,42,.14) !important;
}
body.ki-theme .ki-about-final .ki-simple-card:hover h3,
body.ki-theme .ki-about-final .ki-simple-card:hover h4,
body.ki-theme .ki-awards-v389 .ki-simple-card:hover h3,
body.ki-theme .ki-awards-v389 .ki-simple-card:hover h4,
body.ki-theme .ki-awards-v389 .ki-card:hover h3,
body.ki-theme .ki-awards-v389 .ki-icon-card:hover h3 {
  color: #ffffff !important;
}
body.ki-theme .ki-about-final .ki-simple-card:hover p,
body.ki-theme .ki-awards-v389 .ki-simple-card:hover p,
body.ki-theme .ki-awards-v389 .ki-card:hover p,
body.ki-theme .ki-awards-v389 .ki-icon-card:hover p {
  color: rgba(255,255,255,.78) !important;
}
body.ki-theme .ki-about-final .ki-simple-card:hover .ki-card-icon,
body.ki-theme .ki-awards-v389 .ki-simple-card:hover .ki-card-icon,
body.ki-theme .ki-awards-v389 .ki-icon-card:hover .ki-card-icon {
  background: rgba(237,28,12,.18) !important;
  border-color: rgba(237,28,12,.55) !important;
  color: #ffffff !important;
}
body.ki-theme .ki-about-final .ki-simple-card:hover .ki-chip-row em,
body.ki-theme .ki-awards-v389 .ki-simple-card:hover .ki-chip-row em,
body.ki-theme .ki-awards-v389 .ki-icon-card:hover .ki-chip-row em {
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.22) !important;
  color: #ffffff !important;
}
body.ki-theme .ki-about-final .ki-simple-card:hover .ki-arrow-link,
body.ki-theme .ki-awards-v389 .ki-simple-card:hover .ki-arrow-link,
body.ki-theme .ki-awards-v389 .ki-icon-card:hover .ki-arrow-link {
  color: #ffffff !important;
}

/* Training student work cards: make hover title readable and clearly changed */
body.ki-theme .ki-training-layout .ki-showcase-card:hover h3,
body.ki-theme .ki-training-layout .ki-showcase-card:hover h4 {
  color: #ffffff !important;
}
body.ki-theme .ki-training-layout .ki-showcase-card:hover .ki-showcase-placeholder span {
  color: #ffffff !important;
  border-color: rgba(255,255,255,.28) !important;
}

/* Product thumbnail image labels: hide overlay title when a real thumbnail image exists */
body.ki-theme .ki-product-visual.has-image .ki-product-visual__label {
  display: none !important;
}
body.ki-theme .ki-product-visual.has-image:before {
  opacity: 0 !important;
}

/* Product card footer: align View Product and + Quote cleanly */
body.ki-theme .ki-product-card__foot {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
}
body.ki-theme .ki-product-card__foot .ki-arrow-link,
body.ki-theme .ki-product-card__foot .ki-quote-link {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
}
body.ki-theme .ki-product-card__foot .ki-quote-link {
  justify-content: flex-end !important;
  text-align: right !important;
}
@media(max-width:520px){
  body.ki-theme .ki-product-card__foot {
    flex-direction: row !important;
    align-items: center !important;
  }
}

/* Simple mobile visibility utility classes for Elementor sections/widgets */
@media(max-width:767px){
  body.ki-theme .ki-hide-mobile,
  body.ki-theme .ki-mobile-hide,
  body.ki-theme .hide-on-mobile {
    display:none!important;
  }
}
@media(min-width:768px) and (max-width:1024px){
  body.ki-theme .ki-hide-tablet,
  body.ki-theme .ki-tablet-hide,
  body.ki-theme .hide-on-tablet {
    display:none!important;
  }
}
@media(min-width:1025px){
  body.ki-theme .ki-hide-desktop,
  body.ki-theme .ki-desktop-hide,
  body.ki-theme .hide-on-desktop {
    display:none!important;
  }
}

/* v3.10.4: mobile section visibility controls are available for Home, Products, Product Detail, Contact, Training, Services, About and Awards widgets. */
