/* ConnectPie – SOLUTIONS 전용 (루트 클래스: cp-pg-solutions) */
/* 오비트 그래픽 */
.cp-orb{position:relative;display:grid;place-items:center;width:min(100%,400px);aspect-ratio:1;margin:0 auto;border-radius:50%;border:1px dashed var(--cp-line);background:radial-gradient(circle,var(--cp-pv) 0 55%,transparent 56%)}
.cp-core{display:grid;place-items:center;width:34%;aspect-ratio:1;border-radius:50%;background:var(--cp-navy);color:#fff;font-family:var(--cp-font);font-size:15px;font-weight:800;line-height:1.2;text-align:center}
.cp-p{position:absolute;padding:8px 16px;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:99px;font-family:var(--cp-font);font-size:13px;font-weight:600;line-height:1.55;color:var(--cp-ink);animation:cp-float 6s ease-in-out infinite}
.cp-p1{top:8%;right:-2%}
.cp-p2{bottom:22%;left:-4%;animation-delay:-2s}
.cp-p3{bottom:6%;right:2%;animation-delay:-4s}

/* 서비스 목록 행 (Elementor Grid 컨테이너에 cp-row). 배경은 마우스를 올렸을 때만 표시 */
.elementor .cp-row{position:relative;border-bottom:1px solid var(--cp-line);transition:background-color .2s ease}
.elementor .cp-row:hover{background-color:var(--cp-pv)}

/* 구조도 */
.cp-ab{display:grid;grid-template-columns:2fr 1fr;gap:16px;font-family:var(--cp-font);color:var(--cp-ink)}
.cp-ab>div{padding:20px;background:var(--cp-bg);border:1px solid var(--cp-line);border-radius:18px}
.cp-ab>.cp-ab-c{background:var(--cp-pc)}
.cp-ab small{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--cp-mut)}
.cp-in2{display:grid;grid-template-columns:1fr auto 1.2fr;gap:12px;align-items:center;margin-top:12px}
.cp-bx{padding:18px;background:var(--cp-card);border:1px solid var(--cp-line);border-radius:12px;font-size:14px;line-height:1.55;text-align:center;color:var(--cp-ink)}
.cp-bx-d{background:var(--cp-navy);color:#fff}
.cp-bx-mt{margin-top:12px}
.cp-arrow{color:var(--cp-t);font-size:16px;font-weight:700}
@media (max-width:767px){
  .cp-in2{grid-template-columns:1fr}
  .cp-arrow{text-align:center;transform:rotate(90deg)}
  .cp-ab{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.cp-p{animation:none}}
