/* Base Styles */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

:root {
--primary: #00c853;
--secondary: #ff4081;
--dark: #212121;
--light: #f5f5f5;
}

body {
overflow-x: hidden;
color: var(--dark);
}

/* Full-height Header with Background Image */
.header-container {
position: relative;
height: 100vh;
min-height: 600px;
background: linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.2)),
url('pexels-pixabay-269077.jpg');
background-size: cover;
background-position: center;
background-attachment: fixed;
display: flex;
flex-direction: column;
}

/* Navigation Bar - Inside the header */
nav {
display: flex;
justify-content: space-between;
align-items: center;
padding: 30px 5%;
position: relative;
z-index: 100;
}

.logo {
color: white;
font-size: 28px;
font-weight: 700;
text-decoration: none;
display: flex;
align-items: center;
text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

.logo span {
display: inline-block;
width: 14px;
height: 14px;
background-color: #4CAF50;
border-radius: 50%;
margin-right: 12px;
box-shadow: 0 0 10px rgba(76, 175, 80, 0.7);
}

/* Navigation Links */
.nav-links {
display: flex;
gap: 40px;
}

.nav-link {
position: relative;
color: white;
text-decoration: none;
font-weight: 500;
font-size: 17px;
padding: 8px 0;
transition: all 0.4s ease;
text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

.nav-link:hover {
color: #4CAF50;
transform: translateY(-2px);
}

/* Special underline effect */
.nav-link::after {
content: '';
position: absolute;
width: 0;
height: 2px;
bottom: 0;
left: 0;
background-color: #4CAF50;
transition: width 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.nav-link:hover::after {
width: 100%;
}

/* Dropdown Menu */
.dropdown {
position: relative;
}

.dropdown-content {
position: absolute;
top: 100%;
left: 50%;
transform: translateX(-50%) translateY(10px);
background-color: rgba(0, 0, 0, 0.9);
min-width: 220px;
border-radius: 8px;
box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3);
opacity: 0;
visibility: hidden;
transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
z-index: 1;
padding: 10px 0;
}

.dropdown:hover .dropdown-content {
opacity: 1;
visibility: visible;
transform: translateX(-50%) translateY(0);
}

.dropdown-content a {
color: white;
padding: 12px 20px;
text-decoration: none;
display: block;
transition: all 0.3s ease;
}

.dropdown-content a:hover {
background-color: rgba(255, 255, 255, 0.1);
padding-left: 25px;
color: #4CAF50;
}

/* Auth Buttons */
.auth-buttons {
display: flex;
gap: 15px;
}

.btn {
padding: 10px 25px;
border-radius: 25px;
font-weight: 600;
cursor: pointer;
transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
text-decoration: none;
font-size: 15px;
}

.btn-login {
color: white;
border: 2px solid rgba(255, 255, 255, 0.5);
background-color: transparent;
}

.btn-login:hover {
background-color: rgba(255, 255, 255, 0.1);
border-color: white;
transform: translateY(-3px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

.btn-signup {
background-color: #4CAF50;
color: white;
border: 2px solid #4CAF50;
}

.btn-signup:hover {
background-color: #3e8e41;
border-color: #3e8e41;
transform: translateY(-3px);
box-shadow: 0 5px 20px rgba(76, 175, 80, 0.4);
}

/* Header Content */
.header-content {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
color: white;
text-align: center;
padding: 0 20px;
position: relative;
z-index: 2;
}

.header-content h1 {
font-size: 4.5rem;
margin-bottom: 25px;
text-shadow: 0 3px 10px rgba(0, 0, 0, 0.5);
line-height: 1.2;
font-weight: 800;
letter-spacing: 1px;
}

.header-content p {
font-size: 1.3rem;
max-width: 700px;
margin-bottom: 40px;
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
line-height: 1.6;
font-weight: 300;
opacity: 0.9;
}

.cta-button {
padding: 15px 35px;
background-color: #4CAF50;
color: white;
border: none;
border-radius: 30px;
font-size: 1.1rem;
font-weight: 600;
cursor: pointer;
transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
text-transform: uppercase;
letter-spacing: 1px;
}

.cta-button:hover {
background-color: #3e8e41;
transform: translateY(-5px);
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4);
}

/* Scrolling Indicator */
.scroll-indicator {
position: absolute;
bottom: 30px;
left: 50%;
transform: translateX(-50%);
color: white;
display: flex;
flex-direction: column;
align-items: center;
z-index: 2;
opacity: 0.7;
transition: opacity 0.3s ease;
}

.scroll-indicator:hover {
opacity: 1;
}

.scroll-text {
margin-bottom: 10px;
font-size: 14px;
text-transform: uppercase;
letter-spacing: 2px;
}

.scroll-arrow {
width: 20px;
height: 35px;
border: 2px solid white;
border-radius: 15px;
position: relative;
}

.scroll-arrow::after {
content: '';
position: absolute;
width: 4px;
height: 8px;
background-color: white;
top: 5px;
left: 50%;
transform: translateX(-50%);
border-radius: 2px;
animation: scrollAnimation 2s infinite;
}

@keyframes scrollAnimation {
0% {
transform: translateX(-50%) translateY(0);
opacity: 0;
}
50% {
opacity: 1;
}
100% {
transform: translateX(-50%) translateY(10px);
opacity: 0;
}
}

/* Overlay Effect */
.header-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 100%);
z-index: 1;
}

/* How It Works Section */
.how-it-works {
background: linear-gradient(135deg, #1a3a1f, #2d7a32);
color: white;
padding: 120px 5%;
position: relative;
overflow: hidden;
clip-path: polygon(0 0, 100% 5%, 100% 100%, 0% 100%);
margin-top: -5%;
}

.section-header {
text-align: center;
margin-bottom: 80px;
position: relative;
}

.section-title {
font-size: 3.5rem;
font-weight: 800;
margin-bottom: 20px;
background: linear-gradient(to right, #a8ff78, #78ffd6);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
display: inline-block;
text-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

.section-subtitle {
font-size: 1.3rem;
opacity: 0.9;
max-width: 700px;
margin: 0 auto;
line-height: 1.6;
}

.process-steps {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
max-width: 1200px;
margin: 0 auto;
position: relative;
gap: 30px;
}

.step {
width: 30%;
position: relative;
padding: 60px 30px;
margin-bottom: 50px;
z-index: 2;
background: rgba(0,0,0,0.2);
border-radius: 15px;
backdrop-filter: blur(5px);
border: 1px solid rgba(255,255,255,0.1);
transition: all 0.5s ease;
}

.step:hover {
transform: translateY(-10px);
box-shadow: 0 15px 30px rgba(0,0,0,0.3);
background: rgba(0,0,0,0.3);
}

.step-number {
font-size: 5rem;
font-weight: 900;
color: rgba(255, 255, 255, 0.05);
position: absolute;
top: -20px;
left: -10px;
z-index: -1;
}

.step-content {
position: relative;
}

.step-title {
font-size: 1.8rem;
margin-bottom: 20px;
color: #a8ff78;
position: relative;
display: inline-block;
}

.step-title:after {
content: '';
position: absolute;
bottom: -10px;
left: 0;
width: 50px;
height: 3px;
background: linear-gradient(to right, #a8ff78, transparent);
transition: width 0.3s ease;
}

.step:hover .step-title:after {
width: 100%;
}

.step-description {
line-height: 1.8;
opacity: 0.9;
transition: opacity 0.3s ease;
}

.step:hover .step-description {
opacity: 1;
}

/* تأثيرات محسنة */
.floating-shapes {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
pointer-events: none;
overflow: hidden;
z-index: 1;
}

.shape {
position: absolute;
border-radius: 50%;
filter: blur(80px);
opacity: 0.1;
animation: float 15s infinite ease-in-out;
}

.shape-1 {
width: 400px;
height: 400px;
background: #a8ff78;
top: 20%;
left: 10%;
}

.shape-2 {
width: 500px;
height: 500px;
background: #78ffd6;
bottom: 10%;
right: 5%;
animation-delay: 2s;
}

@keyframes float {
0%, 100% { transform: translate(0, 0) rotate(0deg); }
50% { transform: translate(30px, 40px) rotate(5deg); }
}

/* About Section */
.about-section {
background-color: white;
padding: 120px 5%;
position: relative;
overflow: hidden;
}

.about-container {
max-width: 1400px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 60px;
align-items: center;
}

/* الجزء البصري المبتكر */
.about-visual {
position: relative;
height: 500px;
perspective: 1000px;
}

.visual-base {
width: 100%;
height: 100%;
background: linear-gradient(45deg, var(--light), white);
border-radius: 30px;
transform-style: preserve-3d;
position: relative;
box-shadow: 40px 40px 80px rgba(0, 0, 0, 0.05);
overflow: hidden;
}

.floating-element {
position: absolute;
border-radius: 20px;
background: linear-gradient(45deg, var(--primary), var(--secondary));
opacity: 0.9;
filter: blur(0.5px);
transition: all 1.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.element-1 {
width: 120px;
height: 120px;
top: 15%;
left: 20%;
transform: rotate(45deg);
animation: float 8s infinite ease-in-out;
}

.element-2 {
width: 80px;
height: 80px;
bottom: 25%;
right: 15%;
transform: rotate(-15deg);
animation: float 10s infinite ease-in-out reverse;
}

.element-3 {
width: 150px;
height: 150px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) rotate(0deg);
border-radius: 50%;
animation: pulse 6s infinite ease-in-out;
}

@keyframes pulse {
0%, 100% { transform: translate(-50%, -50%) scale(1) rotate(0deg); }
50% { transform: translate(-50%, -50%) scale(1.1) rotate(180deg); }
}

/* محتوى نصي متميز */
.about-content {
position: relative;
}

.section-tag {
display: inline-block;
padding: 8px 20px;
background-color: var(--primary);
color: white;
font-weight: 700;
border-radius: 50px;
margin-bottom: 20px;
transform: skewX(-15deg);
font-size: 0.9rem;
}

.about-title {
font-size: 3.5rem;
font-weight: 900;
margin-bottom: 30px;
line-height: 1.2;
background: linear-gradient(90deg, var(--dark), var(--primary));
-webkit-background-clip: text;
background-clip: text;
color: transparent;
letter-spacing: -1px;
}

.about-text {
font-size: 1.2rem;
line-height: 1.8;
color: var(--dark);
margin-bottom: 40px;
position: relative;
padding-left: 30px;
border-left: 3px solid var(--primary);
}

.stats-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}

.stat-item {
padding: 25px;
background: white;
border-radius: 15px;
box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.03);
border: 1px solid rgba(0, 0, 0, 0.05);
transition: all 0.4s ease;
}

.stat-item:hover {
transform: translateY(-10px);
box-shadow: 15px 15px 40px rgba(0, 0, 0, 0.1);
border-color: var(--primary);
}

.stat-number {
font-size: 2.5rem;
font-weight: 800;
color: var(--primary);
margin-bottom: 5px;
line-height: 1;
}

.stat-label {
font-size: 0.9rem;
font-weight: 600;
color: var(--dark);
text-transform: uppercase;
letter-spacing: 1px;
}

/* تأثيرات الظهور */
.about-content > * {
opacity: 0;
transform: translateY(30px);
transition: all 0.8s ease;
}

.about-content.in-view > * {
opacity: 1;
transform: translateY(0);
}

.about-content.in-view .section-tag { transition-delay: 0.1s; }
.about-content.in-view .about-title { transition-delay: 0.2s; }
.about-content.in-view .about-text { transition-delay: 0.3s; }
.about-content.in-view .stats-grid { transition-delay: 0.4s; }

/* Features Section */
.features-section {
padding: 120px 5%;
background-color: #f9f9f9;
position: relative;
overflow: hidden;
}

.features-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 40px;
max-width: 1200px;
margin: 0 auto;
}

.feature-card {
background: white;
border-radius: 20px;
padding: 50px 30px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
position: relative;
overflow: hidden;
z-index: 1;
}

.feature-card:hover {
transform: translateY(-10px);
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.feature-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 5px;
background: linear-gradient(90deg, var(--primary), var(--secondary));
transition: height 0.3s ease;
}

.feature-card:hover::before {
height: 10px;
}

.feature-icon {
width: 80px;
height: 80px;
background: linear-gradient(135deg, rgba(0, 200, 83, 0.1), rgba(255, 64, 129, 0.1));
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 30px;
}

.feature-icon svg {
width: 40px;
height: 40px;
stroke: var(--primary);
stroke-width: 2;
}

.feature-title {
font-size: 1.8rem;
margin-bottom: 20px;
color: var(--dark);
position: relative;
}

.feature-title::after {
content: '';
position: absolute;
bottom: -10px;
left: 0;
width: 50px;
height: 3px;
background: linear-gradient(90deg, var(--primary), transparent);
transition: width 0.3s ease;
}

.feature-card:hover .feature-title::after {
width: 100%;
}

.feature-description {
color: #666;
line-height: 1.8;
font-size: 1.1rem;
}

/* Testimonials Section */
.testimonials-section {
padding: 120px 5%;
background: linear-gradient(135deg, #2c3e50, #4ca1af);
color: white;
position: relative;
overflow: hidden;
clip-path: polygon(0 5%, 100% 0, 100% 100%, 0% 100%);
margin-top: -5%;
}

.testimonials-container {
max-width: 1200px;
margin: 0 auto;
}

.testimonials-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 30px;
margin-top: 60px;
}

.testimonial-card {
background: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(10px);
border-radius: 20px;
padding: 40px;
border: 1px solid rgba(255, 255, 255, 0.2);
transition: all 0.5s ease;
position: relative;
overflow: hidden;
}

.testimonial-card:hover {
transform: translateY(-10px);
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
background: rgba(255, 255, 255, 0.15);
}

.testimonial-content {
font-size: 1.1rem;
line-height: 1.8;
margin-bottom: 30px;
position: relative;
z-index: 2;
}

.testimonial-content::before {
content: '"';
position: absolute;
top: -30px;
left: -20px;
font-size: 6rem;
color: rgba(255, 255, 255, 0.1);
font-family: serif;
z-index: -1;
}

.testimonial-author {
display: flex;
align-items: center;
}

.author-avatar {
width: 60px;
height: 60px;
border-radius: 50%;
object-fit: cover;
margin-right: 20px;
border: 3px solid rgba(255, 255, 255, 0.3);
}

.author-info h4 {
font-size: 1.2rem;
margin-bottom: 5px;
}

.author-info p {
font-size: 0.9rem;
opacity: 0.8;
}

/* Team Section */
.team-section {
padding: 100px 5%;
background-color: #f9f9f9;
}

.team-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 30px;
max-width: 1200px;
margin: 0 auto;
}

.team-member {
background: white;
border-radius: 15px;
padding: 30px;
text-align: center;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
}

.team-member:hover {
transform: translateY(-10px);
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.member-photo {
width: 180px;
height: 180px;
border-radius: 50%;
overflow: hidden;
margin: 0 auto 25px;
position: relative;
border: 5px solid rgba(0, 200, 83, 0.1);
}

.member-photo img {
width: 100%;
height: 100%;
object-fit: cover;
}

.social-links {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
background: rgba(0, 200, 83, 0.8);
padding: 10px;
display: flex;
justify-content: center;
gap: 15px;
transform: translateY(100%);
transition: all 0.3s ease;
}

.team-member:hover .social-links {
transform: translateY(0);
}

.social-links a {
color: white;
font-size: 18px;
transition: all 0.3s ease;
}

.social-links a:hover {
transform: translateY(-3px);
}

.member-name {
font-size: 1.5rem;
margin-bottom: 5px;
color: var(--dark);
}

.member-position {
color: #666;
font-size: 1rem;
}

/* Stats Section */
.stats-section {
padding: 80px 5%;
background: linear-gradient(135deg, #00c853, #5efc82);
color: white;
text-align: center;
}

.stats-container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 30px;
max-width: 1200px;
margin: 0 auto;
}

.stat-item {
padding: 30px;
}

.stat-number {
font-size: 3.5rem;
font-weight: 800;
margin-bottom: 10px;
}

.stat-label {
font-size: 1.1rem;
font-weight: 500;
}

/* Blog Section */
.blog-section {
padding: 100px 5%;
background-color: white;
}

.blog-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 30px;
max-width: 1200px;
margin: 0 auto;
}

.blog-card {
background: white;
border-radius: 15px;
overflow: hidden;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
}

.blog-card:hover {
transform: translateY(-10px);
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.blog-image {
position: relative;
height: 200px;
overflow: hidden;
}

.blog-image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: all 0.5s ease;
}

.blog-card:hover .blog-image img {
transform: scale(1.1);
}

.blog-date {
position: absolute;
top: 20px;
right: 20px;
background: var(--primary);
color: white;
padding: 5px 15px;
border-radius: 50px;
font-size: 0.9rem;
font-weight: 600;
}

.blog-content {
padding: 25px;
}

.blog-title {
font-size: 1.5rem;
margin-bottom: 15px;
color: var(--dark);
}

.blog-excerpt {
color: #666;
margin-bottom: 20px;
line-height: 1.6;
}

.read-more {
color: var(--primary);
font-weight: 600;
text-decoration: none;
display: inline-flex;
align-items: center;
}

.read-more::after {
content: '→';
margin-right: 5px;
transition: all 0.3s ease;
}

.read-more:hover::after {
margin-right: 0;
margin-left: 5px;
}

/* Partners Section */
.partners-section {
padding: 80px 5%;
background-color: #f9f9f9;
}

.partners-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
gap: 40px;
max-width: 1000px;
margin: 0 auto;
align-items: center;
}

