* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; line-height: 1.6; overflow-x: hidden; background: #0f172a; }
.hidden { display: none !important; }
.calculator-card button#prevBtn:focus { background-color: black !important; }
#worldMap { height: 500px; width: 100%; }
.region-cards.row.g-4 { margin-top: 10px; }
:root {
    --primary-blue: #1e40af;
    --primary-blue-dark: #1e3a8a;
    --secondary-teal: #0d9488;
    --accent-orange: #ea580c;
    --accent-purple: #7c3aed;
    --success-green: #059669;
    --warning-yellow: #d97706;
    --error-red: #dc2626;
    --dark-bg: #0f172a;
    --dark-card: #1e293b;
    --light-bg: #f8fafc;
    --glass-bg: rgba(255, 255, 255, 0.1);
    --glass-border: rgba(255, 255, 255, 0.2);
}
.text-gradient { display: inline-block; background: linear-gradient(135deg, #3b82f6, #06b6d4, #8b5cf6); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; background-size: 200% 200%; animation: gradientShift 3s ease-in-out infinite; }
@keyframes gradientShift { 0%, 100% { background-position: 0% 50%; } }
.text-glow { text-shadow: 0 0 20px rgba(59, 130, 246, 0.5); }
.bg-primary-gradient { background: linear-gradient(135deg, #0f172a 0%, #1e40af 50%, #7c3aed 100%); position: relative; }
.bg-glass { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.2); }
.bg-dark-glass { background: rgba(15, 23, 42, 0.8); backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.1); }
.corporate-bg { background: linear-gradient(145deg, #f8fafc 0%, #ffffff 25%, #f1f5f9 75%, #f8fafc 100%), repeating-linear-gradient( 0deg, transparent, transparent 2px, rgba(59, 130, 246, 0.015) 2px, rgba(59, 130, 246, 0.015) 3px ), repeating-linear-gradient( 90deg, transparent, transparent 2px, rgba(6, 182, 212, 0.01) 2px, rgba(6, 182, 212, 0.01) 3px ); background-size: 100% 100%, 30px 30px, 30px 30px; position: relative; }
.corporate-bg::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(circle at 25% 25%, rgba(59, 130, 246, 0.03) 0%, transparent 50%), radial-gradient(circle at 75% 75%, rgba(6, 182, 212, 0.02) 0%, transparent 50%); animation: corporateGlow 15s ease-in-out infinite; }
@keyframes corporateGlow { 0%, 100% { opacity: 0.5; } 50% { opacity: 0.8; } }
.geometric-bg { background: linear-gradient(145deg, #ffffff 0%, #f7fafc 100%), linear-gradient(30deg, transparent 40%, rgba(59, 130, 246, 0.02) 40%, rgba(59, 130, 246, 0.02) 60%, transparent 60%), linear-gradient(150deg, transparent 40%, rgba(6, 182, 212, 0.015) 40%, rgba(6, 182, 212, 0.015) 60%, transparent 60%); background-size: 100% 100%, 60px 60px, 80px 80px; position: relative; overflow: hidden; }
.developers-carousel{ overflow: hidden; }
.geometric-bg::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: repeating-conic-gradient( from 0deg at 50% 50%, transparent 0deg, rgba(59, 130, 246, 0.01) 90deg, transparent 180deg, rgba(6, 182, 212, 0.008) 270deg, transparent 360deg ); background-size: 100px 100px; animation: conicRotate 60s linear infinite; opacity: 0.3; }
@keyframes conicRotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.hire.hero-section { background: linear-gradient(135deg, #fef7f0 0%, #FFF5F0 100%); position: relative; overflow: hidden; }
.hire .text-primary { color: #ff6b35 !important; }
.hire .cta-group { display: flex; flex-wrap: wrap; gap: 10px; }
.iso-badge { width: 50px; height: 50px; background: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); color: #FF6B35; font-size: 1.5rem; }
.feature-list { margin: 2rem 0; }
.feature-item { display: flex; align-items: flex-start; transition: transform 0.3s ease; }
.feature-item:hover { transform: translateX(5px); }
.check-icon { width: 24px; height: 24px; background: rgba(255, 107, 53, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #FF6B35; font-size: 0.9rem; flex-shrink: 0; margin-top: 2px; transition: background-color 0.3s ease; }
.feature-item:hover .check-icon { background: rgba(255, 107, 53, 0.2); }
.feature-title { cursor: pointer; transition: color 0.3s ease; }
.feature-title:hover { color: #e55a2b !important; }
.cta-button { transition: all 0.3s ease; font-size: 1.1rem; letter-spacing: 0.5px; }
.cta-button:hover { transform: translateY(-2px); box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15); }
.bullet-point { width: 4px; height: 4px; background: #6C757D; border-radius: 50%; }
.team-section { padding: 2rem 0; }
.team-label { position: absolute; top: 0; right: 20px; background: #fff; padding: 12px 20px; border-radius: 25px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); display: flex; align-items: center; z-index: 10; font-size: 0.9rem; color: #2C3E50; }
.arrow-right { width: 0; height: 0; border-left: 8px solid #FF6B35; border-top: 4px solid transparent; border-bottom: 4px solid transparent; }
.hire .developer-card { position: relative; border-radius: 20px; overflow: hidden; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); transition: all 0.3s ease; height: 200px; }
.hire .developer-card:hover { transform: translateY(-5px); box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15); }
.hire .developer-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
.hire .developer-card:hover img { transform: scale(1.05); }
.hire .developer-overlay { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(transparent, rgba(0, 0, 0, 0.7)); padding: 30px 15px 15px; opacity: 0; transition: opacity 0.3s ease; }
.hire .developer-card:hover .developer-overlay { opacity: 1; }
.hire .itechnolabs-badge { background: hsl(16, 100%, 60%); color: #fff; padding: 6px 12px; border-radius: 15px; font-size: 0.8rem; font-weight: 600; text-align: center; letter-spacing: 0.5px; }
.decoration { position: absolute; border-radius: 50%; opacity: 0.6; }
.decoration-1 { width: 80px; height: 80px; background: rgba(255, 107, 53, 0.2); top: -20px; right: -20px; animation: pulse 3s infinite; }
.decoration-2 { width: 120px; height: 120px; background: rgba(255, 182, 193, 0.3); bottom: -40px; left: -40px; }
@keyframes pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } }
.hire.stats-section { background: #fff; }
.hire .stat-card { background: linear-gradient(135deg, #FEF7F0 0%, #FFF5F0 100%); padding: 2rem 1rem; border-radius: 20px; transition: all 0.3s ease; height: 100%; }
.hire .stat-card:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); }
.hire .stat-number { font-size: 2.5rem; font-weight: 700; margin-bottom: 0.5rem; }
.hire .stat-label { color: #2C3E50; margin-bottom: 0.25rem; font-size: 1rem; }
.hire .stat-sublabel { font-size: 0.8rem; color: #6C757D; line-height: 1.3; }
.hire .stars i { font-size: 0.9rem; margin: 0 1px; }
.hero-section { position: relative;background: linear-gradient(135deg, #0f1419 0%, #1a202c 25%, #2d3748 50%, #1a202c 75%, #0f1419 100%); display: flex; align-items: center; overflow: hidden; padding-top: 30px; }
.neural-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: linear-gradient(30deg, transparent 12%, rgba(59, 130, 246, 0.05) 12%, rgba(59, 130, 246, 0.05) 14%, transparent 14%), linear-gradient(150deg, transparent 24%, rgba(6, 182, 212, 0.03) 25%, rgba(6, 182, 212, 0.03) 26%, transparent 27%); background-size: 120px 120px, 80px 80px; opacity: 0.7; }
.neural-background::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: repeating-linear-gradient( 0deg, transparent, transparent 2px, rgba(59, 130, 246, 0.03) 2px, rgba(59, 130, 246, 0.03) 4px ), repeating-linear-gradient( 90deg, transparent, transparent 2px, rgba(6, 182, 212, 0.02) 2px, rgba(6, 182, 212, 0.02) 4px ); background-size: 40px 40px, 40px 40px; animation: gridMove 30s linear infinite; opacity: 0.4; }
@keyframes geometricFloat { 0% { transform: translateX(0) translateY(0) rotate(0deg); } 25% { transform: translateX(-20px) translateY(-10px) rotate(90deg); } 50% { transform: translateX(-40px) translateY(-20px) rotate(180deg); } 75% { transform: translateX(-60px) translateY(-30px) rotate(270deg); } 100% { transform: translateX(-80px) translateY(-40px) rotate(360deg); } }
@keyframes gridMove { 0% { transform: translate(0, 0); } 100% { transform: translate(40px, 40px); } }
@keyframes geometricMove { 0% { background-position: 0 0, 0 0; } 100% { background-position: 100px 100px, -100px -100px; } }
.hero-content { z-index: 2; position: relative; }
.hero-title { font-size: 4rem; font-weight: 800; line-height: 1.1; color: white; margin-bottom: 2rem; text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); }
.hero-subtitle { font-size: 1.375rem; color: rgba(255, 255, 255, 0.9); line-height: 1.7; font-weight: 400; margin-bottom: 3rem; }
.hero-buttons { display: flex; gap: 1.5rem; margin-bottom: 4rem; }
.btn-glow { position: relative; overflow: hidden; box-shadow: 0 8px 32px rgba(59, 130, 246, 0.3); transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
.btn-glow::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.6s; }
.btn-glow:hover::before { left: 100%; }
.btn-glow:hover { transform: translateY(-3px); box-shadow: 0 12px 40px rgba(59, 130, 246, 0.4); }
.trust-indicators { margin-top: 3rem; }
.rating-container { display: flex; align-items: center; gap: 1rem; margin-bottom: 2rem; }
.stars { color: #fbbf24; font-size: 1.5rem; }
.rating-text { color: rgba(255, 255, 255, 0.9); font-weight: 600; font-size: 1.1rem; }
.client-logos { display: flex; gap: 2rem; align-items: center; flex-wrap: wrap; }
.client-logo { height: 50px; width: auto; filter: grayscale(100%) brightness(2) contrast(0.8); transition: all 0.4s ease; opacity: 0.7; }
.client-logo:hover { filter: grayscale(0%) brightness(1) contrast(1); opacity: 1; transform: scale(1.1); }
.hero-form { background: linear-gradient(145deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.06)); backdrop-filter: blur(30px); border-radius: 24px; padding: 3rem; box-shadow: 0 30px 60px rgba(0, 0, 0, 0.15), 0 15px 30px rgba(59, 130, 246, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.3), inset 0 -1px 0 rgba(59, 130, 246, 0.1); border: 1px solid rgba(255, 255, 255, 0.25); max-width: 450px; width: 100%; position: relative; }
.hero-form::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent); }
.form-title { color: white; font-weight: 700; text-align: center; font-size: 1.5rem; margin-bottom: 2rem; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); }
.form-control { border-radius: 12px; padding: 1rem 1.25rem; border: 2px solid rgba(255, 255, 255, 0.25); background: linear-gradient(145deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.08)); color: white; font-weight: 500; transition: all 0.3s ease; backdrop-filter: blur(15px); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.2); }
.form-control::placeholder { color: rgba(255, 255, 255, 0.75); }
.form-control:focus { border-color: rgba(6, 182, 212, 0.6); box-shadow: 0 0 0 0.25rem rgba(6, 182, 212, 0.25), 0 8px 25px rgba(6, 182, 212, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.3); background: linear-gradient(145deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.12)); outline: none; }
.section-title { font-size: 3rem; font-weight: 800; margin-bottom: 1.5rem; color: #1a202c; position: relative; }
.section-title-white { color: white; text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); }
.section-subtitle { font-size: 1.25rem; color: #4a5568; font-weight: 400; line-height: 1.6; }
.section-subtitle-light { color: rgba(255, 255, 255, 0.8); }
.value-prop-content { padding: 2rem 0; }
.value-stat-card { background: linear-gradient(135deg, #3b82f6, #06b6d4); border-radius: 20px; padding: 2rem; text-align: center; margin-bottom: 2rem; box-shadow: 0 20px 40px rgba(59, 130, 246, 0.3); transform: rotate(-5deg); width: fit-content; }
.stat-number { font-size: 3rem; font-weight: 900; color: white; line-height: 1; }
.stat-label { color: rgba(255, 255, 255, 0.9); font-weight: 600; font-size: 1.1rem; }
.value-title { font-size: 2.5rem; font-weight: 800; color: #1a202c; margin-bottom: 1.5rem; line-height: 1.2; }
.value-description { font-size: 1.1rem; color: #4a5568; line-height: 1.7; margin-bottom: 2rem; }
.value-highlights { space-y: 1rem; }
.highlight-item { display: flex; align-items: center; margin-bottom: 1rem; font-size: 1rem; color: #2d3748; font-weight: 500; }
.value-visual { display: flex; justify-content: center; align-items: center; height: 100%; }
.talent-funnel { display: flex; flex-direction: column; align-items: center; gap: 1rem; }
.funnel-stage { background: linear-gradient(145deg, #ffffff, #f7fafc); border-radius: 16px; padding: 1.5rem 2rem; text-align: center; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); border: 2px solid #e2e8f0; transition: all 0.3s ease; min-width: 200px; }
.funnel-stage.highlighted { background: linear-gradient(135deg, #3b82f6, #06b6d4); color: white; transform: scale(1.1); box-shadow: 0 20px 40px rgba(59, 130, 246, 0.3); }
.funnel-stage .stage-number { font-size: 2rem; font-weight: 900; margin-bottom: 0.5rem; }
.funnel-stage .stage-label { font-weight: 600; font-size: 0.9rem; }
.funnel-connector { width: 2px; height: 30px; background: linear-gradient(180deg, #3b82f6, #06b6d4); margin: 0.5rem 0; }
.feature-card { background: linear-gradient(145deg, #ffffff 0%, #f7fafc 100%); padding: 3rem 2rem; border-radius: 20px; text-align: center; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08), 0 8px 25px rgba(59, 130, 246, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.8); transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); border: 1px solid rgba(59, 130, 246, 0.1); position: relative; overflow: hidden; }
.feature-card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(145deg, rgba(59, 130, 246, 0.02), rgba(6, 182, 212, 0.02)); opacity: 0; transition: opacity 0.4s ease; pointer-events: none; }
.feature-card:hover::after { opacity: 1; }
.feature-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); transform: scaleX(0); transition: transform 0.4s ease; }
.feature-card:hover::before { transform: scaleX(1); }
.feature-card:hover { transform: translateY(-20px) scale(1.02); box-shadow: 0 35px 80px rgba(0, 0, 0, 0.12), 0 15px 35px rgba(59, 130, 246, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.9); border-color: rgba(59, 130, 246, 0.2); }
.feature-icon-modern { width: 80px; height: 80px; border-radius: 20px; background: linear-gradient(135deg, #3b82f6, #06b6d4); display: flex; align-items: center; justify-content: center; margin: 0 auto 1.5rem; font-size: 2rem; color: white; box-shadow: 0 10px 30px rgba(59, 130, 246, 0.3); }
.feature-card-modern h4 { color: var(--dark-bg); font-weight: 700; margin-bottom: 1rem; font-size: 1.25rem; }
.feature-card-modern p { color: #64748b; font-size: 1rem; line-height: 1.6; margin-bottom: 1.5rem; }
.feature-card-modern { background: linear-gradient(145deg, #ffffff 0%, #f7fafc 100%); padding: 2.5rem 2rem; border-radius: 20px; text-align: center; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08), 0 8px 25px rgba(59, 130, 246, 0.05); transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; border: 1px solid rgba(59, 130, 246, 0.1); position: relative; overflow: hidden; height: 100%; }
.feature-card-modern:hover { transform: translateY(-15px) scale(1.02); box-shadow: 0 35px 80px rgba(0, 0, 0, 0.12), 0 15px 35px rgba(59, 130, 246, 0.15); border-color: rgba(59, 130, 246, 0.2); }
.feature-card-modern::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); transform: scaleX(0); transition: transform 0.4s ease; }
.feature-card-modern:hover::before { transform: scaleX(1); }
.feature-metric { background: linear-gradient(135deg, #f8fafc, #f1f5f9); border-radius: 12px; padding: 1rem; text-align: center; }
.metric-number { display: block; font-size: 1.5rem; font-weight: 800; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.metric-label { font-size: 0.85rem; color: #64748b; font-weight: 600; }
.feature-icon { font-size: 3.5rem; margin-bottom: 2rem; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.feature-card h4 { color: var(--dark-bg); font-weight: 700; margin-bottom: 1.5rem; font-size: 1.375rem; }
.feature-card p { color: #64748b; font-size: 1rem; line-height: 1.6; }
.calculator-card { background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%); border-radius: 24px; padding: 4rem 3rem; box-shadow: 0 30px 80px rgba(0, 0, 0, 0.1), 0 15px 40px rgba(59, 130, 246, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.9), inset 0 -1px 0 rgba(59, 130, 246, 0.1); position: relative; overflow: hidden; border: 1px solid rgba(59, 130, 246, 0.1); }
.calculator-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.5), transparent); }
.calculator-steps { display: flex; justify-content: center; margin-bottom: 4rem; gap: 3rem; position: relative; }
.calculator-steps::before { content: ''; position: absolute; top: 20px; left: 20%; right: 20%; height: 2px; background: linear-gradient(90deg, #e2e8f0, var(--primary-blue), #e2e8f0); z-index: 0; }
.step { display: flex; flex-direction: column; align-items: center; opacity: 0.4; transition: all 0.4s ease; position: relative; z-index: 1; }
.step.active { opacity: 1; transform: scale(1.1); }
.step-number { width: 50px; height: 50px; border-radius: 50%; background: #e2e8f0; display: flex; align-items: center; justify-content: center; font-weight: 700; margin-bottom: 1rem; transition: all 0.4s ease; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); }
.step.active .step-number { background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); color: white; box-shadow: 0 8px 25px rgba(59, 130, 246, 0.4); }
.step span { font-weight: 600; color: var(--dark-bg); font-size: 0.9rem; }
.step-content { display: none; animation: slideInUp 0.6s ease; }
.step-content.active { display: block; }
@keyframes slideInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
.step-content h4 { text-align: center; margin-bottom: 3rem; font-size: 1.75rem; font-weight: 700; color: var(--dark-bg); }
.option-card { background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%); border: 2px solid rgba(59, 130, 246, 0.1); border-radius: 16px; padding: 2rem 1.5rem; text-align: center; cursor: pointer; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); position: relative; overflow: hidden; height: 100%; box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06), 0 3px 10px rgba(59, 130, 246, 0.04); }
.option-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(145deg, rgba(59, 130, 246, 0.08), rgba(6, 182, 212, 0.06)); opacity: 0; transition: opacity 0.3s ease; }
.option-card:hover::before { opacity: 1; }
.option-card:hover { border-color: rgba(59, 130, 246, 0.3); transform: translateY(-12px) scale(1.03); box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1), 0 15px 30px rgba(59, 130, 246, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.8); }
.option-card.selected { border-color: rgba(59, 130, 246, 0.4); background: linear-gradient(145deg, rgba(59, 130, 246, 0.08), rgba(6, 182, 212, 0.06)); box-shadow: 0 20px 45px rgba(59, 130, 246, 0.2), 0 8px 20px rgba(6, 182, 212, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.9); transform: translateY(-8px) scale(1.02); }
.option-card i { font-size: 2.5rem; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 1.5rem; position: relative; z-index: 1; }
.option-card h5 { font-weight: 700; color: var(--dark-bg); margin-bottom: 0.75rem; position: relative; z-index: 1; }
.option-card p { color: #64748b; font-size: 0.95rem; position: relative; z-index: 1; }
.formMainContainer .latestFormContainer { display: flex; flex-wrap: wrap; gap: 15px; justify-content: space-between; }
.experience-details { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid #e2e8f0; }
.experience-details small { color: #64748b; line-height: 1.5; }
.interactive-map-container { background: linear-gradient(145deg, #ffffff, #f7fafc); border-radius: 20px; padding: 2rem; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08); border: 1px solid rgba(59, 130, 246, 0.1); min-height: 400px; }
.map-container { position: relative; width: 100%; display: block; }
.world-map { position: relative; width: 100%; height: 400px; display: block; }
.map-svg { width: 100%; height: 100%; display: block; }
.continent { fill: #e2e8f0; stroke: #cbd5e1; stroke-width: 1; transition: all 0.3s ease; cursor: pointer; }
.continent:hover { fill: rgba(59, 130, 246, 0.2); stroke: #3b82f6; }
.continent.active { fill: rgba(59, 130, 246, 0.3); stroke: #3b82f6; stroke-width: 2; }
.map-marker { position: absolute; cursor: pointer; z-index: 10; }
.marker-dot { width: 12px; height: 12px; background: #3b82f6; border-radius: 50%; border: 3px solid white; box-shadow: 0 4px 15px rgba(59, 130, 246, 0.4); }
.marker-pulse { position: absolute; top: -8px; left: -8px; width: 28px; height: 28px; border-radius: 50%; background: rgba(59, 130, 246, 0.3); animation: pulse 2s infinite; }
@keyframes pulse { 0% { transform: scale(0.8); opacity: 1; } 100% { transform: scale(2); opacity: 0; } }
.region-details-panel { background: linear-gradient(145deg, #ffffff, #f7fafc); border-radius: 20px; padding: 2rem; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08); border: 1px solid rgba(59, 130, 246, 0.1); height: 400px; position: relative; }
.region-info { display: none; animation: fadeInUp 0.5s ease; }
.region-info.active { display: block; }
.region-info h4 { color: #1a202c; font-weight: 700; margin-bottom: 2rem; font-size: 1.5rem; }
.region-stats { margin-bottom: 2rem; }
.cost-results { text-align: center; padding: 3rem; background: linear-gradient(135deg, #f8fafc, #e2e8f0); border-radius: 20px; border: 1px solid #e2e8f0; }
.cost-breakdown { margin: 3rem 0; }
.cost-item { display: flex; justify-content: space-between; align-items: center; padding: 1.5rem 0; border-bottom: 1px solid #e2e8f0; font-size: 1.1rem; }
.cost-item:last-child { border-bottom: none; }
.cost-value { font-weight: 700; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; font-size: 1.25rem; }
.region-card { background: linear-gradient(145deg, #ffffff 0%, #f7fafc 100%); padding: 2.5rem 2rem; border-radius: 20px; text-align: center; cursor: pointer; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); border: 2px solid rgba(59, 130, 246, 0.1); position: relative; overflow: hidden; box-shadow: 0 15px 40px rgba(0, 0, 0, 0.06), 0 5px 15px rgba(59, 130, 246, 0.04); }
.region-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(145deg, rgba(59, 130, 246, 0.9), rgba(6, 182, 212, 0.8)); opacity: 0; transition: opacity 0.4s ease; }
.region-card:hover::before { opacity: 1; }
.region-card:hover { transform: translateY(-15px) scale(1.05); box-shadow: 0 30px 60px rgba(59, 130, 246, 0.25), 0 15px 30px rgba(6, 182, 212, 0.15); border-color: transparent; }
.region-card:hover * { color: white !important; position: relative; z-index: 1; }
.region-card h5 { font-weight: 700; color: var(--dark-bg); margin-bottom: 1rem; font-size: 1.25rem; }
.region-card .rate { font-size: 2rem; font-weight: 800; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin: 1.5rem 0; }
.region-card p { color: #64748b; font-weight: 500; }
#developersGrid .slick-track { padding-bottom: 20px; }
#developersGrid .slick-track .slick-slide { margin: 0 12px;}
.developers-carousel .slick-track { display: flex !important; }
.developers-carousel .slick-slide { height: auto !important; }
.developers-carousel .developer-card { height: 100% !important; }
.developer-card { background: #fff; border-radius: 24px; padding: 2rem; text-align: center; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); border: 1px solid rgba(59, 130, 246, 0.2); height: 100%; position: relative; overflow: hidden; }
.developer-card::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(145deg, rgba(59, 130, 246, 0.05), rgba(6, 182, 212, 0.03)); opacity: 0; transition: opacity 0.4s ease; pointer-events: none; }
.developer-card:hover::after { opacity: 1; }
.developer-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(135deg, #3b82f6, #06b6d4, #8b5cf6); transform: scaleX(0); transition: transform 0.4s ease; }
.developer-card:hover::before { transform: scaleX(1); }
.developer-card:hover { transform: translateY(-20px) scale(1.02); border-color: rgba(59, 130, 246, 0.4); }
.developer-avatar { width: 100px; height: 100px; border-radius: 50%; margin: 0 auto 1.5rem; border: 4px solid transparent; background: linear-gradient(135deg, #3b82f6, #06b6d4) padding-box, linear-gradient(135deg, #3b82f6, #06b6d4) border-box; transition: all 0.4s ease; object-fit: cover; }
.developer-card:hover .developer-avatar { transform: scale(1.1); box-shadow: 0 10px 30px rgba(59, 130, 246, 0.4); }
.developer-name { font-size: 1.375rem; font-weight: 700; color: #1a202c; margin-bottom: 0.75rem; }
.developer-location { color: #4a5568; font-size: 1rem; margin-bottom: 1.5rem; font-weight: 500; }
.developer-bio { color: #64748b; font-size: 0.95rem; line-height: 1.6; margin: 1.5rem 0; }
.skill-tags { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 1rem 0; }
.skill-tag { background: rgba(59, 130, 246, 0.2); color: #3b82f6; padding: 0.5rem 1rem; border-radius: 25px; font-size: 10px; font-weight: 500; border: 1px solid rgba(59, 130, 246, 0.3); transition: all 0.3s ease; }
.skill-tag:hover { background: var(--primary-blue); color: white; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(59, 130, 246, 0.4); }
.developers-carousel .slick-dots {bottom: 0 !important;}
.developers-carousel .slick-dots li button {background: #dfdfdf !important;border-radius: 50%;width: 10px;height: 10px;}
.developers-carousel .slick-dots li.slick-active button {background: #e8af09 !important;}
.developers-carousel .slick-dots li button:before {font-size: 0;}
.verified-badge { background: linear-gradient(135deg, var(--success-green), #10b981); color: white; padding: 0.5rem 1rem; border-radius: 25px; font-size: 0.85rem; font-weight: 600; display: inline-flex; align-items: center; gap: 0.5rem; margin-bottom: 1rem; box-shadow: 0 4px 15px rgba(5, 150, 105, 0.3); }
.developer-rating { color: #fbbf24; margin: 1rem 0; font-size: 1.1rem; }
.rating-number { color: #1a202c; font-weight: 600; margin-left: 0.5rem; }
.tech-category { background: linear-gradient(145deg, #ffffff 0%, #f7fafc 100%); padding: 3rem 2rem; border-radius: 20px; box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08), 0 8px 25px rgba(59, 130, 246, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.8); transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); height: 100%; border: 1px solid rgba(59, 130, 246, 0.1); position: relative; overflow: hidden; }
.tech-category::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(145deg, rgba(59, 130, 246, 0.06), rgba(6, 182, 212, 0.04)); opacity: 0; transition: opacity 0.4s ease; }
.tech-category:hover::before { opacity: 1; }
.tech-category:hover { transform: translateY(-15px) scale(1.02); box-shadow: 0 30px 70px rgba(0, 0, 0, 0.12), 0 15px 35px rgba(59, 130, 246, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.9); border-color: rgba(59, 130, 246, 0.2); }
.tech-category h5 { font-weight: 700; color: var(--dark-bg); margin-bottom: 2rem; font-size: 1.25rem; position: relative; z-index: 1; }
.tech-tags { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.5rem; }
.tech-tag { background: #f1f5f9; color: var(--dark-bg); padding: 0.75rem 1.25rem; border-radius: 30px; font-size: 0.9rem; font-weight: 600; border: 1px solid #e2e8f0; transition: all 0.3s ease; position: relative; z-index: 1; }
.tech-tag:hover { background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); color: white; transform: translateY(-3px); box-shadow: 0 8px 20px rgba(59, 130, 246, 0.3); }
.case-study-card { background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%); border-radius: 24px; overflow: hidden; box-shadow: 0 25px 60px rgba(0, 0, 0, 0.08), 0 10px 30px rgba(59, 130, 246, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.8); transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); height: 100%; border: 1px solid rgba(59, 130, 246, 0.1); }
.case-study-card:hover { transform: translateY(-20px) scale(1.02); box-shadow: 0 40px 90px rgba(0, 0, 0, 0.12), 0 20px 50px rgba(59, 130, 246, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.9); border-color: rgba(59, 130, 246, 0.2); }
.case-study-image { height: 250px; overflow: hidden; position: relative; }
.case-study-image::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(135deg, rgba(59, 130, 246, 0.2), rgba(6, 182, 212, 0.2)); opacity: 0; transition: opacity 0.4s ease; z-index: 1; }
.case-study-card:hover .case-study-image::before { opacity: 1; }
.case-study-image img { width: 100%; height: 100%; object-fit: cover; transition: all 0.4s ease; }
.case-study-card:hover .case-study-image img { transform: scale(1.15); }
.case-study-content { padding: 2.5rem; }
.case-study-content h5 { font-weight: 700; color: var(--dark-bg); margin-bottom: 1.5rem; font-size: 1.375rem; }
.case-study-content p { color: #64748b; line-height: 1.6; margin-bottom: 2rem; }
.case-study-stats { display: flex; gap: 2rem; margin: 2rem 0; padding: 1.5rem; background: linear-gradient(135deg, #f8fafc, #f1f5f9); border-radius: 12px; }
.stat { text-align: center; flex: 1; }
.stat strong { display: block; font-size: 2rem; background: linear-gradient(135deg, var(--primary-blue), var(--secondary-teal)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; font-weight: 800; margin-bottom: 0.5rem; }
.stat span { font-size: 0.9rem; color: #64748b; font-weight: 600; }
.tech-used { margin-top: 2rem; }
.badge { padding: 0.5rem 1rem; border-radius: 20px; font-weight: 600; margin-right: 0.5rem; margin-bottom: 0.5rem; }
.accordion-item { border: none; margin-bottom: 1.5rem; border-radius: 16px; overflow: hidden; box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08), 0 4px 15px rgba(59, 130, 246, 0.04); background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%); border: 1px solid rgba(59, 130, 246, 0.1); }
.accordion-button { background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%) !important; border: none; padding: 2rem; font-weight: 700; color: #1a202c !important; font-size: 1.1rem; transition: all 0.3s ease; box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8); }
.accordion-button:not(.collapsed) { background: linear-gradient(145deg, #1e40af 0%, #0d9488 100%) !important; color: white !important; box-shadow: 0 8px 25px rgba(59, 130, 246, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.2); }
.accordion-button:focus { box-shadow: none; border: none; }
.accordion-button::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); transition: transform 0.3s ease; }
.accordion-button:not(.collapsed)::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); transform: rotate(180deg); }
.accordion-body { padding: 2rem; background: linear-gradient(145deg, #f8fafc 0%, #ffffff 100%); color: #4a5568; line-height: 1.7; font-size: 1rem; border-top: 1px solid rgba(59, 130, 246, 0.1); }
.final-cta-form { background: linear-gradient(145deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.08)); backdrop-filter: blur(30px); border-radius: 24px; padding: 3rem; border: 1px solid rgba(255, 255, 255, 0.25); box-shadow: 0 30px 60px rgba(0, 0, 0, 0.15), 0 15px 30px rgba(59, 130, 246, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.3), inset 0 -1px 0 rgba(59, 130, 246, 0.1); }
.btn { border-radius: 12px; font-weight: 700; padding: 1rem 0.5rem; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); border: none; font-size: 1rem; position: relative; overflow: hidden; }
.btn::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.6s; }
.btn:hover::before { left: 100%; }
.btn:hover { transform: translateY(-3px); }
.btn-primary { background: linear-gradient(135deg, var(--primary-blue), #2563eb) ; box-shadow: 0 8px 25px rgba(59, 130, 246, 0.3); }
.btn-primary:focus { background: linear-gradient(135deg, var(--primary-blue), #2563eb) !important; }
.btn-primary:hover { box-shadow: 0 12px 35px rgba(59, 130, 246, 0.4); background: linear-gradient(135deg, #1d4ed8, var(--primary-blue)); }
.btn-success { background: linear-gradient(135deg, var(--success-green), #10b981); box-shadow: 0 8px 25px rgba(5, 150, 105, 0.3); }
.btn-success:focus { background: linear-gradient(135deg, var(--success-green), #10b981) !important; }
.btn-success:hover { box-shadow: 0 12px 35px rgba(5, 150, 105, 0.4); background: linear-gradient(135deg, #047857, var(--success-green)); }
.btn-outline-light { border: 2px solid rgba(255, 255, 255, 0.3); color: white; background: transparent; backdrop-filter: blur(10px); }
.btn-outline-light:hover { background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.5); color: white; }
.btn-lg { padding: 1.25rem 3rem; font-size: 1.1rem; }
.social-links a { font-size: 1.5rem; transition: all 0.3s ease; color: rgba(255, 255, 255, 0.7); margin: 0 0.75rem; }
.social-links a:hover { color: #06b6d4; transform: translateY(-3px); text-shadow: 0 5px 15px rgba(6, 182, 212, 0.5); }
.case-study-card-modern { background: linear-gradient(145deg, #1a202c 0%, #2d3748 100%); border-radius: 24px; overflow: hidden; box-shadow: 0 25px 60px rgba(0, 0, 0, 0.2); transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); height: 100%; border: 1px solid rgba(59, 130, 246, 0.2); }
.case-study-card-modern:hover { box-shadow: 0 40px 90px rgba(0, 0, 0, 0.25); border-color: rgba(59, 130, 246, 0.4); }
.case-study-header { position: relative; height: 200px; overflow: hidden; }
.case-study-image { width: 100%; height: 100%; object-fit: cover; transition: all 0.4s ease; }
.case-study-card-modern:hover .case-study-image { transform: scale(1.1) !important; }
.case-study-overlay { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(transparent, rgba(0, 0, 0, 0.8)); padding: 2rem 1.5rem 1.5rem; color: white; }
.case-study-overlay h4 { font-weight: 700; margin-bottom: 0.5rem; font-size: 1.25rem; }
.company-badge { background: rgba(59, 130, 246, 0.2); color: #3b82f6; padding: 0.25rem 0.75rem; border-radius: 15px; font-size: 0.8rem; font-weight: 600; border: 1px solid rgba(59, 130, 246, 0.3); }
.case-study-content { padding: 2rem 1.5rem; }
.case-study-content h6 { color: white; font-weight: 700; margin-bottom: 1rem; font-size: 1rem; }
.case-study-content p { color: rgba(255, 255, 255, 0.8); line-height: 1.6; margin-bottom: 1.5rem; font-size: 0.9rem; }
.challenge-section, .solution-section, .tech-stack-section, .team-section, .results-section { margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
.results-section { border-bottom: none; margin-bottom: 0; }
.tech-badges { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.tech-badge { background: rgba(59, 130, 246, 0.2); color: #3b82f6; padding: 0.4rem 0.8rem; border-radius: 15px; font-size: 0.75rem; font-weight: 600; border: 1px solid rgba(59, 130, 246, 0.3); }
.team-composition { display: flex; flex-direction: column; gap: 0.75rem; }
.team-member { display: flex; align-items: center; gap: 1rem; padding: 0.75rem; background: rgba(255, 255, 255, 0.05); border-radius: 8px; border: 1px solid rgba(255, 255, 255, 0.1); }
.member-count { background: linear-gradient(135deg, #3b82f6, #06b6d4); color: white; width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 0.9rem; }
.member-role { color: rgba(255, 255, 255, 0.9); font-weight: 500; font-size: 0.9rem; }
.results-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.result-item { text-align: center; padding: 1rem; background: rgba(255, 255, 255, 0.05); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.1); }
.result-number { display: block; font-size: 1.5rem; font-weight: 800; background: linear-gradient(135deg, #10b981, #059669); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 0.25rem; }
.result-label { color: rgba(255, 255, 255, 0.7); font-size: 0.8rem; font-weight: 500; }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.7); transform: scale(1); } 70% { box-shadow: 0 0 0 15px rgba(59, 130, 246, 0); transform: scale(1.05); } 100% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0); transform: scale(1); } }
.pulse-btn { animation: pulse 3s infinite; }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: translateY(0); } }
.loading { opacity: 0; transform: translateY(40px); transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1); }
.loading.loaded { opacity: 1; transform: translateY(0); }
.position_sticky{ position: sticky; top: 0; left: 0; }
.hire-process.bg-gradient, .hire-process .bg-gradient { background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%); /*min-height: 100vh;*/ }
.hire-process .text-orange { color: #ff6b35; }
.hire-process .step-card { background: white; border-radius: 20px; padding: 2rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); transition: all 0.3s ease; border: 1px solid #e2e8f0; position: relative; overflow: hidden; display: flex; flex-direction: column; min-height: 500px; }
.hire-process .step-card:hover { transform: translateY(-5px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1); }
.hire-process .step-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, #ff6b35, #4f46e5); opacity: 0; transition: opacity 0.3s ease; }
.hire-process .step-card:hover::before { opacity: 1; }
.hire-process .step-header { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.5rem; position: relative; }
.hire-process .step-icon { width: 50px; height: 50px; background: linear-gradient(135deg, #ff6b35, #ff8f65); border-radius: 12px; display: flex; align-items: center; justify-content: center; color: white; font-size: 1.25rem; }
.hire-process .step-label { font-weight: 600; color: #ff6b35; font-size: 0.875rem; letter-spacing: 0.5px; position: relative; padding-right: 50px; display: flex; align-items: center; }
.hire-process .step-animation { position: absolute; right: -40px; top: -10px; width: 20px; height: 20px; z-index: 10; }
.hire-process .step-1-animation { background: #ff6b35; border-radius: 4px; position: relative; animation: pulseCalendar 2.5s ease-in-out infinite; box-shadow: 0 2px 8px rgba(255, 107, 53, 0.3); }
.hire-process .step-1-animation::before { content: ''; position: absolute; top: -3px; left: 3px; right: 3px; height: 4px; background: #fff; border-radius: 2px; }
.hire-process .step-1-animation::after { content: ''; position: absolute; top: 6px; left: 3px; width: 2px; height: 2px; background: #fff; border-radius: 50%; box-shadow: 4px 0 0 #fff, 8px 0 0 #fff, 0 4px 0 #fff, 4px 4px 0 #fff, 8px 4px 0 #fff; }
.hire-process .calendar-showcase .meetings-iframe-container { width: 100%; height: 230px; overflow: scroll; }
@keyframes pulseCalendar { 0%, 100% { transform: scale(1); opacity: 1; box-shadow: 0 2px 8px rgba(255, 107, 53, 0.3); } 50% { transform: scale(1.15); opacity: 0.9; box-shadow: 0 4px 16px rgba(255, 107, 53, 0.5); } }
.hire-process .step-2-animation { position: relative; animation: rotateProfiles 4s linear infinite; width: 24px; height: 24px; }
.hire-process .profile-dot { position: absolute; width: 5px; height: 5px; background: #ff6b35; border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,0.2); transition: all 0.3s ease; }
.hire-process .profile-dot:nth-child(1) { top: 2px; left: 50%; transform: translateX(-50%); background: #10b981; }
.hire-process .profile-dot:nth-child(2) { top: 50%; right: 2px; transform: translateY(-50%); background: #4f46e5; }
.hire-process .profile-dot:nth-child(3) { bottom: 2px; left: 50%; transform: translateX(-50%); background: #ff6b35; }
.hire-process .profile-dot:nth-child(4) { top: 50%; left: 2px; transform: translateY(-50%); background: #8b5cf6; }
@keyframes rotateProfiles { 0% { transform: rotate(0deg); } 25% { transform: rotate(90deg) scale(1.1); } 50% { transform: rotate(180deg); } 75% { transform: rotate(270deg) scale(1.1); } 100% { transform: rotate(360deg); } }
.hire-process .step-3-animation { background: #10b981; border-radius: 50%; position: relative; animation: successPulse 2.5s ease-in-out infinite; width: 22px; height: 22px; }
.hire-process .step-3-animation::before { content: '✓'; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: white; font-size: 11px; font-weight: bold; }
@keyframes successPulse { 0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.4); } 25% { transform: scale(1.05); box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.3); } 50% { transform: scale(1.1); box-shadow: 0 0 0 8px rgba(16, 185, 129, 0.1); } 75% { transform: scale(1.05); box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2); } }
.hire-process .step-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 2rem; color: #1e293b; }
.hire-process .step-visual { margin-bottom: 2rem; display: flex; align-items: center; justify-content: center; }
.hire-process .booking-interface { width: 100%; background: #f8fafc; border-radius: 12px; padding: 1.5rem 0; }
.hire-process .booking-header { text-align: center; margin-bottom: 1rem; }
.hire-process .booking-header h6 { margin: 0; color: #1e293b; font-weight: 600; }
.hire-process .calendar-showcase { display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.hire-process .calendar-image { width: 100%; max-width: 200px; height: auto; border-radius: 8px;}
.hire-process .tech-stack { text-align: center; }
.hire-process .skills-tags { display: flex; gap: 0.5rem; justify-content: center; flex-wrap: wrap; margin-top: 0.5rem; }
.hire-process .skill-tag { background: #4f46e5; color: white; padding: 0.25rem 0.75rem; border-radius: 20px; font-size: 0.75rem; font-weight: 500; }
.hire-process .matches-interface { text-align: center; width: 100%; }
.hire-process .developer-profiles { position: relative; display: flex; align-items: center; justify-content: center; margin-bottom: 1.5rem; }
.hire-process .profile-circle { border-radius: 50%; border: 4px solid white; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); position: relative; overflow: hidden; }
.hire-process .main-profile { width: 80px; height: 80px; z-index: 3; }
.hire-process .developer-profiles .slick-list { padding-top: 20px !important; }
.hire-process .side-profile { width: 60px; height: 60px; position: absolute; z-index: 2; }
.hire-process .side-profile.left { left: 20px; opacity: 0.8; }
.hire-process .side-profile.right { right: 20px; opacity: 0.8; }
.hire-process .developer-profiles .profile-circle.slick-current { transform: scale(1.5); z-index: 1;}
.hire-process .profile-img { width: 100%; height: 100%; object-fit: cover; }
.hire-process .profile-badge { position: absolute; bottom: -2px; right: -2px; background: #ff6b35; color: white; width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; border: 2px solid white; }
.hire-process .match-info { text-align: center; }
.hire-process .match-score { background: linear-gradient(135deg, #10b981, #065f46); color: white; padding: 0.5rem 1rem; border-radius: 20px; font-weight: 600; margin-bottom: 1rem; display: inline-block; }
.hire-process .ai-specialties { display: flex; gap: 0.5rem; justify-content: center; flex-wrap: wrap; margin-top: 40px;}
.hire-process .developer-profiles .profile-circle.slick-current .ai-specialties { display: flex; z-index: 1;  position: relative; }
.hire-process .specialty { background: #f1f5f9; color: var(--gray-medium); padding: 0.25rem 0.75rem; border-radius: 15px; font-size: 0.75rem; border: 1px solid #e2e8f0; }
.hire-process .collaboration-interface { width: 100%; }
.hire-process .welcome-card { background: linear-gradient(135deg, #fef3c7, #fde68a); border-radius: 16px; padding: 2rem; text-align: center; position: relative; overflow: hidden; }
.hire-process .welcome-card::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%); animation: shimmer 3s ease-in-out infinite; }
@keyframes shimmer { 0%, 100% { transform: rotate(0deg); } 50% { transform: rotate(180deg); } }
.hire-process .team-avatar { position: relative; display: inline-block; margin-bottom: 1rem; }
.hire-process .avatar-img { width: 110px; height: 100px; border-radius: 50%; border: 3px solid white; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); object-fit: cover; }
.hire-process .ai-badge { position: absolute; bottom: -2px; right: -2px; background: #4f46e5; color: white; width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; border: 2px solid white; }
.hire-process .welcome-title { margin: 0 0 0.5rem 0; color: #92400e; font-weight: 700; }
.hire-process .welcome-text { color: #92400e; font-size: 0.875rem; margin-bottom: 1rem; line-height: 1.4; }
.hire-process .project-preview { background: rgba(0,0,0,0.1); border-radius: 8px; padding: 1rem; margin-top: 1rem; }
.hire-process .code-snippet { font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; font-size: 0.75rem; color: #374151; }
.hire-process .step-date { background: #ff6b35; color: white; text-align: center; padding: 1rem; border-radius: 12px; font-weight: 600; font-size: 0.875rem; letter-spacing: 0.5px; margin: -1rem -2rem -2rem -2rem; margin-top: auto; display: flex; align-items: center; justify-content: center; min-height: 60px; }
.hire-process .btn-primary { background: linear-gradient(135deg, #ff6b35, #ff8f65); border: none; border-radius: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; transition: all 0.3s ease; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); }
.hire-process .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1); background: linear-gradient(135deg, #e55a2b, #ff6b35); }
.hire-process .steps >div:nth-child(2) .step-date, .hire-process .steps >div:last-child .step-date {background-color: transparent;color: #1e293b;}
/* Call to Action Section */
.pp-cta-section { background: #269f42;position: relative;overflow: hidden; }
.pp-cta-section::before { content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.03)"/><circle cx="10" cy="60" r="0.5" fill="rgba(255,255,255,0.03)"/><circle cx="90" cy="40" r="0.5" fill="rgba(255,255,255,0.03)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');pointer-events: none; }
.cta-left { position: relative;z-index: 2; }
.cta-form-container { background: rgba(255, 255, 255, 0.95);backdrop-filter: blur(10px);border-radius: 15px;padding: 2rem;box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);position: relative;z-index: 2; }
/* Team Members */
.section-padding { padding: 60px 0; }
.pp-team-members { margin-top: 2rem; }
.pp-team-avatar { width: 60px; height: 60px; border-radius: 50%; object-fit: cover; border: 3px solid rgba(255, 255, 255, 0.3); transition: all 0.3s ease; }
.pp-team-member:hover .team-avatar { border-color: #ffc107; transform: scale(1.1); }
@media (max-width: 768px) {
    .hire-process .step-card { padding: 1.5rem; }
    .hire-process .step-title { font-size: 1.125rem; }
    .hire-process .main-profile { width: 70px; height: 70px; }
    .hire-process .side-profile { width: 50px; height: 50px; }
    .hire-process .skills-tags, .hire-process .ai-specialties { justify-content: center; }
    .hire-process .developer-profiles .profile-circle.slick-current { transform: scale(1.3);}
    .cta-form-container { margin-top: 2rem; padding: 1.5rem; }
    .pp-team-avatar { width: 50px; height: 50px; }
    .cta-left { text-align: center; margin-bottom: 2rem; }
    .skill-tags { gap: 5px; margin: 1rem 0; }
    .skill-tag { padding: 0.4rem 1rem; font-size: 10px; font-weight: 500; }
    .btn-lg { padding: 1rem 1.25rem !important; font-size: 0.8rem; }
}
@media(max-width:1440px){
    .case-study-card .case-study-content { padding: 2.5rem 1.5rem; }
    .case-study-card .case-study-stats { gap: 1rem; }
    .case-study-card  .stat strong { font-size: 1.5rem; }
}
@media(max-width:1366px){
    .developer-card { padding: 2rem 1rem; }
}
@media (min-width:1200px) and (max-width: 1399px) {
    .skill-tags { padding-top: 10px; height: 94px; overflow-y: scroll; }
    .skill-tag { font-size: 9px; font-weight: 400; }
    .skill-tags::-webkit-scrollbar { width: 6px; }
    .skill-tags::-webkit-scrollbar-track { box-shadow: inset 0 0 5px #fff; border-radius: 10px; }
    .skill-tags::-webkit-scrollbar-thumb { background: #dfdfdf; border-radius: 10px; }
    .skill-tags::-webkit-scrollbar-thumb:hover { background: #dfdfdf; }
    .btn { padding: 1rem 1rem; font-size: 13px; }
    .developer-bio { font-size: 14px; }
}
@media (max-width: 1200px) {
    .hero-title { font-size: 3.5rem; }
    .section-title { font-size: 2.5rem; }
    .calculator-card { padding: 4rem 1rem; }
}
@media (max-width: 992px) {
    .hero-title { font-size: 3rem; }
    .hero-subtitle { font-size: 1.25rem; }
    .calculator-steps { gap: 2rem; }
    .case-study-stats { gap: 1.5rem; }
    .hero-section { padding-top: 0px; padding-bottom: 0px; }
    #faq .faq-left { position: inherit !important; }
    .developers-carousel .slick-list {padding: 0 !important;}
}
@media (max-width: 768px) {
    .hero-title { font-size: 2.5rem; }
    .hero-subtitle { font-size: 1.125rem; }
    .hero-buttons { flex-direction: column; gap: 1rem; }
    .hero-buttons .btn { width: 100%; }
    .calculator-steps { flex-wrap: wrap; gap: 1.3rem !important; }
    .step-number { width: 35px; height: 35px; }
    .step span { font-size: 0.8rem; }
    .calculator-steps::before { display: none; }
    .section-title { font-size: 2rem; }
    .hero-form { padding: 2rem; }
    .calculator-card { padding: 2rem; }
    .feature-card, .tech-category { padding: 2rem 1.5rem; }
    .developer-card { padding: 1.5rem; }
    #developers .btn-outline-light.me-3 { margin-right: 0px !important; margin-bottom: 20px !important; }
    #why-us .position_sticky { position: inherit; }
    .hire .team-grid .developer-card {margin: 0 !important;}
    .hire .team-grid .developer-card .slick-slide {margin: 0 10px;}
    .hire .team-grid .row .slick-track {padding-bottom: 20px;}
    .hire .team-grid .row .slick-track .slick-slide { margin: 0 8px; }
    .team-section { padding: 2rem 0 0; margin-bottom: 0; }
    #why-us .row:nth-child(3), .calculator-content .step-content .row, .world-map-container .region-cards.g-4 { row-gap: 20px !important; }
    .g-4 {row-gap: 20px;}
    .feature-card, .tech-category, .developer-card { padding: 1.5rem 1rem; }
    .hire-process .container {padding-left: 0 !important;padding-right: 0 !important;}
    .meeting-schedule a {display: block;width: 100%;}
    .meeting-schedule a img {width: 100%;}
}
@media (max-width: 576px) {
    .hero-title { font-size: 2rem; }
    .section-title { font-size: 1.75rem; }
    .hero-form { padding: 1.5rem; }
    .calculator-card { padding: 1.5rem; }
    .final-cta-form { padding: 2rem; }
    .calculator-navigation .btn { min-width: 110px !important; }
    .calculator-navigation .btn { padding: 1rem; }
    .calculator-card { padding: 1.5rem 1rem; }
    .calculator-steps .step span {display: none;}
}
.glass-effect { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.2); }
.glow-effect { box-shadow: 0 0 30px rgba(59, 130, 246, 0.3); }
.hover-lift { transition: transform 0.3s ease; }
.hover-lift:hover { transform: translateY(-5px); }
html { scroll-behavior: smooth; }
.btn-loading { position: relative; color: transparent !important; }
.btn-loading::after { content: ''; position: absolute; top: 50%; left: 50%; width: 20px; height: 20px; margin: -10px 0 0 -10px; border: 2px solid transparent; border-top: 2px solid currentColor; border-radius: 50%; animation: spin 1s linear infinite; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.was-validated .form-control:valid { border-color: var(--success-green); box-shadow: 0 0 0 0.25rem rgba(5, 150, 105, 0.25); }
.was-validated .form-control:invalid { border-color: var(--error-red); box-shadow: 0 0 0 0.25rem rgba(220, 38, 38, 0.25); }
.particles { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; pointer-events: none; }
.particle { position: absolute; width: 4px; height: 4px; background: rgba(255, 255, 255, 0.5); border-radius: 50%; animation: particleFloat 15s linear infinite; }
@keyframes particleFloat { 0% { transform: translateY(100vh) translateX(0); opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { transform: translateY(-100px) translateX(100px); opacity: 0; } }
.calculator-navigation { display: flex; justify-content: space-between; margin-top: 3rem; gap: 1rem; }
.calculator-navigation .btn { min-width: 150px; }
.section-bg-pattern { position: relative; background: linear-gradient(145deg, #f8fafc 0%, #ffffff 50%, #f1f5f9 100%); }
.section-bg-pattern::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(45deg, transparent 30%, rgba(59, 130, 246, 0.02) 50%, transparent 70%), linear-gradient(-45deg, transparent 30%, rgba(6, 182, 212, 0.015) 50%, transparent 70%), repeating-linear-gradient( 0deg, transparent, transparent 1px, rgba(59, 130, 246, 0.02) 1px, rgba(59, 130, 246, 0.02) 2px ), repeating-linear-gradient( 90deg, transparent, transparent 1px, rgba(6, 182, 212, 0.015) 1px, rgba(6, 182, 212, 0.015) 2px ); background-size: 100px 100px, 80px 80px, 20px 20px, 20px 20px; animation: subtlePattern 40s linear infinite; opacity: 0.4; }
@keyframes subtlePattern { 0% { background-position: 0 0, 0 0, 0 0, 0 0; } 100% { background-position: 100px 100px, -80px -80px, 20px 20px, -20px -20px; } }
.bg-dark { background: linear-gradient(145deg, #0f1419 0%, #1a202c 25%, #2d3748 75%, #1a202c 100%); position: relative; overflow: hidden; }
.bg-dark::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(30deg, transparent 12%, rgba(59, 130, 246, 0.03) 12%, rgba(59, 130, 246, 0.03) 14%, transparent 14%), linear-gradient(150deg, transparent 24%, rgba(6, 182, 212, 0.02) 25%, rgba(6, 182, 212, 0.02) 26%, transparent 27%), repeating-linear-gradient( 45deg, transparent, transparent 20px, rgba(255, 255, 255, 0.01) 20px, rgba(255, 255, 255, 0.01) 21px ); background-size: 80px 80px, 120px 120px, 40px 40px; animation: corporatePattern 30s linear infinite; opacity: 0.6; }
@keyframes corporatePattern { 0% { background-position: 0 0, 0 0, 0 0; } 100% { background-position: 80px 80px, -120px -120px, 40px 40px; } }
.scroll-indicator { position: fixed; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(135deg, #3b82f6, #06b6d4, #8b5cf6); transform: scaleX(0); transform-origin: left; transition: transform 0.3s ease; z-index: 9999; }
@media (max-width: 480px) {
    .hero-title { font-size: 1.875rem; line-height: 1.2; }
    .hero-subtitle { font-size: 1rem; }
    .section-title { font-size: 1.5rem; }
    .feature-card, .tech-category, .developer-card { padding: 1.5rem; }
    .calculator-card { padding: 1.5rem 1rem; }
    .final-cta-form { padding: 1.5rem; }
    .accordion-button { padding: 1.5rem; font-size: 1rem; }
    .accordion-body { padding: 1.5rem; }
    .meeting-schedule img { max-width: 300px; }
}
.will-change-transform { will-change: transform; }
.will-change-opacity { will-change: opacity; }
.btn:focus, .form-control:focus, .option-card:focus { outline: 2px solid #06b6d4; outline-offset: 2px; }
@media print {    
    .hero-section, .calculator-card { display: none !important; }
    .section-title, .feature-card h4, .developer-name { color: #000 !important; }
}
.calculator-card .formInputField { border: 1px solid #B7B7B7 !important; border-radius: 5px !important; background: #FFFFFF; padding: 11px 20px !important; font-weight: 400; font-size: 14px; color: #53498A; }
.calculator-card .formInputField .form-control::placeholder, .calculator-card .textAreaField { font-weight: 400; font-size: 14px; color: #53498A !important; }
 .calculator-card .form-control { padding: 0px !important; border: 0 !important; box-shadow: unset !important; }
 .calculator-card .form-control:focus { outline: 0px !important; }
.calculator-card .formInputField .form-control:focus{ box-shadow : unset !important; }
.calculator-card .textAreaField{ color : #28303d !important; }
#faq .accordion-header{ padding: 0px !important; }
.cta-section { background:  linear-gradient(135deg, #28a745 0%, #1e7e34 100%); color: #fff; }
.row { --bs-gutter-x: 1.5rem; --bs-gutter-y: 0; display: flex; flex-wrap: wrap; margin-top: calc(-1 * var(--bs-gutter-y)); margin-right: calc(-.5 * var(--bs-gutter-x)); margin-left: calc(-.5 * var(--bs-gutter-x)); }
.cta-left { position: relative; z-index: 2; }
.cta-section h2 { font-size: 2.5rem; font-weight: 700; margin-bottom: 1rem; }
.cta-section .team-members, .cta-section .team-members.com-list, #bookmetting .team-members { margin-top: 2rem; }
.cta-section .team-members .row, .cta-section .team-members.com-list .row,  #bookmetting .team-members .row { row-gap: 10px; }
.cta-section .team-avatar, .com-list .team-avatar,  #bookmetting .team-avatar { width: 60px; height: 60px; border-radius: 50%; object-fit: cover; border: 3px solid rgba(255, 255, 255, 0.3); transition: all 0.3s ease; }
.cta-section .team-member:hover .team-avatar, .com-list .team-member:hover .team-avatar, #bookmetting .team-member:hover .team-avatar { border-color: #ffc107; transform: scale(1.1); }
.cta-section .team-member, .com-list .team-member, #bookmetting .team-member { gap: 0; padding: 0; border: none; background: transparent; flex-direction: column; }
.cta-section .team-member p, .com-list .team-member p, #bookmetting .team-member p {display: inline-block;} 
.cta-section .small, .cta-sections .small, #bookmetting .small {font-size: 12px;}
.gray-bg p {color: #64748b;}
#faq::before{display: none;}
#faq, #faq .row {position: inherit;}
#faq .section-subtitle { text-align: left; }
.g-3 {row-gap: 15px;}
.calculator-stats-lists ul {padding: 0;list-style: none;}
.calculator-stats-lists li { background: rgba(255, 255, 255, 1); border: 1px solid rgba(255, 255, 255, 0.302); padding: 0.938rem 1.25rem; border-radius: 0.75rem; backdrop-filter: blur(280px); height: 100%; margin-bottom: 20px; }
.calculator-stats-lists li span { font-size: 20px; color: #1a202c; margin-left: 10px; font-weight: 600; }
#bookmetting {background: linear-gradient(104.26deg, #1D1068 23.79%, #0080F7 90.34%);}
.meeting-schedule a { padding: 10px 20px; }
.developer-card a.bg-primary.btn {
    background-color: #1475fb !important;
}
.meeting-schedule img {
    width: 100%;
    max-width: 400px;
}
.calculator-outer {background: #c5dcf1;}
/* Map Section */
.map-container { position: relative; margin-top: 2rem; }
.developer-map { height: 500px; border-radius: var(--border-radius); overflow: hidden; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);}
.map-legend { background: #fff; padding: 1.5rem; border-radius: var(--border-radius); box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); margin-top: 1rem; }
.map-legend h5 { margin-bottom: 1rem; color: #343a40; font-weight: 600; }
.legend-items { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; }
.legend-item { display: flex; align-items: center; gap: 0.75rem; }
.legend-color { width: 20px; height: 20px; border-radius: 50%; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); }
.leaflet-popup-content-wrapper {
    border-radius: 10px;
    box-shadow: var(--shadow-medium);
    border: none;
}
.leaflet-popup .leaflet-popup-content {
    margin: 13px 24px 13px 20px;
    line-height: 1.3;
    font-size: 13px;
    font-size: 1.08333em;
    min-height: 1px;
}
.leaflet-popup .popup-content {
    position: relative;
}
.leaflet-popup .popup-content h4 {
    color: #007bff;
    margin-bottom: 0.5rem;
    font-weight: 600;
}
.leaflet-popup .popup-content .rate-range {
    font-size: 1.1rem;
    font-weight: 600;
    color: #28a745;
    margin-bottom: 0.5rem;
}
.leaflet-popup .popup-content .features {
    font-size: 0.9rem;
    color: #6c757d;
}