/* ModelTheme Widgets - Common Styles */
/* This file is intentionally minimal. Add shared widget styles here. */

/* Event Section placeholders (non-op by default) */
.mtfe-event-section {}
.mtfe-event-header-pill {}
.mtfe-event-header-title {}
.mtfe-event-header-desc {}
.mtfe-event-info-box {}
.mtfe-event-cta {}
.mtfe-event-form-card {}

/* Pricing Section */
.mtfe-pricing-section {}
.mtfe-pricing-title {
    color: #0c5132;
}
.mtfe-pricing-desc {
    color: #2e5044;
}
.mtfe-pricing-card {
    border-color: rgba(12,81,50,0.25);
    transition: transform .3s ease, box-shadow .3s ease;
}
.mtfe-pricing-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0,0,0,.08);
}
.mtfe-pricing-card.is-highlight {
    border-width: 2px;
    border-color: #1f7a54;
    background-color: rgba(31,122,84,0.08);
}
.mtfe-popular-badge-wrapper { top: -14px; }
.mtfe-popular-badge {
    background-color: #1f7a54;
    color: #fff;
}
.mtfe-pricing-price { color: #0c5132; }
.mtfe-pricing-price-suffix { color: #6b8c7c; }
.mtfe-feature-icon {
    width: 20px; height: 20px;
    background-color: #e9f5ef;
}
.mtfe-feature-icon i { color: #1f7a54; font-size: 11px; }
.mtfe-feature-text { color: #18392b; }
.mtfe-pricing-btn { background-color: #0c5132; color: #fff; }
.mtfe-pricing-btn:hover { background-color: #176b4d; color: #fff; }

/* Countdown Section */
.mtfe-cd-title { color: #e6fff3; font-weight: 800; }
.mtfe-cd-subtitle { color: rgba(230,255,243,0.9); }
.mtfe-cd-box { background-color: rgba(230,255,243,0.85); }
.mtfe-cd-num { color: #124633; font-weight: 800; }
.mtfe-cd-label { color: #1e4b3a; letter-spacing: .12em; }
.mtfe-cd-btn { background-color: #e6fff3; color: #124633; }
.mtfe-cd-btn:hover { background-color: #d5f6e8; color: #124633; }

/* Offers Section */
.mtfe-offers-title { color: #0c5132; font-weight: 800; }
.mtfe-offers-subtitle { color: #2e5044; }
.mtfe-offers-badge { background-color: #e6fff3; color: #1f6a50; }
.mtfe-offer-card { border-color: rgba(12,81,50,0.25); transition: transform .3s ease, box-shadow .3s ease; background-color: #fff; }
.mtfe-offer-card:hover { transform: translateY(-6px); box-shadow: 0 20px 40px rgba(0,0,0,.08); }
.mtfe-offer-icon-wrap { width: 80px; height: 80px; background: #e6fff3; }
.mtfe-offer-icon { width: 48px; height: 48px; object-fit: contain; }
.mtfe-offer-btn { border-color: #1f7a54; color: #1f7a54; }
.mtfe-offer-btn:hover { background: #1f7a54; color: #fff; border-color: #1f7a54; }

/* Hero Steps */
.mtfe-hero-headline { color: #1f2b24; }
.mtfe-hero-intro { color: #6b6f6c; }
.mtfe-hero-cta { background-color: #143d31; color: #fff; }
.mtfe-hero-cta:hover { background-color: #10513f; color: #fff; }
.mtfe-step-card { background: #ffffff; border: 1px solid rgba(0,0,0,0.06); box-shadow: 0 8px 20px rgba(0,0,0,0.05); }
.mtfe-step-link { color: #143d31; text-decoration: none; border-bottom: 2px solid #143d31; padding-bottom: 2px; }
.mtfe-step-link:hover { color: #10513f; border-color: #10513f; }

/* Trust Banner */
.mtfe-trust-banner { background: linear-gradient(135deg, #1f6a50 0%, rgba(31,106,80,0.7) 100%); }
.mtfe-trust-cta { box-shadow: 0 6px 20px rgba(255,255,255,.25); }
.mtfe-trust-image { display: block; }


/* ModelTheme Widgets - Common Styles */
/* This file is intentionally minimal. Add shared widget styles here. */

/* Event Section placeholders (non-op by default) */
.mtfe-event-section {}
.mtfe-event-header-pill {}
.mtfe-event-header-title {}
.mtfe-event-header-desc {}
.mtfe-event-info-box {}
.mtfe-event-cta {}
.mtfe-event-form-card {}

/* Pricing Section */
.mtfe-pricing-section {}
.mtfe-pricing-title {
    color: #0c5132;
}
.mtfe-pricing-desc {
    color: #2e5044;
}
.mtfe-pricing-card {
    border-color: rgba(12,81,50,0.25);
    transition: transform .3s ease, box-shadow .3s ease;
}
.mtfe-pricing-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0,0,0,.08);
}
.mtfe-pricing-card.is-highlight {
    border-width: 2px;
    border-color: #1f7a54;
    background-color: rgba(31,122,84,0.08);
}
.mtfe-popular-badge-wrapper { top: -14px; }
.mtfe-popular-badge {
    background-color: #1f7a54;
    color: #fff;
}
.mtfe-pricing-price { color: #0c5132; }
.mtfe-pricing-price-suffix { color: #6b8c7c; }
.mtfe-feature-icon {
    width: 20px; height: 20px;
    background-color: #e9f5ef;
}
.mtfe-feature-icon i { color: #1f7a54; font-size: 11px; }
.mtfe-feature-text { color: #18392b; }
.mtfe-pricing-btn { background-color: #0c5132; color: #fff; }
.mtfe-pricing-btn:hover { background-color: #176b4d; color: #fff; }

/* Countdown Section */
.mtfe-cd-title { color: #e6fff3; font-weight: 800; }
.mtfe-cd-subtitle { color: rgba(230,255,243,0.9); }
.mtfe-cd-box { background-color: rgba(230,255,243,0.85); }
.mtfe-cd-num { color: #124633; font-weight: 800; }
.mtfe-cd-label { color: #1e4b3a; letter-spacing: .12em; }
.mtfe-cd-btn { background-color: #e6fff3; color: #124633; }
.mtfe-cd-btn:hover { background-color: #d5f6e8; color: #124633; }

/* Offers Section */
.mtfe-offers-title { color: #0c5132; font-weight: 800; }
.mtfe-offers-subtitle { color: #2e5044; }
.mtfe-offers-badge { background-color: #e6fff3; color: #1f6a50; }
.mtfe-offer-card { border-color: rgba(12,81,50,0.25); transition: transform .3s ease, box-shadow .3s ease; background-color: #fff; }
.mtfe-offer-card:hover { transform: translateY(-6px); box-shadow: 0 20px 40px rgba(0,0,0,.08); }
.mtfe-offer-icon-wrap { width: 80px; height: 80px; background: #e6fff3; }
.mtfe-offer-icon { width: 48px; height: 48px; object-fit: contain; }
.mtfe-offer-btn { border-color: #1f7a54; color: #1f7a54; }
.mtfe-offer-btn:hover { background: #1f7a54; color: #fff; border-color: #1f7a54; }

/* Hero Steps */
.mtfe-hero-headline { color: #1f2b24; }
.mtfe-hero-intro { color: #6b6f6c; }
.mtfe-hero-cta { background-color: #143d31; color: #fff; }
.mtfe-hero-cta:hover { background-color: #10513f; color: #fff; }
.mtfe-step-card { background: #ffffff; border: 1px solid rgba(0,0,0,0.06); box-shadow: 0 8px 20px rgba(0,0,0,0.05); }
.mtfe-step-link { color: #143d31; text-decoration: none; border-bottom: 2px solid #143d31; padding-bottom: 2px; }
.mtfe-step-link:hover { color: #10513f; border-color: #10513f; }

/* Trust Banner */
.mtfe-trust-banner { background: linear-gradient(135deg, #1f6a50 0%, rgba(31,106,80,0.7) 100%); }
.mtfe-trust-cta { box-shadow: 0 6px 20px rgba(255,255,255,.25); }
.mtfe-trust-image { display: block; }
.mtfe-faq-pill { white-space: nowrap; }
.mtfe-faq-pill span { white-space: nowrap; }
svg.mtfe-text-primary {
    width: 20px;
}
svg.mtfe-text-accent {
    width: 20px;
}
.text-muted-foreground {
    --tw-text-opacity: 1;
    color: #36414b;
}
/* Feature cards hover effect similar to elevated shadow */
.mtfe-feature-card { transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.mtfe-feature-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px rgba(124, 58, 237, 0.18); border-color: rgba(124, 58, 237, 0.50); }
/* Reviews section specifics */
.mtfe-reviews-bg { background: linear-gradient(180deg, hsl(250 40% 6%) 0%, color-mix(in hsl, hsl(250 30% 10%) 20%, transparent) 100%); }
.mtfe-avatar-accent { background-image: linear-gradient(135deg, hsl(180 90% 60%), hsl(260 70% 55%)); }
/* Card hover effect: lift, glow, border accent */
.mtfe-review-card { transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.mtfe-review-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px rgba(0, 212, 212, 0.20); border-color: rgba(0, 212, 212, 0.50); }
svg.mtfe-text-primary {
    width: 20px;
}
.mtfe-stats{
    margin: 30px 0px;
}
/* ======================== */
/* Static landing (Tailwind → Bootstrap custom classes) */
/* Palette and tokens mapped 1:1 to preserve visuals */
:root {
    --mtfe-background: hsl(250 40% 6%);
    --mtfe-foreground: hsl(210 100% 98%);
    --mtfe-card: hsl(250 30% 10%);
    --mtfe-primary: hsl(260 70% 55%);
    --mtfe-secondary: hsl(200 90% 50%);
    --mtfe-accent: hsl(180 90% 60%);
    --mtfe-muted: hsl(250 20% 20%);
    --mtfe-muted-foreground: hsl(210 20% 70%);
    --mtfe-border: hsl(250 20% 25%);
}

.mtfe-bg-background { background-color: var(--mtfe-background) !important; }
.mtfe-text-foreground, .mtfe-text-foreground-80 { color: var(--mtfe-foreground) !important; }
.mtfe-text-foreground-80 { opacity: .8; }
.mtfe-text-muted { color: var(--mtfe-muted-foreground) !important; }
.mtfe-text-primary { color: var(--mtfe-primary) !important; }
.mtfe-text-secondary { color: var(--mtfe-secondary) !important; }
.mtfe-text-accent { color: var(--mtfe-accent) !important; }
.mtfe-text-white { color: #fff !important; }
.mtfe-text-white-90 { color: rgba(255,255,255,.9) !important; }
.mtfe-text-white-80 { color: rgba(255,255,255,.8) !important; }
.mtfe-text-white-70 { color: rgba(255,255,255,.7) !important; }

.mtfe-border { border-color: color-mix(in hsl, var(--mtfe-border) 100%, transparent 0%) !important; }
.mtfe-card { background-color: color-mix(in hsl, var(--mtfe-card) 50%, transparent 50%); border: 1px solid color-mix(in hsl, var(--mtfe-border) 50%, transparent 50%); border-radius: .75rem; }
.mtfe-backdrop-blur { backdrop-filter: saturate(180%) blur(10px); }
.mtfe-card-hover { transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.mtfe-card-hover:hover { transform: translateY(-2px); box-shadow: 0 20px 60px -15px color-mix(in hsl, var(--mtfe-primary) 40%, transparent); border-color: color-mix(in hsl, var(--mtfe-primary) 50%, transparent); }

.mtfe-btn-primary { background-image: linear-gradient(135deg, var(--mtfe-primary), var(--mtfe-secondary)); color: #fff; border-radius: .75rem; box-shadow: 0 0 40px color-mix(in hsl, var(--mtfe-primary) 40%, transparent); transition: opacity .3s ease, box-shadow .3s ease; }
.mtfe-btn-primary:hover { opacity: .95; box-shadow: 0 20px 60px -15px color-mix(in hsl, var(--mtfe-primary) 40%, transparent); }
.mtfe-btn-outline { border: 1px solid color-mix(in hsl, var(--mtfe-accent) 50%, transparent); color: #fff !important; border-radius: .75rem; transition: background-color .3s ease, border-color .3s ease; }
.mtfe-btn-outline:hover { color: #fff;background-color: color-mix(in hsl, var(--mtfe-accent) 10%, transparent); border-color: var(--mtfe-accent); }

.mtfe-header { border-bottom: 1px solid color-mix(in hsl, var(--mtfe-border) 50%, transparent); background-color: color-mix(in hsl, var(--mtfe-background) 80%, transparent); }
.mtfe-logo { width: 40px; height: 40px; border-radius: .75rem; background-image: linear-gradient(135deg, var(--mtfe-primary), var(--mtfe-secondary)); }
.mtfe-brand { background: linear-gradient(90deg, var(--mtfe-foreground), var(--mtfe-accent)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.mtfe-nav-link { color: rgba(255,255,255,.8) !important; }
.mtfe-nav-link:hover { color: var(--mtfe-accent) !important; }

.mtfe-pt-20 { padding-top: 5rem !important; }
.mtfe-py-24 { padding-top: 6rem !important; padding-bottom: 6rem !important; }

/* Hero visuals */
.mtfe-gradient-hero { background: linear-gradient(180deg, hsl(250, 40%, 6%) 0%, hsl(260, 50%, 12%) 100%); }
.mtfe-hero-radial-1 { background: radial-gradient(circle at 30% 20%, hsl(260 70% 55% / .2) 0%, transparent 50%); }
.mtfe-hero-radial-2 { background: radial-gradient(circle at 70% 80%, hsl(180 90% 60% / .2) 0%, transparent 50%); }
.mtfe-hero-title { font-size: 64px; }
.mtfe-text-gradient { background: linear-gradient(90deg, var(--mtfe-foreground), var(--mtfe-accent)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.mtfe-text-gradient-alt { background: linear-gradient(90deg, var(--mtfe-foreground), var(--mtfe-secondary)); -webkit-background-clip: text; background-clip: text; color: transparent; }

.mtfe-lead { font-size: 20px; }
.mtfe-kpi-circle { width: 48px; height: 48px; border-radius: 999px; background-color: color-mix(in hsl, var(--mtfe-primary) 20%, transparent); }
.mtfe-kpi-accent { background-color: color-mix(in hsl, var(--mtfe-accent) 20%, transparent); }
.mtfe-kpi-secondary { background-color: color-mix(in hsl, var(--mtfe-secondary) 20%, transparent); }

.mtfe-icon-wrap { width: 56px; height: 56px; border-radius: 1rem; background-image: linear-gradient(135deg, var(--mtfe-primary), var(--mtfe-secondary)); display: flex; align-items: center; justify-content: center; }
.mtfe-icon-wrap svg { width: 28px; height: 28px; color: #fff; }

.mtfe-step-circle { width: 64px; height: 64px; border-radius: 999px; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 24px; color: #fff; background-image: linear-gradient(135deg, var(--mtfe-accent), var(--mtfe-primary)); box-shadow: 0 0 40px color-mix(in hsl, var(--mtfe-accent) 40%, transparent); }

/* Particles */
.mtfe-particle { position: absolute; width: 8px; height: 8px; border-radius: 999px; background-color: color-mix(in hsl, var(--mtfe-accent) 30%, transparent); }

/* Pricing */
.mtfe-card-popular { background-image: linear-gradient(135deg, var(--mtfe-primary), var(--mtfe-secondary)); border-color: var(--mtfe-primary); box-shadow: 0 0 40px color-mix(in hsl, var(--mtfe-primary) 40%, transparent); position: relative; }
.mtfe-popular-badge { top: -14px; left: 50%; transform: translateX(-50%); padding: .25rem .75rem; background: var(--mtfe-accent); color: #002b2b; border-radius: 999px; font-weight: 600; font-size: 14px; }
.mtfe-feature-dot { width: 20px; height: 20px; border-radius: 999px; display: flex; align-items: center; justify-content: center; background-color: color-mix(in hsl, var(--mtfe-primary) 20%, transparent); flex-shrink: 0; margin-top: 2px; }
.mtfe-feature-dot-light { background-color: rgba(255,255,255,.2); }
.mtfe-check { width: 12px; height: 12px; }
.mtfe-list-unstyled { list-style: none; padding-left: 0; margin: 0; }
.mtfe-link-accent { color: var(--mtfe-accent); text-decoration: none; }
.mtfe-link-accent:hover { text-decoration: underline; }

/* Moved FAQ and gradient helpers to inc/wid/wid.css */

/* Reviews */
.mtfe-reviews-bg { background: linear-gradient(180deg, var(--mtfe-background) 0%, color-mix(in hsl, var(--mtfe-card) 20%, transparent) 100%); }
.mtfe-avatar { width: 48px; height: 48px; border-radius: 999px; display: flex; align-items: center; justify-content: center; background-image: linear-gradient(135deg, var(--mtfe-accent), var(--mtfe-primary)); color: #fff; font-weight: 700; }
.mtfe-quote { width: 32px; height: 32px; color: color-mix(in hsl, var(--mtfe-accent) 30%, transparent); }
.mtfe-star { width: 16px; height: 16px; color: var(--mtfe-accent); fill: var(--mtfe-accent); }
.mtfe-stat-value { font-weight: 700; font-size: 32px; background: linear-gradient(90deg, var(--mtfe-primary), var(--mtfe-accent)); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* Section background accents */
.mtfe-features-radial { background: radial-gradient(circle at 50% 50%, hsl(260 70% 55% / .1) 0%, transparent 50%); }
.mtfe-pricing-radial { background: radial-gradient(circle at 80% 20%, hsl(180 90% 60% / .1) 0%, transparent 50%); }

/* Footer */
.mtfe-footer { border-top: 1px solid color-mix(in hsl, var(--mtfe-border) 50%, transparent); background-color: color-mix(in hsl, var(--mtfe-card) 20%, transparent); }
.mtfe-social { width: 36px; height: 36px; border-radius: .5rem; background-color: color-mix(in hsl, var(--mtfe-card) 100%, transparent); border: 1px solid color-mix(in hsl, var(--mtfe-border) 50%, transparent); display: flex; align-items: center; justify-content: center; transition: border-color .3s ease, background-color .3s ease; }
.mtfe-social:hover { border-color: var(--mtfe-accent); background-color: color-mix(in hsl, var(--mtfe-accent) 10%, transparent); }
.mtfe-link-muted { color: var(--mtfe-muted-foreground); text-decoration: none; }
.mtfe-link-muted:hover { color: var(--mtfe-accent); }

/* Animations */
@keyframes mtfe-fade-in-up { 0% { opacity: 0; transform: translateY(12px); } 100% { opacity: 1; transform: translateY(0); } }
@keyframes mtfe-scale-in { 0% { opacity: 0; transform: scale(.95); } 100% { opacity: 1; transform: scale(1); } }
@keyframes mtfe-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
.mtfe-anim-fade-in-up { animation: mtfe-fade-in-up .6s ease forwards; }
.mtfe-anim-scale-in { animation: mtfe-scale-in .4s ease forwards; }
.mtfe-anim-glow { animation: mtfe-float 6s ease-in-out infinite; }





