/* ========== DESIGN TOKENS ========== */
:root {
    --color-primary: #ed3237;
    --color-primary-light: #ff6165;
    --color-dark: #4b4b4d;
    --color-dark-alt: #2a2a2b;
    --color-white: #ffffff;
    --color-text-main: #4c4b4e;
    --color-text-dark: #3b3b3b;
    --color-text-gray: #4c4c4c;
    --color-bg-light: #e7e7e7;
    --color-bg-field: #fff8f8;
    --color-border: #e3e3e3;
    --color-star: #ed3237;

    --gradient-main: linear-gradient(to right, var(--color-primary), var(--color-dark));

    --radius-sm: 8px;
    --radius-md: 16px;
    --radius-lg: 20px;
    --radius-xl: 32px;
    --radius-2xl: 50px;
    --radius-pill-tl: 16px 32px 32px 16px;
    --radius-pill-tr: 32px 16px 16px 32px;

    --shadow-card: 0px 10px 30px 0px rgba(0, 0, 0, 0.08);
    --shadow-icon: 0px 30px 50px 0px rgba(0, 0, 0, 0.4);
    --shadow-submit: 0px 10px 40px 0px rgba(0, 0, 0, 0.4);
    --shadow-faq: 0px 10px 15px rgba(0, 0, 0, 0.16);
    --shadow-gray: 0px 20px 40px rgba(0, 0, 0, 0.2);

    --spacing-section: 80px;
    --spacing-container: 175px;

    --font-size-xs: 14px;
    --font-size-sm: 16px;
    --font-size-base: 18px;
    --font-size-md: 20px;
    --font-size-lg: 24px;
    --font-size-xl: 28px;
    --font-size-2xl: 30px;
    --font-size-3xl: 50px;
    --font-size-4xl: 70px;
}

/* ========== RESET & BASE ========== */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}


@font-face {
    font-family: 'iransans';
    src: url('./assets/font/woff2/IRANSansXFaNum-Regular.woff2') format('woff2'),
        url('./assets/font/woff/IRANSansXFaNum-Regular.woff') format('woff'),
        url('./assets/font/ttf/IRANSansXFaNum-Regular.ttf') format('ttf');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'iransans';
    src: url('./assets/font/woff2/IRANSansXFaNum-Medium.woff2') format('woff2'),
        url('./assets/font/woff/IRANSansXFaNum-Medium.woff') format('woff'),
        url('./assets/font/ttf/IRANSansXFaNum-Medium.ttf') format('ttf');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'iransans';
    src: url('./assets/font/woff2/IRANSansXFaNum-DemiBold.woff2') format('woff2'),
        url('./assets/font/woff/IRANSansXFaNum-DemiBold.woff') format('woff'),
        url('./assets/font/ttf/IRANSansXFaNum-DemiBold.ttf') format('ttf');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'iransans';
    src: url('./assets/font/woff2/IRANSansXFaNum-Bold.woff2') format('woff2'),
        url('./assets/font/woff/IRANSansXFaNum-Bold.woff') format('woff'),
        url('./assets/font/ttf/IRANSansXFaNum-Bold.ttf') format('ttf');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'iransans';
    src: url('./assets/font/woff2/IRANSansXFaNum-ExtraBold.woff2') format('woff2'),
        url('./assets/font/woff/IRANSansXFaNum-ExtraBold.woff') format('woff'),
        url('./assets/font/ttf/IRANSansXFaNum-ExtraBold.ttf') format('ttf');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: 'iransans';
    src: url('./assets/font/woff2/IRANSansXFaNum-Black.woff2') format('woff2'),
        url('./assets/font/woff/IRANSansXFaNum-Black.woff') format('woff'),
        url('./assets/font/ttf/IRANSansXFaNum-Black.ttf') format('ttf');
    font-weight: 900;
    font-style: normal;
}

body {
    font-family: 'iransans', Tahoma, sans-serif;
    direction: rtl;
    background: var(--color-white);
    color: var(--color-text-main);
    overflow-x: hidden;
}

img {
    max-width: 100%;
    display: block;
}

a {
    text-decoration: none;
    color: inherit;
}

ul {
    list-style: none;
}

button {
    cursor: pointer;
    border: none;
    background: none;
    font-family: inherit;
}

/* ========== TYPOGRAPHY HELPERS ========== */
.t-bold {
    font-weight: 700;
}

.t-extrabold {
    font-weight: 800;
}

.t-black {
    font-weight: 900;
}

.t-semibold {
    font-weight: 600;
}

.t-medium {
    font-weight: 500;
}

.t-regular {
    font-weight: 400;
}

.t-demi {
    font-weight: 600;
}

/* ========== LAYOUT ========== */
.container {
    width: 100%;
    max-width: 1570px;
    margin: 0 auto;
    padding: 0 var(--spacing-container);
}

/* ========== SECTION WRAPPER ========== */
.section-wrapper {
    max-width: 1570px;
    margin: 0 auto;
    padding: 0 40px;
}


/* ========== SWIPER ========== */
.swiper-horizontal {
    padding: 0 0 50px !important;
}

.swiper-pagination-bullet {
    background: rgba(186, 186, 186, 0.5) !important;
    opacity: 1 !important;
}

.swiper-pagination-bullet-active {
    background: var(--color-dark) !important;
    opacity: 1 !important;
}

.swiper-pagination {
    position: absolute;
    margin-top: 40px;
    bottom: 0px !important;
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #ccc;
    opacity: 1;
}