// Variables $dark-bg: #0a0a0f; $dark-surface: #141420; $dark-card: #1a1a2e; $accent-primary: #00d4ff; $accent-secondary: #7c3aed; $text-primary: #ffffff; $text-secondary: #b4b4c7; $gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%); $gradient-accent: linear-gradient(135deg, #00d4ff 0%, #7c3aed 100%); // Animations @keyframes float { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-20px); } } @keyframes glow { 0%, 100% { opacity: 0.5; } 50% { opacity: 1; } } @keyframes slideInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } @keyframes pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes scaleIn { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } } // Reset * { margin: 0; padding: 0; box-sizing: border-box; } body { background: $dark-bg; color: $text-primary; font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; line-height: 1.6; overflow-x: hidden; } .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; } // Hero Section .hero { position: relative; min-height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; } .hero-background { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 0; } .grid { position: absolute; width: 100%; height: 100%; background-image: linear-gradient(rgba(124, 58, 237, 0.1) 1px, transparent 1px), linear-gradient(90deg, rgba(124, 58, 237, 0.1) 1px, transparent 1px); background-size: 50px 50px; animation: float 20s ease-in-out infinite; } .glowing-orb { position: absolute; width: 500px; height: 500px; background: radial-gradient(circle, rgba(0, 212, 255, 0.3) 0%, transparent 70%); border-radius: 50%; filter: blur(80px); animation: pulse 4s ease-in-out infinite; left: 20%; top: 20%; } .hero-content { position: relative; z-index: 1; text-align: center; padding: 40px 20px; animation: slideInUp 1s ease-out; } .hero-title { font-size: 4rem; font-weight: 900; margin-bottom: 1.5rem; line-height: 1.2; @media (max-width: 768px) { font-size: 2.5rem; } } .highlight { background: $gradient-accent; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .hero-subtitle { font-size: 1.5rem; color: $text-secondary; margin-bottom: 2rem; max-width: 800px; margin-left: auto; margin-right: auto; @media (max-width: 768px) { font-size: 1.1rem; } } .hero-buttons { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; } .btn-primary { background: $gradient-accent; color: white; border: none; padding: 1rem 2.5rem; font-size: 1.1rem; font-weight: 600; border-radius: 50px; cursor: pointer; transition: all 0.3s ease; font-family: 'Montserrat', sans-serif; &:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(0, 212, 255, 0.4); } } .btn-secondary { background: transparent; color: $accent-primary; border: 2px solid $accent-primary; padding: 1rem 2.5rem; font-size: 1.1rem; font-weight: 600; border-radius: 50px; cursor: pointer; transition: all 0.3s ease; font-family: 'Montserrat', sans-serif; &:hover { background: rgba(0, 212, 255, 0.1); transform: translateY(-2px); } } .scroll-indicator { position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%); z-index: 1; } .mouse { width: 30px; height: 50px; border: 2px solid $accent-primary; border-radius: 20px; position: relative; &::before { content: ''; position: absolute; top: 10px; left: 50%; transform: translateX(-50%); width: 4px; height: 10px; background: $accent-primary; border-radius: 2px; animation: pulse 2s ease-in-out infinite; } } // News Section (вынесено вверх) .news { padding: 100px 0; background: $dark-surface; } .section-title { font-size: 3rem; font-weight: 900; text-align: center; margin-bottom: 1rem; @media (max-width: 768px) { font-size: 2rem; } } .section-subtitle { text-align: center; color: $text-secondary; font-size: 1.2rem; max-width: 800px; margin: 0 auto 4rem; @media (max-width: 768px) { font-size: 1rem; } } .news-card { background: $dark-card; padding: 3rem; border-radius: 24px; border: 2px solid $accent-primary; max-width: 800px; margin: 0 auto; position: relative; overflow: hidden; &::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: $gradient-accent; } } .news-date { color: $accent-primary; font-weight: 600; margin-bottom: 1rem; } .news-title { font-size: 2rem; margin-bottom: 1rem; @media (max-width: 768px) { font-size: 1.5rem; } } .news-description { color: $text-secondary; line-height: 1.8; margin-bottom: 1.5rem; } .news-details { display: flex; gap: 2rem; margin-bottom: 2rem; flex-wrap: wrap; span { color: $text-secondary; } } .news-link { display: inline-block; color: $accent-primary; font-weight: 600; text-decoration: none; font-size: 1.1rem; transition: all 0.3s ease; &:hover { transform: translateX(5px); } } // Stats Section .stats { padding: 80px 0; } .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 2rem; } .stat-card { background: $dark-card; padding: 2rem; border-radius: 16px; text-align: center; border: 1px solid rgba(124, 58, 237, 0.2); transition: all 0.3s ease; &:hover { transform: translateY(-5px); border-color: $accent-primary; box-shadow: 0 10px 30px rgba(0, 212, 255, 0.2); } } .stat-value { font-size: 3rem; font-weight: 900; background: $gradient-accent; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 0.5rem; } .stat-label { color: $text-secondary; font-size: 1rem; } // Benefits Section .benefits { padding: 100px 0; } .benefits-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; } .benefit-card { background: $dark-card; padding: 2.5rem; border-radius: 20px; border: 1px solid rgba(124, 58, 237, 0.2); transition: all 0.3s ease; &:hover { transform: translateY(-10px); border-color: $accent-primary; box-shadow: 0 20px 40px rgba(0, 212, 255, 0.3); } } .benefit-icon { font-size: 4rem; margin-bottom: 1.5rem; } .benefit-title { font-size: 1.5rem; font-weight: 700; margin-bottom: 1rem; } .benefit-description { color: $text-secondary; line-height: 1.6; } // Solutions Section .solutions { padding: 100px 0; background: $dark-surface; } .solutions-tabs { margin-top: 3rem; } .tab-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; } .solution-item { background: $dark-card; padding: 2rem; border-radius: 16px; border-left: 4px solid $accent-primary; h3 { font-size: 1.5rem; margin-bottom: 1rem; color: $accent-primary; } ul { list-style: none; padding: 0; li { padding: 0.5rem 0; color: $text-secondary; position: relative; padding-left: 1.5rem; &::before { content: '✓'; position: absolute; left: 0; color: $accent-primary; font-weight: bold; } } } } // Education Section .education { padding: 100px 0; } .education-content { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; margin-top: 3rem; @media (max-width: 768px) { grid-template-columns: 1fr; } } .education-text { h3 { font-size: 2rem; margin-bottom: 1rem; } p { color: $text-secondary; line-height: 1.8; margin-bottom: 1rem; } } .salary-list { list-style: none; padding: 0; margin: 1.5rem 0; li { padding: 0.75rem 0; border-bottom: 1px solid rgba(124, 58, 237, 0.2); color: $text-secondary; } } .education-tech { display: flex; flex-direction: column; gap: 1rem; } .tech-badge { background: $gradient-accent; padding: 1.5rem; border-radius: 12px; text-align: center; font-weight: 700; font-size: 1.2rem; animation: float 3s ease-in-out infinite; &:nth-child(2) { animation-delay: 0.5s; } &:nth-child(3) { animation-delay: 1s; } } // Why Us Section .why-us { padding: 100px 0; background: $dark-surface; } .why-us-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 2rem; margin-top: 3rem; } .why-us-card { background: $dark-card; padding: 2rem; border-radius: 16px; text-align: center; border: 1px solid rgba(124, 58, 237, 0.2); transition: all 0.3s ease; &:hover { transform: translateY(-5px); border-color: $accent-primary; } } .why-us-icon { font-size: 3rem; margin-bottom: 1rem; } .why-us-card h3 { font-size: 1.3rem; margin-bottom: 0.5rem; } .why-us-card p { color: $text-secondary; font-size: 0.95rem; } // CTA Section .cta { padding: 100px 0; text-align: center; } .cta-title { font-size: 3rem; font-weight: 900; margin-bottom: 1rem; @media (max-width: 768px) { font-size: 2rem; } } .cta-subtitle { color: $text-secondary; font-size: 1.2rem; margin-bottom: 2rem; max-width: 700px; margin-left: auto; margin-right: auto; } .cta-buttons { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; } // Footer .footer { padding: 2rem 0; text-align: center; color: $text-secondary; border-top: 1px solid rgba(124, 58, 237, 0.2); } // Scroll Animations .animate-on-scroll { opacity: 0; transform: translateY(30px); transition: opacity 0.6s ease-out, transform 0.6s ease-out; &.animate-in { opacity: 1; transform: translateY(0); } } // Gradient Backgrounds for Images .gradient-bg-1 { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); } .gradient-bg-2 { background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); } .gradient-bg-3 { background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); } .gradient-bg-4 { background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%); } .gradient-bg-5 { background: linear-gradient(135deg, #fa709a 0%, #fee140 100%); } .gradient-bg-6 { background: linear-gradient(135deg, #30cfd0 0%, #330867 100%); } .gradient-bg-7 { background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%); } .gradient-bg-8 { background: linear-gradient(135deg, #ff9a9e 0%, #fecfef 100%); } .gradient-bg-9 { background: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%); } .gradient-bg-10 { background: linear-gradient(135deg, #ff6e7f 0%, #bfe9ff 100%); } .gradient-bg-11 { background: linear-gradient(135deg, #e0c3fc 0%, #8ec5fc 100%); } .gradient-bg-12 { background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); } .gradient-bg-13 { background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); } .gradient-bg-14 { background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%); } // Ripple Effect for Buttons .ripple { position: absolute; border-radius: 50%; background: rgba(255, 255, 255, 0.6); width: 100px; height: 100px; margin-left: -50px; margin-top: -50px; animation: ripple-animation 0.6s ease-out; pointer-events: none; } @keyframes ripple-animation { from { transform: scale(0); opacity: 1; } to { transform: scale(4); opacity: 0; } } .btn-primary, .btn-secondary { position: relative; overflow: hidden; } // Agentic Intro Section .agentic-intro { padding: 100px 0; background: $dark-bg; position: relative; &::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, $accent-primary, transparent); } } .agentic-slider { margin-top: 3rem; padding-bottom: 60px; .swiper-slide { display: flex; justify-content: center; align-items: stretch; } } .agentic-card { background: $dark-card; border-radius: 24px; padding: 2.5rem; border: 1px solid rgba(124, 58, 237, 0.3); max-width: 900px; width: 100%; transition: all 0.3s ease; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15), 0 4px 16px rgba(124, 58, 237, 0.1); &:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(0, 212, 255, 0.2), 0 8px 20px rgba(124, 58, 237, 0.15); border-color: $accent-primary; } } .agentic-image { width: 100%; height: 200px; border-radius: 16px; display: flex; align-items: center; justify-content: center; margin-bottom: 2rem; position: relative; overflow: hidden; &::before { content: ''; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.2); } } .agentic-icon { font-size: 5rem; position: relative; z-index: 1; filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3)); } .agentic-title { font-size: 2rem; font-weight: 700; margin-bottom: 1rem; background: $gradient-accent; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .agentic-description { color: $text-secondary; line-height: 1.8; margin-bottom: 2rem; font-size: 1.05rem; } .agentic-features { display: flex; flex-direction: column; gap: 1rem; } .feature-item { display: flex; align-items: center; gap: 0.75rem; padding: 0.75rem; background: rgba(0, 212, 255, 0.05); border-radius: 8px; border-left: 3px solid $accent-primary; .feature-icon { color: $accent-primary; font-weight: bold; font-size: 1.2rem; } span:not(.feature-icon) { color: $text-primary; font-size: 0.95rem; } } // Swiper Navigation Customization .swiper-button-next, .swiper-button-prev { color: $accent-primary; &::after { font-size: 24px; font-weight: bold; } &:hover { color: lighten($accent-primary, 10%); } } .swiper-pagination { bottom: 10px !important; .swiper-pagination-bullet { background: $accent-primary; opacity: 0.5; width: 12px; height: 12px; transition: all 0.3s ease; &-active { opacity: 1; width: 30px; border-radius: 6px; } } } // Processes Section .processes-section { padding: 100px 0; background: $dark-surface; position: relative; overflow: hidden; &::before { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 800px; height: 800px; background: radial-gradient(circle, rgba(124, 58, 237, 0.1) 0%, transparent 70%); border-radius: 50%; pointer-events: none; } } .processes-slider { margin-top: 3rem; padding: 40px 20px 80px; max-width: 600px; margin-left: auto; margin-right: auto; .swiper-slide { display: flex; justify-content: center; align-items: center; } } .process-card { background: $dark-card; border-radius: 24px; border: 2px solid rgba(124, 58, 237, 0.3); width: 100%; max-width: 500px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15), 0 4px 16px rgba(124, 58, 237, 0.1); transition: all 0.3s ease; &:hover { border-color: $accent-primary; box-shadow: 0 20px 48px rgba(0, 212, 255, 0.25), 0 8px 24px rgba(124, 58, 237, 0.15); transform: translateY(-5px); } } .process-header { display: flex; align-items: center; gap: 1rem; padding: 2rem 2rem 1rem; } .process-icon { font-size: 3rem; filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3)); } .process-title { font-size: 1.8rem; font-weight: 700; color: $text-primary; } .process-image { height: 180px; display: flex; align-items: center; justify-content: center; position: relative; border-radius: 22px 22px 0 0; overflow: hidden; &::before { content: ''; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.3); } } .process-stats { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 1rem; padding: 1rem; } .stat-badge { background: rgba(0, 0, 0, 0.7); backdrop-filter: blur(10px); padding: 1rem 1.5rem; border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.2); display: flex; flex-direction: column; text-align: center; } .stat-number { font-size: 2rem; font-weight: 900; background: $gradient-accent; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; display: block; line-height: 1; margin-bottom: 0.25rem; } .stat-text { color: $text-secondary; font-size: 0.85rem; display: block; } .process-description { padding: 2rem; p { color: $text-secondary; line-height: 1.7; margin-bottom: 1.5rem; } } .process-benefits { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.75rem; li { color: $text-primary; padding: 0.75rem; background: rgba(0, 212, 255, 0.05); border-radius: 8px; border-left: 3px solid $accent-primary; font-size: 0.95rem; transition: all 0.3s ease; &:hover { background: rgba(0, 212, 255, 0.1); transform: translateX(5px); } } } .processes-pagination { bottom: 20px !important; } // Cases Gallery Section .cases-section { padding: 100px 0; background: $dark-bg; } .cases-gallery { margin-top: 3rem; padding-bottom: 80px; .swiper-slide { width: 400px; display: flex; justify-content: center; align-items: stretch; @media (max-width: 768px) { width: 320px; } } } .case-card { background: $dark-card; border-radius: 24px; border: 2px solid rgba(124, 58, 237, 0.3); transition: all 0.4s ease; width: 100%; display: flex; flex-direction: column; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15), 0 4px 16px rgba(124, 58, 237, 0.1); &:hover { border-color: $accent-primary; box-shadow: 0 24px 56px rgba(0, 212, 255, 0.25), 0 12px 28px rgba(124, 58, 237, 0.15); transform: translateY(-10px); } } .case-image { height: 200px; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 2rem; border-radius: 22px 22px 0 0; overflow: hidden; &::before { content: ''; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.2); } } .case-company-icon { font-size: 4rem; position: relative; z-index: 1; filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.5)); margin-bottom: 1rem; } .case-badge { position: relative; z-index: 1; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(10px); padding: 0.5rem 1.5rem; border-radius: 20px; font-size: 0.85rem; font-weight: 600; color: $accent-primary; border: 1px solid rgba(0, 212, 255, 0.3); } .case-company { font-size: 1.8rem; font-weight: 700; padding: 1.5rem 2rem 1rem; color: $text-primary; } .case-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; padding: 0 2rem 1.5rem; border-bottom: 1px solid rgba(124, 58, 237, 0.2); } .metric-item { text-align: center; display: flex; flex-direction: column; } .metric-value { font-size: 1.5rem; font-weight: 900; background: $gradient-accent; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; line-height: 1; margin-bottom: 0.5rem; } .metric-label { color: $text-secondary; font-size: 0.75rem; line-height: 1.2; } .case-description { padding: 1.5rem 2rem; color: $text-secondary; line-height: 1.7; font-size: 0.95rem; flex-grow: 1; } .case-results { padding: 1rem 2rem 2rem; display: flex; flex-wrap: wrap; gap: 0.75rem; } .result-tag { background: rgba(0, 212, 255, 0.1); color: $accent-primary; padding: 0.5rem 1rem; border-radius: 20px; font-size: 0.85rem; border: 1px solid rgba(0, 212, 255, 0.3); transition: all 0.3s ease; &:hover { background: rgba(0, 212, 255, 0.2); transform: translateY(-2px); } } .cases-pagination { bottom: 20px !important; } .cases-button-next, .cases-button-prev { top: 50%; transform: translateY(-50%); margin-top: -40px; color: $accent-primary; &::after { font-size: 24px; font-weight: bold; } &:hover { color: lighten($accent-primary, 10%); transform: translateY(-50%) scale(1.1); } } // Responsive adjustments @media (max-width: 768px) { .agentic-card { padding: 1.5rem; } .agentic-title { font-size: 1.5rem; } .agentic-image { height: 150px; } .agentic-icon { font-size: 3.5rem; } .process-card { max-width: 100%; } .process-title { font-size: 1.4rem; } .case-metrics { grid-template-columns: 1fr; gap: 0.75rem; } .swiper-button-next, .swiper-button-prev { &::after { font-size: 20px; } } }