* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

:root {
--primary: #6366f1;
--secondary: #14b8a6;
--accent: #f97316;
--dark: #0f172a;
--light: #f8fafc;
--gray: #64748b;
--border: #e2e8f0;
}

body {
font-family: 'Sora', sans-serif;
font-size: 14px;
line-height: 1.6;
color: var(--dark);
background: #fff;
}

h1, h2, h3, h4, h5, h6 {
font-family: 'Space Grotesk', sans-serif;
font-weight: 600;
line-height: 1.2;
margin-bottom: 0.8rem;
}

h1 { font-size: 2.2rem; }
h2 { font-size: 1.8rem; }
h3 { font-size: 1.4rem; }
h4 { font-size: 1.1rem; }

p { margin-bottom: 1rem; }

a {
text-decoration: none;
color: inherit;
transition: all 0.3s ease;
}

img {
max-width: 100%;
height: auto;
display: block;
}

.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}

.privacy-popup {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: var(--dark);
color: #fff;
padding: 12px 0;
z-index: 9999;
transform: translateY(100%);
transition: transform 0.3s ease;
}

.privacy-popup.show {
transform: translateY(0);
}

.privacy-content {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
display: flex;
justify-content: space-between;
align-items: center;
gap: 20px;
flex-wrap: wrap;
}

.privacy-content p {
margin: 0;
font-size: 12px;
flex: 1;
min-width: 250px;
}

.privacy-actions {
display: flex;
gap: 12px;
align-items: center;
}

.privacy-actions a {
color: var(--accent);
font-size: 12px;
text-decoration: underline;
}

.privacy-actions button {
background: var(--primary);
color: #fff;
border: none;
padding: 6px 18px;
border-radius: 5px;
cursor: pointer;
font-size: 12px;
font-weight: 500;
}

.privacy-actions button:hover {
background: var(--secondary);
}

.header {
background: #fff;
padding: 12px 0;
border-bottom: 1px solid var(--border);
position: relative;
}

.header-content {
display: flex;
justify-content: space-between;
align-items: center;
}

.logo {
font-family: 'Space Grotesk', sans-serif;
font-size: 1.2rem;
font-weight: 700;
color: var(--primary);
}

.menu-toggle {
display: none;
flex-direction: column;
gap: 4px;
background: none;
border: none;
cursor: pointer;
padding: 5px;
}

.menu-toggle span {
width: 24px;
height: 2px;
background: var(--dark);
transition: all 0.3s ease;
}

.nav {
display: flex;
gap: 25px;
align-items: center;
}

.nav a {
font-size: 13px;
font-weight: 500;
color: var(--dark);
position: relative;
}

.nav a:hover,
.nav a.active {
color: var(--primary);
}

.nav a::after {
content: '';
position: absolute;
bottom: -5px;
left: 0;
width: 0;
height: 2px;
background: var(--primary);
transition: width 0.3s ease;
}

.nav a:hover::after,
.nav a.active::after {
width: 100%;
}

.mega-hero {
position: relative;
padding: 100px 0 80px;
overflow: hidden;
background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #a78bfa 100%);
}

.hero-background {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
overflow: hidden;
}

.hero-shape {
position: absolute;
border-radius: 50%;
opacity: 0.1;
}

.hero-shape.shape-1 {
width: 400px;
height: 400px;
background: var(--secondary);
top: -100px;
right: -100px;
animation: float 20s infinite ease-in-out;
}

.hero-shape.shape-2 {
width: 300px;
height: 300px;
background: var(--accent);
bottom: -80px;
left: -80px;
animation: float 15s infinite ease-in-out reverse;
}

.hero-shape.shape-3 {
width: 200px;
height: 200px;
background: #fff;
top: 50%;
left: 50%;
animation: float 25s infinite ease-in-out;
}

@keyframes float {
0%, 100% { transform: translate(0, 0) rotate(0deg); }
33% { transform: translate(30px, -30px) rotate(120deg); }
66% { transform: translate(-20px, 20px) rotate(240deg); }
}

