/* Page-specific service visuals */
.svc-hero{padding:60px 6% 80px;position:relative;overflow:hidden}
.svc-hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 55% 50% at 70% 30%,rgba(124,58,237,.09) 0%,transparent 60%),radial-gradient(ellipse 40% 40% at 20% 80%,rgba(167,139,250,.06) 0%,transparent 55%);pointer-events:none}
.svc-hero-inner{max-width:1240px;margin:0 auto;position:relative;z-index:1}
.svc-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.svc-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border:1px solid rgba(124,58,237,.2);border-radius:100px;font-size:12px;color:var(--vl);background:rgba(124,58,237,.06);font-weight:600;letter-spacing:.3px;text-transform:uppercase;margin-bottom:24px}
.svc-pill-dot{width:6px;height:6px;background:var(--vl);border-radius:50%;animation:svcpulse 2s infinite}
.svc-h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(34px,4.5vw,52px);font-weight:700;letter-spacing:-1.5px;line-height:1.1;color:var(--text);margin-bottom:8px}
.svc-h1-sub{font-family:'Figtree',sans-serif;font-size:clamp(16px,2vw,20px);font-weight:600;color:var(--vl);margin-bottom:20px;display:block}
.svc-sub{font-size:17px;line-height:1.7;color:var(--muted);max-width:480px;margin-bottom:32px}
.svc-sub strong{color:var(--text)}
/* Hero visual - RAG demo card */
.svc-hero-visual{position:relative}
.rag-demo-card{
  background:rgba(13,13,34,.92);border:1px solid var(--border);border-radius:20px;
  overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px rgba(167,139,250,.06);
}
.rag-demo-header{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.015)}
.rag-dots{display:flex;gap:5px}
.rd{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.1)}
.rd.active{background:var(--violet)}
.rag-demo-label{font-size:11px;color:var(--vl);font-weight:700;letter-spacing:1px;text-transform:uppercase}
.rag-demo-body{padding:22px}
.rag-docs-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.rag-doc-chip{padding:5px 12px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:6px;font-size:11px;color:var(--muted);transition:border-color .3s,color .3s,background .3s}
.rag-doc-chip.active{border-color:var(--violet);color:var(--vl);background:rgba(124,58,237,.07)}
.rag-q-box{display:flex;align-items:center;gap:10px;padding:12px 16px;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;opacity:0;transform:translateY(8px)}
.rag-q-box.show{animation:ragIn .35s ease forwards}
@keyframes ragIn{to{opacity:1;transform:translateY(0)}}
.rag-q-text{font-size:13.5px;color:var(--text)}
.rag-answer-box{background:rgba(124,58,237,.06);border:1px solid rgba(124,58,237,.15);border-radius:10px;padding:16px;opacity:0;transform:translateY(8px)}
.rag-answer-box.show{animation:ragIn .4s ease forwards}
.rag-answer-label{font-size:10px;color:var(--vl);font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.rag-answer-text{font-size:13.5px;color:var(--text);line-height:1.65;margin-bottom:10px}
.rag-answer-text strong{color:var(--mint)}
.rag-source-row{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);padding-top:10px;border-top:1px solid var(--border)}
.rag-confidence{display:inline-flex;align-items:center;gap:4px;background:rgba(110,231,183,.08);border:1px solid rgba(110,231,183,.15);border-radius:4px;padding:2px 8px;font-size:10px;color:var(--mint);margin-left:auto}

