/* Extracted hero & evolution visual styles */
@media (min-width: 992px) {
  .hero-container {padding-top:120px !important;padding-bottom:100px !important;}
}
.hero-flow-surface {background:#ffffff;border:1px solid #e2e8f0;border-radius:14px;position:relative;overflow:hidden;padding:16px 18px 14px;box-shadow:0 4px 14px -2px rgba(40,48,80,.15);}    
.hero-flow-vertical {display:flex;flex-direction:column;align-items:center;gap:14px;position:relative;}
.hero-stage {position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;}
.hero-node {position:relative;min-width:90px;max-width:110px;background:#fff;border:1px solid #dfe3ea;border-radius:10px;padding:8px 8px 6px;display:flex;flex-direction:column;align-items:center;gap:4px;box-shadow:0 2px 4px rgba(0,0,0,.05);transition:all .25s ease;cursor:default;}
.hero-node:hover {box-shadow:0 4px 10px rgba(0,0,0,.12);transform:translateY(-2px);}
.hero-node-icon {font-size:.9rem;line-height:1;}
.hero-node-label {font-size:.55rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;text-align:center;line-height:1.1;}
.node-generate {border-color:var(--bs-primary);background:linear-gradient(135deg,#eef2ff,#ffffff);} 
.node-generate .hero-node-icon {color:var(--bs-primary);} 
.node-review {border-color:var(--bs-info);background:linear-gradient(135deg,#e0f7ff,#ffffff);} 
.node-review .hero-node-icon {color:var(--bs-info);} 
.node-review-alt {border-color:var(--bs-success);background:linear-gradient(135deg,#dcfce7,#ffffff);} 
.node-review-alt .hero-node-icon {color:var(--bs-success);} 
.node-validate {border-color:var(--bs-warning);background:linear-gradient(135deg,#fff7e0,#ffffff);} 
.node-validate .hero-node-icon {color:var(--bs-warning);} 
.v-connector {width:4px;background:linear-gradient(180deg,var(--bs-primary),var(--bs-info));border-radius:2px;flex:1;min-height:22px;position:relative;overflow:hidden;}
.v-connector:after {content:"";position:absolute;left:0;top:0;bottom:0;width:100%;background:linear-gradient(180deg,var(--bs-primary),var(--bs-info),var(--bs-primary));background-size:100% 260%;animation:vFlow 6s linear infinite;opacity:.9;}
@keyframes vFlow {0%{background-position:0 0}50%{background-position:0 98%}100%{background-position:0 0}}
.branch-wrapper {display:flex;align-items:flex-start;justify-content:center;gap:34px;position:relative;margin-top:2px;margin-bottom:2px;padding:4px 8px 2px;}
.branch-wrapper:before,.branch-wrapper:after {content:"";position:absolute;top:0;left:50%;width:4px;height:12px;background:var(--bs-primary);transform:translateX(-50%);border-radius:2px;}
.branch-wrapper:after {top:auto;bottom:0;height:12px;}
.branch-connector-horizontal {position:absolute;top:14px;left:14%;right:14%;height:3px;background:linear-gradient(90deg,var(--bs-primary),var(--bs-info));border-radius:2px;}
.merge-connector {width:4px;height:18px;background:linear-gradient(180deg,var(--bs-info),var(--bs-warning));border-radius:2px;position:relative;overflow:hidden;}
.merge-connector:after {content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--bs-info),var(--bs-warning),var(--bs-info));background-size:100% 240%;animation:vFlow 7s linear infinite;opacity:.9;}
.hero-flow-badges {display:flex;gap:8px;margin-top:6px;flex-wrap:wrap;justify-content:center;}
.hero-flow-badges .badge i,.emergent-meta .badge i {font-size:.65rem;line-height:1;}
.emergent-surface {background:linear-gradient(135deg,#ffffff 0%,#fff9f0 100%);border:1px solid #f0ead9;border-radius:14px;position:relative;overflow:hidden;padding:14px;box-shadow:0 4px 16px -2px rgba(118,75,162,.18);}    
.emergent-grid {flex:1;min-height:155px;background:repeating-linear-gradient(90deg,#f3f4f6 0 14px,transparent 14px 28px),repeating-linear-gradient(0deg,#f3f4f6 0 14px,transparent 14px 28px);position:relative;border-radius:10px;overflow:hidden;}
.emergent-agent {position:absolute;border-radius:50%;backdrop-filter:blur(1px);box-shadow:0 2px 6px rgba(0,0,0,.25),0 0 0 2px rgba(255,255,255,.6) inset;animation-timing-function:ease-in-out;animation-iteration-count:infinite;}
@keyframes driftA {0%{transform:translate(0,0)}25%{transform:translate(8px,-6px)}50%{transform:translate(2px,4px)}75%{transform:translate(-6px,-3px)}100%{transform:translate(0,0)}}
@keyframes driftB {0%{transform:translate(0,0)}25%{transform:translate(-6px,4px)}50%{transform:translate(4px,6px)}75%{transform:translate(6px,-4px)}100%{transform:translate(0,0)}}
@keyframes driftC {0%{transform:translate(0,0)}25%{transform:translate(10px,6px)}50%{transform:translate(-4px,4px)}75%{transform:translate(4px,-8px)}100%{transform:translate(0,0)}}
@keyframes pulseGlow {0%,100%{box-shadow:0 2px 6px rgba(0,0,0,.25),0 0 0 2px rgba(255,255,255,.55) inset}50%{box-shadow:0 4px 10px rgba(0,0,0,.35),0 0 0 3px rgba(255,255,255,.65) inset}}
.emergent-agent {animation-name:driftA,pulseGlow;animation-duration:6s,3.8s;}
.emergent-agent.variant-b {animation-name:driftB,pulseGlow;animation-duration:7s,4.5s;}
.emergent-agent.variant-c {animation-name:driftC,pulseGlow;animation-duration:5.2s,3.2s;}
.emergent-agent.variant-d {animation-name:driftB,pulseGlow;animation-duration:8.4s,4.1s;}
.emergent-agent.variant-e {animation-name:driftA,pulseGlow;animation-duration:6.8s,5s;}
.emergent-agent.variant-f {animation-name:driftC,pulseGlow;animation-duration:7.6s,3.6s;}
.emergent-meta {margin-top:8px;display:flex;justify-content:center;gap:6px;}
.emergent-badge {background:#312e81;color:#fff;font-size:.55rem;font-weight:600;padding:3px 6px;border-radius:999px;letter-spacing:.5px;display:inline-flex;align-items:center;gap:4px;}
.floating-indicator {animation:indicatorFloat 6s ease-in-out infinite;}
.hero-flow-pair > [class*='col-'] {display:flex;}
.hero-flow-pair .hero-flow-surface,.hero-flow-pair .emergent-surface {height:100%;width:100%;}
.hero-flow-pair .emergent-surface {display:flex;flex-direction:column;justify-content:space-between;}
@keyframes indicatorFloat {0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.hero-evolution-card {background:#ffffff;border:1px solid #e2e8f0;border-radius:18px;position:relative;overflow:hidden;padding:20px 22px;display:flex;flex-direction:column;gap:14px;min-height:300px;backdrop-filter:blur(4px);box-shadow:0 8px 28px -6px rgba(50,50,93,.25),0 3px 6px -3px rgba(0,0,0,.3);}    
.evolution-grid {display:grid;grid-template-columns:1fr 46px 1fr;align-items:stretch;gap:8px;flex:1;min-height:200px;}
@media (max-width: 991.98px){.evolution-grid{grid-template-columns:1fr;grid-template-rows:auto 50px auto;}}
.evolution-section {position:relative;border-radius:14px;padding:16px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;}
.evolution-section.now {background:linear-gradient(145deg,#eef2ff 0%,#ffffff 70%);border:1px solid rgba(99,102,241,.35);} 
.evolution-section.soon {background:linear-gradient(145deg,#fff7ed 0%,#ffffff 65%);border:1px solid rgba(245,158,11,.35);display:flex;flex-direction:column;justify-content:space-between;} 
.evolution-label {font-size:.6rem;font-weight:700;letter-spacing:.12em;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.6);backdrop-filter:blur(3px);color:#334155;margin-bottom:10px;}
.evolution-label.now {color:var(--bs-primary);border:1px solid rgba(99,102,241,.35);} 
.evolution-label.soon {color:var(--bs-warning);border:1px solid rgba(245,158,11,.4);} 
.mini-flow {display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;padding:4px 4px 2px;}
.mini-node {background:#fff;border:1px solid #d3d8e2;border-radius:10px;min-width:96px;padding:8px 8px 6px;text-align:center;box-shadow:0 2px 4px rgba(0,0,0,.06);position:relative;transition:.25s;}
.mini-node:hover {transform:translateY(-2px);box-shadow:0 6px 14px -4px rgba(60,72,97,.35);} 
.mini-node.primary {border-color:var(--bs-primary);background:linear-gradient(135deg,#eef2ff 0%,#ffffff 75%);} 
.mini-node.info {border-color:var(--bs-info);background:linear-gradient(135deg,#e0f7ff 0%,#ffffff 75%);} 
.mini-node.success {border-color:var(--bs-success);background:linear-gradient(135deg,#dcfce7 0%,#ffffff 75%);} 
.mini-node.warning {border-color:var(--bs-warning);background:linear-gradient(135deg,#fff7e0 0%,#ffffff 75%);} 
.mini-node.primary i,.mini-node.primary small {color:var(--bs-primary);} 
.mini-node.info i,.mini-node.info small {color:var(--bs-info);} 
.mini-node.success i,.mini-node.success small {color:var(--bs-success);} 
.mini-node.warning i,.mini-node.warning small {color:var(--bs-warning);} 
.mini-node small {display:block;font-size:.55rem;font-weight:600;letter-spacing:.5px;margin-top:2px;color:#334155;}
.micro-desc {display:block;font-size:.48rem;line-height:1.05;margin-top:2px;font-weight:500;letter-spacing:.3px;color:#64748b;max-width:120px;}
.mini-branch {display:flex;justify-content:center;gap:28px;position:relative;margin:2px 0 2px;padding:4px 4px;}
.variant-group {border:1px dashed #cbd5e1;border-radius:12px;padding:8px 10px 6px;display:flex;flex-direction:column;align-items:center;gap:10px;position:relative;}
.variant-tag {position:absolute;top:-10px;background:#fff;border:1px solid #cbd5e1;padding:2px 6px;border-radius:999px;font-size:.45rem;font-weight:700;letter-spacing:.12em;color:#475569;}
.flow-arrow {display:flex;align-items:center;justify-content:center;font-size:14px;color:#64748b;line-height:1;opacity:.85;margin:-4px 0 -4px;}
.flow-arrow i {font-size:18px;}
.emergent-field {flex:1;position:relative;border-radius:12px;overflow:hidden;min-height:230px;background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.9),rgba(255,255,255,.7) 35%,rgba(255,255,255,.5) 60%,rgba(255,255,255,0) 75%),repeating-linear-gradient(90deg,#f3f4f6 0 14px,transparent 14px 28px),repeating-linear-gradient(0deg,#f3f4f6 0 14px,transparent 14px 28px);} 
.emergent-meta-bar {margin-top:10px;font-size:.5rem;letter-spacing:.5px;display:flex;justify-content:center;gap:14px;color:#475569;opacity:.85;flex-wrap:wrap;}
.emergent-meta-bar span {display:inline-flex;align-items:center;gap:4px;}
.emergent-agent.pulse::after {content:"";position:absolute;inset:-4px;border:2px solid rgba(99,102,241,.45);border-radius:50%;animation:pulseRing 2.8s ease-out infinite;}
@keyframes pulseRing {0%{transform:scale(.5);opacity:.9}70%{transform:scale(1.35);opacity:0}100%{opacity:0}}
.emergent-particle {position:absolute;border-radius:50%;background:linear-gradient(135deg,var(--c1),var(--c2));width:18px;height:18px;box-shadow:0 2px 6px rgba(0,0,0,.25),0 0 0 2px rgba(255,255,255,.6) inset;animation:particleDrift var(--dur) ease-in-out infinite,var(--pulse) linear infinite;opacity:.95;} 
.emergent-particle.wander {animation:none;transition:transform 4s ease-in-out;}
@keyframes particleDrift {0%{transform:translate(0,0)}25%{transform:translate(var(--dx1),var(--dy1))}50%{transform:translate(var(--dx2),var(--dy2))}75%{transform:translate(var(--dx3),var(--dy3))}100%{transform:translate(0,0)}}
@keyframes softPulse {0%,100%{filter:brightness(1)}50%{filter:brightness(1.28)}}
.evolution-divider {display:flex;align-items:center;justify-content:center;position:relative;}
.evolution-divider:before {content:"";position:absolute;top:10%;bottom:10%;width:2px;background:linear-gradient(180deg,rgba(102,126,234,.15),rgba(118,75,162,.4),rgba(255,193,7,.35));border-radius:2px;}
.divider-icon {position:relative;z-index:2;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px -2px rgba(0,0,0,.35);} 
@media (max-width:991.98px){.evolution-divider:before{width:60%;height:2px;top:50%;left:20%;right:20%;background:linear-gradient(90deg,rgba(102,126,234,.15),rgba(118,75,162,.4),rgba(255,193,7,.35));}}
.evolution-badges {display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:4px;}
.evolution-badges .badge i {font-size:.65rem;line-height:1;}
[data-theme='dark'] .hero-evolution-card {background:rgba(30,34,54,.85);border-color:#293048;}
[data-theme='dark'] .evolution-section.now {background:linear-gradient(145deg,#293048,#1e2236);}
[data-theme='dark'] .evolution-section.soon {background:linear-gradient(145deg,#312a1a,#1e2236);} 
[data-theme='dark'] .mini-node {background:#1e2230;color:#e2e8f0;border-color:#364159;} 
[data-theme='dark'] .mini-node small {color:#cbd5e1;}
