  /* ============================================================
     PIKATESTI: tumma osio, valintalista ja elävä tuloskortti
     ============================================================ */
  .pt {
    position: relative;
    overflow: hidden;
    padding: 110px 0;
    background: linear-gradient(150deg, #0e1230 0%, #1a2452 50%, #2d1060 100%);
    color: #fff;
  }
  .pt::before {
    content: '';
    position: absolute;
    top: -220px;
    left: -160px;
    width: 620px;
    height: 620px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(245, 128, 36, .16) 0%, transparent 68%);
    pointer-events: none;
  }
  .pt::after {
    content: '';
    position: absolute;
    bottom: -240px;
    right: -120px;
    width: 640px;
    height: 640px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(233, 30, 133, .2) 0%, transparent 68%);
    pointer-events: none;
  }
  .pt .container { position: relative; z-index: 1; }
  .pt-intro { max-width: 820px; margin-bottom: 36px; }
  .pt-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    gap: 56px;
    align-items: stretch;
  }
  .pt .kicker { color: var(--orange-soft); }
  .pt .section-title { color: #fff; }
  .pt .section-lead { color: rgba(255,255,255,.7); margin-bottom: 0; }

  .pt-list { border: 0; display: grid; gap: 12px; }
  .pt-item {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 18px 20px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.04);
    font-size: 16px;
    line-height: 1.5;
    color: rgba(255,255,255,.86);
    cursor: pointer;
    transition: background .2s, border-color .2s, transform .2s cubic-bezier(.22,1,.36,1);
  }
  .pt-item:hover { background: rgba(255,255,255,.08); transform: translateX(4px); }
  .pt-item input { position: absolute; opacity: 0; width: 1px; height: 1px; }
  .pt-box {
    flex-shrink: 0;
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    margin-top: -1px;
    border-radius: 7px;
    border: 1.5px solid rgba(255,255,255,.4);
    transition: background .2s, border-color .2s;
  }
  .pt-box::after {
    content: '';
    width: 11px;
    height: 6px;
    margin-top: -3px;
    border-left: 2.5px solid #fff;
    border-bottom: 2.5px solid #fff;
    transform: rotate(-45deg) scale(0);
    transition: transform .2s cubic-bezier(.22,1,.36,1);
  }
  .pt-item:has(input:checked) { border-color: rgba(252, 181, 73, .55); background: rgba(245, 128, 36, .1); color: #fff; }
  .pt-item input:checked + .pt-box { background: var(--grad-tilt); border-color: transparent; }
  .pt-item input:checked + .pt-box::after { transform: rotate(-45deg) scale(1); }
  .pt-item input:focus-visible + .pt-box { outline: 2px solid var(--orange-soft); outline-offset: 3px; }

  .pt-result {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 34px 32px 30px;
    border-radius: 26px;
    background: #fff;
    color: var(--text);
    box-shadow: 0 30px 80px -24px rgba(0, 0, 0, .5);
  }
  .pt-meter { display: grid; grid-template-columns: repeat(6, 1fr); gap: 6px; margin-bottom: 14px; }
  .pt-meter i { height: 8px; border-radius: 4px; background: var(--surface-2); transition: background .35s; }
  .pt-result[data-level="1"] .pt-meter i:nth-child(-n+1),
  .pt-result[data-level="2"] .pt-meter i:nth-child(-n+2),
  .pt-result[data-level="3"] .pt-meter i:nth-child(-n+3),
  .pt-result[data-level="4"] .pt-meter i:nth-child(-n+4),
  .pt-result[data-level="5"] .pt-meter i:nth-child(-n+5),
  .pt-result[data-level="6"] .pt-meter i:nth-child(-n+6) { background: var(--grad); }
  .pt-count { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 18px; }
  .pt-title { font-size: clamp(22px, 2vw, 28px); font-weight: 900; line-height: 1.2; letter-spacing: -.015em; color: var(--navy-dark); margin-bottom: 12px; }
  .pt-text { font-size: 16px; line-height: 1.65; color: var(--text-muted); margin-bottom: 26px; }
  .pt-result .ai-hi { align-self: flex-start; margin-top: auto; max-width: 100%; }
  .pt-note { margin-top: 14px; font-size: 13px; color: var(--text-muted); }
  .pt-result.is-updated .pt-title { animation: ptPop .45s cubic-bezier(.22,1,.36,1); }
  @keyframes ptPop { from { opacity: .3; transform: translateY(6px); } }
  @media (prefers-reduced-motion: reduce) {
    .pt-result.is-updated .pt-title { animation: none; }
  }

  @media (max-width: 1000px) {
    .pt-grid { grid-template-columns: 1fr; gap: 36px; }
  }
  @media (max-width: 600px) {
    .pt { padding: 76px 0; }
    .pt-item { padding: 16px; font-size: 15px; }
    .pt-result { padding: 26px 22px; }
    .pt-result .ai-hi { width: 100%; }
  }
