/* == variables.css == */
:root {
--primary: #FF6B4A;
--primary-light: #FF8E75;
--primary-dark: #E85A39;
--primary-soft: #FF8E75;
--secondary: #7B83DA;
--accent: #7B83DA;
--accent-purple: #7B83DA;
--accent-light: #9FA8DA;
--bg-primary: #FFF5F0;
--bg-secondary: #F9F9F9;
--bg-light: #F9F9F9;
--bg-white: #FFFFFF;
--bg-dark: #1a1a2e;
--text-primary: #1a1a2e;
--text-secondary: #3d3d5c;
--text-muted: #5a5a7a;
--text-light: #FFFFFF;
--text-dark: #1a1a2e;
--color-success: #10b981;
--color-warning: #f59e0b;
--color-danger: #ef4444;
--color-dark: #1a1a2e;
--color-gray-900: #1a1a2e;
--color-gray-800: #2d2d44;
--color-gray-700: #3d3d5c;
--color-gray-600: #5a5a7a;
--color-gray-500: #7a7a9a;
--color-gray-400: #9a9ab8;
--color-gray-300: #c0c0d8;
--color-gray-200: #e0e0f0;
--color-gray-100: #f0f0f8;
--color-gray-50: #f8f8fc;
--color-white: #ffffff;
--gradient-primary: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
--gradient-hero: linear-gradient(135deg, var(--primary) 0%, var(--accent-purple) 100%);
--gradient-light: linear-gradient(180deg, var(--color-white) 0%, var(--bg-primary) 100%);
--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.6) 100%);
--gradient-orange: linear-gradient(135deg, #FF6B4A, #FF8E75);
--glass-bg: rgba(255, 255, 255, 0.6);
--glass-bg-light: rgba(255, 255, 255, 0.8);
--glass-bg-dark: rgba(255, 255, 255, 0.4);
--glass-border: rgba(255, 107, 74, 0.15);
--glass-shadow: 0 8px 32px 0 rgba(255, 107, 74, 0.1);
--glass-blur: blur(10px);
--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.03);
--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
--shadow-lg: 20px 20px 60px rgba(209, 217, 230, 0.8), -20px -20px 60px rgba(255, 255, 255, 0.9);
--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.03);
--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
--shadow-glow: 0 10px 25px rgba(255, 107, 74, 0.3);
--shadow-glow-purple: 0 0 30px rgba(159, 168, 218, 0.35);
--shadow-neumorphism: 20px 20px 60px rgba(209, 217, 230, 0.8), -20px -20px 60px rgba(255, 255, 255, 0.9);
--glow: 0 15px 35px rgba(255, 107, 74, 0.5);
--spacing-xs: 0.5rem;
--spacing-sm: 0.75rem;
--spacing-md: 1rem;
--spacing-lg: 1.5rem;
--spacing-xl: 2rem;
--spacing-2xl: 3rem;
--spacing-3xl: 4rem;
--spacing-4xl: 4.5rem;
--font-sans: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif;
--font-mono: 'Fira Code', 'Consolas', 'Monaco', monospace;
--font-size-xs: 0.75rem;
--font-size-sm: 0.875rem;
--font-size-base: 1rem;
--font-size-lg: 1.125rem;
--font-size-xl: 1.25rem;
--font-size-2xl: 1.5rem;
--font-size-3xl: 1.875rem;
--font-size-4xl: 2.25rem;
--font-size-5xl: 3rem;
--font-size-6xl: 3.75rem;
--font-size-7xl: 4.5rem;
--font-weight-light: 300;
--font-weight-normal: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--font-weight-extrabold: 800;
--line-height-tight: 1.25;
--line-height-normal: 1.5;
--line-height-relaxed: 1.75;
--radius-sm: 0.5rem;
--radius-md: 0.75rem;
--radius-lg: 1rem;
--radius-xl: 1.5rem;
--radius-2xl: 1.875rem;
--radius-3xl: 2rem;
--radius-full: 9999px;
--radius-round: 50px;
--transition-fast: 150ms ease-in-out;
--transition-base: 250ms ease-in-out;
--transition-slow: 350ms ease-in-out;
--transition-all: all var(--transition-base);
--ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
--ease-out-back: cubic-bezier(0.34, 1.56, 0.64, 1);
--ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);
--z-dropdown: 1000;
--z-sticky: 1020;
--z-fixed: 1030;
--z-modal-backdrop: 1040;
--z-modal: 1050;
--z-popover: 1060;
--z-tooltip: 1070;
--container-max-width: 1280px;
--container-padding: var(--spacing-lg);
--blob-1: radial-gradient(circle at 20% 30%, rgba(59, 130, 246, 0.08) 0%, transparent 50%);
--blob-2: radial-gradient(circle at 80% 70%, rgba(139, 92, 246, 0.08) 0%, transparent 50%);
--blob-3: radial-gradient(circle at 50% 50%, rgba(6, 182, 212, 0.06) 0%, transparent 50%);
}
body {
--border-color: rgba(255, 107, 74, 0.1);
font-family: var(--font-sans);
background-color: var(--bg-primary);
color: var(--text-primary);
}
.glass {
background: var(--glass-bg);
backdrop-filter: var(--glass-blur);
-webkit-backdrop-filter: var(--glass-blur);
border: 1px solid var(--glass-border);
box-shadow: var(--glass-shadow);
}
.glass-light {
background: var(--glass-bg-light);
backdrop-filter: var(--glass-blur);
-webkit-backdrop-filter: var(--glass-blur);
border: 1px solid var(--glass-border);
}
.glass-dark {
background: var(--glass-bg-dark);
backdrop-filter: var(--glass-blur);
-webkit-backdrop-filter: var(--glass-blur);
border: 1px solid rgba(255, 107, 74, 0.2);
}
.gradient-text {
background: var(--gradient-primary);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
.glow {
box-shadow: var(--shadow-glow);
}
.glow-purple {
box-shadow: var(--shadow-glow-purple);
}
.text-dark {
color: var(--text-dark);
}
.text-primary {
color: var(--text-primary);
}
.text-secondary {
color: var(--text-secondary);
}
.text-muted {
color: var(--text-muted);
}
.text-orange {
color: var(--primary);
}
.text-violet {
color: var(--secondary);
}
.radar-mode {
--bg-primary: #0a0a14;
--text-primary: #FFFFFF;
--text-secondary: rgba(255, 255, 255, 0.7);
--accent: #FF6B4A;
}
/* == base.css == */
@import url('variables.css');
*, *::before, *::after {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
font-size: 16px;
}
body {
font-family: var(--font-sans);
font-size: calc(var(--font-size-base) + min(var(--font-size-base) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
line-height: var(--line-height-normal);
color: var(--text-primary);
background: var(--bg-primary);
overflow-x: hidden;
position: relative;
min-height: 100vh;
}
button,
input,
select,
textarea {
font-family: inherit;
}
body.fog-mode {
background: #050510;
color: #ffffff;
}
body.fog-mode::before,
body.fog-mode::after {
display: none;
}
body.fog-mode .hero-title,
body.fog-mode .section-title,
body.fog-mode h1, body.fog-mode h2, body.fog-mode h3 {
color: #ffffff;
}
body.fog-mode .hero-description,
body.fog-mode .section-description,
body.fog-mode p {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .text-primary,
body.fog-mode .stat-label {
color: #ffffff;
}
body.fog-mode .text-secondary,
body.fog-mode .text-muted {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .card,
body.fog-mode .glass,
body.fog-mode .stat-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}
body.fog-mode .card:hover,
body.fog-mode .stat-card:hover {
background: rgba(30, 30, 50, 0.7);
border-color: rgba(255, 107, 74, 0.3);
}
body.fog-mode section {
background: transparent;
}
body.fog-mode .stats-section,
body.fog-mode .features-section,
body.fog-mode .solutions-preview {
background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
}
body.fog-mode .section-badge,
body.fog-mode .hero-badge {
background: rgba(255, 107, 74, 0.2);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.fog-mode .btn-outline {
border-color: rgba(255, 255, 255, 0.3);
color: #ffffff;
}
body.fog-mode .btn-outline:hover {
background: rgba(255, 255, 255, 0.1);
border-color: #FF6B4A;
}
body.fog-mode .btn-secondary {
background: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
body.fog-mode .navbar {
background: rgba(5, 5, 16, 0.8);
border-bottom-color: rgba(255, 255, 255, 0.05);
}
body.fog-mode .navbar.scrolled {
background: rgba(5, 5, 16, 0.95);
}
body.fog-mode .nav-link {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .nav-link:hover {
color: #FF6B4A;
}
body.fog-mode .footer {
background: rgba(5, 5, 16, 0.9);
border-top-color: rgba(255, 255, 255, 0.05);
}
body.fog-mode .footer-link {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.fog-mode .hero-stats {
border-top-color: rgba(255, 107, 74, 0.3);
}
body.fog-mode .hero-badge {
background: rgba(255, 107, 74, 0.15);
border-color: rgba(255, 107, 74, 0.5);
color: #FF6B4A;
}
body.fog-mode .hero-description {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .hero-placeholder .placeholder-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .placeholder-dot {
background: rgba(255, 255, 255, 0.3);
}
body.fog-mode .placeholder-line {
background: rgba(255, 255, 255, 0.1);
}
body.fog-mode .placeholder-box {
background: rgba(255, 255, 255, 0.05);
}
body.fog-mode .stat-item {
background: rgba(20, 20, 35, 0.4);
}
body.fog-mode .tech-stack-section {
background: transparent;
}
body.fog-mode .orbit-ring {
border-color: rgba(255, 107, 74, 0.25);
}
body.fog-mode .orbit-item {
background: rgba(20, 20, 35, 0.8);
border-color: rgba(255, 107, 74, 0.3);
}
body.fog-mode .tech-feature-item {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .tech-feature-item:hover {
border-color: rgba(255, 107, 74, 0.4);
box-shadow: 0 10px 25px rgba(255, 107, 74, 0.2);
}
body.fog-mode .feature-content h3 {
color: #ffffff;
}
body.fog-mode .feature-content p {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .comparison-section {
background: transparent;
}
body.fog-mode .comparison-card {
background: rgba(20, 20, 35, 0.7);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .comparison-card.before {
border-color: rgba(239, 68, 68, 0.3);
}
body.fog-mode .comparison-card.after {
border-color: rgba(16, 185, 129, 0.3);
background: linear-gradient(225deg, rgba(16, 185, 129, 0.1) 0%, rgba(20, 20, 35, 0.7) 100%);
}
body.fog-mode .comparison-card:hover {
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}
body.fog-mode .comparison-header {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .comparison-header h3 {
color: #ffffff;
}
body.fog-mode .comparison-list li {
color: rgba(255, 255, 255, 0.8);
border-bottom-color: rgba(255, 255, 255, 0.05);
}
body.fog-mode .comparison-stat {
background: rgba(10, 10, 20, 0.5);
}
body.fog-mode .comparison-stat span {
color: rgba(255, 255, 255, 0.6);
}
body.fog-mode .integration-section {
background: transparent;
}
body.fog-mode .integration-brands h3,
body.fog-mode .integration-steps h3 {
color: #ffffff;
}
body.fog-mode .brand-item {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .brand-item:hover {
border-color: rgba(255, 107, 74, 0.4);
}
body.fog-mode .brand-name {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .visual-diagram {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .camera-label,
body.fog-mode .alert-label {
color: rgba(255, 255, 255, 0.6);
}
body.fog-mode .oxania-box {
background: rgba(30, 30, 50, 0.8);
border-color: rgba(255, 107, 74, 0.3);
}
body.fog-mode .mini-step {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .mini-step:hover {
border-color: rgba(255, 107, 74, 0.4);
}
body.fog-mode .step-info strong {
color: #ffffff;
}
body.fog-mode .step-info p {
color: rgba(255, 255, 255, 0.6);
}
body.fog-mode .integration-note {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 107, 74, 0.2);
}
body.fog-mode .integration-note p {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .features {
background: transparent;
}
body.fog-mode .feature-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .feature-card:hover {
border-color: rgba(255, 107, 74, 0.4);
box-shadow: 0 10px 30px rgba(255, 107, 74, 0.15);
}
body.fog-mode .feature-title {
color: #ffffff;
}
body.fog-mode .feature-description {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .stats-section {
background: transparent;
}
body.fog-mode .stat-description {
color: rgba(255, 255, 255, 0.6);
}
body.fog-mode .testimonials-section {
background: transparent;
}
body.fog-mode .testimonial-card {
background: rgba(20, 20, 35, 0.7);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .testimonial-card:hover {
box-shadow: 0 10px 30px rgba(255, 107, 74, 0.2);
}
body.fog-mode .testimonial-text {
color: rgba(255, 255, 255, 0.85);
}
body.fog-mode .author-name {
color: #ffffff;
}
body.fog-mode .author-role {
color: rgba(255, 255, 255, 0.6);
}
body.fog-mode .author-avatar {
background: linear-gradient(225deg, rgba(255, 107, 74, 0.2), rgba(123, 131, 218, 0.2));
}
body.fog-mode .process-section {
background: transparent;
}
body.fog-mode .step-title {
color: #ffffff;
}
body.fog-mode .step-description {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .faq-section {
background: transparent;
}
body.fog-mode .faq-item {
border-bottom-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .faq-question {
color: #ffffff;
}
body.fog-mode .faq-question:hover {
color: #FF6B4A;
}
body.fog-mode .faq-answer p {
color: rgba(255, 255, 255, 0.75);
}
body.fog-mode .partners-section {
background: transparent;
}
body.fog-mode .partner-logo {
opacity: 0.7;
}
body.fog-mode .partner-logo:hover {
opacity: 1;
}
body.fog-mode .logo-placeholder svg rect {
fill: rgba(255, 255, 255, 0.1);
}
body.fog-mode .logo-placeholder svg text {
fill: rgba(255, 255, 255, 0.7);
}
body.fog-mode .partner-logo:hover .logo-placeholder svg rect {
fill: rgba(255, 107, 74, 0.2);
}
body.fog-mode .partner-logo:hover .logo-placeholder svg text {
fill: #FF6B4A;
}
body.fog-mode .advantages-section {
background: transparent;
}
body.fog-mode .advantage-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .advantage-card:hover {
border-color: rgba(255, 107, 74, 0.4);
box-shadow: 0 10px 30px rgba(255, 107, 74, 0.15);
}
body.fog-mode .advantage-title {
color: #ffffff;
}
body.fog-mode .comparison-item.us {
background: rgba(76, 175, 80, 0.1);
}
body.fog-mode .comparison-item.them {
background: rgba(158, 158, 158, 0.1);
}
body.fog-mode .comparison-item span:last-child {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .cta-section,
body.fog-mode .cta {
background: transparent;
}
body.fog-mode .cta::before {
background: radial-gradient(circle, rgba(255, 107, 74, 0.15) 0%, transparent 70%);
}
body.fog-mode .cta-card {
background: rgba(20, 20, 35, 0.7);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .cta-card::before {
background: radial-gradient(circle, rgba(255, 107, 74, 0.1) 0%, transparent 70%);
}
body.fog-mode .cta-title {
color: #ffffff;
}
body.fog-mode .cta-description {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .cta-stat {
background: rgba(10, 10, 20, 0.5);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .cta-stat-label {
color: rgba(255, 255, 255, 0.6);
}
body.fog-mode .contact-section {
background: transparent;
}
body.fog-mode .contact-form {
background: rgba(20, 20, 35, 0.7);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .form-input,
body.fog-mode .form-textarea {
background: rgba(10, 10, 20, 0.5);
border-color: rgba(255, 255, 255, 0.15);
color: #ffffff;
}
body.fog-mode .form-input::placeholder,
body.fog-mode .form-textarea::placeholder {
color: rgba(255, 255, 255, 0.4);
}
body.fog-mode .form-input:focus,
body.fog-mode .form-textarea:focus {
border-color: rgba(255, 107, 74, 0.5);
box-shadow: 0 0 0 3px rgba(255, 107, 74, 0.1);
}
body.fog-mode .form-label {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .showcase {
background: transparent;
}
body.fog-mode .showcase-badge {
background: rgba(255, 107, 74, 0.2);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.fog-mode .showcase-title {
color: #ffffff;
}
body.fog-mode .showcase-description {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .showcase-feature-item {
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .showcase-placeholder {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.fog-mode .solutions-preview {
background: transparent;
}
body.fog-mode .solutions-preview .card h3 {
color: #ffffff;
}
body.fog-mode .solutions-preview .card p {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .blocks-preview-section {
background: transparent;
}
body.fog-mode .block-card {
background: rgba(20, 20, 35, 0.8);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}
body.fog-mode .block-card:hover {
box-shadow: 0 15px 40px rgba(255, 107, 74, 0.2);
}
body.fog-mode .block-info h3 {
color: #ffffff;
}
body.fog-mode .block-info p {
color: rgba(255, 255, 255, 0.7);
}
body.fog-mode .tag {
background: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.8);
}
body.fog-mode .tag-active {
background: #FF6B4A;
color: #ffffff;
}
body.fog-mode .blocks-note {
color: rgba(255, 255, 255, 0.6);
}
body.fog-mode .glass-content {
background: rgba(20, 20, 35, 0.7);
border-color: rgba(255, 107, 74, 0.3);
}
body.fog-mode .glass-content h4,
body.fog-mode .glass-content p {
color: #ffffff;
}
body.fog-mode .particles-preview {
background: rgba(20, 20, 35, 0.8);
}
body.fog-mode .particles-preview .preview-content h4,
body.fog-mode .particles-preview .preview-content p {
color: #ffffff;
}
body.fog-mode .mesh-preview {
background: rgba(20, 20, 35, 0.8);
}
body.fog-mode .mesh-preview .preview-content h4,
body.fog-mode .mesh-preview .preview-content p {
color: #ffffff;
}
body.fog-mode .glass {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}
body.fog-mode .stats-section,
body.fog-mode .features-section,
body.fog-mode .solutions-preview,
body.fog-mode .tech-stack-section,
body.fog-mode .comparison-section,
body.fog-mode .integration-section {
background: transparent;
}
body.fog-mode a:not(.btn) {
color: #FF6B4A;
}
body.fog-mode a:not(.btn):hover {
color: #FF8E75;
}
body.aurora-mode {
background: #050510;
color: #ffffff;
}
body.aurora-mode::before,
body.aurora-mode::after {
display: none;
}
body.aurora-mode .hero-title,
body.aurora-mode .section-title,
body.aurora-mode h1, body.aurora-mode h2, body.aurora-mode h3 {
color: #ffffff;
}
body.aurora-mode .hero-description,
body.aurora-mode .section-description,
body.aurora-mode p {
color: rgba(255, 255, 255, 0.8);
}
body.aurora-mode .text-primary,
body.aurora-mode .stat-label {
color: #ffffff;
}
body.aurora-mode .text-secondary,
body.aurora-mode .text-muted {
color: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .card,
body.aurora-mode .glass,
body.aurora-mode .stat-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}
body.aurora-mode .card:hover,
body.aurora-mode .stat-card:hover {
background: rgba(30, 30, 50, 0.7);
border-color: rgba(255, 107, 74, 0.3);
}
body.aurora-mode section {
background: transparent;
}
body.aurora-mode .section-badge,
body.aurora-mode .hero-badge {
background: rgba(255, 107, 74, 0.2);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.aurora-mode .btn-outline {
border-color: rgba(255, 255, 255, 0.3);
color: #ffffff;
}
body.aurora-mode .btn-outline:hover {
background: rgba(255, 255, 255, 0.1);
border-color: #FF6B4A;
}
body.aurora-mode .btn-secondary {
background: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
body.aurora-mode .navbar {
background: rgba(5, 5, 16, 0.8);
border-bottom-color: rgba(255, 255, 255, 0.05);
}
body.aurora-mode .navbar.scrolled {
background: rgba(5, 5, 16, 0.95);
}
body.aurora-mode .nav-link {
color: rgba(255, 255, 255, 0.8);
}
body.aurora-mode .nav-link:hover {
color: #FF6B4A;
}
body.aurora-mode .nav-logo {
color: #ffffff;
}
body.aurora-mode .footer {
background: rgba(5, 5, 16, 0.9);
border-top-color: rgba(255, 255, 255, 0.05);
}
body.aurora-mode .footer-link {
color: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #7B83DA 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.aurora-mode .hero-stats {
border-top-color: rgba(255, 107, 74, 0.3);
}
body.aurora-mode a:not(.btn) {
color: #FF6B4A;
}
body.aurora-mode a:not(.btn):hover {
color: #FF8E75;
}
body.aurora-mode .tech-stack-section,
body.aurora-mode .comparison-section,
body.aurora-mode .integration-section,
body.aurora-mode .features,
body.aurora-mode .stats-section,
body.aurora-mode .testimonials-section,
body.aurora-mode .process-section,
body.aurora-mode .faq-section,
body.aurora-mode .partners-section,
body.aurora-mode .advantages-section,
body.aurora-mode .cta,
body.aurora-mode .showcase,
body.aurora-mode .solutions-preview,
body.aurora-mode .blocks-preview-section {
background: transparent;
}
body.aurora-mode .comparison-card,
body.aurora-mode .tech-feature-item,
body.aurora-mode .advantage-card,
body.aurora-mode .testimonial-card,
body.aurora-mode .feature-card,
body.aurora-mode .block-card,
body.aurora-mode .mini-step,
body.aurora-mode .faq-item,
body.aurora-mode .brand-item,
body.aurora-mode .integration-note,
body.aurora-mode .cta-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.aurora-mode .comparison-card.before {
border-color: rgba(239, 68, 68, 0.3);
}
body.aurora-mode .comparison-card.after {
border-color: rgba(16, 185, 129, 0.3);
background: linear-gradient(225deg, rgba(16, 185, 129, 0.1) 0%, rgba(20, 20, 35, 0.6) 100%);
}
body.aurora-mode .feature-content h3,
body.aurora-mode .feature-title,
body.aurora-mode .advantage-title,
body.aurora-mode .step-title,
body.aurora-mode .author-name,
body.aurora-mode .comparison-header h3,
body.aurora-mode .block-info h3,
body.aurora-mode .integration-brands h3,
body.aurora-mode .integration-steps h3,
body.aurora-mode .faq-question,
body.aurora-mode .cta-title {
color: #ffffff;
}
body.aurora-mode .feature-content p,
body.aurora-mode .feature-description,
body.aurora-mode .advantage-description,
body.aurora-mode .step-description,
body.aurora-mode .testimonial-text,
body.aurora-mode .author-role,
body.aurora-mode .comparison-list li,
body.aurora-mode .block-info p,
body.aurora-mode .step-info p,
body.aurora-mode .faq-answer p,
body.aurora-mode .cta-description,
body.aurora-mode .stat-description,
body.aurora-mode .brand-name {
color: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .faq-item {
border-bottom-color: rgba(255, 255, 255, 0.1);
background: transparent;
}
body.aurora-mode .tag {
background: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.8);
}
body.aurora-mode .logo-placeholder svg rect {
fill: rgba(255, 255, 255, 0.1);
}
body.aurora-mode .logo-placeholder svg text {
fill: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .cta-stat {
background: rgba(10, 10, 20, 0.5);
border-color: rgba(255, 255, 255, 0.1);
}
body.aurora-mode .cta-stat-label {
color: rgba(255, 255, 255, 0.6);
}
body.aurora-mode .comparison-item.us {
background: rgba(76, 175, 80, 0.1);
}
body.aurora-mode .comparison-item.them {
background: rgba(158, 158, 158, 0.1);
}
body.aurora-mode .comparison-item span:last-child {
color: rgba(255, 255, 255, 0.8);
}
body.aurora-mode .showcase-badge {
background: rgba(255, 107, 74, 0.2);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.aurora-mode .showcase-title {
color: #ffffff;
}
body.aurora-mode .showcase-description {
color: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .showcase-feature-item {
color: rgba(255, 255, 255, 0.8);
}
body.aurora-mode .solutions-preview .card h3 {
color: #ffffff;
}
body.aurora-mode .solutions-preview .card p {
color: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .footer-title {
color: #ffffff;
}
body.aurora-mode .footer-description,
body.aurora-mode .footer-links a {
color: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .social-link {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.7);
}
body.aurora-mode .footer-bottom {
border-top-color: rgba(255, 255, 255, 0.05);
color: rgba(255, 255, 255, 0.6);
}
body.aurora-mode .nav-toggle span {
background: #ffffff;
}
@media (max-width: 768px) {
body.aurora-mode .nav-menu {
background: rgba(5, 5, 16, 0.98);
}
body.aurora-mode .nav-link {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
}
body.neural-mode {
background: #050510;
color: #ffffff;
}
body.neural-mode::before,
body.neural-mode::after {
display: none;
}
body.neural-mode .hero-title,
body.neural-mode .section-title,
body.neural-mode h1, body.neural-mode h2, body.neural-mode h3 {
color: #ffffff;
}
body.neural-mode .hero-description,
body.neural-mode .section-description,
body.neural-mode p {
color: rgba(255, 255, 255, 0.8);
}
body.neural-mode .text-primary,
body.neural-mode .stat-label {
color: #ffffff;
}
body.neural-mode .text-secondary,
body.neural-mode .text-muted {
color: rgba(255, 255, 255, 0.7);
}
body.neural-mode .card,
body.neural-mode .glass,
body.neural-mode .stat-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}
body.neural-mode .card:hover,
body.neural-mode .stat-card:hover {
background: rgba(30, 30, 50, 0.7);
border-color: rgba(255, 107, 74, 0.3);
}
body.neural-mode section {
background: transparent;
}
body.neural-mode .section-badge,
body.neural-mode .hero-badge {
background: rgba(255, 107, 74, 0.2);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.neural-mode .btn-outline {
border-color: rgba(255, 255, 255, 0.3);
color: #ffffff;
}
body.neural-mode .btn-outline:hover {
background: rgba(255, 255, 255, 0.1);
border-color: #FF6B4A;
}
body.neural-mode .btn-secondary {
background: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
body.neural-mode .navbar {
background: rgba(5, 5, 16, 0.85);
border-bottom-color: rgba(255, 107, 74, 0.1);
}
body.neural-mode .navbar.scrolled {
background: rgba(5, 5, 16, 0.95);
}
body.neural-mode .nav-link {
color: rgba(255, 255, 255, 0.8);
}
body.neural-mode .nav-link:hover {
color: #FF6B4A;
}
body.neural-mode .nav-logo {
color: #ffffff;
}
body.neural-mode .footer {
background: rgba(5, 5, 16, 0.9);
border-top-color: rgba(255, 107, 74, 0.1);
}
body.neural-mode .footer-link {
color: rgba(255, 255, 255, 0.7);
}
body.neural-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #7B83DA 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.neural-mode .hero-stats {
border-top-color: rgba(255, 107, 74, 0.3);
}
body.neural-mode a:not(.btn) {
color: #FF6B4A;
}
body.neural-mode a:not(.btn):hover {
color: #FF8E75;
}
body.neural-mode .tech-stack-section,
body.neural-mode .comparison-section,
body.neural-mode .integration-section,
body.neural-mode .features,
body.neural-mode .stats-section,
body.neural-mode .testimonials-section,
body.neural-mode .process-section,
body.neural-mode .faq-section,
body.neural-mode .partners-section,
body.neural-mode .advantages-section,
body.neural-mode .cta,
body.neural-mode .showcase,
body.neural-mode .solutions-preview,
body.neural-mode .blocks-preview-section {
background: transparent;
}
body.neural-mode .comparison-card,
body.neural-mode .tech-feature-item,
body.neural-mode .advantage-card,
body.neural-mode .testimonial-card,
body.neural-mode .feature-card,
body.neural-mode .block-card,
body.neural-mode .mini-step,
body.neural-mode .faq-item,
body.neural-mode .brand-item,
body.neural-mode .integration-note,
body.neural-mode .cta-card {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
}
body.neural-mode .comparison-card.before {
border-color: rgba(239, 68, 68, 0.3);
}
body.neural-mode .comparison-card.after {
border-color: rgba(16, 185, 129, 0.3);
background: linear-gradient(225deg, rgba(16, 185, 129, 0.1) 0%, rgba(20, 20, 35, 0.6) 100%);
}
body.neural-mode .feature-content h3,
body.neural-mode .feature-title,
body.neural-mode .advantage-title,
body.neural-mode .step-title,
body.neural-mode .author-name,
body.neural-mode .comparison-header h3,
body.neural-mode .block-info h3,
body.neural-mode .integration-brands h3,
body.neural-mode .integration-steps h3,
body.neural-mode .faq-question,
body.neural-mode .cta-title {
color: #ffffff;
}
body.neural-mode .feature-content p,
body.neural-mode .feature-description,
body.neural-mode .advantage-description,
body.neural-mode .step-description,
body.neural-mode .testimonial-text,
body.neural-mode .author-role,
body.neural-mode .comparison-list li,
body.neural-mode .block-info p,
body.neural-mode .step-info p,
body.neural-mode .faq-answer p,
body.neural-mode .cta-description,
body.neural-mode .stat-description,
body.neural-mode .brand-name {
color: rgba(255, 255, 255, 0.7);
}
body.neural-mode .faq-item {
border-bottom-color: rgba(255, 255, 255, 0.1);
background: transparent;
}
body.neural-mode .tag {
background: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.8);
}
body.neural-mode .logo-placeholder svg rect {
fill: rgba(255, 255, 255, 0.1);
}
body.neural-mode .logo-placeholder svg text {
fill: rgba(255, 255, 255, 0.7);
}
body.neural-mode .cta-stat {
background: rgba(10, 10, 20, 0.5);
border-color: rgba(255, 255, 255, 0.1);
}
body.neural-mode .cta-stat-label {
color: rgba(255, 255, 255, 0.6);
}
body.neural-mode .comparison-item.us {
background: rgba(76, 175, 80, 0.1);
}
body.neural-mode .comparison-item.them {
background: rgba(158, 158, 158, 0.1);
}
body.neural-mode .comparison-item span:last-child {
color: rgba(255, 255, 255, 0.8);
}
body.neural-mode .showcase-badge {
background: rgba(255, 107, 74, 0.2);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.neural-mode .showcase-title {
color: #ffffff;
}
body.neural-mode .showcase-description {
color: rgba(255, 255, 255, 0.7);
}
body.neural-mode .showcase-feature-item {
color: rgba(255, 255, 255, 0.8);
}
body.neural-mode .solutions-preview .card h3 {
color: #ffffff;
}
body.neural-mode .solutions-preview .card p {
color: rgba(255, 255, 255, 0.7);
}
body.neural-mode .footer-title {
color: #ffffff;
}
body.neural-mode .footer-description,
body.neural-mode .footer-links a {
color: rgba(255, 255, 255, 0.7);
}
body.neural-mode .social-link {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.7);
}
body.neural-mode .footer-bottom {
border-top-color: rgba(255, 255, 255, 0.05);
color: rgba(255, 255, 255, 0.6);
}
body.neural-mode .nav-toggle span {
background: #ffffff;
}
@media (max-width: 768px) {
body.neural-mode .nav-menu {
background: rgba(5, 5, 16, 0.98);
}
body.neural-mode .nav-link {
background: rgba(20, 20, 35, 0.6);
border-color: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
}
body.flow-mode {
background: #0a0a12;
color: #ffffff;
}
body.flow-mode::before,
body.flow-mode::after {
display: none;
}
body.flow-mode .hero-title,
body.flow-mode .section-title,
body.flow-mode h1, body.flow-mode h2, body.flow-mode h3 {
color: #ffffff;
}
body.flow-mode .hero-description,
body.flow-mode .section-description,
body.flow-mode p {
color: rgba(255, 255, 255, 0.85);
}
body.flow-mode .text-primary,
body.flow-mode .stat-label {
color: #ffffff;
}
body.flow-mode .text-secondary,
body.flow-mode .text-muted {
color: rgba(255, 255, 255, 0.7);
}
body.flow-mode .card,
body.flow-mode .glass,
body.flow-mode .stat-card {
background: rgba(20, 20, 35, 0.85);
border: 1px solid rgba(255, 107, 74, 0.2);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
}
body.flow-mode .card:hover,
body.flow-mode .stat-card:hover {
background: rgba(30, 30, 50, 0.9);
border-color: rgba(255, 107, 74, 0.5);
box-shadow: 0 8px 40px rgba(255, 107, 74, 0.15);
}
body.flow-mode section {
background: transparent;
}
body.flow-mode .section-badge,
body.flow-mode .hero-badge {
background: rgba(255, 107, 74, 0.15);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.flow-mode .btn-outline {
border-color: rgba(255, 255, 255, 0.3);
color: #ffffff;
}
body.flow-mode .btn-outline:hover {
background: rgba(255, 255, 255, 0.1);
border-color: #FF6B4A;
}
body.flow-mode .btn-secondary {
background: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
body.flow-mode .navbar,
body.flow-mode .navbar.navbar-light {
background: rgba(10, 10, 18, 0.6);
border-bottom-color: rgba(255, 107, 74, 0.08);
}
body.flow-mode .navbar.scrolled,
body.flow-mode .navbar.navbar-light.scrolled {
background: rgba(10, 10, 18, 0.8);
box-shadow: 0 1px 16px rgba(0, 0, 0, 0.2);
}
body.flow-mode .nav-link {
color: rgba(255, 255, 255, 0.85);
}
body.flow-mode .nav-link:hover {
color: #FF6B4A;
}
body.flow-mode .nav-logo {
color: #ffffff;
}
body.flow-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 50%, #4FC3F7 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.flow-mode .hero-stats {
border-top-color: rgba(255, 107, 74, 0.3);
}
body.flow-mode a:not(.btn) {
color: #FF6B4A;
}
body.flow-mode a:not(.btn):hover {
color: #FF8E75;
}
body.flow-mode .tech-stack-section,
body.flow-mode .comparison-section,
body.flow-mode .integration-section,
body.flow-mode .features,
body.flow-mode .stats-section,
body.flow-mode .testimonials-section,
body.flow-mode .process-section,
body.flow-mode .faq-section,
body.flow-mode .partners-section,
body.flow-mode .advantages-section,
body.flow-mode .cta,
body.flow-mode .showcase,
body.flow-mode .solutions-preview,
body.flow-mode .blocks-preview-section {
background: transparent;
}
body.flow-mode .comparison-card,
body.flow-mode .tech-feature-item,
body.flow-mode .advantage-card,
body.flow-mode .testimonial-card,
body.flow-mode .feature-card,
body.flow-mode .block-card,
body.flow-mode .mini-step,
body.flow-mode .brand-item,
body.flow-mode .integration-note,
body.flow-mode .cta-card {
background: rgba(20, 20, 35, 0.85);
border: 1px solid rgba(255, 107, 74, 0.15);
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
}
body.flow-mode .comparison-card:hover,
body.flow-mode .tech-feature-item:hover,
body.flow-mode .advantage-card:hover,
body.flow-mode .testimonial-card:hover,
body.flow-mode .feature-card:hover,
body.flow-mode .block-card:hover {
background: rgba(30, 30, 50, 0.9);
border-color: rgba(255, 107, 74, 0.4);
box-shadow: 0 8px 30px rgba(255, 107, 74, 0.1);
}
body.flow-mode .comparison-card.before {
border-color: rgba(239, 68, 68, 0.3);
}
body.flow-mode .comparison-card.after {
border-color: rgba(16, 185, 129, 0.3);
background: linear-gradient(225deg, rgba(16, 185, 129, 0.1) 0%, rgba(15, 15, 25, 0.6) 100%);
}
body.flow-mode .feature-content h3,
body.flow-mode .feature-title,
body.flow-mode .advantage-title,
body.flow-mode .step-title,
body.flow-mode .author-name,
body.flow-mode .comparison-header h3,
body.flow-mode .block-info h3,
body.flow-mode .integration-brands h3,
body.flow-mode .integration-steps h3,
body.flow-mode .faq-question,
body.flow-mode .cta-title {
color: #ffffff;
}
body.flow-mode .feature-content p,
body.flow-mode .feature-description,
body.flow-mode .advantage-description,
body.flow-mode .step-description,
body.flow-mode .testimonial-text,
body.flow-mode .author-role,
body.flow-mode .comparison-list li,
body.flow-mode .block-info p,
body.flow-mode .step-info p,
body.flow-mode .faq-answer p,
body.flow-mode .cta-description,
body.flow-mode .stat-description,
body.flow-mode .brand-name {
color: rgba(255, 255, 255, 0.7);
}
body.flow-mode .solution-features li,
body.flow-mode .solution-description,
body.flow-mode .visual-feature,
body.flow-mode .benefit-label {
color: rgba(255, 255, 255, 0.78);
}
body.flow-mode .visual-label,
body.flow-mode .solution-features strong {
color: #ffffff;
}
body.flow-mode .solution-placeholder.glass {
background: rgba(20, 20, 35, 0.85);
border-color: rgba(255, 107, 74, 0.2);
}
body.flow-mode .faq-item {
border-bottom-color: rgba(255, 107, 74, 0.15);
background: rgba(20, 20, 35, 0.7);
border-radius: 8px;
margin-bottom: 8px;
}
body.flow-mode .faq-item:hover {
background: rgba(30, 30, 50, 0.8);
}
body.flow-mode .faq-icon {
color: #FF6B4A;
}
body.flow-mode .faq-item.faq-open .faq-icon {
transform: rotate(-45deg);
}
body.flow-mode .showcase-badge {
background: rgba(255, 107, 74, 0.15);
border-color: rgba(255, 107, 74, 0.35);
color: #FF6B4A;
}
body.flow-mode .showcase-title {
color: #ffffff;
}
body.flow-mode .showcase-description {
color: rgba(255, 255, 255, 0.7);
}
body.flow-mode .showcase-feature-item {
color: rgba(255, 255, 255, 0.8);
}
body.flow-mode .footer {
background: rgba(10, 10, 18, 0.95);
border-top-color: rgba(255, 107, 74, 0.1);
}
body.flow-mode .footer-logo,
body.flow-mode .footer-title {
color: #ffffff;
}
body.flow-mode .footer-description,
body.flow-mode .footer-links a {
color: rgba(255, 255, 255, 0.7);
}
body.flow-mode .footer-links a:hover {
color: #FF6B4A;
}
body.flow-mode .social-link {
background: rgba(255, 255, 255, 0.05);
border-color: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.7);
}
body.flow-mode .social-link:hover {
background: linear-gradient(225deg, #FF6B4A, #4FC3F7);
border-color: #FF6B4A;
color: #ffffff;
}
body.flow-mode .footer-bottom {
border-top-color: rgba(255, 107, 74, 0.1);
color: rgba(255, 255, 255, 0.75);
}
body.flow-mode .footer-tagline {
color: rgba(255, 255, 255, 0.6);
}
body.flow-mode .nav-toggle span {
background: #ffffff;
}
body.flow-mode .cta-stat {
background: rgba(10, 10, 18, 0.5);
border-color: rgba(255, 107, 74, 0.15);
}
body.flow-mode .cta-stat-label {
color: rgba(255, 255, 255, 0.6);
}
body.flow-mode .feature-icon,
body.flow-mode .advantage-icon,
body.flow-mode .step-number {
background: linear-gradient(225deg, rgba(255, 107, 74, 0.2), rgba(159, 168, 218, 0.2));
border: 1px solid rgba(255, 107, 74, 0.3);
color: #FF6B4A;
}
body.flow-mode .process-step {
background: rgba(20, 20, 35, 0.8);
border: 1px solid rgba(255, 107, 74, 0.15);
}
body.flow-mode .process-step:hover {
border-color: rgba(255, 107, 74, 0.4);
background: rgba(30, 30, 50, 0.85);
}
body.flow-mode .stat-value {
color: #ffffff;
}
body.flow-mode .btn-primary {
background: linear-gradient(225deg, #FF6B4A 0%, #FF8E6B 100%);
border: none;
color: #ffffff;
box-shadow: 0 4px 20px rgba(255, 107, 74, 0.4);
}
body.flow-mode .btn-primary:hover {
background: linear-gradient(225deg, #FF8E6B 0%, #FFA07A 100%);
box-shadow: 0 6px 30px rgba(255, 107, 74, 0.5);
transform: translateY(-2px);
}
body.flow-mode .hero {
background: transparent;
}
body.flow-mode .hero-content {
position: relative;
z-index: 1;
}
body.flow-mode .text-gradient {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 50%, #4FC3F7 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.flow-mode .highlight {
color: #FF6B4A;
}
body.flow-mode input,
body.flow-mode textarea,
body.flow-mode select {
background: rgba(20, 20, 35, 0.9);
border: 1px solid rgba(255, 107, 74, 0.2);
color: #ffffff;
}
body.flow-mode input::placeholder,
body.flow-mode textarea::placeholder {
color: rgba(255, 255, 255, 0.4);
}
body.flow-mode input:focus,
body.flow-mode textarea:focus,
body.flow-mode select:focus {
border-color: #FF6B4A;
box-shadow: 0 0 15px rgba(255, 107, 74, 0.2);
}
body.flow-mode .contact-info-item {
background: rgba(20, 20, 35, 0.8);
border: 1px solid rgba(255, 107, 74, 0.15);
}
body.flow-mode .contact-icon {
background: linear-gradient(225deg, rgba(255, 107, 74, 0.2), rgba(159, 168, 218, 0.2));
color: #FF6B4A;
}
@media (max-width: 768px) {
body.flow-mode .nav-menu {
background: rgba(10, 10, 18, 0.98);
}
body.flow-mode .nav-link {
background: rgba(15, 15, 25, 0.6);
border-color: rgba(255, 107, 74, 0.1);
color: #ffffff;
}
body.flow-mode .nav-link:hover,
body.flow-mode .nav-link.active {
border-color: #FF6B4A;
color: #FF6B4A;
}
}
body.mesh-mode {
background: #0a0a14;
color: #ffffff;
}
body.mesh-mode::before,
body.mesh-mode::after {
display: none;
}
body.mesh-mode .hero-title,
body.mesh-mode .section-title,
body.mesh-mode h1, body.mesh-mode h2, body.mesh-mode h3 {
color: #ffffff;
}
body.mesh-mode .hero-description,
body.mesh-mode .section-description,
body.mesh-mode p {
color: rgba(255, 255, 255, 0.85);
}
body.mesh-mode .text-primary,
body.mesh-mode .stat-label {
color: #ffffff;
}
body.mesh-mode .text-secondary,
body.mesh-mode .text-muted {
color: rgba(255, 255, 255, 0.7);
}
body.mesh-mode .card,
body.mesh-mode .glass,
body.mesh-mode .stat-card {
background: rgba(20, 20, 35, 0.85);
border: 1px solid rgba(255, 107, 74, 0.2);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
}
body.mesh-mode .card:hover,
body.mesh-mode .stat-card:hover {
background: rgba(30, 30, 50, 0.9);
border-color: rgba(255, 107, 74, 0.5);
box-shadow: 0 8px 40px rgba(255, 107, 74, 0.15);
}
body.mesh-mode section {
background: transparent;
}
body.mesh-mode .section-badge,
body.mesh-mode .hero-badge {
background: rgba(255, 107, 74, 0.15);
border-color: rgba(255, 107, 74, 0.4);
color: #FF6B4A;
}
body.mesh-mode .btn-outline {
border-color: rgba(255, 255, 255, 0.3);
color: #ffffff;
}
body.mesh-mode .btn-outline:hover {
background: rgba(255, 255, 255, 0.1);
border-color: #FF6B4A;
}
body.mesh-mode .btn-secondary {
background: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
body.mesh-mode .navbar {
background: rgba(10, 10, 18, 0.85);
border-bottom-color: rgba(255, 107, 74, 0.1);
}
body.mesh-mode .navbar.scrolled {
background: rgba(10, 10, 18, 0.95);
}
body.mesh-mode .nav-link {
color: rgba(255, 255, 255, 0.85);
}
body.mesh-mode .nav-link:hover {
color: #FF6B4A;
}
body.mesh-mode .nav-logo {
color: #ffffff;
}
body.mesh-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 50%, #4FC3F7 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.mesh-mode .footer {
background: rgba(10, 10, 18, 0.95);
border-top-color: rgba(255, 107, 74, 0.1);
}
body.mesh-mode .footer-link {
color: rgba(255, 255, 255, 0.7);
}
body.mesh-mode .footer-link:hover {
color: #FF6B4A;
}
@media (max-width: 768px) {
body.mesh-mode .navbar {
background: rgba(10, 10, 18, 0.95);
}
body.mesh-mode .nav-link.active {
border-color: #FF6B4A;
color: #FF6B4A;
}
}
body.radar-mode {
background: #0a0a14;
color: #ffffff;
}
body.radar-mode::before,
body.radar-mode::after {
display: none;
}
body.radar-mode .hero-title,
body.radar-mode .section-title,
body.radar-mode h1, body.radar-mode h2, body.radar-mode h3 {
color: #ffffff;
}
body.radar-mode .hero-description,
body.radar-mode .section-description,
body.radar-mode p {
color: rgba(255, 255, 255, 0.85);
}
body.radar-mode .text-primary,
body.radar-mode .stat-label {
color: #ffffff;
}
body.radar-mode .text-secondary,
body.radar-mode .text-muted {
color: rgba(255, 255, 255, 0.7);
}
body.radar-mode .card,
body.radar-mode .glass,
body.radar-mode .stat-card {
background: rgba(15, 15, 28, 0.85);
border: 1px solid rgba(255, 107, 74, 0.12);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
}
body.radar-mode .card:hover,
body.radar-mode .stat-card:hover {
background: rgba(25, 25, 45, 0.9);
border-color: rgba(255, 107, 74, 0.4);
box-shadow: 0 8px 40px rgba(255, 107, 74, 0.1);
}
body.radar-mode section {
background: transparent;
}
body.radar-mode .section-badge,
body.radar-mode .hero-badge {
background: rgba(255, 107, 74, 0.12);
border-color: rgba(255, 107, 74, 0.35);
color: #FF6B4A;
}
body.radar-mode .btn-outline {
border-color: rgba(255, 255, 255, 0.3);
color: #ffffff;
}
body.radar-mode .btn-outline:hover {
background: rgba(255, 107, 74, 0.1);
border-color: #FF6B4A;
}
body.radar-mode .btn-secondary {
background: rgba(255, 255, 255, 0.1);
color: #ffffff;
}
body.radar-mode .btn-primary {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 100%);
box-shadow: 0 4px 20px rgba(255, 107, 74, 0.3);
}
body.radar-mode .navbar {
background: rgba(10, 10, 18, 0.85);
border-bottom-color: rgba(255, 107, 74, 0.08);
}
body.radar-mode .navbar.scrolled {
background: rgba(10, 10, 18, 0.95);
}
body.radar-mode .nav-link {
color: rgba(255, 255, 255, 0.85);
}
body.radar-mode .nav-link:hover {
color: #FF6B4A;
}
body.radar-mode .nav-logo {
color: #ffffff;
}
body.radar-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.radar-mode .footer {
background: rgba(8, 8, 16, 0.95);
border-top-color: rgba(255, 107, 74, 0.08);
}
body.radar-mode .footer-logo,
body.radar-mode .footer-title {
color: #ffffff;
}
body.radar-mode .footer-description,
body.radar-mode .footer-links a {
color: rgba(255, 255, 255, 0.7);
}
body.radar-mode .footer-links a:hover {
color: #FF6B4A;
}
body.radar-mode .social-link {
background: rgba(15, 15, 28, 0.6);
border-color: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.7);
}
body.radar-mode .social-link:hover {
background: linear-gradient(225deg, #FF6B4A, #9FA8DA);
border-color: #FF6B4A;
color: #ffffff;
}
body.radar-mode .footer-bottom {
border-top-color: rgba(255, 255, 255, 0.1);
color: rgba(255, 255, 255, 0.6);
}
body.radar-mode .text-gradient {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.radar-mode .nav-toggle span {
background: #ffffff;
}
body.radar-mode a:not(.btn) {
color: #FF6B4A;
}
body.radar-mode a:not(.btn):hover {
color: #FF8E75;
}
body.radar-mode .hero-stats {
border-top-color: rgba(255, 107, 74, 0.2);
}
body.radar-mode .tech-stack-section,
body.radar-mode .comparison-section,
body.radar-mode .integration-section,
body.radar-mode .features,
body.radar-mode .stats-section,
body.radar-mode .testimonials-section,
body.radar-mode .process-section,
body.radar-mode .faq-section,
body.radar-mode .partners-section,
body.radar-mode .advantages-section,
body.radar-mode .cta,
body.radar-mode .showcase,
body.radar-mode .solutions-preview,
body.radar-mode .blocks-preview-section {
background: transparent;
}
body.radar-mode .comparison-card,
body.radar-mode .tech-feature-item,
body.radar-mode .advantage-card,
body.radar-mode .testimonial-card,
body.radar-mode .feature-card,
body.radar-mode .block-card,
body.radar-mode .mini-step,
body.radar-mode .faq-item,
body.radar-mode .brand-item,
body.radar-mode .integration-note,
body.radar-mode .cta-card {
background: rgba(15, 15, 28, 0.6);
border-color: rgba(255, 107, 74, 0.1);
}
body.radar-mode .faq-item {
border-bottom-color: rgba(255, 107, 74, 0.1);
background: transparent;
}
body.radar-mode .faq-question:hover {
color: #FF6B4A;
}
body.radar-mode .feature-content h3,
body.radar-mode .feature-title,
body.radar-mode .advantage-title,
body.radar-mode .step-title,
body.radar-mode .author-name,
body.radar-mode .comparison-header h3,
body.radar-mode .block-info h3,
body.radar-mode .faq-question,
body.radar-mode .cta-title {
color: #ffffff;
}
body.radar-mode .feature-content p,
body.radar-mode .feature-description,
body.radar-mode .advantage-description,
body.radar-mode .step-description,
body.radar-mode .testimonial-text,
body.radar-mode .author-role,
body.radar-mode .comparison-list li,
body.radar-mode .block-info p,
body.radar-mode .faq-answer p,
body.radar-mode .cta-description,
body.radar-mode .stat-description,
body.radar-mode .brand-name {
color: rgba(255, 255, 255, 0.75);
}
body.radar-mode input,
body.radar-mode textarea,
body.radar-mode select {
background: rgba(15, 15, 28, 0.9);
border: 1px solid rgba(255, 107, 74, 0.2);
color: #ffffff;
}
body.radar-mode input::placeholder,
body.radar-mode textarea::placeholder {
color: rgba(255, 255, 255, 0.4);
}
body.radar-mode input:focus,
body.radar-mode textarea:focus,
body.radar-mode select:focus {
border-color: #FF6B4A;
box-shadow: 0 0 15px rgba(255, 107, 74, 0.2);
}
body.radar-mode .contact-info-item {
background: rgba(15, 15, 28, 0.8);
border: 1px solid rgba(255, 107, 74, 0.15);
}
body.radar-mode .contact-icon {
background: linear-gradient(225deg, rgba(255, 107, 74, 0.2), rgba(159, 168, 218, 0.2));
color: #FF6B4A;
}
@media (max-width: 768px) {
body.radar-mode .nav-menu {
background: rgba(10, 10, 18, 0.98);
}
body.radar-mode .nav-link {
background: rgba(15, 15, 28, 0.6);
border-color: rgba(255, 107, 74, 0.1);
color: #ffffff;
}
body.radar-mode .nav-link:hover,
body.radar-mode .nav-link.active {
border-color: #FF6B4A;
color: #FF6B4A;
}
}
body.particles-mode {
background: #faf8f6;
color: #1a1a2e;
}
body.particles-mode .hero-title,
body.particles-mode .section-title,
body.particles-mode h1, body.particles-mode h2, body.particles-mode h3 {
color: #1a1a2e;
}
body.particles-mode .hero-description,
body.particles-mode .section-description,
body.particles-mode p {
color: #3a3a4a;
}
body.particles-mode .text-primary,
body.particles-mode .stat-label {
color: #1a1a2e;
}
body.particles-mode .text-secondary,
body.particles-mode .text-muted {
color: #5a5a6a;
}
body.particles-mode .card,
body.particles-mode .glass,
body.particles-mode .stat-card {
background: rgba(255, 255, 255, 0.92);
border: 1px solid rgba(0, 0, 0, 0.08);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}
body.particles-mode .card:hover,
body.particles-mode .stat-card:hover {
background: rgba(255, 255, 255, 0.98);
border-color: rgba(255, 107, 74, 0.3);
box-shadow: 0 8px 30px rgba(255, 107, 74, 0.1);
}
body.particles-mode section {
background: transparent;
}
body.particles-mode .section-badge,
body.particles-mode .hero-badge {
background: rgba(255, 107, 74, 0.12);
border-color: rgba(255, 107, 74, 0.3);
color: #e55a3a;
}
body.particles-mode .btn-outline {
border-color: rgba(26, 26, 46, 0.2);
color: #1a1a2e;
}
body.particles-mode .btn-outline:hover {
background: rgba(255, 107, 74, 0.1);
border-color: #FF6B4A;
color: #FF6B4A;
}
body.particles-mode .btn-secondary {
background: rgba(26, 26, 46, 0.08);
color: #1a1a2e;
}
body.particles-mode .btn-secondary:hover {
background: rgba(26, 26, 46, 0.12);
}
body.particles-mode .navbar {
background: rgba(255, 255, 255, 0.9);
border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
body.particles-mode .navbar.scrolled {
background: rgba(255, 255, 255, 0.95);
box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06);
}
body.particles-mode .nav-link {
color: #3a3a4a;
}
body.particles-mode .nav-link:hover {
color: #FF6B4A;
}
body.particles-mode .nav-logo {
color: #1a1a2e;
}
body.particles-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #9575CD 50%, #4FC3F7 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.particles-mode .hero-stats {
border-color: rgba(0, 0, 0, 0.08);
}
body.particles-mode .stat-item {
background: rgba(255, 255, 255, 0.9);
border-color: rgba(0, 0, 0, 0.06);
}
body.particles-mode .contact-section {
background: transparent;
}
body.particles-mode .contact-form {
background: rgba(255, 255, 255, 0.95);
border: 1px solid rgba(0, 0, 0, 0.08);
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}
body.particles-mode .form-input,
body.particles-mode .form-textarea {
background: rgba(250, 248, 246, 0.8);
border: 1px solid rgba(0, 0, 0, 0.1);
color: #1a1a2e;
}
body.particles-mode .form-input::placeholder,
body.particles-mode .form-textarea::placeholder {
color: #8a8a9a;
}
body.particles-mode .form-input:focus,
body.particles-mode .form-textarea:focus {
border-color: #FF6B4A;
box-shadow: 0 0 0 3px rgba(255, 107, 74, 0.15);
background: #ffffff;
}
body.particles-mode .form-label {
color: #3a3a4a;
}
body.particles-mode .footer {
background: rgba(255, 255, 255, 0.95);
border-top: 1px solid rgba(0, 0, 0, 0.06);
}
body.particles-mode .footer-link {
color: #5a5a6a;
}
body.particles-mode .footer-link:hover {
color: #FF6B4A;
}
body.particles-mode .hero-placeholder .placeholder-card {
background: rgba(255, 255, 255, 0.9);
border-color: rgba(0, 0, 0, 0.08);
}
body.particles-mode .placeholder-dot {
background: #FF6B4A;
}
body.particles-mode .placeholder-line {
background: rgba(0, 0, 0, 0.08);
}
body.particles-mode .placeholder-box {
background: rgba(255, 107, 74, 0.1);
}
@media (max-width: 768px) {
body.particles-mode .navbar {
background: rgba(255, 255, 255, 0.98);
}
body.particles-mode .nav-link.active {
border-color: #FF6B4A;
color: #FF6B4A;
}
}
body.particles-dark-mode {
background: #0a0a0f;
color: #ffffff;
}
body.particles-dark-mode::before,
body.particles-dark-mode::after {
display: none;
}
body.particles-dark-mode .hero-title,
body.particles-dark-mode .section-title,
body.particles-dark-mode h1, body.particles-dark-mode h2, body.particles-dark-mode h3 {
color: #ffffff;
}
body.particles-dark-mode .hero-description,
body.particles-dark-mode .section-description,
body.particles-dark-mode p {
color: rgba(255, 255, 255, 0.8);
}
body.particles-dark-mode .text-primary,
body.particles-dark-mode .stat-label {
color: #ffffff;
}
body.particles-dark-mode .text-secondary,
body.particles-dark-mode .text-muted {
color: rgba(255, 255, 255, 0.7);
}
body.particles-dark-mode .card,
body.particles-dark-mode .glass,
body.particles-dark-mode .stat-card {
background: rgba(15, 15, 25, 0.7);
border-color: rgba(255, 255, 255, 0.08);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}
body.particles-dark-mode .card:hover,
body.particles-dark-mode .stat-card:hover {
background: rgba(25, 25, 40, 0.8);
border-color: rgba(255, 107, 74, 0.3);
}
body.particles-dark-mode section {
background: transparent;
}
body.particles-dark-mode .section-badge,
body.particles-dark-mode .hero-badge {
background: rgba(255, 107, 74, 0.15);
border-color: rgba(255, 107, 74, 0.35);
color: #FF6B4A;
}
body.particles-dark-mode .btn-outline {
border-color: rgba(255, 255, 255, 0.25);
color: #ffffff;
}
body.particles-dark-mode .btn-outline:hover {
background: rgba(255, 255, 255, 0.08);
border-color: #FF6B4A;
}
body.particles-dark-mode .btn-secondary {
background: rgba(255, 255, 255, 0.08);
color: #ffffff;
}
body.particles-dark-mode .navbar {
background: rgba(10, 10, 15, 0.9);
border-bottom-color: rgba(255, 107, 74, 0.08);
}
body.particles-dark-mode .navbar.scrolled {
background: rgba(10, 10, 15, 0.97);
}
body.particles-dark-mode .nav-link {
color: rgba(255, 255, 255, 0.8);
}
body.particles-dark-mode .nav-link:hover {
color: #FF6B4A;
}
body.particles-dark-mode .nav-logo {
color: #ffffff;
}
body.particles-dark-mode .stat-value.gradient-text {
background: linear-gradient(225deg, #FF6B4A 0%, #9FA8DA 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.particles-dark-mode .hero-stats {
border-top-color: rgba(255, 107, 74, 0.25);
}
body.particles-dark-mode a:not(.btn) {
color: #FF6B4A;
}
body.particles-dark-mode a:not(.btn):hover {
color: #FF8E75;
}
body.particles-dark-mode .tech-stack-section,
body.particles-dark-mode .comparison-section,
body.particles-dark-mode .integration-section,
body.particles-dark-mode .features,
body.particles-dark-mode .stats-section,
body.particles-dark-mode .testimonials-section,
body.particles-dark-mode .process-section,
body.particles-dark-mode .faq-section,
body.particles-dark-mode .partners-section,
body.particles-dark-mode .advantages-section,
body.particles-dark-mode .cta,
body.particles-dark-mode .showcase,
body.particles-dark-mode .solutions-preview,
body.particles-dark-mode .blocks-preview-section {
background: transparent;
}
body.particles-dark-mode .comparison-card,
body.particles-dark-mode .tech-feature-item,
body.particles-dark-mode .advantage-card,
body.particles-dark-mode .testimonial-card,
body.particles-dark-mode .feature-card,
body.particles-dark-mode .block-card,
body.particles-dark-mode .mini-step,
body.particles-dark-mode .faq-item,
body.particles-dark-mode .brand-item,
body.particles-dark-mode .integration-note,
body.particles-dark-mode .cta-card {
background: rgba(15, 15, 25, 0.6);
border-color: rgba(255, 255, 255, 0.08);
}
body.particles-dark-mode .comparison-card.before {
border-color: rgba(239, 68, 68, 0.25);
}
body.particles-dark-mode .comparison-card.after {
border-color: rgba(16, 185, 129, 0.25);
background: linear-gradient(225deg, rgba(16, 185, 129, 0.08) 0%, rgba(15, 15, 25, 0.6) 100%);
}
body.particles-dark-mode .feature-content h3,
body.particles-dark-mode .feature-title,
body.particles-dark-mode .advantage-title,
body.particles-dark-mode .step-title,
body.particles-dark-mode .author-name,
body.particles-dark-mode .comparison-header h3,
body.particles-dark-mode .block-info h3,
body.particles-dark-mode .integration-brands h3,
body.particles-dark-mode .integration-steps h3,
body.particles-dark-mode .faq-question,
body.particles-dark-mode .cta-title {
color: #ffffff;
}
body.particles-dark-mode .feature-content p,
body.particles-dark-mode .feature-description,
body.particles-dark-mode .advantage-description,
body.particles-dark-mode .step-description,
body.particles-dark-mode .testimonial-text,
body.particles-dark-mode .author-role,
body.particles-dark-mode .comparison-list li,
body.particles-dark-mode .block-info p,
body.particles-dark-mode .step-info p,
body.particles-dark-mode .faq-answer p,
body.particles-dark-mode .cta-description,
body.particles-dark-mode .stat-description,
body.particles-dark-mode .brand-name {
color: rgba(255, 255, 255, 0.7);
}
body.particles-dark-mode .faq-item {
border-bottom-color: rgba(255, 255, 255, 0.08);
background: transparent;
}
body.particles-dark-mode .tag {
background: rgba(255, 255, 255, 0.08);
color: rgba(255, 255, 255, 0.8);
}
body.particles-dark-mode .logo-placeholder svg rect {
fill: rgba(255, 255, 255, 0.08);
}
body.particles-dark-mode .logo-placeholder svg text {
fill: rgba(255, 255, 255, 0.7);
}
body.particles-dark-mode .cta-stat {
background: rgba(8, 8, 15, 0.5);
border-color: rgba(255, 255, 255, 0.08);
}
body.particles-dark-mode .cta-stat-label {
color: rgba(255, 255, 255, 0.6);
}
body.particles-dark-mode .comparison-item.us {
background: rgba(76, 175, 80, 0.08);
}
body.particles-dark-mode .comparison-item.them {
background: rgba(158, 158, 158, 0.08);
}
body.particles-dark-mode .comparison-item span:last-child {
color: rgba(255, 255, 255, 0.8);
}
body.particles-dark-mode .showcase-badge {
background: rgba(255, 107, 74, 0.15);
border-color: rgba(255, 107, 74, 0.35);
color: #FF6B4A;
}
body.particles-dark-mode .showcase-title {
color: #ffffff;
}
body.particles-dark-mode .showcase-description {
color: rgba(255, 255, 255, 0.7);
}
body.particles-dark-mode .showcase-feature-item {
color: rgba(255, 255, 255, 0.8);
}
body.particles-dark-mode .solutions-preview .card h3 {
color: #ffffff;
}
body.particles-dark-mode .solutions-preview .card p {
color: rgba(255, 255, 255, 0.7);
}
body.particles-dark-mode .nav-toggle span {
background: #ffffff;
}
@media (max-width: 768px) {
body.particles-dark-mode .nav-menu {
background: rgba(10, 10, 15, 0.98);
}
body.particles-dark-mode .nav-link {
background: rgba(15, 15, 25, 0.6);
border-color: rgba(255, 255, 255, 0.08);
color: #ffffff;
}
}
body::before,
body::after {
content: '';
position: fixed;
width: 600px;
height: 600px;
border-radius: 50%;
filter: blur(80px);
opacity: 0.6;
z-index: -1;
pointer-events: none;
animation: float 20s ease-in-out infinite;
}
body::before {
background: radial-gradient(circle, rgba(255, 107, 74, 0.15) 0%, transparent 70%);
top: -200px;
left: -200px;
animation-delay: 0s;
}
body::after {
background: radial-gradient(circle, rgba(159, 168, 218, 0.2) 0%, transparent 70%);
bottom: -200px;
right: -200px;
animation-delay: -10s;
}
.blob-container {
position: fixed;
top: 0;
right: 0;
width: 100%;
height: 100%;
overflow: hidden;
z-index: -1;
pointer-events: none;
}
.blob {
position: absolute;
width: 500px;
height: 500px;
border-radius: 50%;
filter: blur(60px);
opacity: 0.3;
animation: float 25s ease-in-out infinite;
}
.blob-1 {
background: radial-gradient(circle, rgba(255, 142, 117, 0.1) 0%, transparent 70%);
top: 50%;
right: 50%;
animation-delay: -5s;
}
@keyframes float {
0%, 100% {
transform: translate(0, 0) scale(1);
}
33% {
transform: translate(-50px, -50px) scale(1.1);
}
66% {
transform: translate(50px, 50px) scale(0.9);
}
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeInDown {
from {
opacity: 0;
transform: translateY(-30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes slideInLeft {
from {
opacity: 0;
transform: translateX(50px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
@keyframes slideInRight {
from {
opacity: 0;
transform: translateX(-50px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
@keyframes scaleIn {
from {
opacity: 0;
transform: scale(0.9);
}
to {
opacity: 1;
transform: scale(1);
}
}
@keyframes glow {
0%, 100% {
box-shadow: 0 0 20px rgba(59, 130, 246, 0.4);
}
50% {
box-shadow: 0 0 40px rgba(59, 130, 246, 0.6);
}
}
@keyframes shimmer {
0% {
background-position: -200% 0;
}
100% {
background-position: 200% 0;
}
}
@keyframes pulse-ring {
0% {
transform: translate(50%, -50%) scale(1);
opacity: 0.6;
}
100% {
transform: translate(50%, -50%) scale(1.8);
opacity: 0;
}
}
@keyframes gradient-shift {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
@keyframes counter-pop {
0% {
transform: scale(1);
}
50% {
transform: scale(1.12);
}
100% {
transform: scale(1);
}
}
@keyframes border-glow {
0%, 100% {
border-color: rgba(255, 107, 74, 0.15);
}
50% {
border-color: rgba(255, 107, 74, 0.4);
}
}
.stagger-1 { transition-delay: 0.1s !important; }
.stagger-2 { transition-delay: 0.2s !important; }
.stagger-3 { transition-delay: 0.3s !important; }
.stagger-4 { transition-delay: 0.4s !important; }
.stagger-5 { transition-delay: 0.5s !important; }
.stagger-6 { transition-delay: 0.6s !important; }
.stagger-7 { transition-delay: 0.7s !important; }
.stagger-8 { transition-delay: 0.8s !important; }
.has-shimmer {
position: relative;
overflow: hidden;
}
.has-shimmer::after {
content: '';
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
background: linear-gradient(270deg, transparent 0%, rgba(255, 255, 255, 0.08) 50%, transparent 100%);
background-size: 200% 100%;
animation: shimmer 3s ease-in-out infinite;
pointer-events: none;
}
.has-pulse-ring {
position: relative;
}
.has-pulse-ring::before {
content: '';
position: absolute;
top: 50%;
right: 50%;
width: 100%;
height: 100%;
border-radius: inherit;
border: 2px solid var(--primary);
transform: translate(50%, -50%) scale(1);
animation: pulse-ring 2s cubic-bezier(0.16, 1, 0.3, 1) infinite;
pointer-events: none;
}
.reveal {
opacity: 0;
transform: translateY(30px);
transition: opacity 0.7s var(--ease-out-expo), transform 0.7s var(--ease-out-expo);
}
.reveal.active {
opacity: 1;
transform: translateY(0);
}
.reveal-left {
opacity: 0;
transform: translateX(50px);
transition: opacity 0.7s var(--ease-out-expo), transform 0.7s var(--ease-out-expo);
}
.reveal-left.active {
opacity: 1;
transform: translateX(0);
}
.reveal-right {
opacity: 0;
transform: translateX(-50px);
transition: opacity 0.7s var(--ease-out-expo), transform 0.7s var(--ease-out-expo);
}
.reveal-right.active {
opacity: 1;
transform: translateX(0);
}
h1, h2, h3, h4, h5, h6 {
font-weight: var(--font-weight-bold);
line-height: var(--line-height-tight);
margin-bottom: var(--spacing-md);
color: var(--text-primary);
}
h1 {
font-size: calc(var(--font-size-5xl) + min(var(--font-size-5xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-extrabold);
}
h2 {
font-size: calc(var(--font-size-4xl) + min(var(--font-size-4xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
h3 {
font-size: calc(var(--font-size-3xl) + min(var(--font-size-3xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
h4 {
font-size: calc(var(--font-size-2xl) + min(var(--font-size-2xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
h5 {
font-size: calc(var(--font-size-xl) + min(var(--font-size-xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
h6 {
font-size: calc(var(--font-size-lg) + min(var(--font-size-lg) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
p {
margin-bottom: var(--spacing-md);
color: var(--text-secondary);
line-height: var(--line-height-relaxed);
}
a {
color: var(--primary);
text-decoration: none;
transition: var(--transition-all);
}
a:not(.btn):hover {
color: var(--primary-light);
}
.container {
width: 100%;
max-width: var(--container-max-width);
margin: 0 auto;
padding: 0 var(--container-padding);
}
section {
padding-top: var(--spacing-lg);
padding-bottom: 0;
position: relative;
}
@media (max-width: 768px) {
section {
padding-top: var(--spacing-md);
}
}
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--spacing-sm);
padding: var(--spacing-md) var(--spacing-xl);
font-size: calc(var(--font-size-base) + min(var(--font-size-base) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-semibold);
border-radius: var(--radius-lg);
border: none;
cursor: pointer;
transition: var(--transition-all);
text-decoration: none;
white-space: nowrap;
}
.btn-primary {
background: linear-gradient(225deg, var(--primary) 0%, var(--accent) 50%, var(--primary) 100%);
background-size: 200% 200%;
color: var(--color-white);
box-shadow: var(--shadow-md);
transition: transform 0.35s var(--ease-out-expo), box-shadow 0.35s var(--ease-out-expo), background-position 0.6s ease;
}
.btn-primary:hover {
transform: translateY(-3px) scale(1.03);
box-shadow: var(--shadow-glow), 0 12px 24px rgba(255, 107, 74, 0.25);
background-position: 100% 50%;
}
.btn-secondary {
background: var(--glass-bg);
color: var(--text-primary);
border: 2px solid var(--primary);
backdrop-filter: var(--glass-blur);
}
.btn-secondary:hover {
background: var(--primary);
color: var(--text-light);
border-color: var(--primary);
transform: translateY(-2px);
box-shadow: var(--shadow-glow);
}
.btn-outline {
background: transparent;
color: var(--primary);
border: 2px solid var(--primary);
transition: all 0.35s var(--ease-out-expo);
}
.btn-outline:hover {
background: rgba(255, 107, 74, 0.1);
color: var(--primary);
border-color: var(--primary);
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(255, 107, 74, 0.15);
}
.btn-lg {
padding: var(--spacing-lg) var(--spacing-2xl);
font-size: calc(var(--font-size-lg) + min(var(--font-size-lg) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
.btn-sm {
padding: var(--spacing-sm) var(--spacing-lg);
font-size: calc(var(--font-size-sm) + min(var(--font-size-sm) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
.card {
background: var(--glass-bg);
backdrop-filter: var(--glass-blur);
border: 1px solid var(--glass-border);
border-radius: var(--radius-xl);
padding: var(--spacing-xl);
transition: transform 0.4s var(--ease-out-expo), box-shadow 0.4s var(--ease-out-expo), border-color 0.4s var(--ease-out-expo);
}
.card:hover {
transform: translateY(-8px) scale(1.02);
box-shadow: var(--shadow-xl), 0 20px 40px rgba(255, 107, 74, 0.08);
border-color: var(--primary);
}
.grid {
display: grid;
gap: var(--spacing-xl);
}
.grid-2 {
grid-template-columns: repeat(2, 1fr);
}
.grid-3 {
grid-template-columns: repeat(3, 1fr);
}
.grid-4 {
grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 1024px) {
.grid-4 {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 768px) {
.grid-2, .grid-3, .grid-4 {
grid-template-columns: 1fr;
}
}
.text-center {
text-align: center;
}
.text-gradient {
background: var(--gradient-primary);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
color: var(--primary);
}
.mt-sm { margin-top: var(--spacing-sm); }
.mt-md { margin-top: var(--spacing-md); }
.mt-lg { margin-top: var(--spacing-lg); }
.mt-xl { margin-top: var(--spacing-xl); }
.mt-2xl { margin-top: var(--spacing-2xl); }
.mb-sm { margin-bottom: var(--spacing-sm); }
.mb-md { margin-bottom: var(--spacing-md); }
.mb-lg { margin-bottom: var(--spacing-lg); }
.mb-xl { margin-bottom: var(--spacing-xl); }
.mb-2xl { margin-bottom: var(--spacing-2xl); }
@media (max-width: 768px) {
html {
font-size: 14px;
}
h1 {
font-size: calc(var(--font-size-4xl) + min(var(--font-size-4xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
h2 {
font-size: calc(var(--font-size-3xl) + min(var(--font-size-3xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
h3 {
font-size: calc(var(--font-size-2xl) + min(var(--font-size-2xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
}
.page-hero {
padding: calc(80px + var(--spacing-4xl)) 0 var(--spacing-4xl);
text-align: center;
position: relative;
overflow: hidden;
}
.page-hero::before {
content: '';
position: absolute;
top: 0;
right: 50%;
transform: translateX(50%);
width: 800px;
height: 600px;
background: radial-gradient(circle, rgba(255, 107, 74, 0.1) 0%, transparent 60%);
pointer-events: none;
}
.page-hero-content {
position: relative;
z-index: 1;
}
.page-hero-title {
font-size: calc(clamp(2rem, 5vw, var(--font-size-5xl)) + min(clamp(2rem, 5vw, var(--font-size-5xl)) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: 800;
color: var(--text-primary);
margin-bottom: var(--spacing-lg);
line-height: 1.2;
}
.page-hero-description {
font-size: calc(var(--font-size-xl) + min(var(--font-size-xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
color: var(--text-secondary);
max-width: 700px;
margin: 0 auto;
line-height: var(--line-height-relaxed);
}
.hero-badge {
display: inline-flex;
align-items: center;
gap: var(--spacing-xs);
padding: var(--spacing-xs) var(--spacing-md);
background: rgba(255, 107, 74, 0.1);
border: 1px solid rgba(255, 107, 74, 0.25);
border-radius: var(--radius-full);
font-size: calc(var(--font-size-sm) + min(var(--font-size-sm) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-medium);
color: var(--primary);
margin-bottom: var(--spacing-lg);
}
@media (max-width: 768px) {
.page-hero {
padding: calc(80px + var(--spacing-2xl)) 0 var(--spacing-2xl);
}
.page-hero-title {
font-size: calc(var(--font-size-3xl) + min(var(--font-size-3xl) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
.page-hero-description {
font-size: calc(var(--font-size-base) + min(var(--font-size-base) * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
}
body.flow-mode .page-hero-title,
body.drift-mode .page-hero-title,
body.fog-mode .page-hero-title,
body.neural-mode .page-hero-title,
body.aurora-mode .page-hero-title,
body.particles-dark-mode .page-hero-title,
body.constellation-mode .page-hero-title,
body.waves-mode .page-hero-title,
body.mesh-mode .page-hero-title {
color: #ffffff;
}
body.flow-mode .page-hero-description,
body.drift-mode .page-hero-description,
body.fog-mode .page-hero-description,
body.neural-mode .page-hero-description,
body.aurora-mode .page-hero-description,
body.particles-dark-mode .page-hero-description,
body.constellation-mode .page-hero-description,
body.waves-mode .page-hero-description,
body.mesh-mode .page-hero-description {
color: rgba(255, 255, 255, 0.78);
}
body.flow-mode .hero-badge,
body.drift-mode .hero-badge,
body.fog-mode .hero-badge,
body.neural-mode .hero-badge,
body.aurora-mode .hero-badge,
body.particles-dark-mode .hero-badge,
body.constellation-mode .hero-badge,
body.waves-mode .hero-badge,
body.mesh-mode .hero-badge {
background: rgba(255, 107, 74, 0.15);
border-color: rgba(255, 107, 74, 0.35);
color: #FF8E75;
}
/* == navbar.css == */
.site-header {
--nav-offset: 12px;
--nav-height: 60px;
position: fixed;
top: 0;
right: 0;
width: 100%;
z-index: var(--z-fixed);
padding-top: var(--nav-offset);
pointer-events: none;
}
.navbar {
--nav-surface: var(--bg-white, #ffffff);
--nav-line: color-mix(in srgb, var(--primary) 14%, transparent);
--nav-shadow: 0 1px 2px rgba(27, 17, 73, 0.05), 0 6px 20px rgba(27, 17, 73, 0.06);
--nav-shadow-scrolled: 0 2px 6px rgba(27, 17, 73, 0.06), 0 16px 40px rgba(27, 17, 73, 0.12);
--nav-ink: var(--text-primary);
--nav-text: var(--text-secondary);
--nav-accent: var(--text-primary);
--nav-dot: var(--primary);
--nav-tint: color-mix(in srgb, var(--primary) 8%, transparent);
--nav-tint-strong: color-mix(in srgb, var(--primary) 12%, transparent);
--nav-focus: var(--primary);
--nav-cta-bg: var(--primary);
--nav-cta-bg-hover: var(--primary-dark);
--nav-cta-shadow: 0 1px 2px rgba(27, 17, 73, 0.14), 0 6px 16px color-mix(in srgb, var(--primary) 22%, transparent);
--nav-flag-ring: rgba(27, 17, 73, 0.12);
--nav-sheet: var(--bg-primary);
--nav-dropdown-shadow: 0 18px 44px rgba(27, 17, 73, 0.14), 0 2px 6px rgba(27, 17, 73, 0.06);
position: relative;
pointer-events: auto;
border-radius: 20px;
}
.site-header > .container > nav.navbar {
background: var(--nav-surface);
border: 1px solid var(--nav-line);
box-shadow: var(--nav-shadow);
transition: transform 0.35s var(--ease-out-expo),
background-color 0.45s ease,
border-color 0.45s ease,
box-shadow 0.45s ease;
}
.site-header > .container > nav.navbar.scrolled {
box-shadow: var(--nav-shadow-scrolled);
}
.site-header > .container > nav.navbar.hidden {
transform: translateY(calc(-100% - var(--nav-offset) - 72px));
}
.nav-wrapper {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
height: var(--nav-height);
padding: 0 20px 0 8px;
}
.nav-logo {
display: inline-flex;
align-items: center;
flex-shrink: 0;
border-radius: 8px;
text-decoration: none;
transition: none;
}
.nav-logo-img {
display: block;
height: 30px;
width: auto;
}
body.particles-mode .nav-logo-img,
body.elegant-mode .nav-logo-img,
body.sobre-mode .nav-logo-img,
body.tuning-mode .nav-logo-img {
filter: invert(1) hue-rotate(180deg) saturate(2);
}
.site-header .navbar .nav-logo:hover .nav-logo-img {
filter: none;
}
body.flow-purple-mode .site-header .navbar .nav-logo:hover .nav-logo-img,
body.particles-mode .site-header .navbar .nav-logo:hover .nav-logo-img,
body.elegant-mode .site-header .navbar .nav-logo:hover .nav-logo-img,
body.sobre-mode .site-header .navbar .nav-logo:hover .nav-logo-img,
body.tuning-mode .site-header .navbar .nav-logo:hover .nav-logo-img {
filter: invert(1) hue-rotate(180deg) saturate(2);
}
.nav-menu {
display: flex;
align-items: center;
gap: 2px;
min-width: 0;
}
.site-header .navbar a.nav-link {
display: inline-flex;
align-items: center;
height: 40px;
padding: 0 14px;
border: 0;
border-radius: 10px;
background: transparent;
color: var(--nav-text);
font-size: calc(15px + min(15px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-medium);
line-height: 1;
letter-spacing: -0.005em;
text-decoration: none;
white-space: nowrap;
transition: background-color 0.2s ease, color 0.2s ease;
}
.site-header .navbar a.nav-link:hover {
background: var(--nav-tint);
color: var(--nav-ink);
}
.site-header .navbar a.nav-link.active {
background: var(--nav-tint-strong);
color: var(--nav-accent);
}
.site-header .navbar .nav-menu-cta {
display: none;
}
.nav-actions {
display: flex;
align-items: center;
gap: 4px;
flex-shrink: 0;
}
.site-header .navbar .theme-toggle {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
padding: 0;
border: 0;
border-radius: 10px;
background: transparent;
color: var(--nav-text);
cursor: pointer;
overflow: hidden;
transition: background-color 0.2s ease, color 0.2s ease;
}
.site-header .navbar .nav-actions .theme-toggle:hover {
background: var(--nav-tint);
border-color: transparent;
color: var(--nav-ink);
}
.theme-toggle-icon {
position: absolute;
transition: opacity 0.3s ease, transform 0.5s var(--ease-out-expo);
}
.theme-icon-sun {
opacity: 0;
transform: rotate(90deg) scale(0.5);
}
.theme-icon-moon {
opacity: 1;
transform: rotate(0deg) scale(1);
}
body.theme-is-dark .theme-icon-sun {
opacity: 1;
transform: rotate(0deg) scale(1);
}
body.theme-is-dark .theme-icon-moon {
opacity: 0;
transform: rotate(-90deg) scale(0.5);
}
.site-header .navbar .nav-cta,
.site-header .navbar .nav-menu-cta {
align-items: center;
justify-content: center;
gap: 8px;
border: 0;
background: var(--nav-cta-bg);
color: #ffffff;
box-shadow: var(--nav-cta-shadow);
font-weight: var(--font-weight-semibold);
line-height: 1;
letter-spacing: -0.005em;
white-space: nowrap;
transform: none;
transition: background-color 0.2s ease, box-shadow 0.2s ease;
}
.site-header .navbar .nav-cta {
display: inline-flex;
height: 44px;
margin-right: 8px;
padding: 0 18px 0 16px;
border-radius: 12px;
font-size: calc(14px + min(14px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
.site-header .navbar .nav-actions .nav-cta:hover,
.site-header .navbar .nav-menu .nav-menu-cta:hover {
background: var(--nav-cta-bg-hover);
color: #ffffff;
box-shadow: var(--nav-cta-shadow);
transform: none;
}
.nav-cta-arrow {
flex-shrink: 0;
transition: transform 0.25s var(--ease-out-expo);
}
.nav-cta:hover .nav-cta-arrow,
.nav-menu-cta:hover .nav-cta-arrow {
transform: translateX(-2px);
}
.site-header .navbar .nav-toggle {
display: none;
position: relative;
width: 40px;
height: 40px;
padding: 0;
border: 0;
border-radius: 10px;
background: transparent;
color: var(--nav-ink);
cursor: pointer;
transition: background-color 0.2s ease;
}
.site-header .navbar .nav-toggle:hover {
background: var(--nav-tint);
}
.site-header .navbar .nav-toggle span {
position: absolute;
right: 11px;
width: 18px;
height: 2px;
border-radius: 2px;
background: currentColor;
transition: top 0.25s var(--ease-out-expo), transform 0.25s var(--ease-out-expo);
}
.site-header .navbar .nav-toggle span:nth-child(1) {
top: 15px;
}
.site-header .navbar .nav-toggle span:nth-child(2) {
top: 23px;
}
.site-header .navbar .nav-toggle.active span:nth-child(1) {
top: 19px;
transform: rotate(-45deg);
}
.site-header .navbar .nav-toggle.active span:nth-child(2) {
top: 19px;
transform: rotate(45deg);
}
.lang-switcher {
position: relative;
}
.site-header .navbar .lang-switcher__current {
display: inline-flex;
align-items: center;
gap: 8px;
height: 40px;
padding: 0 10px;
border: 0;
border-radius: 10px;
background: transparent;
color: var(--nav-text);
line-height: 1;
cursor: pointer;
transition: background-color 0.2s ease;
}
.site-header .navbar .lang-switcher__current:hover,
.site-header .navbar .lang-switcher--open .lang-switcher__current {
background: var(--nav-tint);
border-color: transparent;
}
.lang-switcher__current img,
.lang-switcher__list img {
display: block;
width: 20px;
height: auto;
border-radius: 3px;
box-shadow: 0 0 0 1px var(--nav-flag-ring);
}
.site-header .navbar .lang-switcher__code {
color: var(--nav-ink);
font-size: calc(13px + min(13px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-semibold);
letter-spacing: 0.02em;
line-height: 1;
}
.site-header .navbar .lang-switcher__arrow {
color: var(--nav-text);
transition: transform 0.2s ease;
}
.lang-switcher--open .lang-switcher__arrow {
transform: rotate(-180deg);
}
.site-header .navbar .lang-switcher__list {
position: absolute;
top: calc(100% + (var(--nav-height) - 40px) / 2 + 8px);
left: 0;
z-index: 1000;
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 2px;
width: max-content;
min-width: 264px;
max-width: calc(100vw - 32px);
max-height: min(70vh, 460px);
margin: 0;
padding: 8px;
list-style: none;
background: var(--nav-surface);
border: 1px solid var(--nav-line);
border-radius: 14px;
box-shadow: var(--nav-dropdown-shadow);
overflow-x: hidden;
overflow-y: auto;
overscroll-behavior: contain;
scrollbar-width: thin;
scrollbar-color: color-mix(in srgb, var(--primary) 40%, transparent) transparent;
opacity: 0;
visibility: hidden;
transform: translateY(-6px);
transition: opacity 0.18s ease, transform 0.18s ease, visibility 0s linear 0.18s;
}
.site-header .navbar .lang-switcher:not(.lang-switcher--open) .lang-switcher__list {
display: none;
transition: opacity 0.18s ease, transform 0.18s ease, visibility 0s linear 0.18s, display 0.18s allow-discrete;
}
.site-header .navbar .lang-switcher--open .lang-switcher__list {
opacity: 1;
visibility: visible;
transform: translateY(0);
transition: opacity 0.18s ease, transform 0.18s ease;
}
@starting-style {
.site-header .navbar .lang-switcher--open .lang-switcher__list {
opacity: 0;
transform: translateY(-6px);
}
}
.lang-switcher__list::-webkit-scrollbar {
width: 6px;
}
.lang-switcher__list::-webkit-scrollbar-track {
background: transparent;
}
.lang-switcher__list::-webkit-scrollbar-thumb {
background: color-mix(in srgb, var(--primary) 35%, transparent);
border-radius: 3px;
}
.lang-switcher__list li {
margin: 0;
}
.site-header .navbar .lang-switcher__list a {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 10px;
border-radius: 8px;
color: var(--nav-text);
font-size: calc(13px + min(13px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-medium);
line-height: 1.2;
text-decoration: none;
white-space: nowrap;
transition: background-color 0.15s ease, color 0.15s ease;
}
.site-header .navbar .lang-switcher__list a:hover {
background: var(--nav-tint);
color: var(--nav-ink);
}
.navbar.navbar-dark,
body.flow-mode .navbar,
body.fog-mode .navbar,
body.neural-mode .navbar,
body.aurora-mode .navbar,
body.particles-dark-mode .navbar,
body.constellation-mode .navbar,
body.waves-mode .navbar {
--nav-surface: #1B1149;
--nav-line: rgba(155, 126, 255, 0.2);
--nav-shadow: 0 1px 0 rgba(255, 255, 255, 0.04) inset, 0 10px 30px rgba(0, 0, 0, 0.35);
--nav-shadow-scrolled: 0 1px 0 rgba(255, 255, 255, 0.04) inset, 0 16px 44px rgba(0, 0, 0, 0.5);
--nav-ink: #ffffff;
--nav-text: rgba(255, 255, 255, 0.85);
--nav-accent: #B7A1FF;
--nav-dot: #B7A1FF;
--nav-tint: rgba(155, 126, 255, 0.12);
--nav-tint-strong: rgba(155, 126, 255, 0.2);
--nav-focus: #B7A1FF;
--nav-cta-bg: var(--primary-dark);
--nav-cta-bg-hover: color-mix(in srgb, var(--primary-dark) 78%, var(--primary));
--nav-cta-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
--nav-flag-ring: rgba(255, 255, 255, 0.16);
--nav-sheet: #0C0821;
--nav-dropdown-shadow: 0 18px 44px rgba(0, 0, 0, 0.5), 0 2px 6px rgba(0, 0, 0, 0.3);
}
@media (min-width: 1200px) and (max-width: 1279px) {
.nav-wrapper {
gap: 8px;
padding-right: 16px;
}
.nav-logo-img {
height: 28px;
}
.nav-menu {
gap: 0;
}
.site-header .navbar a.nav-link {
padding: 0 10px;
}
.nav-actions {
gap: 2px;
}
.site-header .navbar .nav-cta {
margin-right: 6px;
padding: 0 16px 0 14px;
}
}
@media (max-width: 1199px) {
.site-header {
--nav-offset: 10px;
--nav-height: 56px;
}
.nav-wrapper {
padding-right: 16px;
}
.site-header .navbar .nav-toggle {
display: inline-block;
}
.site-header .navbar .nav-menu {
position: fixed;
inset: 0;
z-index: -1;
display: flex;
flex-direction: column;
align-items: stretch;
gap: 0;
padding: calc(var(--nav-offset) + var(--nav-height) + 24px) var(--container-padding) 32px;
background: var(--nav-sheet);
overflow-y: auto;
overscroll-behavior: contain;
opacity: 0;
visibility: hidden;
transition: opacity 0.22s ease, visibility 0s linear 0.22s;
}
.site-header .navbar .nav-menu.active {
opacity: 1;
visibility: visible;
transition: opacity 0.22s ease;
}
.site-header .navbar .nav-menu a.nav-link {
justify-content: space-between;
flex-shrink: 0;
height: auto;
padding: 18px 16px;
border-bottom: 1px solid var(--nav-line);
border-radius: 0;
background: transparent;
color: var(--nav-ink);
font-size: calc(22px + min(22px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-semibold);
letter-spacing: -0.015em;
transform: translateY(6px);
transition: background-color 0.2s ease, color 0.2s ease, transform 0.3s var(--ease-out-expo);
}
.site-header .navbar .nav-menu.active a.nav-link {
transform: translateY(0);
}
.site-header .navbar .nav-menu a.nav-link:first-child {
border-top: 1px solid var(--nav-line);
}
.site-header .navbar .nav-menu a.nav-link:hover {
background: var(--nav-tint);
border-color: var(--nav-line);
}
.site-header .navbar .nav-menu a.nav-link.active {
background: transparent;
border-color: var(--nav-line);
color: var(--nav-accent);
}
.site-header .navbar .nav-menu a.nav-link.active::after {
content: '';
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--nav-dot);
}
body.menu-open {
overflow: hidden;
}
}
@media (max-width: 768px) {
.site-header {
--nav-offset: 8px;
}
.nav-wrapper {
gap: 8px;
padding-right: 14px;
}
.site-header .navbar .nav-actions .nav-cta {
display: none;
}
.site-header .navbar .nav-menu a.nav-link {
padding: 16px 12px;
font-size: calc(20px + min(20px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
.site-header .navbar .nav-menu .nav-menu-cta {
display: flex;
flex-shrink: 0;
height: 52px;
margin-top: 28px;
padding: 0 20px;
border-radius: 14px;
font-size: calc(16px + min(16px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
}
.site-header .navbar .lang-switcher__code,
.site-header .navbar .lang-switcher__arrow {
display: none;
}
.site-header .navbar .lang-switcher__current {
width: 40px;
justify-content: center;
padding: 0;
}
}
@media (max-width: 380px) {
.nav-wrapper {
gap: 4px;
padding-right: 12px;
}
.nav-logo-img {
height: 26px;
}
.nav-actions {
gap: 0;
}
}
.site-header .navbar a:focus-visible,
.site-header .navbar button:focus-visible,
.site-header .navbar [tabindex]:focus-visible {
outline: 2px solid var(--nav-focus);
outline-offset: 2px;
}
.site-header .navbar .nav-cta:focus-visible,
.site-header .navbar .nav-menu-cta:focus-visible {
outline-offset: 3px;
}
.site-header .navbar .nav-menu a.nav-link:focus-visible {
outline-offset: -2px;
}
@media (prefers-reduced-motion: reduce) {
.site-header > .container > nav.navbar,
.site-header .navbar .nav-menu,
.site-header .navbar .nav-menu.active,
.site-header .navbar .nav-menu a.nav-link,
.site-header .navbar .lang-switcher__list,
.site-header .navbar .lang-switcher--open .lang-switcher__list,
.site-header .navbar .nav-toggle span,
.theme-toggle-icon,
.nav-cta-arrow {
transition: none;
}
.site-header .navbar .nav-menu a.nav-link {
transform: none;
}
}
/* == footer.css == */
.footer {
--footer-bg: var(--bg-white, #ffffff);
--footer-line: color-mix(in srgb, var(--primary) 14%, transparent);
--footer-ink: var(--text-primary);
--footer-text: var(--text-secondary);
--footer-muted: var(--text-muted);
--footer-label: var(--primary);
--footer-hover: var(--primary);
--footer-tint: color-mix(in srgb, var(--primary) 8%, transparent);
--footer-focus: var(--primary);
border-top: 1px solid var(--footer-line);
margin-top: var(--spacing-4xl);
padding: 0;
}
body footer.footer:is(.footer-light, .footer-dark) {
background: var(--footer-bg);
border-top-color: var(--footer-line);
backdrop-filter: none;
}
.footer-content {
display: grid;
grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr));
}
.footer-col {
display: flex;
flex-direction: column;
padding: 60px 32px 52px;
}
.footer-col:first-child {
padding-right: 0;
padding-left: 48px;
}
.footer-col:last-child {
padding-left: 0;
}
.footer .footer-content .footer-col + .footer-col {
border-right: 1px solid var(--footer-line);
}
.footer-logo {
display: flex;
align-items: center;
margin-bottom: 22px;
}
.footer-logo img {
display: block;
height: 34px;
width: auto;
}
body.particles-mode .footer-logo img,
body.elegant-mode .footer-logo img,
body.sobre-mode .footer-logo img,
body.tuning-mode .footer-logo img {
filter: invert(1) hue-rotate(180deg) saturate(2);
}
.footer .footer-brand .footer-tagline {
max-width: 26ch;
text-wrap: balance;
margin: 0 0 10px;
color: var(--footer-ink);
font-size: calc(18px + min(18px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-style: normal;
font-weight: var(--font-weight-semibold);
line-height: 1.35;
letter-spacing: -0.01em;
}
.footer .footer-brand .footer-description {
max-width: 40ch;
margin: 0 0 28px;
color: var(--footer-muted);
font-size: calc(14.5px + min(14.5px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
line-height: 1.65;
}
.footer-social {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 8px;
margin-top: auto;
}
.footer .footer-social .social-link {
display: inline-flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border: 1px solid var(--footer-line);
border-radius: 11px;
background: transparent;
color: var(--footer-text);
transform: none;
box-shadow: none;
transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.footer .footer-social .social-link:hover {
background: var(--footer-tint);
border-color: color-mix(in srgb, var(--primary) 30%, transparent);
color: var(--footer-hover);
transform: none;
box-shadow: none;
}
.footer-social-sep {
width: 1px;
height: 20px;
margin: 0 6px;
background: var(--footer-line);
}
.footer .footer-col .footer-title {
margin: 0 0 16px;
color: var(--footer-label);
font-size: calc(15px + min(15px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-bold, 700);
line-height: 1.4;
letter-spacing: -0.005em;
}
.footer-links {
display: flex;
flex-direction: column;
gap: 2px;
margin: 0;
padding: 0;
list-style: none;
}
.footer .footer-col .footer-links a {
display: inline-block;
max-width: 100%;
overflow-wrap: anywhere;
hyphens: auto;
padding: 6px 0;
color: var(--footer-text);
font-size: calc(15px + min(15px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: var(--font-weight-normal);
line-height: 1.4;
text-decoration: none;
transform: none;
transition: color 0.2s ease;
}
.footer .footer-col .footer-links a:hover {
color: var(--footer-hover);
transform: none;
}
.footer-bottom-band {
border-top: 1px solid var(--footer-line);
}
.footer-bottom {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 12px 32px;
padding: 22px 0 26px;
}
.footer .footer-bottom .footer-copyright {
margin: 0;
color: var(--footer-muted);
font-size: calc(13.5px + min(13.5px * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
line-height: 1.5;
}
.footer a:focus-visible {
outline: 2px solid var(--footer-focus);
outline-offset: 3px;
border-radius: 4px;
}
.footer .footer-social .social-link:focus-visible {
outline-offset: 2px;
border-radius: 11px;
}
.footer.footer-dark,
body.flow-mode .footer,
body.fog-mode .footer,
body.neural-mode .footer,
body.aurora-mode .footer,
body.particles-dark-mode .footer,
body.constellation-mode .footer,
body.waves-mode .footer {
--footer-bg: #110B2D;
--footer-line: rgba(155, 126, 255, 0.16);
--footer-ink: #ffffff;
--footer-text: rgba(221, 216, 246, 0.8);
--footer-muted: #BDB4ED;
--footer-label: #B7A1FF;
--footer-hover: #ffffff;
--footer-tint: rgba(155, 126, 255, 0.12);
--footer-focus: #B7A1FF;
}
@media (max-width: 1199px) {
.footer-col {
padding-right: 24px;
padding-left: 24px;
}
.footer-col:first-child {
padding-right: 0;
padding-left: 36px;
}
.footer-col:last-child {
padding-left: 0;
}
}
@media (max-width: 1024px) {
.footer-content {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.footer-col {
padding: 40px 24px 44px;
}
.footer-col:first-child {
grid-column: 1 / -1;
padding: 48px 0 40px;
border-bottom: 1px solid var(--footer-line);
}
.footer .footer-content .footer-col:nth-child(2) {
padding-right: 0;
border-right: 0;
}
.footer .footer-brand .footer-description {
max-width: 60ch;
}
}
@media (max-width: 768px) {
.footer-content {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.footer-col {
padding: 32px 16px 34px;
}
.footer-col:first-child {
padding: 44px 0 36px;
}
.footer .footer-content .footer-col + .footer-col.footer-col-legal {
grid-column: 1 / -1;
padding: 28px 0 34px;
border-right: 0;
border-top: 1px solid var(--footer-line);
}
.footer .footer-brand .footer-description {
margin-bottom: 26px;
}
.footer-bottom {
padding: 20px 0 28px;
}
}
@media (prefers-reduced-motion: reduce) {
.footer .footer-social .social-link,
.footer .footer-col .footer-links a {
transition: none;
}
}
/* == theme-flow-purple.css == */
body.flow-purple-mode {
--primary: #5C4CCC;
--primary-light: #7868D6;
--primary-dark: #4A3BB0;
--primary-soft: #9A8FE2;
--secondary: #7C5CFF;
--accent: #7C5CFF;
--accent-purple: #7C5CFF;
--accent-light: #B7A1FF;
--bg-primary: #F4F0FF;
--bg-secondary: #FAFAFA;
--bg-light: #FAFAFA;
--bg-dark: #1B1149;
--text-primary: #1B1149;
--text-secondary: #3A2D8E;
--text-muted: #6B6B6B;
--color-success: #16A34A;
--color-warning: #F59E0B;
--color-danger: #DC2626;
--gradient-primary: linear-gradient(135deg, #4A33A8 0%, #5C4CCC 40%, #7C5CFF 75%, #9B7EFF 100%);
--gradient-hero: linear-gradient(135deg, #3A2D8E 0%, #5C4CCC 50%, #9B7EFF 100%);
--gradient-orange: linear-gradient(135deg, #4A33A8 0%, #7C5CFF 100%);
--gradient-light: linear-gradient(180deg, #FFFFFF 0%, #F4F0FF 100%);
--glass-border: rgba(74, 51, 168, 0.12);
--glass-shadow: 0 8px 24px rgba(74, 51, 168, 0.18);
--shadow-glow: 0 10px 25px rgba(92, 76, 204, 0.3);
--shadow-glow-purple: 0 0 30px rgba(155, 126, 255, 0.35);
--glow: 0 15px 35px rgba(92, 76, 204, 0.5);
--blob-1: radial-gradient(circle at 20% 30%, rgba(92, 76, 204, 0.08) 0%, transparent 50%);
--blob-2: radial-gradient(circle at 80% 70%, rgba(124, 92, 255, 0.08) 0%, transparent 50%);
--blob-3: radial-gradient(circle at 50% 50%, rgba(155, 126, 255, 0.06) 0%, transparent 50%);
--border-color: rgba(74, 51, 168, 0.12);
background-color: #F4F0FF;
}
body.flow-purple-mode .glass-dark {
border-color: rgba(74, 51, 168, 0.2);
}
body.flow-purple-dark-mode {
--primary: #7C5CFF;
--primary-light: #9B7EFF;
--primary-dark: #6346DB;
--primary-soft: #B7A1FF;
--secondary: #9B7EFF;
--accent: #9B7EFF;
--accent-purple: #9B7EFF;
--accent-light: #D2C3FF;
--bg-primary: #0C0821;
--bg-secondary: #1B1149;
--bg-light: #1B1149;
--bg-dark: #0C0821;
--text-primary: #FFFFFF;
--text-secondary: #DDD8F6;
--text-muted: #BDB4ED;
--color-success: #16A34A;
--color-warning: #F59E0B;
--color-danger: #DC2626;
--gradient-primary: linear-gradient(135deg, #6346DB 0%, #7C5CFF 35%, #9B7EFF 70%, #B7A1FF 100%);
--gradient-hero: linear-gradient(135deg, #7C5CFF 0%, #9B7EFF 55%, #B7A1FF 100%);
--gradient-orange: linear-gradient(135deg, #6346DB 0%, #9B7EFF 100%);
--glass-bg: rgba(27, 17, 73, 0.45);
--glass-bg-light: rgba(27, 17, 73, 0.6);
--glass-bg-dark: rgba(12, 8, 33, 0.55);
--glass-border: rgba(155, 126, 255, 0.18);
--glass-shadow: 0 8px 32px rgba(6, 4, 18, 0.55);
--shadow-glow: 0 10px 25px rgba(124, 92, 255, 0.35);
--shadow-glow-purple: 0 0 30px rgba(155, 126, 255, 0.4);
--glow: 0 15px 35px rgba(124, 92, 255, 0.5);
--border-color: rgba(155, 126, 255, 0.15);
background-color: #0C0821;
}
body.flow-purple-dark-mode .btn-primary {
background: linear-gradient(225deg, #6346DB 0%, #7C5CFF 55%, #9B7EFF 100%);
border: none;
color: #ffffff;
box-shadow: 0 4px 20px rgba(124, 92, 255, 0.4);
}
body.flow-purple-dark-mode .btn-primary:hover {
background: linear-gradient(225deg, #7C5CFF 0%, #9B7EFF 55%, #B7A1FF 100%);
box-shadow: 0 6px 30px rgba(124, 92, 255, 0.5);
transform: translateY(-2px);
}
body.flow-purple-dark-mode .navbar {
background: rgba(12, 8, 33, 0.78);
border-bottom-color: rgba(155, 126, 255, 0.12);
}
body.flow-purple-dark-mode .footer {
background: rgba(12, 8, 33, 0.88);
border-top-color: rgba(155, 126, 255, 0.12);
}
body.flow-purple-dark-mode .nav-logo-text {
background: linear-gradient(225deg, #B7A1FF 0%, #9B7EFF 45%, #7C5CFF 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.flow-purple-mode .nav-logo-text {
background: linear-gradient(225deg, #4A33A8 0%, #5C4CCC 45%, #7C5CFF 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.flow-purple-mode,
body.flow-purple-dark-mode {
transition: background-color 0.45s ease, color 0.45s ease;
}
body.flow-purple-mode .navbar,
body.flow-purple-dark-mode .navbar {
transition: transform var(--transition-base),
background 0.45s ease,
border-color 0.45s ease,
box-shadow 0.45s ease;
}
body.flow-purple-mode .footer,
body.flow-purple-dark-mode .footer {
transition: background 0.45s ease, border-color 0.45s ease, color 0.45s ease;
}
body.flow-purple-mode .form-input {
background: rgba(255, 255, 255, 0.85);
color: var(--text-primary);
border-color: rgba(74, 51, 168, 0.16);
}
body.flow-purple-mode .form-input::placeholder {
color: var(--text-muted);
}
body.flow-purple-mode .form-input:focus {
background: #FFFFFF;
border-color: var(--primary);
}
body.flow-mode.flow-purple-dark-mode .form-input {
background: rgba(12, 8, 33, 0.6);
border-color: rgba(155, 126, 255, 0.18);
}
body.flow-mode.flow-purple-dark-mode .form-input:focus {
background: rgba(12, 8, 33, 0.85);
border-color: var(--primary);
}
body.flow-purple-mode main a:not([class]) {
color: var(--primary-dark);
font-weight: 500;
text-decoration: underline;
text-underline-offset: 2px;
text-decoration-color: color-mix(in srgb, var(--primary-dark) 40%, transparent);
}
body.flow-purple-mode main a:not([class]):hover {
color: var(--primary);
text-decoration-color: currentColor;
}
body.flow-mode.flow-purple-dark-mode main a:not([class]) {
color: var(--primary-soft);
font-weight: 500;
text-decoration: underline;
text-underline-offset: 2px;
text-decoration-color: color-mix(in srgb, var(--primary-soft) 40%, transparent);
}
body.flow-mode.flow-purple-dark-mode main a:not([class]):hover {
color: var(--accent-light);
text-decoration-color: currentColor;
}
body.flow-mode.flow-purple-dark-mode main a:not(.btn):not(.pagination-num):not(.pagination-btn) {
color: var(--primary-light);
}
body.flow-mode.flow-purple-dark-mode main a:not(.btn):not(.pagination-num):not(.pagination-btn):hover {
color: var(--primary-soft);
}
body.flow-mode.flow-purple-dark-mode .navbar a:not(.btn) {
color: rgba(255, 255, 255, 0.85);
}
body.flow-mode.flow-purple-dark-mode .navbar a:not(.btn):hover,
body.flow-mode.flow-purple-dark-mode .navbar .nav-link.active {
color: var(--primary-soft);
}
body.flow-mode.flow-purple-dark-mode .footer a:not(.btn) {
color: rgba(221, 216, 246, 0.75);
}
body.flow-mode.flow-purple-dark-mode .footer a:not(.btn):hover {
color: var(--primary-soft);
}
body.flow-mode.flow-purple-dark-mode .cc-banner a.cc-link {
color: var(--primary-light);
}
body.flow-mode.flow-purple-dark-mode .cc-banner a.cc-link:hover {
color: var(--primary-soft);
}
body.flow-mode.flow-purple-dark-mode .pagination-btn,
body.flow-mode.flow-purple-dark-mode .pagination-num {
background: rgba(27, 17, 73, 0.6);
border-color: rgba(155, 126, 255, 0.18);
color: #DDD8F6;
}
body.flow-mode.flow-purple-dark-mode .pagination-btn:hover,
body.flow-mode.flow-purple-dark-mode .pagination-num:hover,
body.flow-mode.flow-purple-dark-mode .pagination-num.active {
background: var(--primary);
border-color: var(--primary);
color: #ffffff;
}
body.flow-purple-mode .stats-showcase .stat-big,
body.flow-purple-mode .stats-showcase .stat-item {
background: rgba(255, 255, 255, 0.75);
}
body.flow-mode.flow-purple-dark-mode .stats-showcase .stat-big,
body.flow-mode.flow-purple-dark-mode .stats-showcase .stat-item {
background: rgba(27, 17, 73, 0.5);
}
body.flow-purple-mode [fill="#FF6B4A"] { fill: #5C4CCC; }
body.flow-purple-mode [stroke="#FF6B4A"] { stroke: #5C4CCC; }
body.flow-purple-mode [stop-color="#FF6B4A"] { stop-color: #5C4CCC; }
body.flow-purple-mode [stop-color="#FF8E75"] { stop-color: #7868D6; }
body.flow-purple-dark-mode [fill="#FF6B4A"] { fill: #9B7EFF; }
body.flow-purple-dark-mode [stroke="#FF6B4A"] { stroke: #9B7EFF; }
body.flow-purple-dark-mode [stop-color="#FF6B4A"] { stop-color: #9B7EFF; }
body.flow-purple-dark-mode [stop-color="#FF8E75"] { stop-color: #B7A1FF; }
body.flow-purple-mode [fill="#7B83DA"] { fill: #7C5CFF; }
body.flow-purple-mode [stroke="#7B83DA"] { stroke: #7C5CFF; }
body.flow-purple-mode [stop-color="#7B83DA"] { stop-color: #7C5CFF; }
body.flow-purple-mode [fill="#9FA8DA"] { fill: #9B7EFF; }
body.flow-purple-mode [stroke="#9FA8DA"] { stroke: #9B7EFF; }
body.flow-purple-dark-mode [fill="#7B83DA"] { fill: #9B7EFF; }
body.flow-purple-dark-mode [stroke="#7B83DA"] { stroke: #9B7EFF; }
body.flow-purple-dark-mode [stop-color="#7B83DA"] { stop-color: #9B7EFF; }
body.flow-purple-dark-mode [fill="#9FA8DA"] { fill: #B7A1FF; }
body.flow-purple-dark-mode [stroke="#9FA8DA"] { stroke: #B7A1FF; }
body.flow-purple-mode .nav-logo-img,
body.flow-purple-mode .footer-logo img {
filter: invert(1) hue-rotate(180deg) saturate(2);
}
body.flow-purple-mode .nav-logo:hover .nav-logo-img {
filter: invert(1) hue-rotate(180deg) saturate(2) drop-shadow(0 0 8px rgba(92, 76, 204, 0.5));
}
body.flow-purple-dark-mode .nav-logo:hover .nav-logo-img {
filter: drop-shadow(0 0 8px rgba(155, 126, 255, 0.55));
}
body.flow-purple-dark-mode .navbar.navbar-dark .theme-toggle:hover {
background: rgba(155, 126, 255, 0.15);
border-color: #9B7EFF;
color: #B7A1FF;
}
body.flow-purple-mode .navbar .theme-toggle:hover {
background: rgba(92, 76, 204, 0.12);
border-color: #5C4CCC;
color: #5C4CCC;
}
body.flow-purple-mode ::selection {
background: rgba(92, 76, 204, 0.25);
color: #1B1149;
}
body.flow-purple-dark-mode ::selection {
background: rgba(155, 126, 255, 0.35);
color: #FFFFFF;
}
body.flow-purple-mode .section-badge,
body.flow-purple-mode .hero-badge {
background: color-mix(in srgb, var(--primary) 12%, transparent);
border-color: color-mix(in srgb, var(--primary) 30%, transparent);
color: var(--primary-dark);
}
body.flow-mode.flow-purple-dark-mode .section-badge,
body.flow-mode.flow-purple-dark-mode .hero-badge {
background: color-mix(in srgb, var(--primary) 15%, transparent);
border-color: color-mix(in srgb, var(--primary) 40%, transparent);
color: var(--primary);
}
body.flow-purple-mode::before,
body.flow-purple-mode::after,
body.flow-purple-dark-mode::before,
body.flow-purple-dark-mode::after {
animation: none;
}
:where(body.flow-purple-mode, body.flow-purple-dark-mode) .section-badge {
display: inline-flex;
align-items: center;
margin-bottom: 0.75rem;
padding: 0.3125rem 0.875rem;
border-width: 1px;
border-style: solid;
border-radius: 999px;
font-size: calc(0.8125rem + min(0.8125rem * var(--rtl-agrandissement, 0), var(--rtl-agrandissement-max, 0px)));
font-weight: 600;
line-height: 1.4;
letter-spacing: 0;
}
:where(body.flow-purple-mode, body.flow-purple-dark-mode) :where(h1, h2, h3, h4, p, li, dt, dd, figcaption, blockquote, summary, button, strong) {
text-wrap-style: pretty;
}
body.flow-purple-mode .text-gradient {
background: var(--gradient-primary);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.flow-mode.flow-purple-dark-mode .text-gradient {
background: var(--gradient-primary);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
body.flow-purple-mode .btn-primary:hover {
box-shadow: var(--shadow-glow);
}
body.flow-purple-mode .btn-outline:hover {
background: rgba(92, 76, 204, 0.08);
box-shadow: 0 8px 20px rgba(92, 76, 204, 0.15);
}
body.flow-mode.flow-purple-dark-mode .btn-primary:hover {
background: linear-gradient(225deg, #7C5CFF 0%, #9B7EFF 55%, #B7A1FF 100%);
box-shadow: 0 6px 30px rgba(124, 92, 255, 0.5);
}
body.flow-mode.flow-purple-dark-mode .btn-outline:hover {
background: rgba(155, 126, 255, 0.1);
border-color: #9B7EFF;
box-shadow: 0 8px 20px rgba(124, 92, 255, 0.2);
}
body.flow-purple-mode::-webkit-scrollbar-thumb,
body.flow-purple-mode .lang-switcher__list::-webkit-scrollbar-thumb {
background: rgba(92, 76, 204, 0.35);
}
body.flow-purple-mode::-webkit-scrollbar-thumb:hover,
body.flow-purple-mode .lang-switcher__list::-webkit-scrollbar-thumb:hover {
background: rgba(92, 76, 204, 0.55);
}
body.flow-purple-dark-mode::-webkit-scrollbar-thumb,
body.flow-purple-dark-mode .lang-switcher__list::-webkit-scrollbar-thumb {
background: rgba(155, 126, 255, 0.35);
}
body.flow-purple-dark-mode::-webkit-scrollbar-thumb:hover,
body.flow-purple-dark-mode .lang-switcher__list::-webkit-scrollbar-thumb:hover {
background: rgba(155, 126, 255, 0.55);
}
body.flow-purple-mode .lang-switcher__list {
background: #FFFFFF;
border-color: rgba(92, 76, 204, 0.16);
box-shadow: 0 10px 26px rgba(27, 17, 73, 0.14), 0 2px 6px rgba(27, 17, 73, 0.08);
}
body.flow-purple-mode .lang-switcher__current {
background: rgba(255, 255, 255, 0.94);
border-color: rgba(92, 76, 204, 0.18);
}
body.flow-purple-dark-mode .lang-switcher__list,
body.flow-purple-dark-mode .navbar.navbar-dark .lang-switcher__list {
background: #1B1149;
border-color: rgba(155, 126, 255, 0.22);
box-shadow: 0 10px 26px rgba(0, 0, 0, 0.45), 0 2px 6px rgba(0, 0, 0, 0.3);
}
body.flow-purple-dark-mode .lang-switcher__current {
background: rgba(27, 17, 73, 0.92);
border-color: rgba(155, 126, 255, 0.24);
}

/* == Ajouts propres aux pages de droite à gauche (rtl_css.py) == */
/* Icônes directionnelles : « scale » se combine aux transform existants
   (survol, animation) au lieu de les remplacer */
.rtl-miroir {
  scale: -1 1;
}

/* Agrandissement du texte, par langue (rtl_css.py, « Taille du texte ») :
   pourcentage gagné par le texte courant, plafond pour les grands titres */
html:lang(he) {
  --rtl-agrandissement: 0.1;
  --rtl-agrandissement-max: 0.15rem;
}
html:lang(ar) {
  --rtl-agrandissement: 0.2;
  --rtl-agrandissement-max: 0.3rem;
}

/* Adresses e-mail et numéros de téléphone s'écrivent de gauche à droite */
input[type="email"],
input[type="tel"],
input[name="phone"],
input[name="email"] {
  direction: ltr;
  text-align: right;
}