.mega-hero-grid {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 1.2fr 1fr;
gap: 50px;
align-items: center;
}

.hero-text-side {
color: #fff;
}

.hero-badge {
display: inline-block;
background: rgba(255,255,255,0.2);
padding: 6px 16px;
border-radius: 20px;
font-size: 12px;
font-weight: 500;
margin-bottom: 1.5rem;
backdrop-filter: blur(10px);
}

.hero-text-side h1 {
font-size: 3.5rem;
margin-bottom: 1.2rem;
line-height: 1.1;
font-weight: 700;
text-shadow: 0 2px 20px rgba(0,0,0,0.1);
}

.hero-text-side > p {
font-size: 1.05rem;
margin-bottom: 2rem;
opacity: 0.95;
line-height: 1.7;
}

.hero-stats-inline {
display: flex;
gap: 30px;
margin-bottom: 2rem;
flex-wrap: wrap;
}

.stat-inline {
display: flex;
flex-direction: column;
}

.stat-inline strong {
font-size: 1.8rem;
font-family: 'Space Grotesk', sans-serif;
font-weight: 700;
color: var(--accent);
}

.stat-inline span {
font-size: 11px;
opacity: 0.9;
}

.hero-cta-group {
display: flex;
gap: 12px;
flex-wrap: wrap;
}

.btn {
display: inline-block;
padding: 11px 26px;
border-radius: 8px;
font-weight: 500;
font-size: 13px;
cursor: pointer;
transition: all 0.3s ease;
border: 2px solid transparent;
}

.btn-hero-primary {
background: var(--accent);
color: var(--dark);
}

.btn-hero-primary:hover {
background: #fbbf24;
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(245, 158, 11, 0.4);
}

.btn-hero-outline {
background: transparent;
color: #fff;
border-color: #fff;
}

.btn-hero-outline:hover {
background: #fff;
color: var(--primary);
}

.btn-primary {
background: var(--primary);
color: #fff;
}

.btn-primary:hover {
background: #6d28d9;
transform: translateY(-2px);
}

.btn-secondary {
background: transparent;
color: var(--primary);
border-color: var(--primary);
}

.btn-secondary:hover {
background: var(--primary);
color: #fff;
}

.hero-visual-side {
display: grid;
gap: 15px;
}

.hero-card {
background: rgba(255,255,255,0.15);
backdrop-filter: blur(10px);
padding: 20px;
border-radius: 12px;
border: 1px solid rgba(255,255,255,0.2);
color: #fff;
}

.hero-card.floating {
animation: floatCard 3s infinite ease-in-out;
}

.hero-card.floating.delay-1 {
animation-delay: 0.5s;
}

.hero-card.floating.delay-2 {
animation-delay: 1s;
}

@keyframes floatCard {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-10px); }
}

.hero-card i {
font-size: 1.8rem;
margin-bottom: 0.8rem;
color: var(--accent);
}

.hero-card h4 {
font-size: 1rem;
margin-bottom: 0.5rem;
}

.hero-card p {
font-size: 12px;
margin: 0;
opacity: 0.9;
}

.page-hero-content {
text-align: center;
color: #fff;
max-width: 800px;
margin: 0 auto;
}

.page-hero-content h1 {
font-size: 2.8rem;
margin-bottom: 1rem;
}

.page-hero-content p {
font-size: 1.1rem;
opacity: 0.95;
}

.trust-bar {
background: var(--light);
padding: 15px 0;
text-align: center;
border-bottom: 1px solid var(--border);
}

.trust-bar p {
margin: 0;
font-size: 12px;
color: var(--gray);
font-weight: 500;
}

.section-header-center {
text-align: center;
max-width: 700px;
margin: 0 auto 3rem;
}

.section-header-center h2 {
margin-bottom: 0.8rem;
}

