.section { padding: 5rem 0; position: relative; background: var(--background); overflow: hidden; } @media (min-width: 768px) { .section { padding: 4rem 0; } } @media (min-width: 1024px) { .section { padding: 4rem 0; } } .header { text-align: center; margin-bottom: 5rem; } .subTitle { color: #0072b1; font-weight: 600; text-transform: uppercase; letter-spacing: 2px; font-size: 0.9rem; margin-bottom: 0.5rem; display: block; } .title { font-size: clamp(2.5rem, 5vw, 3.5rem); font-weight: 800; margin-bottom: 1.5rem; color: var(--foreground); line-height: 1.1; } .highlight { background: linear-gradient(135deg, var(--primary), var(--secondary)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .subtitle { font-size: 1.2rem; color: var(--foreground-secondary); max-width: 600px; margin: 0 auto; line-height: 1.6; } .gridContainer { display: grid; gap: 3rem; align-items: center; } /* Service Item Styling */ .serviceItem { display: flex; gap: 1.5rem; margin-bottom: 3rem; align-items: flex-start; } .serviceItem:last-child { margin-bottom: 0; } .iconWrapper { width: 50px; height: 50px; border-radius: 12px; background: var(--card-bg, rgba(255, 255, 255, 0.05)); border: 1px solid var(--border-color); display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: all 0.3s ease; } .serviceItem:hover .iconWrapper { background: var(--primary); border-color: var(--primary); transform: scale(1.1); box-shadow: 0 10px 20px rgba(var(--primary-rgb), 0.3); } .icon { font-size: 1.5rem; } .content h3 { font-size: 1.25rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--foreground); transition: color 0.3s ease; } .serviceItem:hover .content h3 { color: var(--primary); } .content p { font-size: 0.95rem; color: var(--foreground-secondary); line-height: 1.6; margin: 0; } /* Central Visual Styles */ .columnCenter { display: flex; justify-content: center; align-items: center; min-height: 400px; position: relative; } .centralVisual { position: relative; width: 300px; height: 400px; display: flex; align-items: center; justify-content: center; } .circleBg { position: absolute; width: 350px; height: 350px; background: radial-gradient(circle, rgba(236, 72, 153, 0.1) 0%, transparent 70%); border-radius: 50%; z-index: 0; animation: pulse 4s ease-in-out infinite; } @keyframes pulse { 0%, 100% { transform: scale(1); opacity: 0.5; } 50% { transform: scale(1.1); opacity: 0.8; } } .glassCard { width: 240px; height: 340px; background: rgba(255, 255, 255, 0.03); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 20px; position: relative; z-index: 1; display: flex; flex-direction: column; padding: 20px; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2); transform: rotateY(-10deg) rotateX(10deg); transition: transform 0.5s ease; } .centralVisual:hover .glassCard { transform: rotateY(0) rotateX(0) translateY(-10px); } .cardHeader { border-bottom: 1px solid rgba(255, 255, 255, 0.1); padding-bottom: 10px; margin-bottom: 20px; } .dots { display: flex; gap: 6px; } .dots span { width: 8px; height: 8px; border-radius: 50%; background: rgba(255, 255, 255, 0.2); } .dots span:nth-child(1) { background: #ff5f56; } .dots span:nth-child(2) { background: #ffbd2e; } .dots span:nth-child(3) { background: #27c93f; } .cardBody { flex: 1; display: flex; flex-direction: column; gap: 20px; } .graphArea { display: flex; align-items: flex-end; gap: 10px; height: 100px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); padding-bottom: 5px; } .bar { width: 20%; background: linear-gradient(to top, var(--primary), var(--secondary)); border-radius: 4px 4px 0 0; animation: growBar 2s ease-out infinite alternate; } .bar:nth-child(1) { height: 40%; animation-delay: 0s; } .bar:nth-child(2) { height: 70%; animation-delay: 0.2s; } .bar:nth-child(3) { height: 50%; animation-delay: 0.4s; } .bar:nth-child(4) { height: 90%; animation-delay: 0.6s; } @keyframes growBar { from { transform: scaleY(0.9); } to { transform: scaleY(1.1); } } .pieChart { width: 80px; height: 80px; border-radius: 50%; background: conic-gradient(var(--primary) 0% 70%, rgba(255, 255, 255, 0.1) 70% 100%); margin: 0 auto; position: relative; } .pieChart::after { content: ''; position: absolute; inset: 20px; background: var(--card-bg); /* Match visual background if possible, or transparent */ border-radius: 50%; backdrop-filter: blur(5px); } .floatingBadge { position: absolute; top: -20px; right: -20px; background: white; color: black; padding: 8px 16px; border-radius: 20px; font-weight: bold; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); animation: floatBadge 3s ease-in-out infinite; } @keyframes floatBadge { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } } /* Desktop Layout (1024px+) */ @media (min-width: 1024px) { .gridContainer { grid-template-columns: 1fr 350px 1fr; gap: 4rem; } .columnLeft { text-align: right; } .columnLeft .serviceItem { flex-direction: row-reverse; } } /* Tablet (768px - 1023px) */ @media (min-width: 768px) and (max-width: 1023px) { .gridContainer { grid-template-columns: 1fr 1fr; gap: 3rem; } .columnCenter { grid-column: span 2; order: -1; min-height: 300px; } } /* Mobile (below 768px) */ @media (max-width: 767px) { .gridContainer { grid-template-columns: 1fr; } .columnCenter { order: -1; /* Image first on mobile */ margin-bottom: 2rem; } .centralVisual { transform: scale(0.9); } }