/* D:\anjirweb.ir\public\css\main.css */
:root {
    /* Colors */
    --primary: #6851f1;
    --primary-hover: #5540d1;
    --bg-dark: #0d0d12;
    --text-main: #ffffff;
    --error-color: #ff4444;
    
    /* Typography */
    --font-base: 'IRANSansXV', sans-serif;
    --fw-light: "wght" 300, "dots" 4;
    --fw-normal: "wght" 400, "dots" 4;
    --fw-bold: "wght" 700, "dots" 4;
    --fw-black: "wght" 900, "dots" 4;

    /* Sizes & Spacing */
    --radius-sm: 8px;
    --radius-md: 16px;
    --spacing-md: 20px;
    --spacing-lg: 40px;
}

@font-face {
    font-family: 'IRANSansXV';
    src: url('../fonts/IRANSansXV.woff') format('woff');
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: var(--font-base);
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg-dark); }
::-webkit-scrollbar-thumb { background: rgba(104, 81, 241, 0.3); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: var(--primary); }

body {
    background-color: var(--bg-dark);
    color: var(--text-main);
    line-height: 1.6;
    font-variation-settings: var(--fw-normal);
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow-x: hidden;
}

.mouse-spotlight {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    pointer-events: none;
    z-index: 9999;
    background: radial-gradient(circle 500px at var(--mouse-x, 50%) var(--mouse-y, -100%), rgba(104, 81, 241, 0.06), transparent 80%);
    transition: background 0.1s ease;
}

.ambient-bg {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    z-index: -1;
    overflow: hidden;
    pointer-events: none;
}

.ambient-light {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    opacity: 0.3;
    animation: floatLight 25s infinite alternate ease-in-out;
}

.light-1 { width: 600px; height: 600px; background: var(--primary); top: -10%; left: -10%; }
.light-2 { width: 500px; height: 500px; background: #2aabee; bottom: -20%; right: -10%; animation-duration: 30s; animation-direction: alternate-reverse; }

@keyframes floatLight {
    0% { transform: translate(0, 0) scale(1); }
    100% { transform: translate(15vw, 20vh) scale(1.3); }
}

.reveal-item {
    opacity: 0;
    transform: translateY(60px);
    transition: opacity 0.8s ease-out, transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.reveal-item.revealed { opacity: 1; transform: translateY(0); }

h1, h2, h3, h4, h5, h6, strong, b { font-variation-settings: var(--fw-bold); }
.num-style { font-feature-settings: "ss03"; -moz-font-feature-settings: "ss03"; -webkit-font-feature-settings: "ss03"; }
.ltr-input { direction: ltr; text-align: left; }
.ltr-input::placeholder { direction: rtl; text-align: right; }
.flex-center { display: flex; justify-content: center; align-items: center; flex: 1; padding: 20px; }

main {
    flex: 1;
    padding: 60px var(--spacing-md) 60px var(--spacing-md);
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    position: relative;
    z-index: 1;
}

.section-title {
    text-align: center;
    margin-bottom: var(--spacing-lg);
    color: var(--primary);
    font-variation-settings: var(--fw-black);
    font-size: 2.2rem;
}

.theme-icon {
    filter: brightness(0) saturate(100%) invert(35%) sepia(50%) saturate(6144%) hue-rotate(243deg) brightness(98%) contrast(93%);
}

.icon-sm { width: 55px; height: 55px; }
.icon-md { width: 90px; height: 90px; margin: 0 auto; }
.error-msg { color: var(--error-color); margin-bottom: 15px; font-size: 0.95rem; }

.hero-minimal {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 25px;
    margin: 40px 0 100px 0;
}

.hero-logo {
    width: 140px;
    height: auto;
    filter: brightness(0) saturate(100%) invert(35%) sepia(50%) saturate(6144%) hue-rotate(243deg) brightness(98%) contrast(93%) drop-shadow(0 0 25px rgba(104, 81, 241, 0.5));
}

.hero-minimal h1 { font-size: 2.5rem; color: var(--primary); font-variation-settings: var(--fw-black); }
.hero-minimal p { font-size: 1.2rem; color: rgba(255, 255, 255, 0.8); max-width: 600px; line-height: 1.8; }

.scroll-indicator {
    width: 40px; height: 40px;
    margin-top: 30px;
    opacity: 0.6;
    transition: opacity 0.3s ease;
}
.scroll-indicator:hover { opacity: 1; }

@media (max-width: 768px) {
    .hero-minimal h1 { font-size: 2rem; }
    .ambient-light { filter: blur(80px); }
    .light-1 { width: 300px; height: 300px; }
    .light-2 { width: 250px; height: 250px; }

    .service-large-card, 
    .service-large-card:nth-child(even) {
        flex-direction: column;
        text-align: center;
        padding: 30px 20px;
        gap: 25px;
    }
    
    .service-large-content, 
    .service-large-card:nth-child(even) .service-large-content {
        align-items: center;
        text-align: center;
    }
    
    .service-large-img { width: 180px; height: 180px; }

    /* تنظیمات موبایل برای کارت تلگرام */
    .support-card {
        flex-direction: column;
        text-align: center;
        padding: 30px 20px;
        gap: 30px;
    }

    .support-content-wrap {
        flex-direction: column;
        gap: 25px;
    }

    .telegram-btn {
        width: 100%;
        justify-content: center;
    }
}
