.process{background:var(--bg-secondary)}.section.process{padding-bottom:56px}.process-heading{font-size:clamp(2rem,4vw + .5rem,3rem);font-weight:700;color:var(--text-primary)}.process-heading-accent{font-family:var(--font-accent);font-style:italic;font-weight:400;font-size:1.08em;color:var(--accent-primary);text-shadow:0 0 28px rgba(142,255,168,.3)}.process .section-subtitle{font-size:.875rem;font-weight:300;color:#9ca3af;letter-spacing:.02em;max-width:520px;margin:0 auto;line-height:1.6;opacity:.85}.pipeline-grid{display:grid;grid-template-columns:repeat(4,1fr);position:relative;gap:0 8px}.pipeline-grid:before{content:"";position:absolute;top:23px;left:12.5%;right:12.5%;height:1px;background:#8effa81a;z-index:0;pointer-events:none}.pipeline-progress{position:absolute;top:23px;left:12.5%;width:0;height:1px;border-radius:1px;background:var(--accent-primary);box-shadow:0 0 8px #8effa88c;opacity:0;z-index:0;pointer-events:none;transition:width .55s cubic-bezier(.16,1,.3,1),opacity .35s ease}.pipeline-grid:has(.pipeline-step:nth-child(2):hover) .pipeline-progress{width:25%;opacity:1}.pipeline-grid:has(.pipeline-step:nth-child(3):hover) .pipeline-progress{width:50%;opacity:1}.pipeline-grid:has(.pipeline-step:nth-child(4):hover) .pipeline-progress{width:75%;opacity:1}.pipeline-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 8px}.pipeline-body{position:relative;width:100%;margin-top:30px;padding:18px 16px 20px;border-radius:14px;border:1px solid transparent;background:transparent;transition:background .45s ease,border-color .45s ease,box-shadow .45s ease}.pipeline-body:before{content:"";position:absolute;top:-30px;left:50%;transform:translate(-50%);width:1px;height:30px;background:#8effa82e;transition:background .4s ease}.pipeline-step:hover .pipeline-body:before{background:#8effa880}.pipeline-step:hover .pipeline-body{background:#0d110e73;border-color:#8effa814;box-shadow:0 10px 28px -14px #00000073}.pipeline-num{display:block;font-family:var(--font-accent);font-style:italic;font-weight:500;font-size:1.4rem;line-height:1;color:var(--accent-primary);opacity:.75;margin-bottom:10px;text-shadow:0 0 18px rgba(142,255,168,.2);transition:opacity .35s ease}.pipeline-step:hover .pipeline-num{opacity:1}.pipeline-tile{position:relative;width:48px;height:48px;border-radius:12px;overflow:hidden;margin-bottom:0;display:grid;place-items:center;color:#c9d1d9;background-color:#0c100e;background-image:radial-gradient(120% 120% at 50% -10%,rgba(142,255,168,.07),transparent 70%);border:1px solid rgba(142,255,168,.18);transition:border-radius .45s cubic-bezier(.16,1,.3,1),border-color .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1)}.pipeline-icon{display:inline-flex;align-items:center;justify-content:center;transition:transform .5s cubic-bezier(.16,1,.3,1)}.pipeline-grid:has(.pipeline-step:nth-child(1):hover) .pipeline-step:nth-child(-n+1) .pipeline-tile,.pipeline-grid:has(.pipeline-step:nth-child(2):hover) .pipeline-step:nth-child(-n+2) .pipeline-tile,.pipeline-grid:has(.pipeline-step:nth-child(3):hover) .pipeline-step:nth-child(-n+3) .pipeline-tile,.pipeline-grid:has(.pipeline-step:nth-child(4):hover) .pipeline-step:nth-child(-n+4) .pipeline-tile{border-color:#8effa873;box-shadow:0 0 14px #8effa824}.pipeline-step:hover .pipeline-tile{border-color:#8effa8b3;border-radius:50%;box-shadow:0 0 22px #8effa84d,inset 0 0 16px #8effa80d}.pipeline-step:hover .pipeline-icon{transform:scale(1.1)}.pipeline-step:nth-child(4):hover .pipeline-icon{transform:translateY(-3px) scale(1.05)}.pipeline-title{font-family:var(--font-main);font-size:1.1rem;font-weight:600;color:#f3f4f6;margin-bottom:10px;line-height:1.35}.pipeline-desc{font-family:var(--font-main);font-size:.875rem;font-weight:300;color:#9ca3af;line-height:1.65}@media(max-width:900px){.pipeline-grid{grid-template-columns:repeat(2,1fr);gap:36px 8px}.pipeline-grid:before,.pipeline-progress{display:none}}@media(max-width:600px){.pipeline-grid{grid-template-columns:1fr;gap:28px}.pipeline-step{text-align:left;align-items:flex-start;padding:0}}