.partner-logo {
display: flex;
justify-content: center;
align-items: center;
height: 80px;
filter: grayscale(100%);
opacity: 0.7;
transition: all 0.3s ease;
}

.partner-logo:hover {
filter: grayscale(0%);
opacity: 1;
}

.partner-logo img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}

/* FAQ Section */
.faq-section {
padding: 100px 5%;
background-color: white;
}

.faq-container {
max-width: 800px;
margin: 0 auto;
}

.faq-item {
margin-bottom: 15px;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.faq-question {
padding: 20px;
background: white;
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
transition: all 0.3s ease;
}

.faq-question:hover {
background: #f5f5f5;
}

.faq-question h3 {
font-size: 1.2rem;
color: var(--dark);
}

.faq-toggle {
font-size: 1.5rem;
color: var(--primary);
transition: all 0.3s ease;
}

.faq-answer {
padding: 0 20px;
max-height: 0;
overflow: hidden;
transition: all 0.3s ease;
background: white;
}

.faq-item.active .faq-answer {
padding: 20px;
max-height: 500px;
}

.faq-item.active .faq-toggle {
transform: rotate(45deg);
}

/* Contact Section */
.contact-section {
padding: 100px 5%;
background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80');
background-size: cover;
background-position: center;
color: white;
}

.contact-container {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 50px;
}

.contact-info {
padding: 30px;
}

.info-item {
display: flex;
margin-bottom: 30px;
}

.info-icon {
width: 60px;
height: 60px;
background: rgba(0, 200, 83, 0.1);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-left: 20px;
flex-shrink: 0;
color: var(--primary);
font-size: 1.5rem;
}

.info-content h3 {
font-size: 1.3rem;
margin-bottom: 10px;
}

.contact-form {
background: white;
padding: 40px;
border-radius: 15px;
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.form-group {
margin-bottom: 20px;
}

.form-group input,
.form-group textarea {
width: 100%;
padding: 15px;
border: 1px solid #eee;
border-radius: 10px;
font-size: 1rem;
transition: all 0.3s ease;
}

.form-group input:focus,
.form-group textarea:focus {
border-color: var(--primary);
outline: none;
box-shadow: 0 0 0 3px rgba(0, 200, 83, 0.2);
}

.submit-btn {
width: 100%;
padding: 15px;
background: var(--primary);
color: white;
border: none;
border-radius: 10px;
font-size: 1.1rem;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
}

.submit-btn:hover {
background: #009944;
transform: translateY(-3px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

/* Responsive Design */
@media (max-width: 768px) {
.contact-container {
grid-template-columns: 1fr;
}

.team-grid, .stats-container, .blog-grid {
grid-template-columns: 1fr;
}

.partners-grid {
grid-template-columns: repeat(2, 1fr);
}
}

@media (max-width: 480px) {
.section-title {
font-size: 2rem;
}

.section-subtitle {
font-size: 1rem;
}
}

/* Pricing Section */
.pricing-section {
padding: 120px 5%;
background-color: white;
}

.pricing-container {
max-width: 1200px;
margin: 0 auto;
}

.pricing-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 30px;
margin-top: 60px;
}

.pricing-card {
background: white;
border-radius: 20px;
overflow: hidden;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
transition: all 0.5s ease;
position: relative;
border: 1px solid rgba(0, 0, 0, 0.05);
}

.pricing-card:hover {
transform: translateY(-10px);
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.pricing-header {
padding: 40px 30px;
text-align: center;
background: linear-gradient(135deg, #f5f7fa, #e4e8eb);
}

.pricing-title {
font-size: 1.8rem;
margin-bottom: 10px;
color: var(--dark);
}

.pricing-price {
font-size: 3.5rem;
font-weight: 800;
margin-bottom: 5px;
color: var(--primary);
}

.pricing-period {
font-size: 1rem;
color: #666;
}

.pricing-features {
padding: 40px 30px;
}

.feature-list {
list-style: none;
margin-bottom: 40px;
}

.feature-list li {
padding: 10px 0;
border-bottom: 1px solid rgba(0, 0, 0, 0.05);
display: flex;
align-items: center;
}

.feature-list li::before {
content: '✓';
color: var(--primary);
margin-right: 10px;
font-weight: bold;
}

.pricing-button {
display: block;
text-align: center;
padding: 15px;
background: var(--primary);
color: white;
text-decoration: none;
border-radius: 10px;
font-weight: 600;
transition: all 0.3s ease;
}

.pricing-button:hover {
background: #009944;
}

.pricing-card.popular {
border: 2px solid var(--primary);
}

.popular-badge {
position: absolute;
top: 20px;
right: 20px;
background: var(--secondary);
color: white;
padding: 5px 15px;
border-radius: 50px;
font-size: 0.8rem;
font-weight: 600;
}

/* CTA Section */
.cta-section {
padding: 120px 5%;
background: linear-gradient(135deg, #00c853, #5efc82);
color: white;
text-align: center;
position: relative;
overflow: hidden;
}

.cta-container {
max-width: 800px;
margin: 0 auto;
position: relative;
z-index: 2;
}

.cta-title {
font-size: 3.5rem;
margin-bottom: 20px;
line-height: 1.2;
}

.cta-text {
font-size: 1.3rem;
margin-bottom: 40px;
opacity: 0.9;
}

.cta-button {
display: inline-block;
padding: 18px 45px;
background: white;
color: var(--primary);
border-radius: 50px;
text-decoration: none;
font-weight: 700;
font-size: 1.1rem;
transition: all 0.3s ease;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.cta-button:hover {
transform: translateY(-5px);
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

.cta-pattern {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
opacity: 0.1;
background-image: radial-gradient(circle, white 1px, transparent 1px);
background-size: 30px 30px;
}

/* Footer */
.footer {
background: #111;
color: #aaa;
padding: 80px 5% 40px;
}

.footer-container {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 40px;
}

.footer-logo {
color: white;
font-size: 24px;
font-weight: 700;
display: flex;
align-items: center;
margin-bottom: 20px;
}

.footer-logo span {
display: inline-block;
width: 12px;
height: 12px;
background-color: var(--primary);
border-radius: 50%;
margin-right: 10px;
box-shadow: 0 0 10px rgba(76, 175, 80, 0.7);
}

.footer-about {
font-size: 0.95rem;
line-height: 1.8;
margin-bottom: 20px;
}

.social-links {
display: flex;
gap: 15px;
}

.social-link {
width: 40px;
height: 40px;
border-radius: 50%;
background: rgba(255, 255, 255, 0.1);
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
}

.social-link:hover {
background: var(--primary);
transform: translateY(-3px);
}

.footer-heading {
color: white;
font-size: 1.2rem;
margin-bottom: 25px;
position: relative;
padding-bottom: 10px;
}

.footer-heading::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 50px;
height: 2px;
background: var(--primary);
}

.footer-links {
list-style: none;
}

.footer-links li {
margin-bottom: 15px;
}

.footer-links a {
color: #aaa;
text-decoration: none;
transition: all 0.3s ease;
display: block;
}

.footer-links a:hover {
color: white;
padding-left: 5px;
}

.footer-contact p {
margin-bottom: 15px;
display: flex;
align-items: flex-start;
}

.footer-contact i {
margin-right: 10px;
color: var(--primary);
}

.footer-bottom {
text-align: center;
padding-top: 40px;
margin-top: 40px;
border-top: 1px solid rgba(255, 255, 255, 0.1);
font-size: 0.9rem;
}

/* Responsive Design */
@media (max-width: 1024px) {
.header-content h1 {
font-size: 3.5rem;
}

.nav-links {
gap: 25px;
}

.section-title {
font-size: 3rem;
}

.about-title {
font-size: 3rem;
}

.step {
width: 45%;
}
}

@media (max-width: 768px) {
nav {
flex-direction: column;
padding: 25px;
gap: 20px;
}

.nav-links {
flex-wrap: wrap;
justify-content: center;
gap: 15px;
}

.header-content h1 {
font-size: 2.5rem;
}

.header-content p {
font-size: 1.1rem;
}

.btn {
padding: 8px 18px;
}

.section-title {
font-size: 2.5rem;
}

.about-container {
grid-template-columns: 1fr;
}

.about-visual {
height: 400px;
max-width: 600px;
margin: 0 auto;
}

.step {
width: 100%;
max-width: 500px;
margin: 0 auto 40px;
padding: 50px 30px;
}

.cta-title {
font-size: 2.8rem;
}
}

@media (max-width: 480px) {
.section-title {
font-size: 2.2rem;
}

.section-subtitle {
font-size: 1.1rem;
padding: 0 15px;
}

.step-title {
font-size: 1.6rem;
}

.about-title {
font-size: 2.2rem;
}

.about-text {
font-size: 1.1rem;
padding-left: 20px;
}

.visual-base {
border-radius: 20px;
}

.cta-title {
font-size: 2.2rem;
}

.cta-text {
font-size: 1.1rem;
}
}
