/* Krueka Product-First · 2026
   Diseño original de plataforma educativa: producto funcional antes que ilustraciones.
   Sin fuentes, frameworks, videos ni imágenes externos. */
:root{
 --kp-ink:#18253e;--kp-muted:#62738c;--kp-line:#e0e7f0;--kp-blue:#3155e7;
 --kp-blue-hover:#2646c9;--kp-bg:#f7f9fd;--kp-w:#fff;--kp-dark:#14223c;
 --kp-radius:16px;--kp-shadow:0 22px 80px rgba(30,57,109,.12);
 color-scheme:light
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body.kp-site{margin:0;background:var(--kp-bg);font:15px/1.6 "Segoe UI Variable","Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--kp-ink);-webkit-font-smoothing:antialiased;overflow-x:clip}
.kp-site a{color:inherit;text-decoration:none}.kp-site button,.kp-site input{font:inherit}
.kp-site button{cursor:pointer}.kp-site a:focus-visible,.kp-site button:focus-visible,.kp-site input:focus-visible{outline:3px solid #e18b60;outline-offset:3px}
.kp-site [hidden]{display:none!important}
.kp-container{width:min(1240px,100%);padding:0 32px;margin:auto}
.kp-skip{position:absolute;top:-90px;left:12px;z-index:9999;background:#fff;color:#15223d;padding:10px 15px;border-radius:7px}.kp-skip:focus{top:8px}
.kp-header{position:sticky;top:0;z-index:90;background:#f9fbffef;border-bottom:1px solid #e5ebf4;backdrop-filter:blur(18px)}
.kp-header-inner{max-width:1304px;margin:auto;padding:13px 32px;min-height:79px;display:flex;align-items:center;gap:32px;justify-content:space-between}
.kp-brand{display:inline-flex;align-items:center;gap:10px;color:#172948!important;font-weight:870;letter-spacing:-.075em;font-size:25px;white-space:nowrap}
.kp-brand img{width:40px;height:40px;object-fit:contain;border:1px solid #e0e7f2;background:#fff;padding:4px;border-radius:10px}
.kp-brand-dot{color:#4161e8}.kp-brand small{margin-left:10px;padding-left:14px;border-left:1px solid #d5deeb;color:#8290a5;letter-spacing:.13em;font-size:9px;font-weight:850}
.kp-nav{display:flex;align-items:center;gap:29px;margin:auto}.kp-nav a{color:#586882;font-size:12px;font-weight:750;white-space:nowrap}.kp-nav a:hover{color:var(--kp-blue)}
.kp-btn{min-height:46px;display:inline-flex;gap:14px;align-items:center;justify-content:center;border:1px solid transparent;padding:12px 19px;border-radius:10px;font-size:12px;font-weight:850;line-height:1.3;text-align:center;transition:transform .18s,background .18s,box-shadow .18s}
.kp-btn:hover{transform:translateY(-2px)}
.kp-btn-primary{background:var(--kp-blue);color:#fff!important;box-shadow:0 9px 24px #3155e72c}
.kp-btn-primary:hover{background:var(--kp-blue-hover);box-shadow:0 12px 26px #3155e73d}
.kp-btn-secondary{background:#fff;color:#263d6a!important;border-color:#d6e0ed;box-shadow:0 7px 24px #46649e0d}
.kp-btn-secondary:hover{background:#f2f6ff}
.kp-btn-outline{color:#3855ad!important;background:#fff;border-color:#d8e2f3}
.kp-btn-dark{background:#192c4d;color:#fff!important}.kp-btn-dark:hover{background:#253e6e}
.kp-btn-lg{min-height:52px;padding:15px 22px;font-size:13px}
.kp-btn-small{min-height:37px;padding:9px 13px;font-size:11px;white-space:nowrap}
.menu-button{display:none;background:#edf2ff;border:1px solid #d7e3f5;border-radius:9px;width:43px;height:43px;padding:0;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.menu-button span{height:2px;width:19px;background:#203b70;display:block;border-radius:8px}
/* Hero - typographic without invented visuals */
.kp-hero{position:relative;padding:69px 0 24px;isolation:isolate;text-align:center;overflow:hidden}
.kp-hero-aura{position:absolute;z-index:-1;pointer-events:none;inset:0;background:radial-gradient(ellipse 39% 50% at 17% 22%,#e3edffaf,transparent 99%),radial-gradient(ellipse 37% 44% at 88% 25%,#ffeddf99,transparent 100%)}
.kp-hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center}
.kp-eyebrow,.kp-section-kicker{color:#5369a6;font-size:10px;font-weight:900;letter-spacing:.145em}
.kp-eyebrow{display:flex;align-items:center;gap:10px;justify-content:center}
.kp-pulse{width:9px;height:9px;background:#4f70e3;border-radius:50%;box-shadow:0 0 0 5px #4f70e31c}
.kp-hero h1{font-size:clamp(46px,5.6vw,77px);line-height:1.07;letter-spacing:-.075em;max-width:980px;margin:18px auto 21px;font-weight:850}
.kp-hero h1 span{color:var(--kp-blue)}
.kp-hero-copy>p{max-width:760px;color:var(--kp-muted);font-size:17px;line-height:1.84;margin:0 0 27px}
.kp-hero-actions{display:flex;gap:11px;align-items:center;justify-content:center;flex-wrap:wrap}
.kp-hero-tags{display:flex;align-items:center;justify-content:center;gap:23px;flex-wrap:wrap;margin-top:22px;color:#7889a2;font-size:11px;font-weight:700}
.kp-hero-tags b{color:#2aa887;margin-right:5px}
/* Working product demonstration. Serious SaaS-style workspace. */
.kp-preview-section{padding:18px 0 107px}
.kp-preview-overline{display:flex;align-items:center;gap:10px;margin:0 0 16px 3px;color:#4c6292;font-size:10px;font-weight:850;letter-spacing:.095em}
.kp-preview-overline .kp-live-dot{display:block;width:7px;height:7px;border-radius:50%;background:#2cbf91}
.kp-preview-separator{color:#c2cde0}
.kp-app{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:568px;background:#fff;border:1px solid #cfdbe9;border-radius:17px;box-shadow:0 27px 70px #203d7720,0 6px 13px #2944770b;overflow:hidden}
.kp-app-sidebar{position:relative;display:flex;flex-direction:column;background:#14243e;color:#e6edff;padding:21px 13px}
.kp-app-sidebar-logo{display:flex;gap:11px;align-items:center;padding:0 9px 30px;color:#f5f8ff;font-size:12px;letter-spacing:.08em;font-weight:850}
.kp-app-sidebar-logo small{display:block;color:#8197b8;font-size:9px;letter-spacing:.15em;font-weight:750}
.kp-app-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:#4167ec;color:#fff;font-size:18px;letter-spacing:-.07em}
.kp-sidebar-overline{color:#8093b3;font-size:9px;font-weight:850;letter-spacing:.12em;margin:0 0 12px;padding-left:12px}
.kp-sidebar-item{width:100%;min-height:45px;display:flex;gap:11px;align-items:center;border:1px solid transparent;border-radius:9px;color:#a5b6d0;background:transparent;font-size:12px;text-align:left;padding:9px 11px;margin-bottom:6px}
.kp-sidebar-item:hover{background:#243b5f;color:#fff}
.kp-sidebar-item.is-active{color:#fff;background:#3150a9;border-color:#526bd070;font-weight:820}
.kp-sidebar-icon{width:21px;height:23px;display:grid;place-items:center;font-size:19px;font-weight:700;line-height:1}
.kp-sidebar-bottom{margin-top:auto;border-top:1px solid #3b4f6f;padding:17px 10px 1px;display:grid;gap:12px}
.kp-sidebar-status{display:flex;align-items:center;gap:8px;font-size:10px;color:#b7c7dc}
.kp-sidebar-status i{width:7px;height:7px;background:#55c3a4;border-radius:50%}
.kp-sidebar-bottom a{color:#9cb7fe!important;font-weight:850;font-size:11px}
.kp-app-main{min-width:0;background:#fff}
.kp-app-topbar{min-height:62px;padding:13px 26px;border-bottom:1px solid var(--kp-line);display:flex;align-items:center;gap:12px;justify-content:space-between}
.kp-app-crumb{color:#91a0b4;font-size:11px;font-weight:750}.kp-app-crumb span{color:#cad5e3;margin-inline:7px}.kp-app-crumb strong{color:#334b70}
.kp-app-demo-pill{font-size:9px;font-weight:900;letter-spacing:.095em;color:#5676bd;border:1px solid #dce7fa;padding:6px 9px;border-radius:7px;background:#f6f9ff}
.kp-app-pane{padding:23px 26px 18px}
.kp-app-pane[hidden]{display:none}
.kp-pane-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}
.kp-pane-heading h2{font-size:24px;line-height:1.22;letter-spacing:-.047em;font-weight:825;margin:3px 0 5px}
.kp-pane-heading p{margin:0;font-size:12px;color:#697a93}
.kp-pane-heading .kp-overline{font-size:9px;font-weight:900;letter-spacing:.125em;color:#5170bd}
.kp-lab{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(225px,.7fr);gap:15px}
.kp-lab-play{min-width:0;border:1px solid #d6e1ee;border-radius:12px;overflow:hidden;background:#12233a}
.kp-lab-toolbar{height:37px;background:#17263e;color:#9fb3cd;display:flex;align-items:center;gap:10px;padding:0 15px;border-bottom:1px solid #344865}
.kp-lab-toolbar strong{font-size:10px;font-weight:750}.kp-lab-toolbar>span:last-child{margin-left:auto;font-size:9px;font-weight:850;letter-spacing:.1em;color:#6eb9dd}
.kp-toolbar-dots{display:flex;gap:4px}.kp-toolbar-dots i{width:6px;height:6px;background:#ff927c;border-radius:50%}.kp-toolbar-dots i:nth-child(2){background:#f4ca80}.kp-toolbar-dots i:nth-child(3){background:#7cceaf}
.kp-lab-board-wrap{position:relative;display:grid;place-items:center;min-height:283px;background:radial-gradient(ellipse 47% 63% at 50% 45%,#1c4165,#101b30)}
.kp-lab-board{width:min(95%,345px);aspect-ratio:8/7;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(7,minmax(0,1fr));gap:4px;padding:7px;background:#182c48;border:1px solid #5676a480;border-radius:10px;box-shadow:0 15px 45px #020c1b70;outline-offset:3px}
.kp-lab-board:focus-visible{outline:2px solid #e7a171}
.kp-lab-cell{position:relative;background:#253e5e;border:1px solid #385375;border-radius:4px;min-width:0}
.kp-lab-cell.is-wall{background:linear-gradient(125deg,#536683,#40536e);border-color:#74839b}
.kp-lab-cell.is-goal{background:#144d55;border:1px solid #47a99d}
.kp-lab-cell.is-goal::after{content:"";position:absolute;inset:30%;border:2px solid #73e8bb;border-radius:50%;box-shadow:0 0 9px #7df7c77b}
.kp-lab-cell.is-player{z-index:1}
.kp-lab-cell.is-player::before{content:"";position:absolute;inset:19%;background:linear-gradient(140deg,#9bd9ff,#4585e9);border-radius:8px;box-shadow:0 0 0 3px #89caff33,0 0 16px #84cfff8f}
.kp-lab-cell.is-player::after{content:"";position:absolute;inset:42%;background:#eaffff;border-radius:50%}
.kp-fallback-text{color:#fff;font-size:12px;padding:30px}.kp-fallback-text a{text-decoration:underline}
.kp-board-axis{color:#6b86a5;font-size:8px;letter-spacing:.16em;margin:10px 0 8px;font-weight:800}
.kp-lab-status{min-height:42px;padding:9px 13px;display:flex;align-items:center;gap:9px;border-top:1px solid #304764;color:#b7c7db;font-size:10px}
.kp-status-light{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#67cfb3}
.kp-lab-status #kp-step-count{margin-left:auto;color:#91a8c5;white-space:nowrap}
.kp-lab-guide{background:#f8fafd;border:1px solid #dfe7f2;border-radius:12px;padding:17px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.kp-guide-top{display:flex;justify-content:space-between;align-items:center;width:100%;gap:8px;color:#6981ac;font-size:9px;letter-spacing:.1em;font-weight:900}
.kp-lab-guide h3{font-size:18px;line-height:1.25;letter-spacing:-.042em;margin:16px 0 5px}
.kp-lab-guide>p{font-size:11px;line-height:1.65;color:#697d96;margin:0 0 10px}
.kp-guide-goal{border:1px solid #dce8f4;background:#fff;border-radius:9px;width:100%;padding:10px;display:flex;gap:9px;align-items:center}
.kp-guide-goal>span{font-size:22px;color:#30a88c}.kp-guide-goal strong,.kp-guide-goal small{display:block}.kp-guide-goal strong{font-size:11px}.kp-guide-goal small{font-size:10px;line-height:1.4;color:#7187a0}
.kp-pad{margin:12px auto;display:grid;grid-template-columns:repeat(3,36px);grid-template-rows:repeat(2,35px);gap:5px}
.kp-pad button{display:grid;place-items:center;background:#fff;border:1px solid #ccdcee;border-radius:8px;color:#355dc3;font-size:18px;font-weight:900}
.kp-pad button:hover{background:#e5efff}.kp-pad button:active{transform:translateY(1px)}
.kp-guide-bottom{display:grid;gap:6px;margin-top:auto;width:100%;text-align:center}.kp-guide-bottom span{font-size:9px;color:#8799ae;line-height:1.5}
.kp-reset-btn{background:transparent;border:0;color:#3659b1;font-size:11px;font-weight:800}
.kp-pane-footnote{margin-top:11px;color:#8b9ab0;font-size:10px}
.kp-preview-note{text-align:center;font-size:11px;line-height:1.6;color:#8291a6;margin:20px auto 0}
/* Demo: teacher */
.kp-teacher-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr);gap:16px;min-height:355px}
.kp-teacher-document{padding:25px;border-radius:12px;border:1px solid #dbe5f2;background:#fff}
.kp-document-top{display:flex;gap:13px;align-items:center;justify-content:space-between;color:#8093ae;font-size:9px;letter-spacing:.11em;font-weight:850}
.kp-document-pill{padding:5px 8px;border-radius:5px;background:#f1f4fc;color:#6782b4}
.kp-teacher-document h3{font-size:21px;line-height:1.3;letter-spacing:-.035em;margin:21px 0 5px}
.kp-teacher-document>p{font-size:12px;color:#6d7f99;margin:0;line-height:1.7}
.kp-document-divider{border-top:1px solid #e6ecf4;margin:20px 0 14px}
.kp-indicator-label{letter-spacing:.1em;font-weight:900;color:#4767a9!important;font-size:9px!important}
.kp-checkline{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #edf1f6;font-size:12px;color:#435574}
.kp-checkline input{width:17px;height:17px;accent-color:#345adb}
.kp-teacher-review{background:#eff5ff;padding:24px;border-radius:12px;display:flex;flex-direction:column;justify-content:center;gap:15px}
.kp-review-caption{color:#4b6bac;font-size:10px;letter-spacing:.1em;font-weight:900}
.kp-teacher-review>strong{font-size:22px;line-height:1.25;letter-spacing:-.04em}
.kp-progress-track{height:8px;background:#d8e4f8;border-radius:20px;overflow:hidden}
.kp-progress-track div{height:100%;width:33.33%;background:#355cdb;transition:width .25s}
.kp-teacher-review>p{font-size:12px;color:#6a7c96;line-height:1.7}
.kp-review-tip{display:flex;gap:9px;border-top:1px solid #cfdbef;padding-top:14px}
.kp-review-tip span{color:#3b6bd9;font-size:21px}
.kp-review-tip p{margin:0;font-size:11px;line-height:1.65;color:#587090}
.kp-teacher-review>a{font-size:12px;font-weight:850;color:#345ab6;margin-top:11px}
/* Demo: upload */
.kp-uploads-layout{display:grid;grid-template-columns:1fr .83fr;gap:17px;min-height:353px}
.kp-upload-list{display:flex;flex-direction:column;gap:11px}
.kp-upload-row{padding:18px;min-height:102px;display:flex;gap:14px;align-items:center;background:#fff;border:1px solid #dce5f0;border-radius:11px}
.kp-upload-row:hover{border-color:#93aef1;box-shadow:0 8px 20px #425f9f16}
.kp-upload-row>span:nth-child(2){flex:1;min-width:0}.kp-upload-row strong,.kp-upload-row small{display:block}.kp-upload-row strong{font-size:13px}.kp-upload-row small{font-size:11px;color:#8392a6;margin-top:3px}
.kp-upload-row>span:last-child{font-size:18px;color:#536ec4}
.kp-file-icon{width:47px;height:47px;flex:0 0 47px;display:grid;place-items:center;border-radius:10px;font-size:22px;font-weight:900}
.kp-file-icon.word{background:#e8f0ff;color:#3064bd}.kp-file-icon.excel{background:#def5eb;color:#20816b}.kp-file-icon.slides{background:#fff0e9;color:#df7654}
.kp-upload-explain{padding:29px;border:1px solid #d9e6f4;border-radius:12px;background:linear-gradient(145deg,#eff5ff,#f8faff);display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.kp-upload-lock{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#e0ebff;font-size:26px;color:#3e69d0}
.kp-upload-explain>strong{font-size:20px;letter-spacing:-.035em;line-height:1.3}
.kp-upload-explain>p{font-size:12px;line-height:1.75;color:#69809c;margin:0 0 8px}
.kp-upload-explain>span{font-size:11px;color:#405d94;font-weight:800}
/* Sections */
.kp-section{padding:100px 0}.kp-section-head{max-width:780px;margin-bottom:38px}
.kp-section-kicker{display:block}
.kp-section h2,.kp-cta h2{font-size:clamp(35px,4.3vw,56px);letter-spacing:-.067em;line-height:1.15;font-weight:850;margin:13px 0 17px}
.kp-section h2 em,.kp-cta h2 em{font-style:normal;color:#3b5ee0}
.kp-section-head>p{max-width:700px;line-height:1.82;color:var(--kp-muted);font-size:15px}
.kp-capabilities{background:#fff}
.kp-capability-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:17px}
.kp-cap-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:462px;border:1px solid #dfe6f2;background:#f8faff;border-radius:15px;padding:25px}
.kp-cap-card-primary{background:linear-gradient(145deg,#e8f0ff,#f7f9ff)}
.kp-cap-card-third{background:linear-gradient(145deg,#fff4ed,#fafbff)}
.kp-cap-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:23px}
.kp-cap-number{font-size:10px;letter-spacing:.12em;font-weight:900;color:#6077a7}
.kp-cap-symbol{font-size:25px;color:#4865c1}
.kp-cap-card h3{font-size:clamp(23px,2vw,29px);font-weight:840;letter-spacing:-.055em;line-height:1.22;margin:0 0 10px}
.kp-cap-card p{color:#687c98;font-size:13px;line-height:1.8;margin:0 0 14px}
.kp-cap-card>a{font-size:12px;font-weight:850;color:#3356b9;margin-top:5px}
.kp-cap-card>a:hover{text-decoration:underline;text-underline-offset:4px}
.kp-cap-terminal{margin-top:auto;border:1px solid #304866;border-radius:11px;overflow:hidden;background:#14233a;color:#c9deff;transform:translateY(25px)}
.kp-cap-term-head{display:flex;align-items:center;gap:5px;padding:9px 11px;background:#1d314e}
.kp-cap-term-head span{width:5px;height:5px;border-radius:50%;background:#ef9b80}.kp-cap-term-head span:nth-child(2){background:#edc47b}.kp-cap-term-head span:nth-child(3){background:#80cba8}
.kp-cap-term-head b{font-size:10px;color:#93add0;font-weight:600;margin-left:10px}
.kp-cap-terminal pre{font:11px/1.7 Consolas,"Cascadia Code",monospace;margin:0;padding:15px 17px;white-space:pre-wrap}.kp-cap-terminal pre span{color:#74b4b7}
.kp-cap-activity{margin-top:auto;background:#fff;border:1px solid #d9e5f6;border-radius:10px;padding:13px 15px;transform:translateY(18px)}
.kp-cap-activity>span{font-size:9px;font-weight:900;letter-spacing:.1em;color:#6680aa}
.kp-cap-activity>div{display:flex;gap:8px;align-items:center;border-bottom:1px solid #edf1f8;padding:9px 0}.kp-cap-activity>div:last-child{border:0}
.kp-cap-activity i{width:7px;height:7px;border-radius:50%;background:#5a9cde}
.kp-cap-activity b{font-size:10px;font-weight:750;flex:1}.kp-cap-activity em{font-style:normal;font-size:9px;color:#8d9bb0}
.kp-cap-format{display:grid;gap:7px;margin-top:auto;transform:translateY(12px)}
.kp-cap-format span{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fff;border:1px solid #f3dfd4;border-radius:8px;font-size:11px;font-weight:800;color:#445a80}
.kp-cap-format b{font-size:9px;color:#e18b62}
/* IA segment */
.kp-ai{background:#f0f4fc}.kp-ai-grid{display:grid;grid-template-columns:1fr .85fr;gap:70px;align-items:center}
.kp-ai-copy>p{color:#62758f;font-size:15px;line-height:1.88;margin-bottom:25px}
.kp-ai-disclosure{border-top:1px solid #d7e1ef;padding-top:20px;margin-top:26px;color:#687c98;font-size:12px;line-height:1.76}
.kp-ai-disclosure span{display:block;color:#405ea6;font-size:10px;letter-spacing:.1em;font-weight:900;margin-bottom:7px}
.kp-ai-disclosure strong{color:#254a89}
.kp-ai-process{background:#fff;border:1px solid #dce5f3;border-radius:16px;box-shadow:0 17px 44px #445e9620;padding:22px 25px}
.kp-process-top{display:flex;gap:13px;align-items:center;padding-bottom:17px;border-bottom:1px solid #e7edf5}
.kp-process-symbol{width:39px;height:39px;display:grid;place-items:center;background:#e7edff;border-radius:11px;color:#506be1;font-size:24px}
.kp-process-top strong,.kp-process-top small{display:block}.kp-process-top strong{font-size:13px}.kp-process-top small{color:#8292a9;font-size:10px;margin-top:3px}
.kp-process-line{display:flex;gap:15px;padding:16px 0;border-bottom:1px solid #edf1f7}.kp-process-line:last-child{border:0}
.kp-process-line>span{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border-radius:9px;background:#eff3ff;font-size:10px;color:#4665bf;font-weight:850}
.kp-process-line b{font-size:12px}.kp-process-line p{font-size:11px;line-height:1.6;color:#788ba3;margin:4px 0 0}
/* Entry points */
.kp-people{background:#fff}.kp-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.kp-person{border:1px solid #dfe7f2;border-radius:13px;background:#fafcff;display:flex;flex-direction:column;align-items:flex-start;padding:28px;min-height:277px;transition:border-color .2s,transform .2s}
.kp-person:hover{transform:translateY(-4px);border-color:#a9bdea}
.kp-person-icon{width:46px;height:46px;border-radius:11px;background:#e9efff;color:#375bca;display:grid;place-items:center;font-weight:900;font-size:14px}
.kp-person strong{font-size:21px;letter-spacing:-.035em;margin:17px 0 2px}
.kp-person p{font-size:13px;color:#73849b;line-height:1.75;margin:0 0 20px}
.kp-person-arrow{font-size:12px;font-weight:850;color:#375ac1;margin-top:auto}
/* Methodology */
.kp-method{background:#f8faff}.kp-method-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}
.kp-method-inner>div:first-child>p{color:var(--kp-muted);font-size:14px;line-height:1.9}
.kp-method-steps{border-top:1px solid #dae4f1}
.kp-method-steps>div{display:grid;grid-template-columns:47px 1fr;gap:0 15px;align-items:start;border-bottom:1px solid #dae4f1;padding:15px 0}
.kp-method-steps>div span{grid-row:span 2;color:#3c63c1;font-size:12px;font-weight:900}
.kp-method-steps strong{font-size:17px;letter-spacing:-.035em}
.kp-method-steps p{color:#76869d;font-size:12px;margin:3px 0;line-height:1.66}
/* CTA & footer */
.kp-cta{background:#e9f0ff;border-top:1px solid #d9e4f7;padding:73px 0}
.kp-cta-inner{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.kp-cta h2{margin:10px 0 13px}.kp-cta p{max-width:580px;font-size:14px;color:#6d7c95;line-height:1.85}
.kp-cta-buttons{display:grid;gap:12px}
.kp-footer{background:#13223b;color:#d7e2f4;padding:62px 0 28px}
.kp-footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,.7fr);gap:42px}
.kp-footer .kp-brand{color:#fff!important}.kp-footer .kp-brand img{background:#fff}.kp-footer-about p{max-width:310px;color:#92a6c5;font-size:12px;line-height:1.8;margin:20px 0 0}
.kp-footer h3{color:#fff;font-size:11px;letter-spacing:.12em;margin:6px 0 19px;text-transform:uppercase}
.kp-footer-grid>div:not(:first-child) a{display:block;color:#a3b5ce;font-size:12px;margin:0 0 11px}
.kp-footer-grid>div:not(:first-child) a:hover{color:#fff}
.kp-footer-bottom{border-top:1px solid #32415d;margin-top:42px;padding-top:24px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#8fa1bd;font-size:11px}
@media(max-width:1050px){
 .kp-nav{gap:15px}.kp-brand small{display:none}.kp-app{grid-template-columns:178px minmax(0,1fr)}
 .kp-app-pane{padding:17px}.kp-lab{grid-template-columns:minmax(0,1fr) minmax(180px,.65fr);gap:10px}
 .kp-lab-guide{padding:13px}.kp-capability-grid{gap:11px}.kp-cap-card{padding:20px}.kp-ai-grid{gap:30px}
}
@media(max-width:820px){
 .kp-container{padding-inline:20px}.kp-header-inner{padding:11px 20px;min-height:70px;gap:10px}
 .kp-nav{display:none;position:absolute;top:69px;left:15px;right:15px;flex-direction:column;align-items:stretch;gap:0;border:1px solid #d9e4f0;padding:9px 15px;background:#fff;border-radius:12px;box-shadow:0 15px 35px #243e6d2a}
 .kp-nav.open{display:flex}.kp-nav a{padding:11px 3px;border-bottom:1px solid #edf1f7}
 .menu-button{display:flex;order:3}.kp-nav-cta{order:2;margin-left:auto;min-height:40px;padding:10px 13px}.kp-brand{order:1}
 .kp-hero{padding:70px 0 22px}.kp-hero h1{font-size:clamp(48px,8vw,72px)}
 .kp-app{grid-template-columns:154px minmax(0,1fr)}.kp-app-sidebar{padding:16px 8px}
 .kp-app-sidebar-logo{padding-inline:6px;font-size:10px}
 .kp-lab{grid-template-columns:1fr}.kp-lab-board-wrap{min-height:270px}
 .kp-lab-guide{display:grid;grid-template-columns:1fr 1fr;gap:7px 15px;align-items:center}.kp-guide-top,.kp-lab-guide h3,.kp-lab-guide>p{grid-column:1/-1}
 .kp-pad{margin:0 auto}.kp-guide-bottom{margin:0}
 .kp-teacher-grid,.kp-uploads-layout{grid-template-columns:1fr}
 .kp-capability-grid{grid-template-columns:1fr 1fr}
 .kp-cap-card-third{grid-column:1/-1;min-height:360px}
 .kp-ai-grid{grid-template-columns:1fr;gap:28px}.kp-method-inner{grid-template-columns:1fr;gap:20px}
 .kp-footer-grid{grid-template-columns:1.2fr 1fr 1fr}.kp-footer-grid>div:last-child{grid-column:2/-1}
}
@media(max-width:580px){
 .kp-container{padding-inline:16px}.kp-header-inner{padding:9px 13px}
 .kp-brand{font-size:22px}.kp-brand img{width:36px;height:36px}
 .kp-nav-cta{font-size:10px;min-height:39px;padding:9px 10px}.menu-button{width:39px;height:39px}
 .kp-eyebrow{font-size:9px;letter-spacing:.08em}
 .kp-hero{padding:53px 0 17px}.kp-hero h1{font-size:clamp(34px,8.9vw,45px);letter-spacing:-.064em;line-height:1.12}
 .kp-hero-copy>p{font-size:15px}.kp-hero-actions{width:100%}.kp-hero-actions .kp-btn{width:100%}
 .kp-hero-tags{gap:8px 16px;font-size:10px;margin-top:22px}
 .kp-preview-section{padding:24px 0 68px}.kp-preview-overline{font-size:9px;flex-wrap:wrap}
 .kp-app{display:block;border-radius:12px}
 .kp-app-sidebar{padding:11px 10px;background:#152740}
 .kp-app-sidebar-logo{padding:0 5px 10px}.kp-sidebar-overline,.kp-sidebar-bottom{display:none}
 .kp-app-sidebar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:5px}
 .kp-app-sidebar-logo{grid-column:1/-1}
 .kp-sidebar-item{font-size:10px;display:flex;justify-content:center;gap:5px;padding:8px 5px;min-height:39px;margin:0}
 .kp-sidebar-icon{font-size:16px;width:17px;height:18px}
 .kp-app-topbar{min-height:47px;padding:9px 13px}
 .kp-app-demo-pill{font-size:8px;padding:5px 7px}
 .kp-app-pane{padding:14px}
 .kp-pane-heading{align-items:flex-start;flex-direction:column;gap:9px}
 .kp-pane-heading h2{font-size:22px}.kp-pane-heading>div>p:last-child{font-size:11px}
 .kp-pane-heading>.kp-btn{min-height:34px}
 .kp-lab-board-wrap{min-height:255px}
 .kp-lab-guide{grid-template-columns:1fr 1fr;gap:9px}
 .kp-lab-guide>p{font-size:11px}.kp-lab-guide h3{font-size:16px;margin-top:5px}
 .kp-guide-goal{grid-column:1/-1}
 .kp-pad{justify-self:center}
 .kp-guide-bottom{font-size:10px}
 .kp-teacher-document,.kp-teacher-review{padding:17px}
 .kp-uploads-layout{gap:10px}.kp-upload-explain{padding:20px}
 .kp-section{padding:69px 0}
 .kp-section h2,.kp-cta h2{font-size:clamp(34px,8.6vw,44px)}
 .kp-capability-grid,.kp-people-grid{grid-template-columns:1fr}
 .kp-cap-card,.kp-cap-card-third{grid-column:auto;min-height:375px}
 .kp-cap-card-primary{min-height:450px}
 .kp-ai-process{padding:18px}
 .kp-cta{padding:55px 0}.kp-cta-inner{grid-template-columns:1fr}
 .kp-cta-buttons{width:100%}
 .kp-footer{padding:45px 0 20px}.kp-footer-grid{grid-template-columns:1fr 1fr;gap:27px 20px}
 .kp-footer-grid>div:first-child{grid-column:1/-1}.kp-footer-grid>div:last-child{grid-column:auto}
 .kp-footer-bottom{margin-top:25px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .kp-btn,.kp-person,.kp-progress-track div{transition:none}
 .kp-btn:hover,.kp-person:hover{transform:none}
}