.section-header-center p {
color: var(--gray);
font-size: 14px;
}

.approach {
padding: 60px 0;
background: #fff;
}

.approach-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 30px;
}

.approach-item {
padding: 25px;
border: 1px solid var(--border);
border-radius: 12px;
transition: all 0.3s ease;
}

.approach-item:hover {
border-color: var(--primary);
box-shadow: 0 8px 25px rgba(91, 33, 182, 0.1);
transform: translateY(-3px);
}

.approach-number {
font-size: 2.5rem;
font-weight: 700;
color: var(--primary);
opacity: 0.2;
font-family: 'Space Grotesk', sans-serif;
margin-bottom: 0.8rem;
}

.approach-item h3 {
margin-bottom: 0.8rem;
}

.approach-item p {
font-size: 13px;
color: var(--gray);
margin: 0;
}

.featured-image-section {
padding: 60px 0;
background: var(--light);
}

.image-content-split {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 50px;
align-items: center;
}

.image-content-split.reverse {
direction: rtl;
}

.image-content-split.reverse > * {
direction: ltr;
}

.image-side img {
border-radius: 12px;
width: 100%;
box-shadow: 0 10px 40px rgba(0,0,0,0.1);
}

.content-side h2 {
margin-bottom: 1rem;
}

.content-side p {
color: var(--gray);
margin-bottom: 1rem;
font-size: 14px;
}

.feature-list {
margin: 1.5rem 0;
}

.feature-list-item {
display: flex;
align-items: center;
gap: 10px;
padding: 8px 0;
font-size: 13px;
}

.feature-list-item i {
color: var(--primary);
font-size: 14px;
}

.programs-showcase {
padding: 60px 0;
background: #fff;
}

.programs-showcase-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 25px;
}

.program-showcase-card {
background: #fff;
border: 2px solid var(--border);
border-radius: 12px;
padding: 30px;
transition: all 0.3s ease;
}

.program-showcase-card:hover {
border-color: var(--primary);
box-shadow: 0 10px 30px rgba(91, 33, 182, 0.15);
transform: translateY(-5px);
}

.program-showcase-card.featured-program {
border-color: var(--primary);
background: linear-gradient(135deg, rgba(91, 33, 182, 0.05) 0%, rgba(168, 85, 247, 0.05) 100%);
}

.program-tag {
display: inline-block;
background: var(--light);
color: var(--primary);
padding: 4px 12px;
border-radius: 15px;
font-size: 11px;
font-weight: 600;
margin-bottom: 1rem;
}

.program-tag.popular {
background: var(--primary);
color: #fff;
}

.program-showcase-card h3 {
margin-bottom: 1rem;
}

.program-showcase-card p {
color: var(--gray);
font-size: 13px;
margin-bottom: 1.2rem;
}

.program-meta {
display: flex;
gap: 15px;
margin-bottom: 1.2rem;
font-size: 12px;
color: var(--gray);
}

.program-meta span {
display: flex;
align-items: center;
gap: 5px;
}

.program-link {
color: var(--primary);
font-weight: 500;
font-size: 13px;
display: inline-flex;
align-items: center;
gap: 6px;
}

.program-link:hover {
gap: 10px;
}

.outcomes {
padding: 60px 0;
background: var(--light);
}

.outcomes-header {
text-align: center;
max-width: 700px;
margin: 0 auto 3rem;
}

.outcomes-header h2 {
margin-bottom: 0.8rem;
}

.outcomes-header p {
color: var(--gray);
font-size: 14px;
}

.outcomes-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 25px;
}

.outcome-card {
background: #fff;
padding: 30px;
border-radius: 12px;
text-align: center;
border: 1px solid var(--border);
}

.outcome-icon {
width: 70px;
height: 70px;
background: linear-gradient(135deg, var(--primary), var(--secondary));
border-radius: 16px;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 1rem;
transform: rotate(-5deg);
transition: transform 0.3s ease;
}

