.elementor-16132 .elementor-element.elementor-element-48b0cb8{--display:flex;}body.elementor-page-16132:not(.elementor-motion-effects-element-type-background), body.elementor-page-16132 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFED4;}/* Start custom CSS *//* ==========================================================================
           CSS Architecture - Gama English Placement Test Landing
           ========================================================================== */
        
        :root {
            --color-primary: #1e3a8a; /* آبی تیره سازمانی */
            --color-primary-light: #1e40af;
            --color-accent: #facc15; /* زرد */
            --color-accent-hover: #eab308;
            --color-red: #dc2626; 
            --color-success: #25D366; 
            --color-sms: #3b82f6; 
            --color-text-main: #1f2937;
            --color-text-muted: #6b7280;
            --color-bg-light: #f9fafb;
            --color-bg-white: #FFFFFF;
            --color-border: #e5e7eb;
            
            --spacing-xs: 0.25rem;
            --spacing-sm: 0.5rem;
            --spacing-md: 1rem;
            --spacing-lg: 2rem;
            --spacing-xl: 4rem;
            
            --radius-sm: 4px;
            --radius-md: 6px; 
            --radius-lg: 12px;
            --radius-xl: 24px;
            
            --font-family: 'Vazirmatn', system-ui, -apple-system, sans-serif;
            --transition-speed: 0.3s;
            --shadow-sm: 0 4px 6px rgba(0,0,0,0.04);
            --shadow-md: 0 10px 25px rgba(0,0,0,0.1);
        }

        *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

        html { font-family: var(--font-family); font-size: 16px; line-height: 1.6; color: var(--color-text-main); scroll-behavior: smooth; }
        body { background-color: var(--color-bg-white); overflow-x: hidden; padding-bottom: 70px; }
        @media (min-width: 769px) { body { padding-bottom: 0; } }

        h1, h2, h3, h4 { color: var(--color-primary); line-height: 1.3; }

        .container { width: 100%; max-width: 1200px; margin-inline: auto; padding-inline: var(--spacing-lg); }

        /* BUTTONS */
        .btn {
            display: inline-flex; justify-content: center; align-items: center; gap: var(--spacing-sm);
            background-color: var(--color-accent); color: var(--color-primary);
            font-weight: 800; text-decoration: none; font-size: 1.1rem;
            padding: var(--spacing-md) var(--spacing-lg); border-radius: var(--radius-md);
            border: none; cursor: pointer; transition: all var(--transition-speed) ease; text-align: center; width: 100%;
        }
        .btn:hover { background-color: var(--color-accent-hover); transform: translateY(-2px); box-shadow: var(--shadow-md); color: var(--color-primary); }
        .btn-outline { background-color: transparent; border: 2px solid var(--color-primary); color: var(--color-primary); width: 100%;}
        .btn-outline:hover { background-color: var(--color-primary); color: var(--color-bg-white); }

        .action-buttons { display: flex; flex-direction: column; gap: var(--spacing-md); margin-block-start: var(--spacing-lg); }

        .text-center { text-align: center; }
        .section-title { font-size: 2.2rem; margin-block-end: var(--spacing-sm); }
        .section-subtitle { color: var(--color-text-muted); font-size: 1.1rem; margin-block-end: var(--spacing-xl); }

        /* HEADER */
        header { background-color: var(--color-bg-white); box-shadow: var(--shadow-sm); position: sticky; top: 0; z-index: 100; }
        nav { display: flex; justify-content: space-between; align-items: center; min-height: 70px; }
        .logo { font-size: 1.8rem; font-weight: 900; color: var(--color-primary); text-decoration: none; display: flex; align-items: center; gap: 0.5rem; }
        .logo img { height: 40px; width: auto; object-fit: contain; }
        .contact-phone { font-weight: 700; color: var(--color-primary); text-decoration: none; font-size: 1.2rem; display: flex; align-items: center; gap: var(--spacing-sm); direction: ltr;}

        /* HERO SECTION */
        #hero {
            padding-block: var(--spacing-xl);
            background: linear-gradient(135deg, #1e3a8a, #1e40af, #312e81);
            position: relative;
        }
        #hero::before {
            content: ''; position: absolute; inset: 0; opacity: 0.1; 
            background-image: url('https://www.transparenttextures.com/patterns/cubes.png');
            pointer-events: none;
        }
        .hero-wrapper {
            display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--spacing-xl); align-items: center;
            position: relative; z-index: 2;
        }
        .hero-content h1 { font-size: clamp(2rem, 5vw, 3.2rem); margin-block-end: var(--spacing-md); line-height: 1.3; color: var(--color-bg-white); }
        .hero-content p { font-size: 1.2rem; color: #dbeafe; margin-block-end: var(--spacing-lg); line-height: 1.8;}
        
        .hero-benefits { list-style: none; margin-block-end: var(--spacing-lg); }
        .hero-benefits li { 
            display: flex; align-items: center; gap: var(--spacing-sm); 
            margin-block-end: var(--spacing-sm); font-weight: 600; font-size: 1.1rem; color: var(--color-bg-white);
        }
        .hero-benefits svg { fill: var(--color-yellow); width: 24px; height: 24px; flex-shrink: 0; }

        /* LEAD FORM CARD */
        .lead-form-card {
            background-color: var(--color-bg-white); padding: var(--spacing-lg);
            border-radius: var(--radius-lg); box-shadow: var(--shadow-md);
            border-block-start: 5px solid var(--color-accent); text-align: center;
        }
        .lead-form-card h3 { margin-block-end: var(--spacing-xs); font-size: 1.5rem; color: var(--color-primary); }
        .lead-form-card > p { color: var(--color-text-muted); margin-block-end: var(--spacing-lg); font-size: 0.95rem; line-height: 1.6;}
        
        /* TRUST BAR */
        #trust-bar {
            background-color: var(--color-primary); color: var(--color-bg-white);
            padding-block: var(--spacing-md); border-bottom: 1px solid rgba(255,255,255,0.1);
        }
        .trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); text-align: center; gap: var(--spacing-md); }
        .trust-item h4 { color: var(--color-yellow); font-size: 1.8rem; margin-block-end: 0; }
        .trust-item span { font-size: 0.9rem; opacity: 0.9; }

        /* FEATURES */
        section { padding-block: var(--spacing-xl); }
        .bg-light { background-color: var(--color-bg-light); }
        
        .features-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--spacing-lg); }
        .feature-card {
            background: var(--color-bg-white); padding: var(--spacing-lg);
            border-radius: var(--radius-lg); border: 1px solid var(--color-border);
            text-align: center; transition: transform var(--transition-speed);
        }
        .feature-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-sm); border-color: var(--color-primary-light); }
        .feature-icon {
            width: 60px; height: 60px; background-color: #eff6ff; border-radius: 50%;
            display: inline-flex; justify-content: center; align-items: center; margin-block-end: var(--spacing-md);
        }
        .feature-icon svg { width: 30px; height: 30px; fill: var(--color-primary); }
        .feature-card h3 { font-size: 1.25rem; margin-block-end: 0.5rem; }

        /* CEFR LEVELS GRID */
        .cefr-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: var(--spacing-md); }
        .cefr-card {
            display: flex; gap: var(--spacing-md);
            padding: var(--spacing-lg); border: 1px solid var(--color-border);
            border-radius: var(--radius-md); background: var(--color-bg-white);
            transition: all var(--transition-speed); align-items: flex-start;
        }
        .cefr-card:hover { border-color: var(--color-primary); box-shadow: var(--shadow-sm); transform: translateY(-3px); }
        .cefr-badge {
            width: 60px; height: 60px; border-radius: var(--radius-sm); font-size: 1.5rem; font-weight: 900;
            background: #1e3a8a; display: flex; justify-content: center; align-items: center; flex-direction: column;
            color: var(--color-accent); flex-shrink: 0; position: relative; overflow: hidden; line-height: 1;
        }
        .cefr-badge span { font-size: 0.7rem; color: white; font-weight: normal; margin-top: 2px;}
        .cefr-info h3 { font-size: 1.15rem; margin-block-end: 0.3rem; color: var(--color-primary); }
        .cefr-info p { font-size: 0.9rem; color: var(--color-text-muted); line-height: 1.6; margin: 0; }

        /* HOW IT WORKS (STEPS) */
        .steps-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--spacing-lg); margin-block-end: var(--spacing-xl); }
        .step-card {
            background: var(--color-bg-white); padding: var(--spacing-lg) var(--spacing-md);
            border-radius: var(--radius-lg); border: 1px solid var(--color-border); text-align: center; box-shadow: var(--shadow-sm);
        }
        .step-number {
            width: 55px; height: 55px; background-color: var(--color-primary); color: var(--color-accent);
            font-size: 1.5rem; font-weight: 900; border-radius: 50%; display: inline-flex; justify-content: center; align-items: center;
            margin-inline: auto; margin-block-end: var(--spacing-md); box-shadow: 0 4px 10px rgba(30, 58, 138, 0.3); border: 3px solid var(--color-bg-white);
        }
        .step-card h3 { font-size: 1.15rem; margin-block-end: var(--spacing-sm); }
        .step-card p { font-size: 0.9rem; color: var(--color-text-muted); line-height: 1.6; }

        /* BIG CTA BANNER */
        .cta-banner {
            background: linear-gradient(135deg, #1e3a8a 0%, #312e81 100%);
            color: var(--color-bg-white); padding: var(--spacing-xl); border-radius: var(--radius-lg);
            text-align: center; box-shadow: var(--shadow-md); border-block-end: 5px solid var(--color-accent); position: relative; overflow: hidden;
        }
        .cta-banner::before {
            content: ''; position: absolute; inset: 0; opacity: 0.1; background-image: url('https://www.transparenttextures.com/patterns/cubes.png'); pointer-events: none;
        }
        .cta-banner h2 { color: var(--color-yellow); font-size: 2.2rem; margin-block-end: var(--spacing-sm); position: relative; z-index: 1;}
        .cta-banner p { font-size: 1.2rem; margin-block-end: var(--spacing-lg); opacity: 0.95; position: relative; z-index: 1;}
        .cta-banner .action-buttons { flex-direction: row; justify-content: center; margin-block-start: 0; position: relative; z-index: 1;}
        .cta-banner .btn { width: auto; min-width: 250px; }

        /* SEO ARTICLE CONTENT */
        .seo-article { max-width: 900px; margin-inline: auto; padding-block: var(--spacing-xl); color: var(--color-text-main); line-height: 1.9; text-align: justify; }
        .seo-article h2 { font-size: 2rem; margin-block-end: var(--spacing-md); color: var(--color-primary); text-align: center; line-height: 1.4; }
        .seo-article h3 { font-size: 1.4rem; margin-block-start: var(--spacing-lg); margin-block-end: var(--spacing-sm); color: var(--color-primary-light); display: flex; align-items: center; gap: 8px; }
        .seo-article h3::before { content: ""; display: inline-block; width: 6px; height: 20px; background-color: var(--color-accent); border-radius: 4px; }
        .seo-article p { margin-block-end: var(--spacing-md); font-size: 1.05rem; }
        .seo-article ul { margin-block-end: var(--spacing-md); padding-inline-start: var(--spacing-lg); }
        .seo-article li { margin-block-end: var(--spacing-sm); font-size: 1.05rem; }

        /* FAQ */
        .faq-wrapper { max-width: 800px; margin-inline: auto; }
        details { background-color: var(--color-bg-white); border: 1px solid var(--color-border); border-radius: var(--radius-md); margin-block-end: var(--spacing-sm); overflow: hidden; }
        summary { padding: var(--spacing-md); font-weight: 700; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; color: var(--color-primary); }
        summary::-webkit-details-marker { display: none; }
        summary::after { content: "+"; font-size: 1.5rem; font-weight: 400; color: var(--color-accent); transition: transform 0.3s; }
        details[open] summary::after { transform: rotate(45deg); }
        .faq-content { padding: 0 var(--spacing-md) var(--spacing-md) var(--spacing-md); color: var(--color-text-muted); }

        /* FOOTER */
        .footer { background-color: #111827; color: #d1d5db; padding-block-start: var(--spacing-xl); text-align: right; }
        .footer-grid { display: grid; grid-template-columns: 1fr; gap: var(--spacing-lg); margin-block-end: var(--spacing-xl); }
        .footer-logo { filter: brightness(0) invert(1); height: 40px; }
        .social-link { padding: 0.5rem; border-radius: 0.5rem; color: var(--color-bg-white); display: inline-flex; transition: transform var(--transition-speed); }
        .social-link:hover { opacity: 0.9; transform: translateY(-3px); }
        .footer h4 { color: var(--color-bg-white); font-weight: 700; margin-block-end: var(--spacing-md); font-size: 1.1rem; }
        .footer ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--spacing-sm); }
        .footer li { display: flex; gap: 0.5rem; color: #9ca3af; font-size: 0.9rem; align-items: flex-start; }
        .footer li a { color: inherit; text-decoration: none; transition: color var(--transition-speed); direction: ltr; display: inline-block;}
        .footer li a:hover { color: var(--color-accent); }
        .footer-icon { width: 20px; height: 20px; fill: none; stroke: var(--color-red); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
        .footer-bottom { border-top: 1px solid #374151; padding-block: var(--spacing-md); text-align: center; font-size: 0.85rem; color: #6b7280; }
        @media (min-width: 768px) { .footer-grid { grid-template-columns: 2fr 1fr 1fr; } }

        /* STICKY CTA */
        .sticky-cta {
            position: fixed; bottom: 0; left: 0; right: 0; background: var(--color-bg-white);
            padding: var(--spacing-sm) var(--spacing-md); box-shadow: 0 -2px 10px rgba(0,0,0,0.1); z-index: 999; display: none; 
        }

        /* FLOATING SMS BUTTON */
        .floating-sms {
            position: fixed; bottom: 20px; right: 20px; background-color: var(--color-sms); color: var(--color-bg-white);
            width: 60px; height: 60px; border-radius: 50%; display: flex; justify-content: center; align-items: center;
            box-shadow: 0 4px 15px rgba(59, 130, 246, 0.4); z-index: 1000; transition: transform var(--transition-speed); animation: pulse-sms 2s infinite;
        }
        .floating-sms:hover { transform: translateY(-3px) scale(1.05); }
        .floating-sms svg { width: 28px; height: 28px; }
        @keyframes pulse-sms { 0% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.7); } 70% { box-shadow: 0 0 0 15px rgba(59, 130, 246, 0); } 100% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0); } }

        /* ==========================================================================
           RESPONSIVE & MOBILE OPTIMIZATIONS
           ========================================================================== */
        @media (max-width: 992px) {
            .hero-wrapper { grid-template-columns: 1fr; }
            .hero-content { text-align: center; }
            .hero-benefits li { justify-content: center; }
        }
        
        @media (max-width: 768px) {
            /* Scaling down global variables for mobile */
            :root {
                --spacing-lg: 1.5rem;
                --spacing-xl: 2.5rem;
            }
            html { font-size: 15px; } 
            
            /* Sticky CTA and Floating Button */
            .sticky-cta { display: block; }
            .floating-sms { bottom: 85px; right: 15px; width: 50px; height: 50px; }
            .floating-sms svg { width: 24px; height: 24px; }
            
            /* Header */
            nav { min-height: 60px; }
            .logo { font-size: 1.5rem; }
            .logo img { height: 35px; }
            .contact-phone { font-size: 1.05rem; }
            
            /* Hero Section */
            #hero { padding-block: var(--spacing-lg); }
            .hero-content h1 { font-size: 1.8rem; line-height: 1.4; margin-block-end: 1rem; }
            .hero-content p { font-size: 1.05rem; }
            .hero-benefits li { font-size: 1rem; }
            
            /* Titles */
            .section-title { font-size: 1.7rem; line-height: 1.4; }
            .section-subtitle { font-size: 1rem; margin-block-end: var(--spacing-lg); }
            
            /* Trust Bar */
            .trust-grid { grid-template-columns: 1fr; gap: 1.5rem; }
            .trust-item h4 { font-size: 2rem; }
            
            /* Lead Form */
            .lead-form-card { padding: 1.5rem; }
            .lead-form-card h3 { font-size: 1.3rem; }
            .btn { font-size: 1rem; padding: 0.8rem 1rem; }
            
            /* CTA Banners */
            .cta-banner { padding: 1.5rem; border-radius: var(--radius-md); }
            .cta-banner h2 { font-size: 1.6rem; line-height: 1.4; }
            .cta-banner p { font-size: 1.05rem; }
            .cta-banner .action-buttons { flex-direction: column; gap: 0.8rem; }
            .cta-banner .btn { width: 100%; min-width: auto; }
            
            /* SEO Content */
            .seo-article h2 { font-size: 1.6rem; }
            .seo-article h3 { font-size: 1.3rem; }
            .seo-article p, .seo-article li { font-size: 1rem; }
        }

        /* Adjustments for extra small screens (e.g. iPhone SE) */
        @media (max-width: 480px) {
            .cefr-card { flex-direction: column; align-items: center; text-align: center; }
            .cefr-badge { margin-block-end: 0.5rem; }
            .cefr-info p { text-align: justify; text-align-last: center; }
            
            .step-card { padding: 1.25rem; }
            .contact-phone { font-size: 0.9rem; }
            .logo { font-size: 1.3rem; }
            .logo img { height: 30px; }
            
            .action-buttons .btn { font-size: 0.95rem; }
        }/* End custom CSS */