/* About Page Styles */ .aboutPage { background: var(--background); padding-top: 5rem; } /* Hero Section */ .hero { background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), url('/images/about/aboutpage-banner.webp'); background-size: cover; background-position: center; padding: 8rem 0 8rem; position: relative; color: white; } .heroContent { text-align: center; max-width: 800px; margin: 0 auto; } .heroTitle { font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 800; margin-bottom: 1rem; background: var(--gradient-primary); -webkit-background-clip: text; /* -webkit-text-fill-color: transparent; */ background-clip: text; } .breadcrumb { color: #fff; font-size: 0.95rem; } .breadcrumb a { color: #fff; text-decoration: none; transition: opacity 0.2s; font-weight: 400; } .breadcrumb a:hover { opacity: 0.8; } .breadcrumb span { color: #fff; font-weight: 400; } .breadcrumb .breadcrumbActive { font-weight: 700; } /* 1. Story Section (Image 3 Style) */ .storySection { padding: 4rem 0; background: white; overflow: hidden; } .storyGrid { display: grid; grid-template-columns: 1fr; gap: 4rem; align-items: center; } .storyImageContainer { position: relative; padding: 2rem; /* Space for frame */ } /* The decorative frame behind the image */ .storyFrame { position: absolute; inset: 0; border: 3px solid #ec4899; /* Primary Pink */ border-radius: 20px; transform: rotate(-3deg); z-index: 0; width: 90%; height: 90%; margin: auto; } .storyImageWrapper { position: relative; z-index: 1; border-radius: 20px; overflow: hidden; box-shadow: var(--shadow-xl); transform: rotate(2deg); /* Counter tilt */ } .storyImg { width: 100%; height: auto; display: block; } .storyContent { padding-left: 2rem; } .storyTitle { color: #ec4899; /* Pink Title */ font-size: 1.1rem; font-weight: 800; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 1rem; } .storyHeading { font-size: 2rem; font-weight: 700; color: var(--foreground); margin-bottom: 1.5rem; line-height: 1.3; } .storyText { color: var(--text-secondary); margin-bottom: 1.5rem; font-size: 1rem; line-height: 1.7; } .storyBtn { background: #ec4899; color: white; border: none; padding: 1rem 2rem; font-weight: 600; border-radius: 8px; cursor: pointer; font-size: 1rem; transition: all 0.3s ease; box-shadow: 0 4px 14px 0 rgba(236, 72, 153, 0.39); } .storyBtn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(236, 72, 153, 0.23); background: #db2777; } /* 2. Why Choose Us (Image 1 Style) */ .whyChooseSection { padding: 4rem 0 4rem; background: var(--background-secondary); } .whyHeader { text-align: center; max-width: 700px; margin: 0 auto 4rem; } .sectionTitle { font-size: 2.5rem; font-weight: 800; margin-bottom: 1rem; color: var(--foreground); } .sectionSubtitle { color: var(--text-secondary); font-size: 1.1rem; } .cardsGrid { display: grid; grid-template-columns: 1fr; gap: 2rem; } .card { padding: 2.5rem 1.5rem; border-radius: 24px; text-align: center; transition: transform 0.3s ease; border: 1px solid transparent; } .card:hover { transform: translateY(-10px); } .cardIconWrapper { width: 64px; height: 64px; border-radius: 50%; background: white; display: flex; align-items: center; justify-content: center; margin: 0 auto 1.5rem; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05); } .card h3 { font-size: 1.25rem; font-weight: 700; margin-bottom: 1rem; color: var(--foreground); } .card p { font-size: 0.95rem; color: var(--text-secondary); line-height: 1.5; } /* Card Variants */ /* Purple */ .cardPurple { background: #F3E8FF; border-color: #E9D5FF; } .cardPurple .cardIconWrapper { color: #9333EA; } /* Orange */ .cardOrange { background: #FFEDD5; /* Peach/Orange */ border-color: #FED7AA; } .cardOrange .cardIconWrapper { color: #F97316; } /* Pink */ .cardPink { background: #FCE7F3; border-color: #FBCFE8; } .cardPink .cardIconWrapper { color: #EC4899; } /* Green */ .cardGreen { background: #DCFCE7; border-color: #BBF7D0; } .cardGreen .cardIconWrapper { color: #16A34A; /* Updated green for better contrast on light bg, slightly darker than accent */ } /* 3. Feature Set Section (Image 2 Style) */ .featureSetSection { padding: 4rem 0; background: white; overflow: hidden; } .featureSetGrid { display: grid; grid-template-columns: 1fr; gap: 4rem; align-items: center; } .featureSetTitle { font-size: 2.5rem; font-weight: 800; margin-bottom: 3rem; line-height: 1.2; color: var(--foreground); } .featureList { display: flex; flex-direction: column; gap: 2rem; } .featureListItem { display: flex; gap: 1.5rem; align-items: flex-start; } .featureListIcon { width: 50px; height: 50px; border-radius: 12px; background: var(--background-secondary); color: var(--primary); display: flex; align-items: center; justify-content: center; flex-shrink: 0; } .featureListText h4 { font-size: 1.1rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--foreground); } .featureListText p { font-size: 0.95rem; color: var(--text-secondary); line-height: 1.5; } /* Mockup Side */ .mockupWrapper { position: relative; background: #F8FAFC; /* Subtle bg blob? */ border-radius: 40px; padding: 2rem; /* Center the image */ display: flex; justify-content: center; align-items: center; } .mockupWrapper::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at center, #F1F5F9 0%, transparent 70%); z-index: 0; } .mockupImg { position: relative; z-index: 1; width: 100%; height: auto; filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.1)); } .floatCard { position: absolute; background: white; padding: 1rem 1.5rem; border-radius: 16px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); z-index: 2; display: flex; flex-direction: column; gap: 0.25rem; animation: float 4s ease-in-out infinite; } .floatCard1 { top: 10%; right: 5%; animation-delay: 0s; } .floatCard2 { bottom: 15%; right: 10%; animation-delay: 1.5s; } .floatCard span { font-weight: 600; color: var(--foreground); font-size: 0.9rem; } .floatCard small { color: var(--text-secondary); font-size: 0.8rem; } .floatCard strong { color: var(--primary); font-size: 1.2rem; } /* Responsive */ @media (min-width: 900px) { .storyGrid { grid-template-columns: 1fr 1fr; } .cardsGrid { grid-template-columns: repeat(4, 1fr); } .featureSetGrid { grid-template-columns: 1fr 1fr; } } /* 4. Ready CTA Section (Image Bottom Style) */ .readySection { padding: 4rem 0 4rem; /* Padding bottom mainly, card has internal padding */ background: white; } .readyCard { background: linear-gradient(135deg, #2563eb 0%, #ec4899 100%); /* Primary Gradient Blue->Pink */ border-radius: 40px; padding: 3rem 3rem 0; /* No bottom padding, content aligns to bottom */ display: flex; flex-direction: column; justify-content: space-between; align-items: center; position: relative; overflow: hidden; color: white; box-shadow: 0 20px 40px -10px rgba(37, 99, 235, 0.4); } .readyContent { max-width: 600px; text-align: center; margin-bottom: 3rem; position: relative; z-index: 2; } .readyTitle { font-size: clamp(2rem, 5vw, 3rem); font-weight: 800; margin-bottom: 1.5rem; line-height: 1.2; color: white; } .whiteGradientText { color: #fff; text-shadow: 0 0 20px rgba(255, 255, 255, 0.5); } .readyText { font-size: 1.05rem; line-height: 1.6; margin-bottom: 2.5rem; opacity: 0.9; max-width: 500px; margin-left: auto; margin-right: auto; } .readyBtn { background: white; color: #ec4899; /* Pink text */ border: none; padding: 1rem 2.5rem; border-radius: 50px; font-weight: 700; font-size: 1rem; cursor: pointer; transition: transform 0.2s, box-shadow 0.2s; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1); } .readyBtn:hover { transform: translateY(-2px); box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2); } .readyImageWrapper { position: relative; z-index: 1; width: 100%; display: flex; justify-content: center; margin-bottom: -50px; /* Let it bleed out slightly if we want, or just sit at bottom */ } /* Phone Mockup */ .phoneFrame { position: relative; width: 300px; height: auto; transform: rotate(-10deg) translateX(-20px); /* Tilted left like ref */ transition: transform 0.3s ease; } .phoneFrame:hover { transform: rotate(0deg) translateX(0); } .phoneScreen { width: 100%; height: auto; border-radius: 30px; border: 8px solid #1e293b; /* Dark Frame */ box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3); background: white; /* Fallback */ } .phoneOverlayCard { position: absolute; top: 20%; right: -40px; background: white; color: #0072b1; padding: 1rem 1.5rem; border-radius: 16px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15); display: flex; flex-direction: column; gap: 0.5rem; animation: float 5s ease-in-out infinite reverse; } .overlayItem { font-size: 0.85rem; background: #f1f5f9; padding: 0.5rem; border-radius: 8px; font-weight: 500; } /* Desktop Layout */ @media (min-width: 900px) { .readyCard { flex-direction: row; align-items: center; text-align: left; padding: 4rem 4rem 4rem 6rem; /* Left padding for image space */ overflow: visible; /* Allow image to pop out if needed */ /* Space for pop out */ } .readyContent { max-width: 50%; text-align: left; order: 2; /* Text on right */ margin-bottom: 0; } .readyText { margin-left: 0; margin-right: 0; } .readyImageWrapper { order: 1; /* Image on left */ width: 40%; justify-content: flex-start; margin-bottom: 0; position: relative; left: -20px; } .phoneFrame { width: 280px; transform: rotate(-12deg) translateY(20px) scale(1.1); } }