.outcome-card:hover .outcome-icon {
transform: rotate(0deg) scale(1.1);
}

.outcome-icon i {
font-size: 1.5rem;
color: #fff;
}

.outcome-card h3 {
margin-bottom: 0.8rem;
font-size: 1.2rem;
}

.outcome-card p {
font-size: 13px;
color: var(--gray);
margin: 0;
}

.testimonial-highlight {
padding: 60px 0;
background: var(--primary);
color: #fff;
}

.testimonial-highlight-content {
max-width: 900px;
margin: 0 auto;
text-align: center;
}

.quote-large {
font-size: 4rem;
opacity: 0.3;
margin-bottom: 1rem;
}

.testimonial-highlight-content blockquote {
border: none;
}

.testimonial-highlight-content p {
font-size: 1.2rem;
line-height: 1.8;
margin-bottom: 2rem;
font-style: italic;
}

.testimonial-highlight-content footer {
font-style: normal;
}

.testimonial-highlight-content strong {
display: block;
font-size: 1.1rem;
margin-bottom: 0.3rem;
}

.testimonial-highlight-content span {
font-size: 13px;
opacity: 0.9;
}

.final-cta {
padding: 60px 0;
background: #fff;
}

.final-cta-content {
text-align: center;
max-width: 700px;
margin: 0 auto;
}

.final-cta-content h2 {
margin-bottom: 1rem;
}

.final-cta-content p {
color: var(--gray);
font-size: 14px;
margin-bottom: 2rem;
}

.cta-actions {
display: flex;
gap: 12px;
justify-content: center;
flex-wrap: wrap;
margin-bottom: 1rem;
}

.btn-cta-primary {
background: var(--primary);
color: #fff;
padding: 13px 30px;
}

.btn-cta-primary:hover {
background: #6d28d9;
transform: translateY(-2px);
}

.btn-cta-secondary {
background: transparent;
color: var(--primary);
border: 2px solid var(--primary);
padding: 13px 30px;
}

.btn-cta-secondary:hover {
background: var(--primary);
color: #fff;
}

.cta-note {
font-size: 12px;
color: var(--gray);
margin: 0;
}

.products {
padding: 60px 0;
background: #fff;
}

.products-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 25px;
}

.product-card {
background: #fff;
border: 2px solid var(--border);
border-radius: 12px;
padding: 30px;
transition: all 0.3s ease;
position: relative;
}

.product-card:hover {
border-color: var(--primary);
box-shadow: 0 10px 30px rgba(91, 33, 182, 0.15);
}

.product-card.featured {
border-color: var(--primary);
box-shadow: 0 10px 40px rgba(91, 33, 182, 0.2);
}

.product-badge {
position: absolute;
top: -10px;
right: 20px;
background: var(--primary);
color: #fff;
padding: 4px 14px;
border-radius: 15px;
font-size: 11px;
font-weight: 600;
}

.product-header {
text-align: center;
margin-bottom: 1.5rem;
padding-bottom: 1.5rem;
border-bottom: 1px solid var(--border);
}

.product-header h3 {
margin-bottom: 1rem;
}

.product-price {
font-size: 2.5rem;
font-weight: 700;
color: var(--primary);
font-family: 'Space Grotesk', sans-serif;
}

.product-features {
margin-bottom: 1.5rem;
}

.feature-item {
display: flex;
align-items: center;
gap: 10px;
padding: 6px 0;
font-size: 12px;
}

.feature-item i {
color: var(--primary);
font-size: 13px;
}

.product-description {
color: var(--gray);
font-size: 12px;
margin-bottom: 1.5rem;
line-height: 1.6;
}

.product-card .btn {
width: 100%;
}

.program-details {
padding: 60px 0;
background: var(--light);
}

.details-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 25px;
}

.detail-card {
background: #fff;
padding: 25px;
border-radius: 12px;
text-align: center;
border: 1px solid var(--border);
}