/* ── PROBLEM/SOLUTION SECTION ── */
.problem-section{padding:100px 6%}
.problem-inner{max-width:1100px;margin:0 auto}
.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.problem-card,.solution-card{border-radius:18px;padding:32px;display:flex;flex-direction:column;gap:16px}
.problem-card{background:rgba(248,113,113,.04);border:1px solid rgba(248,113,113,.15)}
.solution-card{background:rgba(110,231,183,.04);border:1px solid rgba(110,231,183,.15)}
.pc-label{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;width:fit-content;padding:4px 12px;border-radius:20px}
.problem-card .pc-label{background:rgba(248,113,113,.1);color:#F87171}
.solution-card .pc-label{background:rgba(110,231,183,.1);color:var(--mint)}
.pc-title{font-family:'Space Grotesk',sans-serif;font-size:19px;font-weight:700;color:var(--text)}
.pc-list{display:flex;flex-direction:column;gap:10px}
.pc-item{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.55;color:var(--muted)}
.pc-icon{width:18px;height:18px;border-radius:50%;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}
.problem-card .pc-icon{background:rgba(248,113,113,.1);color:#F87171}
.solution-card .pc-icon{background:rgba(110,231,183,.1);color:var(--mint)}

/* ── HOW IT WORKS ── */
.hiw-section{padding:100px 6%;background:rgba(124,58,237,.02)}
.hiw-inner{max-width:1000px;margin:0 auto}
.hiw-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;position:relative}
.hiw-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;position:relative;padding:0 16px}
.hiw-step:not(:last-child)::after{content:'';position:absolute;top:24px;left:calc(50% + 36px);right:calc(-50% + 36px);height:1px;background:linear-gradient(90deg,rgba(124,58,237,.3),rgba(124,58,237,.1))}
.hiw-num{width:48px;height:48px;border-radius:50%;background:rgba(124,58,237,.1);border:1px solid rgba(124,58,237,.25);display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-size:18px;font-weight:700;color:var(--vl);position:relative;z-index:1;background-color:var(--bg)}
.hiw-title{font-size:15px;font-weight:700;color:var(--text)}
.hiw-desc{font-size:13px;line-height:1.6;color:var(--muted)}

/* ── BENEFITS ── */
.benefits-section{padding:100px 6%}
.benefits-inner{max-width:1100px;margin:0 auto}
.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px}
.benefit-card{background:rgba(13,13,34,.6);border:1px solid var(--border);border-radius:16px;padding:28px 24px;transition:transform .3s,border-color .3s}
.benefit-card:hover{transform:translateY(-4px);border-color:rgba(124,58,237,.25)}
.benefit-icon{width:44px;height:44px;border-radius:12px;background:rgba(124,58,237,.1);border:1px solid rgba(124,58,237,.2);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.benefit-title{font-family:'Space Grotesk',sans-serif;font-size:17px;font-weight:700;color:var(--text);margin-bottom:8px}
.benefit-desc{font-size:13px;line-height:1.6;color:var(--muted)}

/* ── USE CASES TABS ── */
.usecases-section{padding:100px 6%}
.usecases-inner{max-width:1100px;margin:0 auto}
.uc-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:36px;flex-wrap:wrap}
.uc-tab{padding:9px 18px;border-radius:20px;border:1px solid var(--border);background:rgba(255,255,255,.02);color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;transition:all .25s;font-family:'Figtree',sans-serif}
.uc-tab.active{background:rgba(124,58,237,.12);border-color:rgba(124,58,237,.3);color:var(--vl)}
.uc-panels{position:relative}
.uc-panel{display:none;background:rgba(13,13,34,.6);border:1px solid var(--border);border-radius:18px;padding:36px;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.uc-panel.active{display:grid;animation:ragIn .4s ease}
.uc-panel-tag{font-size:11px;color:var(--mint);background:rgba(110,231,183,.08);border:1px solid rgba(110,231,183,.15);border-radius:20px;padding:4px 12px;font-weight:600;width:fit-content;margin-bottom:14px}
.uc-panel-title{font-family:'Space Grotesk',sans-serif;font-size:21px;font-weight:700;color:var(--text);margin-bottom:12px;line-height:1.3}
.uc-panel-desc{font-size:14px;line-height:1.7;color:var(--muted)}
.uc-visual{background:#070b12;border-radius:12px;padding:18px;border:1px solid var(--border)}
.uc-q{font-size:12px;color:var(--text);background:rgba(124,58,237,.08);border-radius:8px;padding:8px 12px;margin-bottom:10px}
.uc-a{font-size:12px;color:var(--muted);line-height:1.6}
.uc-a strong{color:var(--mint)}
.uc-src{font-size:10.5px;color:var(--muted);margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}

/* ── FAQ MINI ── */
.faq-mini-section{padding:100px 6%}
.faq-mini-inner{max-width:760px;margin:0 auto}
.faq-mini-item{border-top:1px solid var(--border)}
.faq-mini-item:last-child{border-bottom:1px solid var(--border)}
.faq-mini-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;background:none;border:none;cursor:pointer;text-align:left}
.faq-mini-q-text{font-size:15px;font-weight:600;color:var(--text)}
.faq-mini-icon{width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.04);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s}
.faq-mini-item.open .faq-mini-icon{transform:rotate(45deg);background:rgba(124,58,237,.15);border-color:rgba(124,58,237,.3)}
.faq-mini-icon svg{width:11px;height:11px;stroke:var(--muted);fill:none;stroke-width:2.5;stroke-linecap:round}
.faq-mini-answer{overflow:hidden;max-height:0;transition:max-height .4s ease}
.faq-mini-item.open .faq-mini-answer{max-height:340px}
.faq-mini-answer-inner{padding:0 0 20px;font-size:14px;line-height:1.7;color:var(--muted)}
.faq-onprem-note{margin-top:14px;padding:14px 16px;background:rgba(124,58,237,.06);border:1px solid rgba(124,58,237,.15);border-radius:10px;font-size:13.5px;line-height:1.65;color:var(--muted)}
.faq-onprem-note strong{color:var(--vl);display:block;margin-bottom:4px}

