/* ============================= In practice (Connectors) =================== */
.pg-cndept { position:relative; background-color:#f4f7fd; padding:104px 0; overflow:hidden; }
.pg-cndept::before { content:""; position:absolute; inset:0; background:radial-gradient(46% 50% at 14% 88%, rgba(0,54,250,0.06), transparent 60%); pointer-events:none; }
.pg-cndept__inner { position:relative; max-width:1280px; margin:0 auto; padding:0 80px; }
.pg-cndept__kicker { font-family:"Cabin",sans-serif; font-weight:600; font-size:14px; line-height:16px; letter-spacing:0.1em; text-transform:uppercase; background:linear-gradient(90deg,#0036fa,#4e87fc); -webkit-background-clip:text; background-clip:text; color:transparent; }
.pg-cndept__title { font-family:"Cabin",sans-serif; font-weight:700; font-size:44px; line-height:1.22; color:#12140f; margin-top:18px; }
.pg-cndept__body { margin-top:48px; display:grid; grid-template-columns:minmax(0,0.4fr) minmax(0,0.6fr); gap:64px; align-items:start; }
.pg-cndept__tabs { display:flex; flex-direction:column; }
.pg-cndept__tab { position:relative; background:none; border:none; cursor:pointer; text-align:left; padding:12px 0 12px 24px; font-family:"Cabin",sans-serif; font-weight:700; font-size:32px; line-height:1.16; letter-spacing:-0.01em; color:#c3cbdd; transition:color 0.3s ease, padding-left 0.3s ease; }
.pg-cndept__tab::before { content:""; position:absolute; left:0; top:50%; height:26px; width:3px; border-radius:2px; background:linear-gradient(180deg,#0036fa,#4e87fc); transform:translateY(-50%) scaleY(0); transform-origin:center; transition:transform 0.32s cubic-bezier(0.34,1.4,0.64,1); }
.pg-cndept__tab:hover { color:#7b8194; }
.pg-cndept__tab.is-active { background:linear-gradient(90deg,#0036fa,#4e87fc); -webkit-background-clip:text; background-clip:text; color:transparent; padding-left:24px; }
.pg-cndept__tab.is-active::before { transform:translateY(-50%) scaleY(1); }
.pg-cndept__panels { position:relative; min-height:210px; padding-top:6px; }
.pg-cndept__panel { display:none; }
.pg-cndept__panel.is-active { display:block; animation:cndeptIn 0.45s ease; }
@keyframes cndeptIn { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
.pg-cndept__ghost { position:absolute; top:-34px; right:-6px; font-family:"Cabin",sans-serif; font-weight:700; font-size:120px; line-height:1; letter-spacing:-0.03em; color:#0036fa; opacity:0.05; pointer-events:none; z-index:0; }
.pg-cndept__tag { position:relative; z-index:1; font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace; font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:#0036fa; }
.pg-cndept__ptext { position:relative; z-index:1; font-family:"Cabin",sans-serif; font-weight:400; font-size:22px; line-height:34px; color:#2b2f38; margin-top:16px; max-width:560px; }
.pg-cndept__head, .pg-cndept__tab, .pg-cndept__panels { opacity:0; transform:translateY(16px); transition:opacity 0.6s ease, transform 0.6s ease, color 0.3s ease, padding-left 0.3s ease; }
.pg-cndept__head.is-in, .pg-cndept__tab.is-in, .pg-cndept__panels.is-in { opacity:1; transform:none; }
.pg-cndept__tab.is-in:nth-child(1) { transition-delay:0.05s; }
.pg-cndept__tab.is-in:nth-child(2) { transition-delay:0.12s; }
.pg-cndept__tab.is-in:nth-child(3) { transition-delay:0.19s; }
.pg-cndept__tab.is-in:nth-child(4) { transition-delay:0.26s; }
.pg-cndept__tab.is-in:nth-child(5) { transition-delay:0.33s; }
.pg-cndept__panels.is-in { transition-delay:0.2s; }
.pg-cndept__tab.is-active.is-in { color:transparent; }

@media (prefers-reduced-motion: reduce) {
  .pg-cndept__head, .pg-cndept__tab, .pg-cndept__panels { opacity:1; transform:none; transition:none; }
  .pg-cndept__panel.is-active { animation:none; }
}
@media (max-width:1040px) {
  .pg-cndept { padding:80px 0; }
  .pg-cndept__inner { padding:0 24px; }
  .pg-cndept__title { font-size:34px; }
  .pg-cndept__body { grid-template-columns:1fr; gap:32px; }
  .pg-cndept__tabs { flex-flow:row wrap; gap:8px 22px; }
  .pg-cndept__tab { font-size:24px; padding:6px 0 6px 14px; }
  .pg-cndept__tab::before { height:18px; }
  .pg-cndept__panels { min-height:0; }
  .pg-cndept__ghost { font-size:88px; top:-18px; }
  .pg-cndept__ptext { font-size:19px; line-height:30px; }
}
@media (max-width:600px) {
  .pg-cndept__title { font-size:28px; }
  .pg-cndept__tab { font-size:21px; }
  .pg-cndept__ptext { font-size:18px; line-height:29px; }
}