.detail-card i {
font-size: 2rem;
color: var(--primary);
margin-bottom: 1rem;
}

.detail-card h3 {
margin-bottom: 0.8rem;
font-size: 1.1rem;
}

.detail-card p {
font-size: 12px;
color: var(--gray);
margin: 0;
}

.testimonials {
padding: 60px 0;
background: #fff;
}

.testimonials-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 25px;
}

.testimonial-card {
background: #fff;
border: 1px solid var(--border);
border-radius: 12px;
padding: 25px;
transition: all 0.3s ease;
}

.testimonial-card:hover {
box-shadow: 0 8px 25px rgba(0,0,0,0.08);
}

.testimonial-header {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 1.2rem;
}

.testimonial-avatar {
width: 50px;
height: 50px;
border-radius: 50%;
background: var(--light);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.testimonial-avatar i {
font-size: 1.3rem;
color: var(--gray);
}

.testimonial-info h3 {
font-size: 1rem;
margin-bottom: 0.2rem;
}

.testimonial-info p {
font-size: 11px;
color: var(--gray);
margin: 0;
}

.testimonial-content {
position: relative;
}

.quote-icon {
font-size: 1.5rem;
color: var(--primary);
opacity: 0.3;
margin-bottom: 0.5rem;
}

.testimonial-content p {
font-size: 12px;
color: var(--gray);
line-height: 1.7;
margin: 0;
}

.stats-inline-group {
display: flex;
gap: 30px;
margin-top: 2rem;
flex-wrap: wrap;
}

.stat-inline-item {
display: flex;
flex-direction: column;
}

.stat-inline-item strong {
font-size: 2rem;
font-family: 'Space Grotesk', sans-serif;
font-weight: 700;
color: var(--primary);
}

.stat-inline-item span {
font-size: 12px;
color: var(--gray);
}

.footer {
background: var(--dark);
color: #fff;
padding: 25px 0 12px;
}

.footer-content {
display: flex;
justify-content: space-between;
gap: 25px;
margin-bottom: 15px;
flex-wrap: wrap;
}

.footer-info {
flex: 1;
min-width: 250px;
}

.footer-brand {
font-family: 'Space Grotesk', sans-serif;
font-size: 1.1rem;
font-weight: 700;
margin-bottom: 0.8rem;
color: var(--accent);
}

.footer-info p {
font-size: 12px;
opacity: 0.8;
margin-bottom: 0.4rem;
}

.footer-links {
display: flex;
flex-wrap: wrap;
gap: 12px;
align-items: flex-start;
}

.footer-links a {
font-size: 12px;
opacity: 0.8;
transition: opacity 0.3s ease;
}

.footer-links a:hover {
opacity: 1;
color: var(--accent);
}

.footer-bottom {
text-align: center;
padding-top: 15px;
border-top: 1px solid rgba(255,255,255,0.1);
}

.footer-bottom p {
font-size: 11px;
opacity: 0.7;
margin: 0;
}

.contact-section {
padding: 60px 0;
background: #fff;
}

.contact-wrapper {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
}

.contact-info-card {
background: var(--light);
padding: 35px;
border-radius: 12px;
}

.contact-info-card h2 {
margin-bottom: 1rem;
}

.contact-info-card > p {
color: var(--gray);
margin-bottom: 2rem;
font-size: 13px;
}

.contact-details {
display: flex;
flex-direction: column;
gap: 20px;
}

.contact-detail {
display: flex;
gap: 12px;
}

.contact-detail i {
font-size: 1.3rem;
color: var(--primary);
margin-top: 2px;
}

.contact-detail h4 {
margin-bottom: 0.3rem;
font-size: 0.95rem;
}

.contact-detail p {
font-size: 12px;
color: var(--gray);
margin: 0;
}

.contact-form {
background: #fff;
border: 1px solid var(--border);
padding: 35px;
border-radius: 12px;
}

.contact-form h3 {
margin-bottom: 1.5rem;
}

.form-group {
margin-bottom: 1.2rem;
}

.form-group label {
display: block;
margin-bottom: 0.5rem;
font-weight: 500;
font-size: 13px;
}

.form-group input,
.form-group textarea {
width: 100%;
padding: 10px;
border: 1px solid var(--border);
border-radius: 8px;
font-family: 'Sora', sans-serif;
font-size: 13px;
transition: border-color 0.3s ease;
}

.form-group input:focus,
.form-group textarea:focus {
outline: none;
border-color: var(--primary);
}

.form-group textarea {
resize: vertical;
}

.checkbox-group {
margin-bottom: 1.2rem;
}

.checkbox-label {
display: flex;
align-items: flex-start;
gap: 8px;
cursor: pointer;
font-size: 12px;
}

.checkbox-label input[type="checkbox"] {
margin-top: 2px;
width: auto;
cursor: pointer;
}

.checkbox-label a {
color: var(--primary);
text-decoration: underline;
}

.contact-form .btn {
width: 100%;
}

.map-section {
padding: 0 0 60px 0;
}

.map-container {
border-radius: 12px;
overflow: hidden;
box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}

.fullheight-main {
min-height: calc(100vh - 200px);
display: flex;
align-items: center;
justify-content: center;
}

.thankyou-section,
.error-section {
padding: 60px 0;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
min-height: 50vh;
}

.thankyou-content,
.error-content {
max-width: 600px;
margin: 0 auto;
}

.thankyou-icon {
font-size: 4rem;
color: var(--primary);
margin-bottom: 1.5rem;
}

.thankyou-icon i {
animation: scaleIn 0.5s ease;
}

@keyframes scaleIn {
0% { transform: scale(0); }
50% { transform: scale(1.1); }
100% { transform: scale(1); }
}

.thankyou-content h1 {
margin-bottom: 1.2rem;
}

.thankyou-content p {
color: var(--gray);
font-size: 1.05rem;
margin-bottom: 2rem;
}

.thankyou-actions {
display: flex;
gap: 12px;
justify-content: center;
flex-wrap: wrap;
}

.error-number {
font-size: 6rem;
font-weight: 700;
color: var(--primary);
font-family: 'Space Grotesk', sans-serif;
line-height: 1;
margin-bottom: 1rem;
}

.error-content h1 {
margin-bottom: 1rem;
}

.error-content p {
color: var(--gray);
font-size: 14px;
margin-bottom: 2rem;
}

.error-actions {
display: flex;
gap: 12px;
justify-content: center;
flex-wrap: wrap;
}

.policy-content {
padding: 60px 0;
}

.policy-text {
max-width: 900px;
margin: 0 auto;
}

.policy-text h2 {
margin-top: 2.5rem;
margin-bottom: 1rem;
color: var(--dark);
}

.policy-text h3 {
margin-top: 1.5rem;
margin-bottom: 0.8rem;
color: var(--dark);
}

.policy-text p {
color: var(--gray);
margin-bottom: 1rem;
line-height: 1.8;
font-size: 13px;
}

@media (max-width: 768px) {
.contact-wrapper {
grid-template-columns: 1fr;
gap: 30px;
}

.contact-form,
.contact-info-card {
padding: 25px;
}

.map-section {
padding: 0 0 40px 0;
}

.error-number {
font-size: 4rem;
}

.thankyou-icon {
font-size: 3rem;
}
}

@media (max-width: 480px) {
.contact-form,
.contact-info-card {
padding: 20px;
}

.error-number {
font-size: 3rem;
}

.thankyou-icon {
font-size: 2.5rem;
}
}

@media (max-width: 320px) {
.contact-form,
.contact-info-card {
padding: 18px;
}
}

@media (max-width: 768px) {
h1 { font-size: 1.8rem; }
h2 { font-size: 1.5rem; }
h3 { font-size: 1.2rem; }
body { font-size: 13px; }

.menu-toggle { display: flex; }

.nav {
position: absolute;
top: 100%;
left: 0;
right: 0;
background: #fff;
flex-direction: column;
padding: 15px;
gap: 12px;
box-shadow: 0 5px 20px rgba(0,0,0,0.1);
display: none;
}

.nav.active { display: flex; }

.mega-hero { padding: 50px 0 40px; }

.mega-hero-grid {
grid-template-columns: 1fr;
gap: 30px;
}

.hero-text-side h1 { font-size: 2rem; }
.hero-text-side > p { font-size: 0.95rem; }

.hero-stats-inline { gap: 20px; }
.stat-inline strong { font-size: 1.5rem; }

.page-hero-content h1 { font-size: 2rem; }
.page-hero-content p { font-size: 1rem; }

.approach,
.featured-image-section,
.programs-showcase,
.outcomes,
.testimonial-highlight,
.final-cta,
.products,
.program-details,
.testimonials,
.impact-metrics,
.methodology-section,
.transformation-journey,
.cta-banner {
padding: 40px 0;
}

.image-content-split,
.image-content-split.reverse {
grid-template-columns: 1fr;
direction: ltr;
gap: 30px;
}

.approach-grid,
.programs-showcase-grid,
.outcomes-grid,
.products-grid,
.details-grid,
.testimonials-grid,
.methodology-grid {
grid-template-columns: 1fr;
}

.metrics-grid {
grid-template-columns: repeat(2, 1fr);
gap: 25px;
}

.footer-content { flex-direction: column; }
.footer-links { flex-direction: column; gap: 8px; }

.contact-wrapper {
grid-template-columns: 1fr;
gap: 30px;
}

.contact-form,
.contact-info-card {
padding: 25px;
}

.map-section {
padding: 0 0 40px 0;
}

.error-number {
font-size: 4rem;
}

.thankyou-icon {
font-size: 3rem;
}

.cta-banner h2 { font-size: 2rem; }
.cta-banner p { font-size: 1rem; }
}

@media (max-width: 480px) {
.container { padding: 0 15px; }
h1 { font-size: 1.6rem; }
h2 { font-size: 1.3rem; }

.hero-text-side h1 { font-size: 1.7rem; }
.btn { padding: 9px 22px; font-size: 12px; }
.product-price { font-size: 2rem; }
.hero-stats-inline { gap: 15px; }
.stat-inline strong { font-size: 1.3rem; }
.stat-inline span { font-size: 10px; }

.metrics-grid {
grid-template-columns: 1fr;
gap: 20px;
}

.metric-number { font-size: 3rem; }
.timeline-item { padding-left: 70px; }
.timeline-dot { left: 16px; width: 22px; height: 22px; }

.contact-form,
.contact-info-card {
padding: 20px;
}

.error-number {
font-size: 3rem;
}

.thankyou-icon {
font-size: 2.5rem;
}

.cta-banner h2 { font-size: 1.8rem; }
.cta-banner p { font-size: 0.95rem; }
}

.impact-metrics {
padding: 60px 0;
background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
color: #fff;
}

.metrics-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 40px;
text-align: center;
}

