.mme-faq {
width: 100%;
font-family: var(--font-primary);
line-height: 1.7;
color: var(--color-text);
background: var(--color-bg);
overflow-x: hidden;
-webkit-font-smoothing: antialiased;
}
.mme-faq * {
box-sizing: border-box;
}
.faq-container {
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 0 2rem;
} .mme-faq .faq-hero {
position: relative;
padding: 6rem 0 5rem;
background: linear-gradient(135deg, var(--color-bg-dark) 0%, var(--color-bg-dark-alt) 50%, #1a1a2e 100%);
overflow: hidden;
text-align: center;
}
.mme-faq .faq-hero-bg {
position: absolute;
inset: 0;
pointer-events: none;
}
.mme-faq .faq-hero-orb {
position: absolute;
border-radius: 50%;
filter: blur(80px);
opacity: 0.4;
}
.mme-faq .faq-hero-orb--1 {
width: 500px;
height: 500px;
top: -150px;
right: -100px;
background: var(--color-primary);
}
.mme-faq .faq-hero-orb--2 {
width: 400px;
height: 400px;
bottom: -200px;
left: -100px;
background: var(--color-purple);
}
.mme-faq .faq-hero-orb--3 {
width: 250px;
height: 250px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: var(--color-accent);
opacity: 0.15;
}
.mme-faq .faq-hero-content {
position: relative;
z-index: 2;
}
.mme-faq .faq-hero-badge {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.6rem 1.4rem;
background: rgba(59, 130, 246, 0.15);
border: 1px solid rgba(59, 130, 246, 0.3);
border-radius: var(--radius-full);
color: var(--color-primary);
font-weight: 700;
font-size: 0.9rem;
margin-bottom: 1.5rem;
}
.mme-faq .faq-hero-title {
font-size: clamp(2.5rem, 5vw, 4rem);
font-weight: 900;
color: var(--color-white) !important;
margin-bottom: 1rem;
letter-spacing: -0.02em;
}
.mme-faq .faq-hero-subtitle {
font-size: 1.15rem;
color: rgba(255, 255, 255, 0.7);
max-width: 600px;
margin: 0 auto 2.5rem;
line-height: 1.8;
} .mme-faq .faq-search-wrap {
position: relative;
max-width: 550px;
margin: 0 auto;
}
.mme-faq .faq-search-icon {
position: absolute;
left: 1.5rem;
top: 1.2rem;
line-height: 1;
height: 1.1rem;
color: var(--color-text-muted);
font-size: 1.1rem;
z-index: 2;
pointer-events: none;
display: flex;
align-items: center;
}
.mme-faq .faq-search-input {
width: 100%;
padding: 1.2rem 1.5rem 1.2rem 3.5rem;
border: 2px solid rgba(255, 255, 255, 0.1);
border-radius: var(--radius-full);
background: rgba(255, 255, 255, 0.08);
backdrop-filter: blur(10px);
color: var(--color-white);
font-family: inherit;
font-size: 1.05rem;
transition: all 0.3s ease;
outline: none;
}
.mme-faq .faq-search-input::placeholder {
color: rgba(255, 255, 255, 0.4);
}
.mme-faq .faq-search-input:focus {
border-color: var(--color-primary);
background: rgba(255, 255, 255, 0.12);
box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.2);
}
.mme-faq .faq-search-hint {
display: block;
margin-top: 0.75rem;
font-size: 0.8rem;
color: rgba(255, 255, 255, 0.35);
} .mme-faq .faq-stats {
padding: 4rem 0;
background: var(--color-white);
}
.mme-faq .faq-stats-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 2rem;
}
.mme-faq .faq-stat-card {
text-align: center;
padding: 2rem 1rem;
border-radius: var(--radius-lg);
background: var(--color-bg);
transition: var(--transition);
}
.mme-faq .faq-stat-card:hover {
transform: translateY(-6px);
box-shadow: var(--shadow-lg);
}
.mme-faq .faq-stat-icon {
width: 60px;
height: 60px;
border-radius: var(--radius-md);
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 1rem;
font-size: 1.5rem;
color: var(--color-white);
}
.mme-faq .faq-stat-number {
font-size: 2.5rem;
font-weight: 900;
color: var(--color-heading);
line-height: 1;
margin-bottom: 0.25rem;
}
.mme-faq .faq-stat-label {
font-size: 0.9rem;
color: var(--color-text-light);
font-weight: 600;
} .mme-faq .faq-main {
padding: 4rem 0 5rem;
}
.mme-faq .faq-tabs {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
justify-content: center;
margin-bottom: 3rem;
}
.mme-faq .faq-tab {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.75rem 1.5rem;
border: 2px solid var(--color-border);
border-radius: var(--radius-full);
background: var(--color-white);
color: var(--color-text-light);
font-family: inherit;
font-size: 0.95rem;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
}
.mme-faq .faq-tab:hover {
border-color: var(--color-primary);
color: var(--color-primary);
background: rgba(59, 130, 246, 0.05);
}
.mme-faq .faq-tab.active {
background: linear-gradient(135deg, var(--color-primary), var(--color-purple));
color: var(--color-white);
border-color: transparent;
box-shadow: 0 8px 25px rgba(59, 130, 246, 0.3);
} .mme-faq .faq-list {
max-width: 900px;
margin: 0 auto;
}
.mme-faq .faq-item {
background: var(--color-white);
border-radius: var(--radius-lg);
margin-bottom: 1rem;
box-shadow: var(--shadow-sm);
border: 1px solid var(--color-border-light);
overflow: hidden;
transition: all 0.3s ease;
}
.mme-faq .faq-item:hover {
box-shadow: var(--shadow-md);
border-color: var(--color-border);
}
.mme-faq .faq-item.open {
box-shadow: var(--shadow-lg);
border-color: rgba(59, 130, 246, 0.2);
}
.mme-faq .faq-question {
display: flex;
align-items: center;
gap: 1rem;
width: 100%;
padding: 1.5rem 1.5rem;
background: none;
border: none;
cursor: pointer;
font-family: inherit;
text-align: left;
transition: all 0.2s ease;
}
.mme-faq .faq-q-icon {
width: 44px;
height: 44px;
min-width: 44px;
border-radius: var(--radius-md);
background: var(--color-bg);
display: flex;
align-items: center;
justify-content: center;
font-size: 1.1rem;
color: var(--color-primary);
transition: all 0.3s ease;
}
.mme-faq .faq-item.open .faq-q-icon {
background: linear-gradient(135deg, var(--color-primary), var(--color-purple));
color: var(--color-white);
}
.mme-faq .faq-q-text {
flex: 1;
font-size: 1.05rem;
font-weight: 700;
color: var(--color-heading);
line-height: 1.4;
}
.mme-faq .faq-q-toggle {
width: 36px;
height: 36px;
min-width: 36px;
border-radius: 50%;
background: var(--color-bg);
display: flex;
align-items: center;
justify-content: center;
font-size: 0.85rem;
color: var(--color-text-muted);
transition: all 0.35s ease;
}
.mme-faq .faq-item.open .faq-q-toggle {
background: var(--color-primary);
color: var(--color-white);
transform: rotate(45deg);
} .mme-faq .faq-answer {
max-height: 0;
overflow: hidden;
transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.mme-faq .faq-item.open .faq-answer {
max-height: 600px;
}
.mme-faq .faq-answer-inner {
padding: 0 1.5rem 1.5rem 5rem;
color: var(--color-text);
line-height: 1.8;
}
.mme-faq .faq-answer-inner p {
margin: 0 0 0.75rem;
}
.mme-faq .faq-answer-inner p:last-child {
margin-bottom: 0;
}
.mme-faq .faq-answer-inner ul,
.mme-faq .faq-answer-inner ol {
margin: 0.5rem 0 0.75rem 1.5rem;
padding: 0;
}
.mme-faq .faq-answer-inner ul {
list-style: disc;
}
.mme-faq .faq-answer-inner ol {
list-style: decimal;
}
.mme-faq .faq-answer-inner li {
margin-bottom: 0.3rem;
line-height: 1.7;
}
.mme-faq .faq-answer-inner strong {
color: var(--color-heading);
} .mme-faq .faq-item.faq-hidden {
display: none;
} .mme-faq .faq-no-results {
text-align: center;
padding: 4rem 2rem;
max-width: 900px;
margin: 0 auto;
}
.mme-faq .faq-no-results-icon {
width: 80px;
height: 80px;
margin: 0 auto 1.5rem;
background: var(--color-bg);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 2rem;
color: var(--color-text-muted);
}
.mme-faq .faq-no-results h3 {
font-size: 1.5rem;
font-weight: 800;
color: var(--color-heading);
margin-bottom: 0.5rem;
}
.mme-faq .faq-no-results p {
color: var(--color-text-light);
}
.mme-faq .faq-no-results a {
color: var(--color-primary);
text-decoration: underline;
font-weight: 600;
} .mme-faq .faq-cta {
padding: 0 0 5rem;
}
.mme-faq .faq-cta-card {
position: relative;
background: linear-gradient(135deg, var(--color-bg-dark) 0%, var(--color-bg-dark-alt) 100%);
border-radius: var(--radius-xl);
padding: 4rem 3rem;
text-align: center;
overflow: hidden;
}
.mme-faq .faq-cta-bg {
position: absolute;
inset: 0;
pointer-events: none;
}
.mme-faq .faq-cta-orb {
position: absolute;
border-radius: 50%;
filter: blur(60px);
}
.mme-faq .faq-cta-orb--1 {
width: 300px;
height: 300px;
top: -100px;
right: -50px;
background: var(--color-primary);
opacity: 0.2;
}
.mme-faq .faq-cta-orb--2 {
width: 250px;
height: 250px;
bottom: -100px;
left: -50px;
background: var(--color-accent);
opacity: 0.15;
}
.mme-faq .faq-cta-content {
position: relative;
z-index: 2;
}
.mme-faq .faq-cta-icon {
width: 80px;
height: 80px;
margin: 0 auto 1.5rem;
background: linear-gradient(135deg, var(--color-primary), var(--color-purple));
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 2rem;
color: var(--color-white);
}
.mme-faq .faq-cta-content h2 {
font-size: 2rem;
font-weight: 900;
color: var(--color-white) !important;
margin-bottom: 0.75rem;
}
.mme-faq .faq-cta-content p {
color: rgba(255, 255, 255, 0.7);
font-size: 1.1rem;
max-width: 500px;
margin: 0 auto 2rem;
}
.mme-faq .faq-cta-buttons {
display: flex;
gap: 1rem;
justify-content: center;
flex-wrap: wrap;
}
.mme-faq .faq-cta-btn {
display: inline-flex;
align-items: center;
gap: 0.6rem;
padding: 1rem 2rem;
border-radius: var(--radius-full);
font-weight: 700;
font-size: 1rem;
text-decoration: none;
transition: all 0.3s ease;
}
.mme-faq .faq-cta-btn--phone {
background: linear-gradient(135deg, var(--color-green), var(--color-green-dark));
color: var(--color-white);
box-shadow: 0 8px 25px rgba(16, 185, 129, 0.3);
}
.mme-faq .faq-cta-btn--phone:hover {
transform: translateY(-3px);
box-shadow: 0 12px 35px rgba(16, 185, 129, 0.4);
}
.mme-faq .faq-cta-btn--contact {
background: rgba(255, 255, 255, 0.1);
color: var(--color-white);
border: 2px solid rgba(255, 255, 255, 0.2);
}
.mme-faq .faq-cta-btn--contact:hover {
background: rgba(255, 255, 255, 0.2);
transform: translateY(-3px);
} @media (max-width: 1024px) {
.faq-container {
padding: 0 1.5rem;
}
}
@media (max-width: 768px) {
.faq-container {
padding: 0 1rem;
}
.mme-faq .faq-hero {
padding: 4rem 0 3rem;
}
.mme-faq .faq-hero-title {
font-size: 2rem;
}
.mme-faq .faq-hero-subtitle {
font-size: 1rem;
}
.mme-faq .faq-stats-grid {
grid-template-columns: repeat(2, 1fr);
gap: 1rem;
}
.mme-faq .faq-stat-card {
padding: 1.5rem 0.75rem;
}
.mme-faq .faq-stat-number {
font-size: 2rem;
}
.mme-faq .faq-tabs {
gap: 0.5rem;
}
.mme-faq .faq-tab {
padding: 0.6rem 1rem;
font-size: 0.85rem;
}
.mme-faq .faq-question {
padding: 1.2rem 1rem;
gap: 0.75rem;
}
.mme-faq .faq-q-icon {
width: 38px;
height: 38px;
min-width: 38px;
font-size: 0.95rem;
}
.mme-faq .faq-q-text {
font-size: 0.95rem;
}
.mme-faq .faq-answer-inner {
padding: 0 1rem 1.2rem 1rem;
}
.mme-faq .faq-cta-card {
padding: 3rem 1.5rem;
}
.mme-faq .faq-cta-content h2 {
font-size: 1.5rem;
}
.mme-faq .faq-cta-buttons {
flex-direction: column;
align-items: center;
}
}
@media (max-width: 480px) {
.mme-faq .faq-stats-grid {
grid-template-columns: repeat(2, 1fr);
}
.mme-faq .faq-tabs {
justify-content: flex-start;
overflow-x: auto;
flex-wrap: nowrap;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
padding-bottom: 0.5rem;
}
.mme-faq .faq-tabs::-webkit-scrollbar {
display: none;
}
.mme-faq .faq-tab {
white-space: nowrap;
flex-shrink: 0;
}
}