/* ── reveal ── */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:translateY(0)}


/* ── PREMIUM MOTION LAYERS ── */
.svc-hero-visual{min-height:520px;display:flex;align-items:center;justify-content:center;isolation:isolate}
.svc-hero-visual::before{content:'';position:absolute;inset:-28px;border-radius:32px;background:radial-gradient(circle at 24% 20%,rgba(110,231,183,.12),transparent 28%),radial-gradient(circle at 78% 68%,rgba(124,58,237,.22),transparent 38%);filter:blur(22px);opacity:.8;z-index:-2;animation:ambientPulse 6.4s ease-in-out infinite}
.svc-hero-visual::after{content:'';position:absolute;width:86%;height:86%;border:1px solid rgba(167,139,250,.08);border-radius:28px;transform:rotate(-4deg);z-index:-1;animation:softTilt 7.6s ease-in-out infinite}
@keyframes ambientPulse{0%,100%{opacity:.55;transform:scale(.98)}50%{opacity:.9;transform:scale(1.03)}}
@keyframes softTilt{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(-2deg) translateY(-8px)}}
.rag-demo-card{position:relative;width:min(100%,540px);animation:cardFloat 5.8s ease-in-out infinite}
@keyframes cardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.rag-demo-card::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1px;background:linear-gradient(135deg,rgba(167,139,250,.42),transparent 30%,rgba(110,231,183,.22) 62%,transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.knowledge-orbit{position:absolute;inset:-34px;pointer-events:none;z-index:2}
.orbit-badge{position:absolute;display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:rgba(13,13,34,.76);border:1px solid rgba(167,139,250,.14);box-shadow:0 18px 50px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.05);backdrop-filter:blur(18px);font-size:11px;font-weight:700;color:var(--text);letter-spacing:.1px;opacity:0;transform:translateY(8px) scale(.98);animation:badgeCycle 7.2s ease-in-out infinite}
.orbit-badge svg,.brand-logo svg{display:block;width:17px;height:17px;flex:0 0 17px}
.orbit-badge:nth-child(1){top:28px;left:-20px;animation-delay:0s;animation-duration:7.4s}
.orbit-badge:nth-child(2){top:124px;right:-26px;animation-delay:1.1s;animation-duration:7.1s}
.orbit-badge:nth-child(3){bottom:128px;left:-32px;animation-delay:2.2s;animation-duration:7.8s}
.orbit-badge:nth-child(4){bottom:34px;right:18px;animation-delay:3.3s;animation-duration:7.3s}
@keyframes badgeCycle{0%,14%{opacity:0;transform:translateY(8px) scale(.98)}22%,56%{opacity:1;transform:translateY(0) scale(1)}70%,100%{opacity:0;transform:translateY(-6px) scale(.98)}}
.brand-rail{margin-top:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:min(100%,540px)}
.brand-logo{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.025);border:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:700;min-height:42px;animation:railFloat 5.6s ease-in-out infinite}
.brand-logo:nth-child(2){animation-delay:.7s}.brand-logo:nth-child(3){animation-delay:1.4s}.brand-logo:nth-child(4){animation-delay:2.1s}
@keyframes railFloat{0%,100%{transform:translateY(0);border-color:var(--border)}50%{transform:translateY(-5px);border-color:rgba(167,139,250,.18)}}
.rag-doc-chip{display:inline-flex;align-items:center;gap:7px}
.rag-doc-chip svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.answer-meter{height:4px;background:rgba(255,255,255,.05);border-radius:99px;overflow:hidden;margin-top:12px}
.answer-meter span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--violet),var(--mint));border-radius:inherit}
.rag-answer-box.show .answer-meter span{animation:meterFill 1.4s ease forwards .25s}
@keyframes meterFill{to{width:97%}}
.live-indicator{position:absolute;top:14px;right:18px;display:flex;align-items:center;gap:6px;font-size:10px;color:var(--mint);font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.live-indicator::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 0 rgba(110,231,183,.45);animation:livePing 1.6s infinite}
@keyframes livePing{70%{box-shadow:0 0 0 8px rgba(110,231,183,0)}100%{box-shadow:0 0 0 0 rgba(110,231,183,0)}}
.problem-card,.solution-card,.benefit-card,.uc-panel,.final-cta-inner{position:relative;overflow:hidden}
.problem-card::after,.solution-card::after,.benefit-card::after,.uc-panel::after,.final-cta-inner::after{content:'';position:absolute;inset:auto -40px -80px auto;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.08),transparent 70%);pointer-events:none}
.hiw-step .hiw-num::after{content:'';position:absolute;inset:-7px;border-radius:50%;border:1px solid rgba(167,139,250,.12);animation:ringBreath 3.8s ease-in-out infinite}
.hiw-step:nth-child(2) .hiw-num::after{animation-delay:.7s}.hiw-step:nth-child(3) .hiw-num::after{animation-delay:1.4s}
@keyframes ringBreath{0%,100%{transform:scale(.95);opacity:.35}50%{transform:scale(1.18);opacity:.85}}
@media(max-width:960px){.svc-hero-visual{min-height:auto}.knowledge-orbit{display:none}.brand-rail{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.svc-quick-stats{gap:18px}.brand-rail{display:none}.svc-hero-visual::after{display:none}.rag-demo-card{animation:none}.rag-demo-body{padding:18px}.rag-docs-row{gap:5px}.rag-doc-chip{font-size:10.5px;padding:5px 9px}}

/* ── RESPONSIVE ── */
@media(max-width:960px){
  .svc-hero-grid{grid-template-columns:1fr;gap:48px}
  .problem-grid{grid-template-columns:1fr}
  .benefits-grid{grid-template-columns:1fr 1fr}
  .hiw-steps{grid-template-columns:1fr;gap:32px}
  .hiw-step::after{display:none}
  .uc-panel{grid-template-columns:1fr}
  .nav-links{display:none}
  .hamburger{display:flex}
}
@media(max-width:600px){
  .benefits-grid{grid-template-columns:1fr}
  .uc-tabs{gap:6px}
  .uc-tab{font-size:12px;padding:7px 14px}
}


/* ── HERO VISUAL FIX: balanced premium layout, no overlaps ── */
.svc-hero-grid{grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);gap:52px}
.svc-hero-left{position:relative;z-index:3}
.svc-hero-visual{
  min-width:0;
  max-width:560px;
  width:100%;
  margin-left:auto;
  flex-direction:column;
  gap:14px;
  padding:18px 8px 8px;
  overflow:visible;
}
.svc-hero-visual::before{inset:0;border-radius:34px}
.svc-hero-visual::after{width:92%;height:82%;left:4%;top:9%}
.rag-demo-card{width:100%;max-width:520px;margin:0 auto;z-index:2}
.knowledge-orbit{
  inset:0;
  z-index:4;
  overflow:visible;
}
.orbit-badge{white-space:nowrap;padding:8px 11px;font-size:10.5px}
.orbit-badge svg,.brand-logo svg{width:16px;height:16px;flex-basis:16px}
.orbit-badge:nth-child(1){top:0;left:12px}
.orbit-badge:nth-child(2){top:74px;right:0}
.orbit-badge:nth-child(3){bottom:108px;left:0}
.orbit-badge:nth-child(4){bottom:8px;right:42px}
.rag-demo-header{gap:12px}
.rag-demo-label{flex:1;text-align:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live-indicator{position:static;flex:0 0 auto;margin-left:0}
.brand-rail{width:100%;max-width:520px;margin:0 auto;z-index:3}
.brand-logo{min-width:0;padding:10px 10px}
@media(max-width:1100px){
  .svc-hero-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:36px}
  .orbit-badge:nth-child(1){left:4px}
  .orbit-badge:nth-child(2){right:4px}
  .orbit-badge:nth-child(3){left:4px}
  .orbit-badge:nth-child(4){right:26px}
}
@media(max-width:960px){
  .svc-hero-grid{grid-template-columns:1fr;gap:44px}
  .svc-hero-visual{margin:0 auto;max-width:620px;padding-top:0}
  .knowledge-orbit{display:none}
  .brand-rail{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .svc-hero-visual{padding:0;gap:0}
  .rag-demo-header{padding:13px 14px}
  .rag-demo-label{text-align:right;font-size:10px}
  .live-indicator{display:none}
}