.metric-item {
position: relative;
}

.metric-number {
font-size: 3.5rem;
font-weight: 700;
font-family: 'Space Grotesk', sans-serif;
margin-bottom: 0.5rem;
color: var(--accent);
line-height: 1;
}

.metric-label {
font-size: 14px;
opacity: 0.95;
font-weight: 500;
}

.methodology-section {
padding: 60px 0;
background: #fff;
}

.methodology-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 30px;
margin-top: 3rem;
}

.methodology-card {
position: relative;
padding: 35px 30px;
border-radius: 16px;
background: var(--light);
border-left: 4px solid var(--primary);
transition: all 0.3s ease;
}

.methodology-card:nth-child(2) {
border-left-color: var(--secondary);
}

.methodology-card:nth-child(3) {
border-left-color: var(--accent);
}

.methodology-card:hover {
transform: translateX(10px);
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.methodology-step {
position: absolute;
top: 20px;
right: 20px;
width: 40px;
height: 40px;
background: var(--primary);
color: #fff;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-weight: 700;
font-size: 1.1rem;
}

.methodology-card:nth-child(2) .methodology-step {
background: var(--secondary);
}

.methodology-card:nth-child(3) .methodology-step {
background: var(--accent);
}

.methodology-card h3 {
margin-bottom: 1rem;
color: var(--dark);
}

.methodology-card p {
font-size: 13px;
color: var(--gray);
line-height: 1.7;
margin: 0;
}

.transformation-journey {
padding: 60px 0;
background: var(--light);
}

.journey-timeline {
max-width: 900px;
margin: 3rem auto 0;
position: relative;
}

.journey-timeline::before {
content: '';
position: absolute;
left: 30px;
top: 0;
bottom: 0;
width: 3px;
background: linear-gradient(to bottom, var(--primary), var(--secondary), var(--accent));
}

.timeline-item {
position: relative;
padding-left: 80px;
margin-bottom: 40px;
}

.timeline-dot {
position: absolute;
left: 18px;
top: 5px;
width: 25px;
height: 25px;
background: var(--primary);
border: 4px solid #fff;
border-radius: 50%;
box-shadow: 0 0 0 4px var(--light);
}

.timeline-item:nth-child(2) .timeline-dot {
background: var(--secondary);
}

.timeline-item:nth-child(3) .timeline-dot {
background: var(--accent);
}

.timeline-item:nth-child(4) .timeline-dot {
background: var(--primary);
}

.timeline-content {
background: #fff;
padding: 25px;
border-radius: 12px;
box-shadow: 0 5px 20px rgba(0,0,0,0.08);
}

.timeline-content h3 {
margin-bottom: 0.8rem;
color: var(--dark);
}

.timeline-content p {
font-size: 13px;
color: var(--gray);
margin: 0;
line-height: 1.7;
}

.cta-banner {
padding: 60px 0;
background: linear-gradient(135deg, rgba(99, 102, 241, 0.95), rgba(139, 92, 246, 0.95)), url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="grid" width="40" height="40" patternUnits="userSpaceOnUse"><path d="M 40 0 L 0 0 0 40" fill="none" stroke="white" stroke-width="0.5" opacity="0.1"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');
color: #fff;
text-align: center;
}

.cta-banner-content {
max-width: 800px;
margin: 0 auto;
}

.cta-banner h2 {
font-size: 2.5rem;
margin-bottom: 1.2rem;
color: #fff;
}

.cta-banner p {
font-size: 1.1rem;
margin-bottom: 2rem;
opacity: 0.95;
}

.cta-banner .btn {
padding: 15px 40px;
font-size: 15px;
font-weight: 600;
}

.cta-banner .btn-hero-primary {
background: var(--accent);
color: #fff;
border: none;
}

.cta-banner .btn-hero-primary:hover {
background: #ea580c;
transform: translateY(-3px);
box-shadow: 0 10px 30px rgba(249, 115, 22, 0.4);
}

@media (max-width: 320px) {
.container { padding: 0 12px; }
h1 { font-size: 1.4rem; }
.hero-text-side h1 { font-size: 1.5rem; }
.btn { padding: 8px 18px; font-size: 11px; }
.approach-item,
.program-showcase-card,
.outcome-card,
.product-card,
.detail-card,
.testimonial-card {
padding: 20px;
}

.metric-number { font-size: 2.5rem; }
.metric-label { font-size: 12px; }
.methodology-card { padding: 25px 20px; }
.timeline-item { padding-left: 60px; }
.timeline-dot { left: 15px; width: 20px; height: 20px; }
.cta-banner h2 { font-size: 1.6rem; }
.cta-banner p { font-size: 0.95rem; }
}
