.service-overview { max-width: 1200px; margin: 0 auto; padding: 100px 40px; }
.overview-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
@media (max-width: 900px) {
.overview-grid { grid-template-columns: 1fr; }
}
.overview-text h2 { font-size: 36px; font-weight: 800; color: #fff; margin-bottom: 20px; line-height: 1.2; }
.overview-text p { font-size: 15px; color: #888; line-height: 1.8; margin-bottom: 16px; }
.overview-img { border-radius: 20px; overflow: hidden; background: #161616; border: 1px solid rgba(255,255,255,0.07); min-height: 360px; display: flex; align-items: center; justify-content: center; font-size: 80px; }
.funnel-visual { width:100%; display:flex; flex-direction:column; align-items:center; }
.fv-sources { display:flex; gap:14px; margin-bottom:14px; }
.fv-source { display:flex; flex-direction:column; align-items:center; gap:6px; }
.fv-source-icon { width:42px; height:42px; background:rgba(234,179,8,0.1); border:1px solid rgba(234,179,8,0.3); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:18px; animation:fv-bob 2.4s ease-in-out infinite; }
.fv-source:nth-child(2) .fv-source-icon { animation-delay:.2s; }
.fv-source:nth-child(3) .fv-source-icon { animation-delay:.4s; }
.fv-source:nth-child(4) .fv-source-icon { animation-delay:.6s; }
.fv-source span { font-size:9px; font-weight:700; color:#555; letter-spacing:.5px; text-transform:uppercase; }
.fv-connector { width:2px; height:16px; background:linear-gradient(to bottom,rgba(234,179,8,.5),rgba(234,179,8,.1)); position:relative; overflow:hidden; margin:0 auto; }
.fv-connector::after { content:''; position:absolute; top:-100%; left:0; width:100%; height:100%; background:linear-gradient(to bottom,transparent,#eab308,transparent); animation:fv-flow 1.2s linear infinite; }
.fv-stages { width:100%; display:flex; flex-direction:column; align-items:center; gap:3px; }
.fv-stage { display:flex; align-items:center; justify-content:space-between; padding:11px 18px; border-radius:8px; border:1px solid; transition:box-shadow .3s, border-color .3s; cursor:default; }
.fv-stage:nth-child(1) { width:100%; background:rgba(234,179,8,.13); border-color:rgba(234,179,8,.3); animation:fv-glow 4s ease-in-out infinite 0s; }
.fv-stage:nth-child(2) { width:78%; background:rgba(234,179,8,.10); border-color:rgba(234,179,8,.22); animation:fv-glow 4s ease-in-out infinite .8s; }
.fv-stage:nth-child(3) { width:57%; background:rgba(234,179,8,.07); border-color:rgba(234,179,8,.16); animation:fv-glow 4s ease-in-out infinite 1.6s; }
.fv-stage:nth-child(4) { width:38%; background:rgba(234,179,8,.18); border-color:rgba(234,179,8,.5); animation:fv-glow 4s ease-in-out infinite 2.4s; }
.fv-stage:hover { box-shadow:0 0 22px rgba(234,179,8,.45)!important; border-color:rgba(234,179,8,.85)!important; }
.fv-stage-label { font-size:11px; font-weight:700; color:#fff; letter-spacing:.3px; }
.fv-stage-metric { font-size:10px; color:#eab308; font-weight:600; }
.fv-output-connector { width:2px; height:16px; background:linear-gradient(to bottom,rgba(234,179,8,.4),rgba(234,179,8,.9)); margin:0 auto; position:relative; overflow:hidden; }
.fv-output-connector::after { content:''; position:absolute; top:-100%; left:0; width:100%; height:100%; background:linear-gradient(to bottom,transparent,#fff,transparent); animation:fv-flow .9s linear infinite; }
.fv-output { background:rgba(234,179,8,.1); border:1px solid rgba(234,179,8,.45); border-radius:12px; padding:14px 32px; text-align:center; box-shadow:0 0 24px rgba(234,179,8,.15); animation:fv-pulse 2s ease-in-out infinite; }
.fv-output-value { font-size:30px; font-weight:800; color:#eab308; line-height:1; margin-bottom:4px; }
.fv-output-label { font-size:9px; font-weight:700; color:#888; letter-spacing:1.5px; text-transform:uppercase; }
@keyframes fv-bob { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-4px)} }
@keyframes fv-flow { to{top:200%} }
@keyframes fv-glow { 0%,100%{box-shadow:none} 25%{box-shadow:0 0 18px rgba(234,179,8,.4),0 0 36px rgba(234,179,8,.1); border-color:rgba(234,179,8,.8);} }
@keyframes fv-pulse { 0%,100%{box-shadow:0 0 24px rgba(234,179,8,.15)} 50%{box-shadow:0 0 40px rgba(234,179,8,.35),0 0 70px rgba(234,179,8,.1)} }
