.kp-page{position:relative;width:100%;}
:root:not([data-theme="day"]) .kp-page{
  background-image:url('/images/bg-corner-dark.png');
  background-position:bottom left;
  background-repeat:no-repeat;
  background-size:auto;
}

/* ── HERO ── */
.kp-hero{padding:96px 0 24px;text-align:center;}
@media(max-width:700px){.kp-hero{padding:64px 0 16px;}}
.kp-hero .eyebrow{
  display:inline-block;padding:5px 14px;border-radius:99px;
  background:rgba(232,81,36,.10);border:1px solid rgba(232,81,36,.35);
  color:#ff8a5c;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;
  margin-bottom:18px;
}
.kp-hero h1{
  font-family:'Inter',sans-serif;font-weight:900;font-size:56px;line-height:1.05;
  letter-spacing:-1.2px;margin:0 auto 16px;max-width:880px;
  background:linear-gradient(135deg,#fff 35%,#ff8a5c 65%,#c4b5fd 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
:root[data-theme="day"] .kp-hero h1{
  background:linear-gradient(135deg,#0f172a 35%,#E85124 65%,#7c3aed 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
@media(max-width:700px){.kp-hero h1{font-size:36px;}}
.kp-hero .lede{font-size:17px;line-height:1.6;color:var(--text-soft);max-width:680px;margin:0 auto;}

.kp-stat-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:30px;}
.kp-stat{
  padding:9px 16px;border-radius:99px;
  background:rgba(255,255,255,.03);border:1px solid var(--border);
  font-size:12.5px;color:var(--text-soft);font-family:'Inter',sans-serif;
}
.kp-stat strong{color:var(--text);font-weight:800;}

.kp-cta-row{display:flex;justify-content:center;gap:14px;margin-top:32px;flex-wrap:wrap;}
.kp-cta-primary{
  display:inline-flex;align-items:center;gap:10px;padding:13px 26px;
  background:linear-gradient(135deg,#E85124,#ff6b3d);color:#fff;
  font-family:'Inter',sans-serif;font-weight:800;font-size:14px;letter-spacing:.02em;
  border:none;border-radius:11px;text-decoration:none;
  box-shadow:0 8px 22px rgba(232,81,36,.30);
  transition:transform .15s,box-shadow .15s;
}
.kp-cta-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(232,81,36,.40);color:#fff;}
.kp-cta-primary svg{width:14px;height:14px;}
.kp-cta-ghost{
  display:inline-flex;align-items:center;gap:8px;padding:12px 22px;
  background:rgba(255,255,255,.04);color:var(--text);
  font-family:'Inter',sans-serif;font-weight:700;font-size:13.5px;
  border:1px solid var(--border);border-radius:11px;text-decoration:none;
  transition:border-color .15s,background .15s;
}
.kp-cta-ghost:hover{border-color:rgba(232,81,36,.5);background:rgba(232,81,36,.06);}

/* ── FEATURE BLOCKS ── */
.kp-features{display:flex;flex-direction:column;gap:64px;margin-top:64px;}

.kp-block{
  display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;
}
@media(max-width:980px){.kp-block{grid-template-columns:1fr;gap:24px;}}
.kp-block.reverse > .kp-block-text{order:2;}
@media(max-width:980px){.kp-block.reverse > .kp-block-text{order:0;}}

.kp-block-text .kp-block-eyebrow{
  display:inline-block;padding:4px 11px;border-radius:99px;
  font-size:10.5px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;
  margin-bottom:14px;
}
.kp-block-text h2{
  font-family:'Inter',sans-serif;font-weight:900;font-size:34px;line-height:1.1;
  margin:0 0 14px;letter-spacing:-.6px;color:var(--text);
}
@media(max-width:700px){.kp-block-text h2{font-size:26px;}}
.kp-block-text p{font-size:15.5px;line-height:1.7;color:var(--text-soft);margin:0 0 18px;}
.kp-block-text ul{padding-left:0;list-style:none;margin:0;}
.kp-block-text li{
  position:relative;padding:7px 0 7px 32px;font-size:14.5px;line-height:1.55;color:var(--text-soft);
}
.kp-block-text li::before{
  content:'';position:absolute;left:0;top:13px;width:18px;height:18px;border-radius:50%;
  background:linear-gradient(135deg,rgba(232,81,36,.25),rgba(232,81,36,.10));
  border:1px solid rgba(232,81,36,.4);
}
.kp-block-text li::after{
  content:'';position:absolute;left:6px;top:18px;width:7px;height:4px;
  border-left:2px solid #ff8a5c;border-bottom:2px solid #ff8a5c;
  transform:rotate(-45deg);
}
.kp-block-text strong{color:var(--text);font-weight:700;}

/* Per-block accent colors (matches Forskning section pattern) */
.kp-block.c-orange  .kp-block-eyebrow{background:rgba(232,81,36,.14);color:#ff8a5c;border:1px solid rgba(232,81,36,.4);}
.kp-block.c-purple  .kp-block-eyebrow{background:rgba(168,85,247,.14);color:#c4b5fd;border:1px solid rgba(168,85,247,.4);}
.kp-block.c-blue    .kp-block-eyebrow{background:rgba(96,165,250,.14);color:#93c5fd;border:1px solid rgba(96,165,250,.4);}
.kp-block.c-green   .kp-block-eyebrow{background:rgba(34,197,94,.14);color:#4ade80;border:1px solid rgba(34,197,94,.4);}
.kp-block.c-cyan    .kp-block-eyebrow{background:rgba(0,229,255,.14);color:#67e8f9;border:1px solid rgba(0,229,255,.4);}

/* Screenshot framing */
.kp-shot{
  position:relative;cursor:zoom-in;
  border-radius:14px;overflow:hidden;
  border:1px solid var(--border);
  box-shadow:0 24px 60px rgba(0,0,0,.4);
  transition:transform .25s,box-shadow .25s,border-color .25s;
}
:root[data-theme="day"] .kp-shot{box-shadow:0 24px 60px rgba(15,23,42,.10);}
.kp-shot:hover{
  transform:translateY(-4px);
  border-color:rgba(232,81,36,.5);
  box-shadow:0 32px 80px rgba(0,0,0,.5);
}
:root[data-theme="day"] .kp-shot:hover{box-shadow:0 32px 80px rgba(232,81,36,.12);}
.kp-shot img{display:block;width:100%;height:auto;}
.kp-shot::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--kp-acc, #E85124),color-mix(in srgb,var(--kp-acc,#E85124) 40%,#fff));
  z-index:2;
}
.kp-shot::after{
  content:'⤢';position:absolute;bottom:14px;right:14px;
  padding:6px 12px;border-radius:8px;
  background:rgba(13,17,23,.85);color:#fff;
  font-family:'Inter',sans-serif;font-size:11px;font-weight:700;
  opacity:0;transition:opacity .2s;backdrop-filter:blur(8px);
  pointer-events:none;
}
.kp-shot:hover::after{opacity:1;}
.kp-block.c-orange .kp-shot{--kp-acc:#E85124;}
.kp-block.c-purple .kp-shot{--kp-acc:#a855f7;}
.kp-block.c-blue   .kp-shot{--kp-acc:#60a5fa;}
.kp-block.c-green  .kp-shot{--kp-acc:#22c55e;}
.kp-block.c-cyan   .kp-shot{--kp-acc:#00E5FF;}

/* ── LIGHTBOX MODAL ── */
.kp-lightbox{
  position:fixed;inset:0;z-index:9999;
  background:rgba(0,0,0,.92);
  display:none;align-items:center;justify-content:center;
  padding:40px;cursor:zoom-out;
  animation:kpFadeIn .2s ease-out;
}
.kp-lightbox.open{display:flex;}
@keyframes kpFadeIn{from{opacity:0;}to{opacity:1;}}
.kp-lightbox img{
  max-width:100%;max-height:100%;
  border-radius:8px;
  box-shadow:0 40px 100px rgba(0,0,0,.6);
  animation:kpZoomIn .25s cubic-bezier(.16,1,.3,1);
}
@keyframes kpZoomIn{from{transform:scale(.94);opacity:0;}to{transform:scale(1);opacity:1;}}
.kp-lightbox-close{
  position:fixed;top:24px;right:24px;
  width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.15);
  color:#fff;font-size:22px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s,transform .15s;
}
.kp-lightbox-close:hover{background:rgba(232,81,36,.3);transform:rotate(90deg);}
.kp-lightbox-caption{
  position:fixed;bottom:24px;left:50%;transform:translateX(-50%);
  padding:10px 20px;border-radius:8px;
  background:rgba(13,17,23,.85);color:#fff;
  font-family:'Inter',sans-serif;font-size:13px;font-weight:600;
  backdrop-filter:blur(8px);
}

/* ── FINAL CTA STRIP ── */
.kp-final-cta{
  margin-top:80px;padding:50px 56px;border-radius:22px;
  background:
    radial-gradient(circle at 20% 30%,rgba(232,81,36,.14),transparent 55%),
    radial-gradient(circle at 80% 70%,rgba(96,165,250,.10),transparent 55%),
    linear-gradient(135deg,rgba(255,255,255,.03),rgba(255,255,255,.01));
  border:1px solid var(--border);text-align:center;
}
.kp-final-cta h3{
  font-family:'Inter',sans-serif;font-weight:900;font-size:30px;
  margin:0 0 12px;letter-spacing:-.4px;color:var(--text);
}
.kp-final-cta p{font-size:15.5px;color:var(--text-soft);margin:0 0 22px;max-width:560px;margin-left:auto;margin-right:auto;}

/* ── LIGHT THEME ── */
:root[data-theme="day"] .kp-stat{
  background:rgba(255,255,255,.5);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  border-color:rgba(15,23,42,.08);
}
:root[data-theme="day"] .kp-final-cta{
  background:
    radial-gradient(circle at 20% 30%,rgba(232,81,36,.10),transparent 55%),
    radial-gradient(circle at 80% 70%,rgba(96,165,250,.08),transparent 55%),
    rgba(255,255,255,.5);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  border-color:rgba(15,23,42,.08);
  box-shadow:0 1px 2px rgba(15,23,42,.04), 0 8px 24px rgba(15,23,42,.06);
}
