/* KRUEKA | Light Future visual system · 17/10/2026.
   Original implementation inspired by contemporary editorial EdTech + pastel futurist web patterns.
   Self-contained: no CDN, no framework, no tracking, respects reduced motion. */
:root{color-scheme:light;--ink:#152746;--ink-2:#304765;--muted:#61718b;--blue:#2d51db;--royal:#2445cf;--sky:#dff5ff;--ice:#f6f9ff;--orange:#ff9b76;--coral:#ff735d;--soft-purple:#e4dcff;--line:#dfe9f5;--white:#fff;--radius:27px;--shadow:0 22px 65px rgba(49,79,130,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}
body.kx-site{margin:0;background:var(--ice);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
body.kx-site a{color:inherit;text-decoration:none}body.kx-site a:hover{text-decoration:none}body.kx-site button{font:inherit;cursor:pointer}
body.kx-site a:focus-visible,body.kx-site button:focus-visible,body.kx-site input:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.kx-wrap{width:min(1240px,100%);padding-inline:30px;margin-inline:auto}.skip-link{position:absolute;top:-100px;left:12px;z-index:101;padding:9px 15px;background:#13295a;color:white!important;border-radius:9px}.skip-link:focus{top:8px}
/* Navigation: floating, framed and lightweight. */
.nav{position:sticky;top:0;z-index:80;padding:14px 22px 0;background:linear-gradient(180deg,rgba(248,251,255,.96),rgba(248,251,255,.65));backdrop-filter:blur(10px)}
.nav-inner{max-width:1210px;min-height:69px;margin:0 auto;padding:8px 13px 8px 16px;display:flex;align-items:center;gap:25px;justify-content:space-between;border:1px solid rgba(191,205,236,.66);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 9px 36px rgba(75,104,155,.08)}
.brand{display:inline-flex;align-items:center;gap:8px;font-size:24px;font-weight:900;letter-spacing:-.085em;white-space:nowrap;color:#13254b!important}
.brand-logo{display:block;width:47px;height:43px;object-fit:contain;background:#f1f5ff;border:1px solid #e9efff;padding:4px;border-radius:13px}
.brand-period{color:#ff7e6d}.links{display:flex;align-items:center;gap:25px;margin-inline:auto}
.links a{font-size:12px;font-weight:760;color:#4d5d7a!important;white-space:nowrap;transition:color .2s}.links a:hover{color:var(--royal)!important}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:13px 18px;min-height:46px;font-size:13px;font-weight:800;line-height:1.35;text-align:center;border:1px solid transparent;border-radius:12px;transition:transform .2s,background .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn-primary{color:white!important;background:var(--blue);box-shadow:0 8px 20px #3153dd36}.btn-primary:hover{background:#193dca;box-shadow:0 11px 26px #3153dd3a}
.btn-white{color:#233c6c!important;background:white;border-color:#dde8fa;box-shadow:0 9px 30px #4669b01c}.btn-white:hover{background:#f7fbff}
.btn-xl{min-height:55px;padding:14px 21px;font-size:13px}
.btn-dark{color:#fff!important;background:#1b2750}.btn-dark:hover{background:#0e1937}
.btn-outline-dark{color:#202b51!important;border-color:#3f4c7880;background:transparent}
.btn-outline-dark:hover{background:#ffffff44}
.menu-button{display:none;border:0;background:#edf2ff;border-radius:10px;width:44px;height:43px;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.menu-button span{display:block;width:19px;height:2px;border-radius:10px;background:#243d78}
/* Type */
.kx-eyebrow,.kx-overline{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-weight:850;letter-spacing:.15em;font-size:10px;text-transform:uppercase}
.kx-spark{display:inline-grid;place-items:center;font-size:15px;color:var(--blue);background:#dbe9ff;width:31px;height:31px;border-radius:10px}
.kx-section{padding:112px 0}
.kx-section-heading{margin-bottom:44px}
.kx-section h2,.kx-cta-inner h2{font-size:clamp(38px,4.7vw,64px);letter-spacing:-.071em;line-height:1.09;font-weight:870;margin:18px 0;color:var(--ink)}
.kx-section h2 em,.kx-cta-inner h2 em{font-style:normal;color:var(--blue)}
.kx-section h2 em::after{content:"";display:block;background:var(--orange);height:5px;border-radius:4px;width:102px;margin-top:16px;transform:rotate(-2deg)}
.kx-section p{color:var(--muted)}
.kx-heading-split{display:grid;grid-template-columns:1.05fr .65fr;gap:55px;align-items:end}
.kx-heading-split p{font-size:16px;line-height:1.9;max-width:415px}
.kx-heading-center{text-align:center;max-width:790px;margin:0 auto 43px}
.kx-heading-center p{font-size:16px;line-height:1.8}
.kx-heading-center h2 em::after{margin-left:auto;margin-right:auto}
/* Hero */
.kx-hero{position:relative;isolation:isolate;overflow:hidden;padding:96px 0 45px;min-height:715px;background:linear-gradient(137deg,#f9fbff 3%,#f1f8ff 52%,#fdf9f7 100%)}
.kx-hero::before{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(#96b8f160 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(90deg,transparent 30%,#000 100%);opacity:.48}
.kx-blur{position:absolute;border-radius:50%;z-index:-2;pointer-events:none;filter:blur(18px)}
.kx-blur-a{width:600px;height:570px;top:-180px;right:-160px;background:radial-gradient(circle,#b5d6ffad,transparent 71%)}
.kx-blur-b{width:460px;height:360px;right:12%;bottom:-140px;background:radial-gradient(circle,#ffc9b599,transparent 75%)}
.kx-hero-grid{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:20px;align-items:center}
.kx-hero-text{position:relative;z-index:3;padding:4px 0 30px}
.kx-hero-text h1{font-size:clamp(52px,5.7vw,85px);letter-spacing:-.082em;line-height:1.03;margin:23px 0 26px;font-weight:900;max-width:660px}
.kx-headline-accent{color:var(--blue)}
.kx-hero-text h1 .kx-headline-accent:last-child{position:relative}
.kx-hero-text h1 .kx-headline-accent:last-child::after{content:"";position:absolute;left:0;right:15%;height:9px;border-radius:50%;bottom:-7px;transform:rotate(-2deg);background:#ffae88;z-index:-1}
.kx-hero-text>p{font-size:17px;max-width:495px;line-height:1.85;color:#5d6e87;margin-bottom:29px}
.kx-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.kx-hero-facts{display:flex;gap:17px;flex-wrap:wrap;margin-top:36px;color:#58698a;font-size:11px;font-weight:750}
.kx-hero-facts b{color:var(--coral);font-size:14px;margin-right:4px}
.kx-hero-visual{position:relative;min-width:0;min-height:515px;display:grid;place-items:center}
.kx-visual-dash{position:absolute;inset:25px 8px 18px 20px;background:radial-gradient(circle at 51% 47%,#fdfefe 14%,#dcefff 62%,#dcdcf9 99%);border:1px solid #d4e6f8;border-radius:50% 47% 45% 52%/49% 46% 54% 47%;box-shadow:inset 0 0 90px #ffffff9e,0 25px 80px #648cc01d}
.kx-visual-grid{position:absolute;inset:12%;background-image:linear-gradient(#7194d520 1px,transparent 1px),linear-gradient(90deg,#7194d520 1px,transparent 1px);background-size:37px 37px;border-radius:50%;mask-image:radial-gradient(circle,#000 19%,transparent 70%)}
.kx-visual-orbit{position:absolute;width:96%;height:67%;border:1px solid #759edf86;border-radius:50%;top:17%;left:2%;transform:rotate(-23deg)}
.kx-visual-orbit.two{width:74%;height:92%;left:14%;top:4%;transform:rotate(26deg);border-style:dashed;border-color:#80aaf576}
.kx-world-img{position:absolute;z-index:2;width:106%;height:auto;top:-9%;left:-3%;object-fit:contain;filter:drop-shadow(0 15px 25px #4c83ac25)}
.kx-floatcard{position:absolute;z-index:4;display:flex;gap:10px;align-items:center;padding:13px 15px;border:1px solid #ffffffd9;background:#ffffffed;border-radius:17px;box-shadow:0 18px 45px #3c68a42a}
.kx-floatcard b{display:block;color:#25365c;font-size:12px;line-height:1.3}.kx-floatcard small{display:block;color:#8491ac;font-size:10px;margin-top:4px}
.kx-floatcard-top{top:51px;right:-8px;transform:rotate(4deg)}.kx-floatcard-left{bottom:94px;left:-30px;transform:rotate(-4deg)}
.kx-floating-icon,.kx-floating-check{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e2e7ff;color:#536be0;font-size:25px}
.kx-floating-check{background:#ddf9ec;color:#12a879;font-size:22px}
.kx-color-orb{position:absolute;z-index:3;width:75px;height:75px;right:0;bottom:45px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(155deg,#ffdfb5,#fc926c);font-size:40px;color:#fff;transform:rotate(17deg);box-shadow:0 16px 30px #ff9d7244}
.kx-hero-visual-note{position:absolute;bottom:0;left:10px;right:10px;text-align:center;font-size:10px;color:#657797;z-index:5}
.kx-hero-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:27px;gap:15px;color:#8899b4;font-size:10px;font-weight:850;letter-spacing:.16em}
.kx-scroll-hint{display:flex;align-items:center;gap:10px}.kx-scroll-hint>span{display:grid;place-items:center;width:29px;height:29px;border:1px solid #c7d8f1;border-radius:50%;font-size:14px;color:var(--blue)}
/* Dynamic ticker */
.kx-ribbon{overflow:hidden;background:#253fbd;color:#fff;padding:17px 0}
.kx-ribbon-inner{min-width:max-content;display:flex;align-items:center;justify-content:center;gap:39px;font-size:11px;letter-spacing:.17em;font-weight:850;transform:translateX(-2%)}
.kx-ribbon i{color:#ffc597;font-size:23px;font-style:normal}
/* Feature cards */
.kx-product-section{background:#fff}
.kx-feature-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-rows:repeat(2,minmax(275px,auto));gap:20px}
.kx-feature{position:relative;overflow:hidden;min-width:0;border-radius:32px;border:1px solid #dce9f7;padding:32px 35px;display:flex;flex-direction:column;justify-content:space-between}
.kx-feature-main{grid-row:span 2;min-height:615px;background:linear-gradient(148deg,#f0faff 0%,#d9edff 65%,#d2e5ff 100%);padding:42px 42px 0}
.kx-feature-blue{background:linear-gradient(145deg,#e9e9ff,#e2ecff)}
.kx-feature-orange{background:linear-gradient(140deg,#fff1e9,#ffe7da)}
.kx-feature-label{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:900;letter-spacing:.12em;color:#3c65b3}
.kx-chipdot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#fe9979;box-shadow:0 0 0 4px #ffab942d}
.kx-feature h3{font-size:clamp(24px,2.8vw,39px);font-weight:850;line-height:1.17;letter-spacing:-.056em;margin:19px 0 13px}
.kx-feature p{font-size:14px;line-height:1.79;max-width:540px;color:#506a88;margin:0 0 15px}
.kx-text-link{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:850;color:var(--blue)!important;padding:6px 0}
.kx-text-link:hover{text-decoration:underline!important;text-underline-offset:4px}
.kx-feature-pills{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}
.kx-feature-pills span{font-size:11px;display:flex;align-items:center;gap:17px;padding:9px 12px;border:1px solid #c6cff4;background:#ffffff80;border-radius:10px;font-weight:800;color:#394d7e}
.kx-feature-pills b{color:#617bdf}
.kx-mini-files{display:flex;gap:13px;margin-top:20px}
.kx-mini-files>span{width:66px;height:66px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;box-shadow:0 9px 17px #0000000e;border-radius:17px;background:#fff;font-weight:900;font-size:23px;transform:rotate(-7deg)}
.kx-mini-files>span:nth-child(2){transform:rotate(5deg)}.kx-mini-files>span:nth-child(3){transform:rotate(-3deg)}
.kx-mini-files small{font-size:9px;font-weight:850;letter-spacing:.07em}.f-word{color:#467ce6}.f-excel{color:#30a28a}.f-ppt{color:#f58e68}
.kx-art-browser{position:relative;width:100%;height:250px;margin-top:15px;background:#fff;border:1px solid #b9d3ee;border-radius:17px 17px 0 0;box-shadow:0 22px 42px #346ca327;transform:rotate(-2.5deg) translateY(10px);overflow:hidden}
.kx-art-toolbar{display:flex;align-items:center;gap:12px;background:#f9fdff;border-bottom:1px solid #e6eef9;padding:9px 12px;font-size:9px;color:#7c8ca7}
.kx-art-toolbar span{display:flex;gap:4px}.kx-art-toolbar i{display:block;width:7px;height:7px;border-radius:50%;background:#fd9581}.kx-art-toolbar i:nth-child(2){background:#ffcf7c}.kx-art-toolbar i:nth-child(3){background:#75d4b0}
.kx-art-toolbar b{font-size:10px;color:#647da8}.kx-art-toolbar small{margin-left:auto;color:#466cd2}
.kx-art-body{display:grid;grid-template-columns:42px 1fr;height:calc(100% - 37px)}
.kx-art-side{display:flex;flex-direction:column;align-items:center;gap:9px;background:#f0f5fd;padding:11px 3px;color:#8da1c9}
.kx-art-side span{font-size:14px;display:grid;place-items:center;width:29px;height:28px;border-radius:7px}.kx-art-side span.active{background:#dfebff;color:#385fe2}
.kx-art-stage{position:relative;background:linear-gradient(#d2eaff 30%,#f6e9ef 80%);overflow:hidden}
.kx-art-cloud{position:absolute;left:16%;top:24%;height:24px;width:69px;border-radius:29px;background:#fff9;box-shadow:15px -8px 0 3px #fffd}
.kx-art-cloud.b{left:69%;top:14%;transform:scale(.65)}
.kx-art-ground{position:absolute;bottom:-24%;left:4%;width:96%;height:67%;transform:rotate(-10deg);border-radius:40% 50% 0 0;background:linear-gradient(145deg,#9cded9,#5a8fdb)}
.kx-art-block{position:absolute;z-index:1;bottom:35%;left:18%;width:52px;height:42px;border-radius:9px;background:#ffb894;box-shadow:8px 10px 0 #e68078}
.kx-art-block.b{left:69%;bottom:47%;background:#a99ef8;box-shadow:9px 9px 0 #7374d2}
.kx-art-hero{display:grid;place-items:center;position:absolute;z-index:2;bottom:33%;left:45%;width:58px;height:65px;border-radius:23px 23px 15px 15px;background:linear-gradient(#ffc49d,#ff896f);box-shadow:inset -10px -5px #e87768,0 15px 14px #5b609950;color:#fff;font-size:27px}
.kx-art-play{position:absolute;z-index:3;bottom:12px;right:11px;padding:8px 13px;border-radius:9px;background:#fff;font-weight:850;font-size:10px;color:#3157bc;box-shadow:0 5px 14px #4878af3d}
/* Creative split with tactile art */
.kx-creative-section{background:#fbfcff}
.kx-creative-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:76px;align-items:center}
.kx-creative-illustration{position:relative;min-height:540px;border-radius:48% 55% 40% 50%;background:radial-gradient(circle at 40% 33%,#e4f6ff 10%,#dfdeff 65%,#e8e2ff 90%);display:grid;place-items:center;isolation:isolate}
.kx-ring{position:absolute;width:90%;height:68%;border:2px solid #95b8ec74;border-radius:50%;transform:rotate(-31deg);z-index:-1}
.kx-creative-canvas{position:relative;width:74%;max-width:390px;min-height:363px;border-radius:29px;padding:27px;background:#fffffff0;box-shadow:0 30px 65px #5684b43d;border:1px solid #fff;transform:rotate(-5deg)}
.kx-mini-label{font-size:10px;color:#4369c0;letter-spacing:.12em;font-weight:900}.kx-creative-canvas-top{display:flex;align-items:center;gap:9px;margin:15px 0 22px}
.kx-creative-canvas-top span{width:39px;height:39px;display:grid;place-items:center;background:#ebedff;color:#7166e0;border-radius:12px;font-size:22px}
.kx-creative-canvas-top b{font-size:15px;line-height:1.24}
.kx-creative-scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.kx-scene{min-height:119px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;border-radius:13px;font-size:37px;font-weight:800}
.kx-scene small{font-size:9px;font-weight:850}.kx-scene.is-blue{background:#dceeff;color:#355ad5}.kx-scene.is-purple{background:#e7dfff;color:#6957c7}.kx-scene.is-orange{background:#ffe7d6;color:#e57754}
.kx-creative-progress{margin-top:22px;font-size:10px;font-weight:750;color:#697b98}
.kx-progress-track{display:block;width:100%;height:7px;border-radius:9px;background:#ecf0fa;margin-top:8px}.kx-progress-track i{display:block;width:73%;height:100%;background:linear-gradient(90deg,#8bc8fc,#5a6bea);border-radius:9px}
.kx-creative-star{position:absolute;z-index:2;top:10%;right:6%;font-size:85px;color:#ffaf83;transform:rotate(-14deg);text-shadow:0 17px 25px #f8b08777}
.kx-creative-pill{position:absolute;z-index:2;left:0;bottom:9%;background:#fff;border:1px solid #d8def4;border-radius:15px;padding:13px 15px;font-size:11px;font-weight:850;color:#485e8c;box-shadow:0 15px 28px #6784bb31;transform:rotate(5deg)}
.kx-creative-copy h2{max-width:550px}.kx-creative-copy>p{font-size:16px;line-height:1.85;max-width:525px}
.kx-creative-points{display:grid;gap:12px;margin:26px 0}
.kx-creative-points>div{display:flex;align-items:center;gap:15px;padding-bottom:12px;border-bottom:1px solid #e2e9f5}
.kx-creative-points span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #d0e3fb;border-radius:13px;color:#456add;font-size:12px;font-weight:900}
.kx-creative-points p{margin:0;font-size:14px;color:#607391}.kx-creative-points b{color:#1c3154}
/* IA */
.kx-ai-section{background:#eef5ff}
.kx-ai-wrap{position:relative}
.kx-ai-intro{display:grid;grid-template-columns:1fr .75fr;gap:55px;align-items:end}
.kx-ai-intro h2{max-width:660px}.kx-ai-intro>p{line-height:1.87;font-size:16px;max-width:440px}
.kx-ai-content{display:grid;grid-template-columns:1.04fr .96fr;gap:30px;margin-top:38px}
.kx-ai-demo{background:#fff;border:1px solid #d9e7fb;border-radius:28px;padding:27px 30px;box-shadow:var(--shadow)}
.kx-ai-demo-top{display:flex;align-items:center;gap:9px;padding-bottom:17px;border-bottom:1px solid #e5edfa}
.kx-demo-mark{background:#dce9ff;color:#4660dc;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;font-size:23px}
.kx-ai-demo-top strong{font-size:13px}.kx-ai-demo-status{font-size:9px;color:#667cb0;margin-left:auto;letter-spacing:.12em;font-weight:900}
.kx-chat-bubble{padding:13px 18px;border-radius:18px;margin:21px 0;max-width:92%}
.kx-chat-bubble span{font-size:10px;font-weight:900;letter-spacing:.05em}
.kx-chat-bubble p{font-size:14px;line-height:1.65;color:inherit;margin:4px 0}
.kx-chat-user{background:#eaf0ff;margin-left:auto;color:#334f98;border-bottom-right-radius:3px}
.kx-chat-guide{background:#e5f9f8;color:#245c67;border-bottom-left-radius:3px}
.kx-ai-steps{display:flex;justify-content:center;align-items:center;gap:14px;background:#f6f9ff;border-radius:12px;padding:12px;font-size:11px;color:#4162c3;font-weight:850}
.kx-ai-steps i{font-style:normal;color:#9bb0d9}
.kx-ai-demo>small{font-size:10px;color:#8294b0;display:block;margin-top:14px}
.kx-ai-features{display:flex;flex-direction:column;gap:16px}
.kx-ai-feature{display:flex;gap:16px;align-items:flex-start;padding:15px 5px;border-bottom:1px solid #cbdcf0}
.kx-ai-feature h3{font-size:18px;letter-spacing:-.035em;margin:0 0 7px}
.kx-ai-feature p{font-size:13px;line-height:1.7;margin:0}
.kx-ai-icon{flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#dfedff;color:#4269df;font-size:24px}
.kx-ai-icon.two{color:#dc8249;background:#ffead8}.kx-ai-icon.three{color:#8062d6;background:#e9e1ff}
/* Roles */
.kx-people-section{background:#fff}
.kx-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.kx-person{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:355px;border-radius:29px;border:1px solid #dfeafb;padding:32px;overflow:hidden;transition:transform .25s,box-shadow .25s}
.kx-person:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.kx-person-student{background:#e3f4ff}.kx-person-teacher{background:#f1eafe}.kx-person-director{background:#fff0e7}
.kx-person-num{font-size:10px;letter-spacing:.15em;color:#5f78a2;font-weight:900}
.kx-person-emoji{position:absolute;top:53px;right:29px;width:67px;height:67px;border-radius:22px;background:#ffffffb5;display:grid;place-items:center;color:#3d6bdd;font-size:42px;transform:rotate(10deg)}
.kx-person h3{font-size:clamp(22px,2.6vw,33px);line-height:1.2;letter-spacing:-.045em;margin:73px 0 10px}
.kx-person p{font-size:13px;color:#60708e;max-width:300px;margin:0 0 20px}
.kx-person-link{display:flex;justify-content:space-between;align-items:center;width:100%;gap:12px;color:#3056be;font-weight:850;font-size:13px;margin-top:auto}
.kx-person-link b{display:grid;place-items:center;width:35px;height:35px;border:1px solid #aec6ea;border-radius:50%;font-size:15px}
/* Method */
.kx-method-section{background:#fafaff}
.kx-method-inner{display:grid;grid-template-columns:.87fr 1.13fr;gap:90px;align-items:start}
.kx-method-list{border-top:1px solid #dae6f4}
.kx-method-list>div{display:flex;gap:21px;border-bottom:1px solid #dae6f4;padding:18px 0}
.kx-method-list span{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #cbdffa;background:#f2f8ff;border-radius:13px;color:#3a62cd;font-size:11px;font-weight:900}
.kx-method-list p{margin:0;display:grid;gap:2px}.kx-method-list b{font-size:17px;color:#1c2e53}.kx-method-list small{font-size:13px;color:#637590;line-height:1.6}
/* CTA */
.kx-cta-section{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#dcefff 0%,#e7e9ff 57%,#ffe7db 100%);padding:85px 0}
.kx-cta-inner{display:grid;grid-template-columns:1fr .55fr;gap:25px;align-items:center}
.kx-cta-inner h2{margin:20px 0}.kx-cta-inner p{font-size:15px;color:#4f6786;max-width:570px;line-height:1.8;margin:0 0 28px}
.kx-cta-art{display:grid;place-items:center;position:relative;min-height:300px}
.kx-cta-ring{position:absolute;border:22px solid #6b9aea;border-radius:50%;width:240px;height:240px;box-shadow:0 15px 0 #4667b7;transform:rotate(-25deg) skew(6deg,5deg)}
.kx-cta-art>span{position:absolute;z-index:2;font-size:170px;line-height:1;color:#ff9c75;text-shadow:0 18px 0 #df7770;transform:rotate(-17deg)}
.kx-cta-art>i{position:absolute;width:90px;height:90px;border-radius:50%;background:#fff8;right:3%;top:8%}
/* Footer */
.kx-footer{background:#fff;padding:65px 0 28px}
.kx-footer-top{display:grid;grid-template-columns:1.6fr repeat(3,.8fr);gap:35px}
.kx-footer-brand p{max-width:290px;font-size:12px;line-height:1.85;color:#74839c;margin-top:21px}
.kx-footer h3{margin:5px 0 20px;color:#35486b;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.kx-footer-top>div:not(:first-child) a{display:block;color:#687994;font-size:12px;margin:0 0 11px}
.kx-footer-top>div:not(:first-child) a:hover{color:var(--blue)}
.kx-footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;margin-top:44px;padding-top:24px;border-top:1px solid #e3eafa;color:#7b8ba6;font-size:11px}
/* Secondary public pages keep a shared visual identity. */
.kx-access-hero{padding:76px 0 38px;background:linear-gradient(125deg,#f8fcff,#eaf2ff 70%,#fff4eb)}
.kx-access-hero h1{font-size:clamp(40px,5.3vw,71px);letter-spacing:-.075em;line-height:1.12;margin:15px 0;color:var(--ink)}
.kx-access-hero .kx-section-lead{max-width:730px;font-size:16px;line-height:1.8;color:var(--muted)}
.kx-access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:40px 0}
.kx-access-card{display:flex;flex-direction:column;align-items:flex-start;min-height:360px;border:1px solid #dae5f6;border-radius:27px;background:#fff;padding:28px;box-shadow:0 12px 35px #4977c10a}
.kx-access-card:nth-child(2){background:#ecf8ff}.kx-access-card:nth-child(3){background:#f4efff}
.kx-role-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#e5eeff;color:#4364d7;font-size:25px}
.kx-access-card h2{font-size:25px;letter-spacing:-.045em;line-height:1.16;margin:18px 0 10px}
.kx-access-card p{color:var(--muted);line-height:1.7;font-size:13px}
.kx-access-card .kx-access-note{font-size:11px;color:#778ca9;margin-top:5px}
.kx-access-card .btn,.kx-access-card .kx-actions{margin-top:auto}
.kx-access-card .kx-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.kx-access-wide{background:linear-gradient(125deg,#e9f6ff,#f6f0ff);border:1px solid #dceafb;border-radius:29px;padding:37px;margin-bottom:22px}
.kx-access-wide h2{font-size:clamp(28px,3.3vw,41px);letter-spacing:-.06em;margin:14px 0;color:var(--ink)}
.kx-access-wide p{color:var(--muted);font-size:14px;line-height:1.8;max-width:815px}
.kx-deliveries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:23px 0 15px}
.kx-delivery{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid #d5e7fb;border-radius:15px;padding:17px;transition:transform .2s,box-shadow .2s}
.kx-delivery:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.kx-delivery b{display:block;font-size:16px;color:#24436a}.kx-delivery small{display:block;color:#7c8ba3;font-size:11px}
.kx-access-help{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:25px 0 80px}
.kx-access-help article{border-top:1px solid #d9e7f5;padding:20px 6px}
.kx-access-help h3{font-size:19px;margin:11px 0}.kx-access-help p{font-size:13px;color:var(--muted);line-height:1.8}
/* Info and SIWC pages (original content preserved). */
.kx-info-page .public-main{max-width:930px;margin:auto;padding:80px 25px 95px}
.kx-info-page .public-intro{margin-bottom:38px}
.kx-info-page .public-intro h1{font-size:clamp(39px,4.8vw,60px);letter-spacing:-.065em;line-height:1.14;margin:18px 0}
.kx-info-page .public-intro>p{max-width:770px;font-size:15px;color:var(--muted);line-height:1.8}
.kx-info-page .eyebrow{font-size:11px;font-weight:850;color:var(--blue);letter-spacing:.13em;text-transform:uppercase}
.kx-info-page .public-card{margin:17px 0;padding:30px;border-radius:22px;border:1px solid #dae6f5;background:#fff;box-shadow:0 9px 25px #386aaa08}
.kx-info-page .public-card h2{font-size:23px;letter-spacing:-.045em;margin:0 0 16px}
.kx-info-page .public-card h3{font-size:17px;color:#294473;margin:21px 0 8px}
.kx-info-page .public-card p,.kx-info-page .public-card li{color:#5c718e;font-size:14px;line-height:1.8}
.kx-info-page .public-card a{color:var(--royal)!important;text-decoration:underline!important;text-underline-offset:3px}
.kx-info-page .public-card ul{padding-left:23px}
.kx-info-page .public-card li+li{margin-top:8px}
.kx-info-page .public-card .card-label{color:#5470cb;letter-spacing:.12em;font-size:10px;font-weight:900;text-transform:uppercase}
.kx-info-page .public-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.kx-info-page .public-grid .public-card{margin:0}
.kx-info-page .public-grid .public-wide{grid-column:1/-1}
.kx-info-page .status-note{padding:18px 20px;border-radius:14px;border:1px solid #c6daf7;background:#f0f6ff;color:#40568b}
.kx-info-page .status-note strong{display:block}.kx-info-page .status-note p{margin-bottom:0}
.kx-info-page .hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:15px}.kx-info-page .text-link{color:var(--blue)!important;font-size:13px;font-weight:800}
.kx-info-page .updated{font-size:12px!important}
@media(max-width:1060px){
 .links{gap:15px}.kx-hero-text h1{font-size:clamp(47px,5.2vw,68px)}.kx-hero-grid{gap:6px}.kx-hero-visual{min-height:450px}
 .kx-floatcard-top{right:5px}.kx-floatcard-left{left:0}.kx-creative-grid{gap:35px}
}
@media(max-width:810px){
 .kx-wrap{padding-inline:20px}
 .nav{padding:9px 12px 0}.nav-inner{min-height:61px;border-radius:15px;padding:8px 10px}
 .menu-button{display:flex;order:3}.nav .btn-nav{order:2;margin-left:auto;padding:10px 13px;min-height:41px;font-size:11px}.nav .brand{order:1}
 .nav .links{display:none;position:absolute;top:76px;left:12px;right:12px;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:10px 17px;background:#fff;border:1px solid #d3e0f5;border-radius:15px;box-shadow:0 18px 28px #2a4c8735}
 .nav .links.open{display:flex}.nav .links a{padding:12px 5px;border-bottom:1px solid #e4ebf8}
 .kx-hero{padding:62px 0 30px}.kx-hero-grid{grid-template-columns:1fr}.kx-hero-text{max-width:680px}.kx-hero-visual{width:min(640px,100%);margin:0 auto;min-height:510px}
 .kx-hero-text h1{font-size:clamp(50px,8vw,75px)}
 .kx-feature-grid{grid-template-columns:1fr;grid-template-rows:auto}.kx-feature-main{grid-row:auto;min-height:625px}
 .kx-creative-grid{grid-template-columns:1fr;gap:35px}.kx-creative-illustration{max-width:560px;width:100%;margin:auto;min-height:475px}
 .kx-ai-intro,.kx-ai-content{grid-template-columns:1fr;gap:19px}.kx-ai-intro>p{max-width:740px}
 .kx-people-grid{grid-template-columns:1fr 1fr}.kx-method-inner{grid-template-columns:1fr;gap:20px}
 .kx-footer-top{grid-template-columns:1.3fr 1fr 1fr}.kx-footer-top>div:last-child{grid-column:2/-1}
 .kx-access-grid{grid-template-columns:1fr 1fr}.kx-access-card:last-child{grid-column:1/-1;min-height:280px}
}
@media(max-width:560px){
 .brand{font-size:21px}.brand-logo{width:38px;height:37px}.nav{padding:8px 10px 0}.nav-inner{gap:7px}
 .nav .btn-nav{font-size:10px;min-height:39px;padding:9px 10px}.menu-button{width:40px;height:39px}
 .kx-hero{padding:49px 0 28px}.kx-hero-text h1{font-size:clamp(48px,11.7vw,65px);letter-spacing:-.075em}
 .kx-hero-text>p{font-size:15px}.kx-actions .btn{width:100%}.kx-hero-facts{gap:10px;font-size:10px}
 .kx-hero-visual{min-height:345px}.kx-visual-dash{inset:20px 1px 15px}.kx-world-img{top:-3%}
 .kx-floatcard{padding:9px 10px;border-radius:11px}.kx-floatcard b{font-size:9px}.kx-floatcard small{font-size:8px}
 .kx-floating-icon,.kx-floating-check{width:28px;height:28px;font-size:17px}.kx-floatcard-top{top:24px;right:0}.kx-floatcard-left{left:0;bottom:47px}
 .kx-color-orb{width:49px;height:49px;font-size:25px;border-radius:16px;right:2%;bottom:21px}.kx-hero-visual-note{bottom:-6px;font-size:8px}
 .kx-hero-bottom{font-size:9px;gap:15px}.kx-hero-bottom>span:last-child{display:none}
 .kx-section{padding:72px 0}.kx-section h2{font-size:clamp(36px,8.5vw,49px)}.kx-heading-split{grid-template-columns:1fr;gap:8px}.kx-heading-split p{font-size:14px}
 .kx-feature,.kx-feature-main{padding:24px;border-radius:23px}.kx-feature-main{padding-bottom:0;min-height:525px}
 .kx-feature h3{font-size:30px}.kx-art-browser{height:220px}
 .kx-creative-illustration{min-height:370px}.kx-creative-canvas{width:79%;min-height:300px;padding:19px;border-radius:19px}
 .kx-creative-scenes{gap:6px}.kx-scene{min-height:93px;font-size:29px}.kx-scene small{font-size:8px}
 .kx-creative-star{font-size:65px;right:0}.kx-creative-pill{font-size:9px;bottom:1%;left:1%}
 .kx-ai-demo{padding:20px 17px;border-radius:22px}.kx-chat-bubble{max-width:98%}
 .kx-people-grid{grid-template-columns:1fr}.kx-person{min-height:310px;padding:27px}.kx-person h3{margin-top:65px}
 .kx-method-list>div{gap:14px}.kx-cta-section{padding:69px 0}.kx-cta-inner{grid-template-columns:1fr}.kx-cta-art{min-height:240px}
 .kx-footer{padding:53px 0 23px}.kx-footer-top{grid-template-columns:1fr 1fr;gap:23px}.kx-footer-top>div:first-child{grid-column:1/-1}.kx-footer-top>div:last-child{grid-column:auto}
 .kx-access-hero{padding:49px 0 18px}.kx-access-grid,.kx-deliveries,.kx-access-help{grid-template-columns:1fr}.kx-access-card{min-height:0}.kx-access-card:last-child{grid-column:auto}
 .kx-access-wide{padding:22px}.kx-info-page .public-main{padding:47px 17px}.kx-info-page .public-grid{grid-template-columns:1fr}.kx-info-page .public-grid .public-wide{grid-column:auto}.kx-info-page .public-card{padding:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.kx-person,.kx-delivery,.links a{transition:none!important}.btn:hover,.kx-person:hover,.kx-delivery:hover{transform:none!important}}

/* Compatibility helpers for the existing access and explanatory pages. */
.kx-kicker{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.kx-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px #ffaf9c3b}
.kx-gradient-text{background:linear-gradient(90deg,#3764df,#5377e7 65%,#e87f79);background-clip:text;-webkit-background-clip:text;color:transparent}
.kx-section-lead{font-size:16px;line-height:1.8;color:var(--muted)}
.kx-btn-text{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:850;color:var(--blue)!important;padding:8px 0}
.kx-btn-text:hover{text-decoration:underline!important;text-underline-offset:4px}
.btn-ghost{color:var(--blue)!important;border:1px solid #d7e4f5;background:#fff;box-shadow:0 7px 20px #4162a412}
.btn-ghost:hover{background:#f8fbff}
.kx-hero-actions{display:flex;gap:11px;flex-wrap:wrap;align-items:center;margin:18px 0}
.kx-access-card .kx-hero-actions{margin-top:auto}
.kx-access-card .btn{min-height:45px}
.kx-info-page .public-card .btn{color:var(--blue)!important;background:#eef5ff;border:1px solid #d1e2f8}
.kx-info-page .public-card .btn:hover{background:#e3efff}
.kx-info-page .public-card .text-link{color:var(--blue)!important;font-size:13px;font-weight:850}
@media(max-width:560px){.kx-access-card .kx-hero-actions .btn{width:auto}}

/* HERO CENTRADO · escena 3D educativa Krueka.
 * Sin iframe ni dependencias remotas. El canvas WebGL se renderiza cuando es visible.
 * Cuando no hay WebGL, la composición CSS 3D sigue presentando el concepto.
 */
.kx-hero{padding-top:75px;padding-bottom:45px;min-height:0}
.kx-hero-centered-layout{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.kx-hero-centered-layout .kx-hero-text{width:100%;max-width:960px;margin-inline:auto;padding:0}
.kx-hero-centered-layout .kx-eyebrow{justify-content:center}
.kx-hero-centered-layout .kx-hero-text h1{max-width:960px;margin:23px auto 22px;font-size:clamp(49px,6.7vw,93px);line-height:1.03;letter-spacing:-.078em}
.kx-hero-centered-layout .kx-hero-text h1 .kx-headline-accent:last-child::after{bottom:-6px;height:8px;right:9%}
.kx-hero-centered-layout .kx-hero-text>p{max-width:730px;margin:0 auto 25px;line-height:1.8;font-size:17px}
.kx-hero-centered-layout .kx-actions,.kx-hero-centered-layout .kx-hero-facts{justify-content:center}
.kx-hero-centered-layout .kx-hero-facts{margin-top:23px}
.kx-hero-motion-wrap{width:100%;max-width:1120px;margin:24px auto 0;min-width:0}
.kx-hero-3d{position:relative;isolation:isolate;width:100%;height:clamp(390px,46vw,585px);overflow:hidden;border-radius:39px;border:1px solid #d5e4fa;background:radial-gradient(ellipse at 50% 48%,#fcfdff 0%,#edf4ff 42%,#dcecff 88%,#d5e5ff 100%);box-shadow:inset 0 0 82px #ffffffc2,0 32px 90px #4369ba1b}
.kx-hero-3d::before{content:"";position:absolute;inset:14px;border:1px solid #ffffffbf;border-radius:30px;pointer-events:none;z-index:1}
.kx-stage-glow{position:absolute;z-index:0;inset:0;pointer-events:none;background:radial-gradient(ellipse 34% 56% at 53% 43%,#b5cfff8a 0%,transparent 98%),radial-gradient(ellipse 26% 42% at 30% 42%,#b1effd94 0%,transparent 95%),radial-gradient(ellipse 30% 30% at 76% 63%,#ffd5c594 0%,transparent 94%)}
.kx-stage-grid{position:absolute;z-index:0;inset:0;opacity:.38;background-image:linear-gradient(#b0c6ea5f 1px,transparent 1px),linear-gradient(90deg,#b0c6ea5f 1px,transparent 1px);background-size:41px 41px;mask-image:radial-gradient(ellipse 43% 46% at 50% 49%,#000 0%,transparent 100%)}
#kx-ai-canvas{position:absolute;z-index:3;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .5s ease;touch-action:pan-y}
.kx-stage-ready #kx-ai-canvas{opacity:1}
.kx-ai-fallback{position:absolute;z-index:2;left:50%;top:50%;width:min(490px,92%);height:min(420px,80%);transform:translate(-50%,-50%);pointer-events:none;transition:opacity .45s ease}
.kx-stage-ready .kx-ai-fallback{opacity:0}
.kx-fallback-core{position:absolute;left:50%;top:50%;width:176px;height:176px;transform:translate(-50%,-50%) rotate(-15deg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;border-radius:52px;background:linear-gradient(135deg,#a8eeff 0%,#596fe7 56%,#3a4aba 100%);box-shadow:inset 11px 9px 21px #ffffff9c,inset -18px -18px 0 #334faf46,0 25px 40px #5264c85e;border:4px solid #e7f5ff;color:#fff;text-shadow:0 3px 10px #2d479960}
.kx-fallback-core span{font-size:50px;line-height:1}
.kx-fallback-core strong{font-size:22px;letter-spacing:.18em}
.kx-fallback-ring{position:absolute;left:50%;top:50%;width:360px;height:200px;border:6px solid #82b7f4;border-radius:50%;transform:translate(-50%,-50%) rotate(-30deg);box-shadow:0 0 22px #7ea7e857,inset 0 0 16px #9dbafc}
.kx-fallback-ring.two{border-color:#fba78d;width:390px;height:270px;transform:translate(-50%,-50%) rotate(53deg);animation:kx-fallback-spin 15s linear infinite}
.kx-fallback-ring.three{border-color:#c1b1fa;width:310px;height:320px;transform:translate(-50%,-50%) rotate(15deg);opacity:.75;animation:kx-fallback-spin-reverse 18s linear infinite}
.kx-fallback-cube{position:absolute;border-radius:19px;width:65px;height:65px;background:linear-gradient(135deg,#9cdfff,#4779ea);box-shadow:inset -13px -11px #2849ba45,0 16px 29px #4f7bbc55;animation:kx-float-3d 5s ease-in-out infinite}
.kx-fallback-cube.one{top:13%;left:10%;transform:rotate(20deg)}.kx-fallback-cube.two{top:18%;right:8%;background:linear-gradient(135deg,#d1c7ff,#846ff5);animation-delay:-2s}.kx-fallback-cube.three{bottom:6%;left:16%;background:linear-gradient(135deg,#ffd5a5,#ff946d);animation-delay:-3s}
.kx-stage-legend{position:absolute;z-index:5;left:22px;right:22px;bottom:22px;display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap}
.kx-stage-legend span{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #d7e6fa;border-radius:100px;background:#fffffff2;box-shadow:0 6px 18px #6f91bb12;font-size:10px;font-weight:850;letter-spacing:.055em;color:#586a95}
.kx-stage-legend i{width:7px;height:7px;background:#397be5;border-radius:50%;display:block}
.kx-stage-legend span:nth-child(2) i{background:#ff9e73}.kx-stage-legend span:nth-child(3) i{background:#987ce3}
.kx-scene-caption{text-align:center;margin:10px auto 0;color:#7c8caa;font-size:11px}
@keyframes kx-fallback-spin{from{transform:translate(-50%,-50%) rotate(53deg)}to{transform:translate(-50%,-50%) rotate(413deg)}}
@keyframes kx-fallback-spin-reverse{from{transform:translate(-50%,-50%) rotate(15deg)}to{transform:translate(-50%,-50%) rotate(-345deg)}}
@keyframes kx-float-3d{0%,100%{translate:0 0}50%{translate:0 -15px}}
@media(max-width:810px){
 .kx-hero{padding-top:59px}
 .kx-hero-centered-layout .kx-hero-text h1{font-size:clamp(48px,8.5vw,74px)}
 .kx-hero-3d{height:clamp(350px,59vw,485px)}
 .kx-hero-centered-layout .kx-hero-text>p{font-size:16px}
}
@media(max-width:560px){
 .kx-hero{padding-top:43px;padding-bottom:34px}
 .kx-hero-centered-layout .kx-hero-text h1{font-size:clamp(43px,11vw,57px);line-height:1.08}
 .kx-hero-centered-layout .kx-hero-text>p{font-size:15px;line-height:1.7}
 .kx-hero-centered-layout .kx-actions{gap:9px}
 .kx-hero-centered-layout .kx-actions .btn{width:100%}
 .kx-hero-motion-wrap{margin-top:12px}
 .kx-hero-3d{height:340px;border-radius:23px}
 .kx-hero-3d::before{inset:8px;border-radius:16px}
 .kx-ai-fallback{transform:translate(-50%,-50%) scale(.71);width:490px;height:360px}
 .kx-stage-legend{left:7px;right:7px;bottom:14px;gap:4px}
 .kx-stage-legend span{font-size:8px;padding:6px 7px;gap:4px}
 .kx-stage-legend i{width:5px;height:5px}
 .kx-scene-caption{font-size:9px}
}
@media(prefers-reduced-motion:reduce){#kx-ai-canvas,.kx-ai-fallback{transition:none!important}.kx-fallback-ring,.kx-fallback-cube{animation:none!important}}
