/* Protection Policies: landing + buyer + seller. Font weights max 700. */
/* Scope box sizing to these pages, not the existing Korners site. */
.kp-alt *, .kp-alt *::before, .kp-alt *::after,
.kp-document *, .kp-document *::before, .kp-document *::after { box-sizing: border-box; }
.kp-alt, .kp-document { direction: inherit; }

/* LANDING */
/* Public landing component only: Korners supplies its own global header/footer.
       Intended for platform translation() integration using existing Korners conventions.
       All styling is scoped to .kp-alt. Logical properties allow dir="rtl" inheritance. */
.kp-alt {
      --ink: #25203b;
      --muted: #615d73;
      --purple: #6445e8;
      --purple-deep: #4123a5;
      --lavender: #efecff;
      --lemon: #ffde70;
      --pink: #f7c7e9;
      --rule: #e7e4f0;
      --white: #ffffff;
      box-sizing: border-box;
      max-width: 1320px;
      margin-inline: auto;
      padding: clamp(16px, 3vw, 44px) clamp(16px, 3.3vw, 46px) 72px;
      color: var(--ink);
      background: var(--white);
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.55;
      isolation: isolate;
    }
    .kp-alt *, .kp-alt *::before, .kp-alt *::after { box-sizing: border-box; }
    .kp-alt a { color: inherit; }
    .kp-alt a:focus-visible { outline: 3px solid var(--purple); outline-offset: 5px; }
    .kp-alt .hero {
      display: grid; grid-template-columns: minmax(0, 1.09fr) minmax(330px, .91fr);
      min-height: 460px; overflow: hidden; border-radius: 29px;
      background: var(--lavender); position: relative;
    }
    .kp-alt .hero-copy {
      position: relative; z-index: 2;
      display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
      padding: clamp(32px, 5.2vw, 75px) 0 clamp(32px, 5.2vw, 75px) clamp(30px, 5vw, 76px);
    }
    .kp-alt .overline {
      font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
      color: var(--purple-deep); display: inline-flex; align-items: center; gap: 11px;
    }
    .kp-alt .overline::before { content: ""; width: 27px; height: 4px; background: var(--purple); border-radius: 3px; }
    .kp-alt h1, .kp-alt h2, .kp-alt h3, .kp-alt p { margin-block-start: 0; }
    .kp-alt .hero h1 {
      margin-block: 19px 22px; max-width: 670px; font-size: clamp(40px, 5.4vw, 76px);
      font-weight: 700; letter-spacing: -.065em; line-height: 1.045;
    }
    .kp-alt .hero h1 span { color: var(--purple); }
    .kp-alt .hero-copy p { max-width: 540px; color: #5c5874; font-size: clamp(16px, 1.35vw, 19px); margin: 0; }
    .kp-alt .hero-art { position: relative; min-height: 390px; overflow: hidden; }
    .kp-alt .orb-main {
      position: absolute; height: 525px; width: 525px; right: -70px; top: -46px;
      background: #d9d1ff; border-radius: 50%;
    }
    .kp-alt .orb-white {
      position: absolute; height: 370px; width: 370px; right: 4px; top: 46px;
      background: #f7f5ff; border-radius: 50%; box-shadow: inset -16px 0 0 #e8e1ff;
    }
    .kp-alt .badge-graphic {
      position: absolute; right: 18%; top: 19%; width: 250px; height: 270px;
      filter: drop-shadow(18px 18px 0 rgba(65,35,165,.16)); transform: rotate(-10deg);
    }
    .kp-alt .badge-graphic .graphic-shield {
      width: 100%; height: 100%; display: grid; place-items: center;
      background: var(--purple); clip-path: polygon(50% 1%, 95% 20%, 91% 65%, 73% 88%, 50% 100%, 27% 88%, 9% 65%, 5% 20%);
    }
    .kp-alt .badge-graphic svg { width: 51%; height: 51%; }
    .kp-alt .floating-star {
      position: absolute; top: 12%; left: 11%; font-size: 59px; color: #f3a9db;
      transform: rotate(-14deg); line-height: 1;
    }
    .kp-alt .tiny-dots { position: absolute; bottom: 16%; left: 7%; color: #8f79f3; font-size: 36px; letter-spacing: 11px; transform: rotate(-15deg); }
    .kp-alt .yellow-orbit { position: absolute; width: 112px; height: 112px; background: var(--lemon); border-radius: 50%; bottom: 5%; right: 4%; }
    .kp-alt .card-intro { margin-block: 56px 21px; display: flex; align-items: end; justify-content: space-between; gap: 24px; }
    .kp-alt .card-intro h2 { font-size: clamp(26px, 3.2vw, 41px); font-weight: 700; line-height: 1.13; letter-spacing: -.048em; margin: 0; max-width: 570px; }
    .kp-alt .card-intro p { max-width: 380px; color: var(--muted); margin: 0 0 3px; font-size: 15px; }
    .kp-alt .cards { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
    .kp-alt .policy {
      position: relative; min-height: 372px; border-radius: 25px; overflow: hidden;
      display: flex; flex-direction: column; align-items: flex-start; padding: clamp(29px, 3.3vw, 46px);
      isolation: isolate;
    }
    .kp-alt .policy.buyer { background: var(--lemon); }
    .kp-alt .policy.seller { background: var(--purple); color: #fff; }
    .kp-alt .card-sup { font-size: 12px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; opacity: .83; }
    .kp-alt .policy h3 {
      font-size: clamp(31px, 3.3vw, 45px); letter-spacing: -.056em; line-height: 1.07;
      margin: 33px 0 13px; font-weight: 700; max-width: 440px; position: relative; z-index: 1;
    }
    .kp-alt .policy p { max-width: 330px; font-size: 16px; margin: 0 0 32px; position: relative; z-index: 1; }
    .kp-alt .seller p { color: #e8e2ff; }
    .kp-alt .card-mark {
      position: absolute; inset-inline-end: -6px; inset-block-start: 33px;
      width: 163px; height: 163px; opacity: .35; transform: rotate(-12deg); pointer-events: none;
    }
    .kp-alt .buyer .card-mark { color: #ec9809; }
    .kp-alt .seller .card-mark { color: #c4b7ff; opacity: .55; }
    .kp-alt .card-mark svg { width: 100%; height: 100%; stroke: currentColor; stroke-width: 1.2; fill: none; stroke-linecap: round; stroke-linejoin: round; }
    .kp-alt .policy-button {
      margin-top: auto; position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: space-between;
      gap: 35px; min-width: 205px; border-radius: 999px; padding: 14px 18px 14px 22px;
      text-decoration: none; font-size: 15px; font-weight: 700; border: 2px solid transparent;
      transition: transform .2s, background-color .2s, box-shadow .2s;
    }
    .kp-alt .buyer .policy-button { color: #fff; background: #26213d; }
    .kp-alt .seller .policy-button { color: #30226c; background: #fff; }
    .kp-alt .policy-button svg { height: 19px; width: 19px; flex: 0 0 auto; }
    .kp-alt .policy-button:hover { transform: translateY(-3px); box-shadow: 0 9px 18px #20174222; }
    .kp-alt .highlights {
      margin-block: 50px 0; border-top: 1px solid var(--rule);
      border-bottom: 1px solid var(--rule); padding-block: 27px;
      display: grid; grid-template-columns: repeat(3, 1fr);
    }
    .kp-alt .highlight { display: flex; align-items: flex-start; gap: 15px; padding-inline: 22px; }
    .kp-alt .highlight:first-child { padding-inline-start: 0; }
    .kp-alt .highlight + .highlight { border-inline-start: 1px solid var(--rule); }
    .kp-alt .highlight-icon { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 13px; display: grid; place-items: center; background: #f1edff; color: #6445e8; }
    .kp-alt .highlight:nth-child(2) .highlight-icon { background: #fff5d3; color: #a66d00; }
    .kp-alt .highlight:nth-child(3) .highlight-icon { background: #fae7f7; color: #9f4088; }
    .kp-alt .highlight-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
    .kp-alt .highlight h4 { font-size: 16px; margin: 0 0 4px; line-height: 1.25; }
    .kp-alt .highlight p { font-size: 14px; color: var(--muted); margin: 0; max-width: 265px; }
    .kp-alt .closing { padding-block: 30px 0; display: flex; flex-wrap: wrap; gap: 16px 38px; justify-content: space-between; align-items: center; }
    .kp-alt .closing p { margin: 0; max-width: 795px; font-size: 13px; color: var(--muted); }
    .kp-alt .closing a { color: var(--purple-deep); font-weight: 700; text-underline-offset: 3px; }
    @media (max-width: 900px) {
      .kp-alt .hero { grid-template-columns: 1.05fr .95fr; }
      .kp-alt .hero-copy { padding: 42px 0 42px 36px; }
      .kp-alt .hero h1 { font-size: clamp(38px, 5.1vw, 52px); }
      .kp-alt .badge-graphic { width: 200px; height: 215px; right: 10%; top: 25%; }
      .kp-alt .orb-main { right: -215px; }
      .kp-alt .orb-white { right: -90px; }
    }
    @media (max-width: 680px) {
      .kp-alt { padding: 15px 15px 48px; }
      .kp-alt .hero { display: flex; flex-direction: column; border-radius: 19px; }
      .kp-alt .hero-copy { padding: 34px 27px 0; }
      .kp-alt .hero h1 { font-size: clamp(39px, 10vw, 56px); letter-spacing: -.057em; }
      .kp-alt .hero-art { min-height: 212px; }
      .kp-alt .orb-main { width: 380px; height: 380px; top: -70px; right: -15px; }
      .kp-alt .orb-white { width: 260px; height: 260px; top: -16px; right: 50px; }
      .kp-alt .badge-graphic { width: 145px; height: 160px; top: 12px; right: 26%; }
      .kp-alt .floating-star { font-size: 36px; top: 25px; left: 17%; }
      .kp-alt .yellow-orbit { height: 73px; width: 73px; bottom: 10px; right: 12%; }
      .kp-alt .tiny-dots { font-size: 21px; bottom: 26px; left: 17%; }
      .kp-alt .card-intro { display: block; margin-block: 34px 19px; }
      .kp-alt .card-intro p { margin-block-start: 9px; }
      .kp-alt .cards { grid-template-columns: 1fr; gap: 15px; }
      .kp-alt .policy { min-height: 330px; padding: 30px; border-radius: 20px; }
      .kp-alt .policy h3 { margin-top: 24px; }
      .kp-alt .card-mark { width: 130px; height: 130px; inset-block-start: 26px; }
      .kp-alt .highlights { grid-template-columns: 1fr; padding-block: 10px; margin-block-start: 35px; }
      .kp-alt .highlight { padding: 17px 0; }
      .kp-alt .highlight + .highlight { border-inline-start: 0; border-top: 1px solid var(--rule); }
    }
    @media (prefers-reduced-motion: reduce) { .kp-alt .policy-button { transition: none; } }
    [dir="rtl"] .kp-alt .hero-copy { padding-inline-start: clamp(30px, 5vw, 76px); padding-inline-end: 0; }
    [dir="rtl"] .kp-alt .orb-main { right: auto; left: -70px; }
    [dir="rtl"] .kp-alt .orb-white { right: auto; left: 4px; }
    [dir="rtl"] .kp-alt .badge-graphic { right: auto; left: 18%; }
    [dir="rtl"] .kp-alt .floating-star { left: auto; right: 11%; }
    [dir="rtl"] .kp-alt .tiny-dots { left: auto; right: 7%; }
    [dir="rtl"] .kp-alt .yellow-orbit { right: auto; left: 4%; }
    [dir="rtl"] .kp-alt .policy-button svg { transform: scaleX(-1); }
    [dir="rtl"] .kp-alt .card-mark { transform: rotate(12deg); }
    @media(max-width: 900px) { [dir="rtl"] .kp-alt .hero-copy { padding-inline-start: 36px; padding-inline-end: 0; } }
    @media(max-width: 680px) {
      [dir="rtl"] .kp-alt .hero-copy { padding-inline: 27px; }
      [dir="rtl"] .kp-alt .orb-main { left: -15px; }
      [dir="rtl"] .kp-alt .orb-white { left: 50px; }
      [dir="rtl"] .kp-alt .badge-graphic { left: 26%; }
      [dir="rtl"] .kp-alt .floating-star { right: 17%; }
      [dir="rtl"] .kp-alt .tiny-dots { right: 17%; }
      [dir="rtl"] .kp-alt .yellow-orbit { left: 12%; }
    }

/* POLICY DOCUMENTS */
/* Korners Protection Policy - public pages, no global header/footer.
   Scoped to .kp-document; all CSS font weights are 700 or lower.
   Host platform owns translation(), HTML lang/dir, header and footer. */
.kp-document{
 --ink:#27243a;--muted:#5f6270;--line:#e7e8ee;--paper:#fff;
 --accent:#6047d6;--accent-soft:#f0edff;--accent-vivid:#8f78ee;
 --accent-hero:#ede8ff;--accent-line:#d8ccff;--accent-button:#6047d6;--bullet:#7358e9;
 box-sizing:border-box; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; width:100%; margin-inline:auto; color:var(--ink); background:#f8f9fc;
 line-height:1.68; font-size:16px; font-weight:400; isolation:isolate;
}
.kp-document[data-policy="buyer"]{
 --accent:#9a6a03;--accent-soft:#fff8df;--accent-vivid:#eab93c;
 --accent-hero:#fff3c7;--accent-line:#f0dda0;--accent-button:#5c4215;--bullet:#be8c21;
}
.kp-document a{color:inherit}
.kp-document a:focus-visible{outline:3px solid var(--accent-vivid);outline-offset:4px;border-radius:4px}
.kp-document .kp-shell{width:min(1150px,calc(100% - 48px));margin-inline:auto}
.kp-document .kp-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:25px 24px}
.kp-document .kp-back{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;text-decoration:none;color:#5d5b6a;white-space:nowrap}
.kp-document .kp-back:hover{color:var(--ink)}
.kp-document .kp-back svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;transition:transform .18s}
.kp-document .kp-back:hover svg{transform:translateX(-3px)}
.kp-document .kp-switch{display:flex;align-items:center;gap:3px;border:1px solid #e1e2e9;border-radius:100px;background:white;padding:5px;box-shadow:0 3px 14px #24243b06}
.kp-document .kp-switch a{padding:8px 17px;border-radius:90px;text-decoration:none;font-size:13px;font-weight:600;color:#696977;white-space:nowrap;transition:background .15s,color .15s}
.kp-document .kp-switch a:hover{background:#f5f4f9}
.kp-document .kp-switch a[aria-current="page"]{background:var(--accent-button);color:#fff}
.kp-document .kp-heading{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:30px;min-height:308px;padding:clamp(28px,4.3vw,56px) clamp(25px,5.6vw,72px);background:var(--accent-hero);border-radius:28px;overflow:hidden}
.kp-document .kp-heading::after{content:"";position:absolute;pointer-events:none;inset-block-start:-146px;inset-inline-end:-64px;width:380px;height:380px;border-radius:50%;background:#ffffff74}
.kp-document .kp-heading-copy{position:relative;z-index:1;max-width:720px}
.kp-document .kp-overline{display:inline-flex;align-items:center;gap:9px;color:var(--accent);font-weight:700;font-size:11px;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;margin-block-end:21px}
.kp-document .kp-overline::before{content:"";display:block;width:23px;height:3px;background:currentColor;border-radius:3px}
.kp-document h1{font-size:clamp(30px,3.5vw,49px);font-weight:700;letter-spacing:-.045em;line-height:1.14;margin:0;max-width:720px;text-wrap:balance}
.kp-document .kp-original-intro{font-size:clamp(15px,1.32vw,17px);line-height:1.75;color:#4e4d5b;max-width:775px;margin:19px 0 0}
.kp-document .kp-emblem{width:236px;height:236px;position:relative;display:grid;place-items:center;z-index:1;justify-self:center}
.kp-document .kp-emblem::before{content:"";width:236px;height:236px;position:absolute;border:2px dashed var(--accent-line);border-radius:50%;opacity:.9;transform:rotate(14deg)}
.kp-document .kp-emblem::after{content:"";width:18px;height:18px;position:absolute;inset-block-start:25px;inset-inline-end:24px;background:var(--accent-vivid);border-radius:50%}
.kp-document .kp-emblem-inner{height:168px;width:162px;display:grid;place-items:center;filter:drop-shadow(0 17px 15px #3a31551c)}
.kp-document .kp-emblem-inner svg{width:100%;height:100%}
.kp-document .kp-content{padding-block:42px 84px}
.kp-document .kp-section-stack{display:grid;gap:17px}
.kp-document .kp-section{display:grid;grid-template-columns:8px minmax(0,1fr);background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 5px 23px rgba(36,35,59,.025);scroll-margin-block-start:26px}
.kp-document .kp-section-rule{background:var(--accent-vivid);opacity:.86}
.kp-document .kp-section-inner{padding:clamp(24px,3.4vw,40px) clamp(22px,4vw,52px) clamp(25px,3.8vw,45px)}
.kp-document .kp-section h2{font-size:clamp(21px,2.05vw,27px);font-weight:700;line-height:1.27;letter-spacing:-.03em;color:var(--ink);margin:0 0 20px}
.kp-document .kp-section h2::after{content:"";display:block;margin-block-start:15px;width:38px;height:3px;border-radius:2px;background:var(--accent-vivid)}
.kp-document .kp-prose{font-size:15.5px;line-height:1.8;color:#444454}
.kp-document .kp-prose p{margin:0 0 12px}
.kp-document .kp-prose p:last-child{margin-block-end:0}
.kp-document .kp-prose ul{padding-inline-start:22px;margin:7px 0 0}
.kp-document .kp-prose ul ul{margin-block:8px 5px}
.kp-document .kp-prose li{padding-inline-start:4px;margin-block:6px}
.kp-document .kp-prose li::marker{color:var(--bullet);font-size:.85em}
.kp-document .kp-prose strong{font-weight:700;color:#29283a}
.kp-document .kp-prose h3{font-size:16px;line-height:1.45;letter-spacing:-.01em;font-weight:700;margin:0 0 8px;color:#24243a}
.kp-document .kp-prose .detail-grid{display:grid;grid-template-columns:1fr;gap:0;margin-block-start:19px}
.kp-document .kp-prose .detail-card{padding-block:20px 21px;border-block-start:1px solid #e8e8ee}
.kp-document .kp-prose .detail-card:first-child{padding-block-start:0;border-block-start:0}
.kp-document .kp-prose .detail-card:last-child{padding-block-end:0}
.kp-document .kp-prose .detail-card ul{margin-block-start:5px}
.kp-document .kp-prose .step{margin-block:0;padding:0 0 24px 27px;margin-inline-start:8px;border-inline-start:2px solid var(--accent-line);position:relative}
.kp-document .kp-prose .step::before{content:"";position:absolute;inset-inline-start:-7px;inset-block-start:6px;background:var(--accent-vivid);height:12px;width:12px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--accent-vivid)}
.kp-document .kp-prose .step:last-child{padding-block-end:0;border-color:transparent}
.kp-document .kp-prose .step h3{font-size:16px;margin:0 0 7px}
.kp-document .kp-prose .step ul{margin-block-start:5px}
.kp-document .kp-document-end{border-block-start:1px solid #e5e6eb;margin-block-start:28px;padding-block:24px 2px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.kp-document .kp-document-end a{font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;gap:8px;align-items:center;color:#565568}
.kp-document .kp-document-end a:hover{color:var(--accent)}
.kp-document .kp-document-end a svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.9;fill:none}
@media(min-width:1250px){.kp-document .kp-shell{width:min(1150px,calc(100% - 70px))}}
@media(max-width:760px){
 .kp-document .kp-shell{width:calc(100% - 30px)}
 .kp-document .kp-tools{padding-block:17px 18px;gap:10px}
 .kp-document .kp-switch a{font-size:12px;padding:7px 11px}
 .kp-document .kp-heading{grid-template-columns:1fr;gap:14px;min-height:0;border-radius:19px;padding:31px 25px 32px}
 .kp-document .kp-heading::after{width:220px;height:220px;inset-inline-end:-115px;inset-block-start:-102px}
 .kp-document .kp-emblem{display:none}
 .kp-document .kp-overline{margin-block-end:15px}
 .kp-document .kp-original-intro{margin-block-start:16px;font-size:15px}
 .kp-document .kp-content{padding-block:22px 50px}
 .kp-document .kp-section-stack{gap:12px}
 .kp-document .kp-section{grid-template-columns:5px 1fr;border-radius:14px}
 .kp-document .kp-section-inner{padding:23px 19px 25px}
 .kp-document .kp-section h2{font-size:21px;margin-block-end:17px}
 .kp-document .kp-prose{font-size:15px}
}
@media(max-width:440px){
 .kp-document .kp-tools{flex-wrap:wrap;gap:12px}
 .kp-document .kp-back{font-size:13px}
 .kp-document .kp-switch{margin-inline-start:auto}
 .kp-document .kp-switch a{padding:7px 10px}
 .kp-document .kp-heading{padding:27px 20px}
 .kp-document h1{font-size:31px}
 .kp-document .kp-prose ul{padding-inline-start:20px}
}
@media(prefers-reduced-motion:reduce){.kp-document *{transition:none!important;scroll-behavior:auto!important}}
@media print{
 body,.kp-document{background:#fff!important}
 .kp-document .kp-tools,.kp-document .kp-document-end,.kp-document .kp-emblem{display:none!important}
 .kp-document .kp-shell{width:100%}
 .kp-document .kp-heading{border:1px solid #ddd;background:white!important;padding:24px;border-radius:0;min-height:0;display:block}
 .kp-document .kp-heading::after{display:none}
 .kp-document .kp-content{padding-block:15px}
 .kp-document .kp-section{break-inside:avoid;box-shadow:none;border:0;border-block-end:1px solid #ddd;border-radius:0}
 .kp-document .kp-section-rule{display:none}
 .kp-document .kp-section-inner{padding:20px 0}
}
/* RTL: spacing uses logical properties. This is only a directional icon adjustment. */
:dir(rtl) .kp-document .kp-back svg{transform:rotate(180deg)}
:dir(rtl) .kp-document .kp-back:hover svg{transform:rotate(180deg) translateX(-3px)}
