@font-face {
   font-family: 'peyda';
   src: url('https://cdn.jsdelivr.net/gh/rastikerdar/vazirmatn@v33.003/Vazirmatn-Light.woff2') format('woff2');
   font-weight: 300;
   font-style: normal;
}

@font-face {
   font-family: 'peyda';
   src: url('https://cdn.jsdelivr.net/gh/rastikerdar/vazirmatn@v33.003/Vazirmatn-Regular.woff2') format('woff2');
   font-weight: 400;
   font-style: normal;
}

@font-face {
   font-family: 'peyda';
   src: url('https://cdn.jsdelivr.net/gh/rastikerdar/vazirmatn@v33.003/Vazirmatn-Bold.woff2') format('woff2');
   font-weight: 700;
   font-style: normal;
}
:root {
   --black: #000000;
   --dark: #1A1A1A;
   --white: #ffffff;
   --light: #F2F2F2;
   --primary: #8B5FBF;
   --primary-1: #107df9;
   --primary-light: #9370DB;
   --primary-dark: #6A0DAD;
   --secondary: #1A1A1A;
   --accent: #4CC9F0;
   --success: #9370DB;
   --text-primary: #f1f1f1;
   --text-secondary: #d1d1d1;
   --gradient1: radial-gradient(50% 50% at 50% 50%, #9370DB 0%, #6A0DAD 100%);
   --gradient2: linear-gradient(144.12deg, #9370DB 14.68%, #6A0DAD 81.68%);
   --gradient3: linear-gradient(136.55deg, #9370DB 5.49%, #6A0DAD 100%);
   --gradient7: linear-gradient(136.55deg, #ffffff 5.49%, #6A0DAD 100%);
   --gradient4: linear-gradient(213.44deg, #000000 43.78%, #4B0082 124.39%);
   --gradient5: linear-gradient(150deg, #000000 29.69%, #23033a 51.45%, #000000 82.71%);
   --gradient6: linear-gradient(125.1deg, #232323 28.16%, #4B0082 120.37%);
   --glass-bg: rgba(30, 20, 40, 0.7);
   --glass-border: rgba(200, 180, 255, 0.15);
   --glass-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
   
   --fw-light: 300;
   --fw-regular: 400;
   --fw-medium: 500;
   --fw-bold: 700;
   --fz-body: 16px;
   --fz-btn: 15px;
   --fz-h1: 65px;
   --fz-h2: 45px;
   --fz-h3: 30px;
   --fz-h4: 24px;
   --fz-h5: 22px;
   --fz-h6: 18px;
   --fz-subtitle: 36px;
   
   --transition: all 0.3s ease;
   --border-radius: 8px;
}

:root {
--gradient4: linear-gradient(213.44deg, #0a0a1a 43.78%, #2d1b69 124.39%);
--gradient5: linear-gradient(150deg, #0a0a1a 29.69%, #1a103c 51.45%, #0a0a1a 82.71%);
--gradient6: linear-gradient(125.1deg, #1a1a2e 28.16%, #3a1c80 120.37%);
--glass-bg: rgba(20, 15, 30, 0.8);
--primary: #9b5de5;
--primary-light: #a679f0;
--primary-dark: #7b3cc0;
}

* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
   font-family: Vazirmatn, sans-serif;

}

::-webkit-scrollbar {
   width: 8px;
   background: var(--black);
}

::-webkit-scrollbar-thumb {
   background: var(--gradient2);
   border-radius: 4px;
}

html, body {
   min-height: 100%;
   overflow-x: hidden;
   direction: rtl;
}

body {
   font-family: 'peyda', sans-serif;
   background: var(--gradient4);
   color: var(--text-primary);
   line-height: 1.6;
   font-size: var(--fz-body);
   font-weight: var(--fw-regular);

}



img {
   max-width: 100%;
   height: auto;
   display: block;
}

h1, h2, h3, h4, h5, h6 {
   font-family: 'peyda';
   font-weight: var(--fw-bold);
   line-height: 1.2;
   color: var(--white);
   margin-bottom: 15px;
}

h1 { font-size: var(--fz-h1); }
h2 { font-size: var(--fz-h2); }
h3 { font-size: var(--fz-h3); }
h4 { font-size: var(--fz-h4); }
h5 { font-size: var(--fz-h5); }
h6 { font-size: var(--fz-h6); }

a {
   color: inherit;
   text-decoration: none;
   transition: all 0.3s ease;
}

a:hover {
   color: var(--primary);
}

.container {
   width: 100%;
   max-width: 1200px;
   margin: 0 auto;
   padding: 0 20px;
}

.row {
   display: flex;
   flex-wrap: wrap;
   margin: 0 -15px;
}

.col {
   flex: 1;
   padding: 0 15px;
}

.col-lg-6 {
   flex: 0 0 50%;
   max-width: 50%;
}

.text-center {
   text-align: center;
}

.align-items-center {
   align-items: center;
   display: flex;
}

.d-flex {
   display: flex;
}

.flex-wrap {
   flex-wrap: wrap;
}

.justify-content-center {
   justify-content: center;
}

/* ریست لیست */
.reset-list {
   margin: 0;
   padding: 0;
   list-style: none;
}

/* دکمه‌ها */
.btn {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   font-size: var(--fz-btn);
   font-weight: var(--fw-bold);
   color: var(--white);
   text-transform: capitalize;
   border: none;
   border-radius: 50px;
   padding: 17px 35px;
   transition: all 0.4s ease;
   text-decoration: none;
   cursor: pointer;
}

.btn-primary {
   background: var(--gradient2);
   background-size: 200%;
}

.btn-primary:hover {
   background-position: right center;
   transform: translateY(-3px);
   box-shadow: 0 10px 25px rgba(158, 23, 185, 0.4);
}

.btn-secondary {
   background: transparent;
   border: 2px solid var(--primary);
   color: var(--primary);
}

.btn-secondary:hover {
   background: var(--primary);
   color: var(--white);
   transform: translateY(-3px);
   box-shadow: 0 10px 25px rgba(161, 8, 203, 0.4);
}

/* آیکون‌های اجتماعی */
.social-icons {
   display: flex;
   gap: 15px;
}

.social-icons li a {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 45px;
   height: 45px;
   border: 1px solid var(--primary);
   border-radius: 50%;
   color: var(--primary);
   position: relative;
   overflow: hidden;
   z-index: 1;
}

.social-icons li a::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: var(--primary);
   transform: scale(0);
   transition: 0.3s;
   border-radius: 50%;
   z-index: -1;
}

.social-icons li a:hover {
   color: var(--white);
}

.social-icons li a:hover::before {
   transform: scale(1.1);
}

/* پیش‌بارگذاری */
.preloader {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: var(--black);
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   z-index: 9999;
}

.preloader-content {
   position: relative;
   width: 300px;
   height: 300px;
   display: flex;
   align-items: center;
   justify-content: center;
}

.preloader-logo {
   position: absolute;
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background: var(--gradient2);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-weight: bold;
   font-size: 24px;
   z-index: 10;
}

.preloader-ring {
   position: absolute;
   width: 100%;
   height: 100%;
   border: 4px solid transparent;
   border-top: 4px solid var(--primary);
   border-radius: 50%;
   animation: rotate 1.5s linear infinite;
}

.preloader-ring:nth-child(2) {
   width: 80%;
   height: 80%;
   border: 4px solid transparent;
   border-top: 4px solid var(--secondary);
   animation: rotate 1.8s linear infinite reverse;
}

.preloader-ring:nth-child(3) {
   width: 60%;
   height: 60%;
   border: 4px solid transparent;
   border-top: 4px solid var(--accent);
   animation: rotate 2s linear infinite;
}

.preloader-text {
   margin-top: 30px;
   font-size: 1.2rem;
   color: var(--text-secondary);
   text-align: center;
}

.preloader-text span {
   display: inline-block;
   animation: pulse 1.5s infinite;
}

.preloader-text span:nth-child(2) { animation-delay: 0.2s; }
.preloader-text span:nth-child(3) { animation-delay: 0.4s; }
.preloader-text span:nth-child(4) { animation-delay: 0.6s; }
.preloader-text span:nth-child(5) { animation-delay: 0.8s; }
.preloader-text span:nth-child(6) { animation-delay: 1s; }
.preloader-text span:nth-child(7) { animation-delay: 1.2s; }

@keyframes rotate {
   0% { transform: rotate(0deg); }
   100% { transform: rotate(360deg); }
}

@keyframes pulse {
   0%, 100% { opacity: 1; transform: scale(1); }
   50% { opacity: 0.5; transform: scale(0.95); }
}

/* بخش هیرو */
.hero-section {
   padding: 150px 0 80px;
   position: relative;
   overflow: hidden;
   min-height: 100vh;
   display: flex;
   align-items: center;
}

.hero-section::before {
   content: '';
   position: absolute;
   top: -100px;
   right: -100px;
   width: 500px;
   height: 500px;
   border-radius: 50%;
   background: var(--gradient1);
   filter: blur(80px);
   z-index: 0;
   opacity: 0.4;
}

.hero-section::after {
   content: '';
   position: absolute;
   bottom: -100px;
   left: -100px;
   width: 400px;
   height: 400px;
   border-radius: 50%;
   filter: blur(60px);
   z-index: 0;
   opacity: 0.3;
}

.intro-text {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   z-index: 0;
   opacity: 0.03;
}

.intro-text svg {
   width: 100%;
   height: 100%;
}

.intro-text text {
   font-size: 280px;
   font-weight: bold;
   fill: var(--primary-1);
}

.hero-content {
   position: relative;
   z-index: 3; /* افزایش z-index برای محتوای هیرو */
}

.hero-subtitle {
   font-size: var(--fz-subtitle);
   font-weight: var(--fw-bold);
   color: var(--primary);
   margin-bottom: 15px;
   display: block;
   animation: fadeInUp 0.8s ease forwards;
   opacity: 0;
}

.hero-title {
   font-size: 4rem;
   background: var(--gradient2);
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
   margin-bottom: 20px;
   line-height: 1.1;
   animation: fadeInUp 0.8s ease 0.2s forwards;
   opacity: 0;
}

.hero-description {
   font-size: 1.2rem;
   margin-bottom: 30px;
   max-width: 600px;
   color: var(--text-secondary);
   animation: fadeInUp 0.8s ease 0.4s forwards;
   opacity: 0;
}

.hero-buttons {
   display: flex;
   gap: 20px;
   flex-wrap: wrap;
   animation: fadeInUp 0.8s ease 0.6s forwards;
   opacity: 0;
}

.hero-image {
   position: relative;
   z-index: 1; /* افزایش z-index برای تصویر */
   animation: fadeInRight 1s ease 0.8s forwards, float 5s ease-in-out infinite;
   opacity: 0;

}




/* استایل‌های جدید برای قاب عکس */
.hero-image {
position: relative;
z-index: 1;
animation: fadeInRight 1s ease 0.8s forwards, float 5s ease-in-out infinite;
opacity: 0;
padding: 10px; /* فضای اطراف عکس برای قاب */
border-radius: 40px; /* گردی بیشتر برای قاب */
display: inline-block; /* برای تطبیق با اندازه عکس */
box-shadow: 0 15px 35px rgba(129, 34, 197, 0.3); /* سایه سبز رنگ */
transition: all 0.5s ease;
}

.hero-image img {
border-radius: 30px; /* گردی داخلی عکس */
display: block;
position: relative;
z-index: 2;
transition: all 0.5s ease;
/* حذف استایل‌های قبلی مربوط به border و mask */
}

/* افکت هاوور برای کل قاب */
.hero-image:hover {
transform: translateY(-5px) scale(1.02);
box-shadow: 0 25px 50px rgba(121, 34, 197, 0.4);
}

/* ایجاد یک المان شبه برای افکت نوری اضافی */
.hero-image::after {
content: '';
position: absolute;
top: -3px;
left: -3px;
right: -3px;
bottom: -3px;
border-radius: 43px;
z-index: 0;
opacity: 0.7;
filter: blur(5px);
animation: pulse 3s ease-in-out infinite;
}

/* انیمیشن ضربان برای افکت نوری */
@keyframes pulse {
0% { opacity: 0.5; }
50% { opacity: 0.8; }
100% { opacity: 0.5; }
}


.hero-image img {
   border-radius: 30px;
   box-shadow: var(--glass-shadow);
   border: 2px solid transparent var(--gradient2);
   mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
   transition: all 0.5s ease;
   position: relative;
}

.hero-image img:hover {
   transform: scale(1.02);
   box-shadow: 0 25px 50px rgba(159, 0, 207, 0.4);
}

/* انیمیشن‌ها */
@keyframes fadeInUp {
   from {
      opacity: 0;
      transform: translateY(30px);
   }
   to {
      opacity: 1;
      transform: translateY(0);
   }
}

@keyframes fadeInRight {
   from {
      opacity: 0;
      transform: translateX(30px);
   }
   to {
      opacity: 1;
      transform: translateX(0);
   }
}

@keyframes float {
   0% { transform: translateY(0); }
   50% { transform: translateY(-15px); }
   100% { transform: translateY(0); }
}

/* واکنش‌گرایی */
@media (max-width: 1200px) {
   .hero-title {
      font-size: 3.5rem;
   }
}

@media (max-width: 992px) {
   .hero-title {
      font-size: 3rem;
   }
   
   .hero-subtitle {
      font-size: 1.8rem;
   }
   
   .intro-text text {
      font-size: 200px;
   }
   
   .col-lg-6 {
      flex: 0 0 100%;
      max-width: 100%;
   }
}

@media (max-width: 768px) {
   .hero-section {
      padding: 120px 0 60px;
      text-align: center;
   }
   
   .hero-title {
      font-size: 2.5rem;
   }
   
   .hero-subtitle {
      font-size: 1.5rem;
   }
   
   .hero-buttons {
      justify-content: center;
   }
   
   .hero-image {
      margin-top: 50px;
   }
   
   .intro-text text {
      font-size: 150px;
   }
   
   .btn {
      padding: 14px 28px;
   }
}

@media (max-width: 576px) {
   .hero-title {
      font-size: 2rem;
   }
   
   .hero-subtitle {
      font-size: 1.2rem;
   }
   
   .hero-description {
      font-size: 1rem;
   }
   
   .btn {
      padding: 12px 25px;
      font-size: 14px;
   }
   
   .social-icons li a {
      width: 40px;
      height: 40px;
   }
   
   .hero-buttons {
      flex-direction: column;
      align-items: center;
   }
   
   .preloader-content {
      width: 200px;
      height: 200px;
   }
   
   .preloader-logo {
      width: 60px;
      height: 60px;
      font-size: 18px;
   }
}


/* بخش درباره من */
.about-section {
padding: 100px 0;
position: relative;
overflow: hidden;
background: var(--gradient6);
}

.about-section::before {
content: '';
position: absolute;
top: -100px;
left: -100px;
width: 300px;
height: 300px;
border-radius: 50%;
background: var(--gradient1);
filter: blur(60px);
z-index: 0;
opacity: 0.2;
}

.section-subtitle {
display: block;
font-size: 1.2rem;
color: var(--primary);
font-weight: var(--fw-bold);
margin-bottom: 15px;
text-transform: uppercase;
letter-spacing: 1px;
}

.section-title {
font-size: var(--fz-h2);
background: var(--gradient7);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
margin-bottom: 30px;
position: relative;
display: inline-block;
}

.section-title::after {
content: '';
position: absolute;
bottom: -10px;
right: 0;
width: 50px;
height: 3px;
border-radius: 2px;
}

.about-image {
position: relative;
padding: 20px;
}

.image-frame {
position: relative;
border-radius: 30px;
overflow: hidden;
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
transition: all 0.5s ease;
}

.image-frame::before {
content: '';
position: absolute;
top: -2px;
left: -2px;
right: -2px;
bottom: -2px;
border-radius: 32px;
z-index: -1;
animation: rotate 3s linear infinite;
}

.image-frame img {
width: 100%;
height: auto;
border-radius: 30px;
transition: all 0.5s ease;
}

.about-image:hover .image-frame {
transform: translateY(-10px);
box-shadow: 0 30px 60px rgba(145, 34, 197, 0.4);
}

.about-image:hover .image-frame img {
transform: scale(1.05);
}

.about-description {
margin-bottom: 30px;
}

.about-description p {
margin-bottom: 20px;
color: var(--text-secondary);
line-height: 1.8;
}

.about-info {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 15px;
margin-bottom: 40px;
}

.info-item {
display: flex;
align-items: center;
}

.info-label {
font-weight: var(--fw-bold);
color: var(--primary);
margin-left: 10px;
min-width: 60px;
}

.info-value {
color: var(--text-secondary);
}

.about-stats {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-bottom: 40px;
}

.stat-item {
text-align: center;
padding: 20px;
background: var(--glass-bg);
border: 1px solid var(--glass-border);
border-radius: var(--border-radius);
backdrop-filter: blur(10px);
box-shadow: var(--glass-shadow);
transition: all 0.3s ease;
}

.stat-item:hover {
transform: translateY(-5px);
background: var(--gradient2);
}

.stat-item:hover .stat-number,
.stat-item:hover .stat-label {
color: var(--white);
}

.stat-number {
font-size: 2.5rem;
font-weight: var(--fw-bold);
color: var(--primary);
margin-bottom: 5px;
transition: all 0.3s ease;
}

.stat-label {
font-size: 0.9rem;
color: var(--text-secondary);
transition: all 0.3s ease;
}

.about-buttons {
display: flex;
gap: 20px;
flex-wrap: wrap;
}

/* واکنش‌گرایی برای بخش درباره من */
@media (max-width: 992px) {
.about-info {
grid-template-columns: 1fr;
}

.about-stats {
grid-template-columns: repeat(2, 1fr);
}
}

@media (max-width: 768px) {
.about-section {
padding: 80px 0;
text-align: center;
}

.section-title::after {
right: 50%;
transform: translateX(50%);
}

.about-image {
margin-bottom: 50px;
}

.info-item {
justify-content: center;
}

.about-stats {
grid-template-columns: 1fr;
}

.about-buttons {
justify-content: center;
}
}

@media (max-width: 576px) {
.about-buttons {
flex-direction: column;
align-items: center;
}

.stat-number {
font-size: 2rem;
}
}



/* بخش تماس با ما */
.contact-section {
padding: 100px 0 0;
position: relative;
overflow: hidden;
background: var(--gradient4);
}

.section-header {
margin-bottom: 60px;
}

.section-description {
color: var(--text-secondary);
max-width: 600px;
margin: 0 auto;

}

.contact-content {
margin-bottom: 60px;
}

.contact-form-container {
background: var(--glass-bg);
border: 1px solid var(--glass-border);
border-radius: 20px;
padding: 40px;
backdrop-filter: blur(10px);
box-shadow: var(--glass-shadow);
}

.form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
margin-bottom: 20px;
}

.form-group {
position: relative;
margin-bottom: 30px;
}

.form-group input,
.form-group textarea {
width: 100%;
padding: 18px 50px 18px 20px;
font-size: 16px;
background: rgba(255, 255, 255, 0.05);
border: 1px solid var(--glass-border);
border-radius: 12px;
color: var(--text-primary);
transition: all 0.3s ease;
}

.form-group textarea {
min-height: 150px;
resize: vertical;
}

.form-group label {
position: absolute;
top: 18px;
right: 50px;
font-size: 16px;
color: var(--text-secondary);
transition: all 0.3s ease;
pointer-events: none;
background: transparent;
padding: 0 5px;
}

.form-group .input-icon {
position: absolute;
top: 50%;
left: 20px;
transform: translateY(-50%);
color: var(--primary);
font-size: 18px;
}

.form-group textarea + .input-icon {
top: 25px;
transform: none;
}

.form-group.focused label,
.form-group input:focus + label,
.form-group textarea:focus + label,
.form-group input:not(:placeholder-shown) + label,
.form-group textarea:not(:placeholder-shown) + label {
top: -10px;
right: 30px;
font-size: 14px;
color: var(--primary);
background: var(--dark);
padding: 0 10px;
}

.form-group input:focus,
.form-group textarea:focus {
border-color: var(--primary);
box-shadow: 0 0 0 3px rgba(170, 12, 185, 0.2);
outline: none;
}

.contact-form button {
width: 100%;
margin-top: 10px;
padding: 20px;
font-size: 18px;
}

.form-status {
display: none;
margin-top: 20px;
padding: 15px;
border-radius: 10px;
text-align: center;
}

.success-message {
color: var(--success);
background: rgba(171, 30, 203, 0.1);
padding: 15px;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
}

.contact-info {
background: var(--glass-bg);
border: 1px solid var(--glass-border);
border-radius: 20px;
padding: 30px;
backdrop-filter: blur(10px);
box-shadow: var(--glass-shadow);
height: 100%;
}

.contact-info-item {
display: flex;
align-items: center;
margin-bottom: 30px;
padding-bottom: 30px;
border-bottom: 1px solid var(--glass-border);
}

.contact-info-item:last-child {
margin-bottom: 0;
padding-bottom: 0;
border-bottom: none;
}

.contact-icon {
width: 60px;
height: 60px;
background: var(--gradient2);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-left: 20px;
font-size: 20px;
flex-shrink: 0;
}

.contact-details h4 {
font-size: 18px;
margin-bottom: 5px;
color: var(--primary);

}

 
.contact-social {
margin-top: 40px;
}

.contact-social h4 {
font-size: 18px;
margin-bottom: 15px;
color: var(--primary);
}

.contact-social .social-icons {
justify-content: flex-start;
}

.contact-map {
height: 400px;
background: var(--gradient6);
position: relative;
overflow: hidden;
}

.map-placeholder {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: var(--primary);
font-size: 24px;
background: rgba(0, 0, 0, 0.2);
}

.map-placeholder i {
font-size: 60px;
margin-bottom: 20px;
}

.map-placeholder p {
color: var(--text-secondary);
font-size: 18px;
}

/* واکنش‌گرایی برای بخش تماس با ما */
@media (max-width: 992px) {
.form-row {
grid-template-columns: 1fr;
}

.contact-info {
margin-top: 50px;
}
}

@media (max-width: 768px) {
.contact-section {
padding: 80px 0 0;
}

.contact-form-container {
padding: 30px 20px;
}

.contact-info {
padding: 25px 20px;
}

.contact-info-item {
flex-direction: column;
text-align: center;
}

.contact-icon {
margin-left: 0;
margin-bottom: 15px;
}

.contact-social .social-icons {
justify-content: center;
}
}

@media (max-width: 576px) {
.contact-form-container {
padding: 20px 15px;
}

.form-group input,
.form-group textarea {
padding: 15px 45px 15px 15px;
}

.form-group .input-icon {
left: 15px;
}

.contact-map {
height: 300px;
}

.map-placeholder i {
font-size: 40px;
}

.map-placeholder p {
font-size: 16px;
}
}



/* نقشه تعاملی */
.contact-map {
height: 500px;
background: var(--gradient6);
position: relative;
overflow: hidden;
}

#interactiveMap {
width: 100%;
height: 100%;
z-index: 1;
}

/* کنترل‌های نقشه */
.leaflet-control-zoom {
border: none !important;
border-radius: 10px !important;
overflow: hidden;
}

.leaflet-control-zoom a {
background: var(--glass-bg) !important;
backdrop-filter: blur(10px);
border-bottom: 1px solid var(--glass-border) !important;
color: var(--text-primary) !important;
width: 40px !important;
height: 40px !important;
line-height: 40px !important;
font-size: 22px !important;
transition: all 0.3s ease;
}

.leaflet-control-zoom a:hover {
background: var(--primary) !important;
color: var(--white) !important;
}

.leaflet-control-scale-line {
background: var(--glass-bg) !important;
backdrop-filter: blur(10px);
border: 1px solid var(--glass-border) !important;
border-top: none !important;
color: var(--text-primary) !important;
font-size: 12px !important;
}

/* نشانگر نقشه با انیمیشن */
.animated-marker {
position: relative;
}

.marker-pulse {
position: absolute;
top: 0;
left: 0;
width: 40px;
height: 40px;
border-radius: 50%;
background: var(--primary);
opacity: 0.6;
animation: pulse 2s infinite;
z-index: 1;
}

.marker-icon {
position: absolute;
top: 0;
left: 0;
width: 40px;
height: 40px;
border-radius: 50% 50% 50% 0;
background: var(--gradient2);
transform: rotate(-45deg);
display: flex;
align-items: center;
justify-content: center;
z-index: 2;
}

.marker-icon i {
color: white;
font-size: 18px;
transform: rotate(45deg);
}

/* پاپاپ نقشه */
.leaflet-popup-content-wrapper {
background: var(--glass-bg) !important;
backdrop-filter: blur(10px);
border: 1px solid var(--glass-border) !important;
border-radius: 12px !important;
color: var(--text-primary) !important;
}

.leaflet-popup-content {
margin: 15px !important;
font-family: 'peyda', sans-serif !important;
line-height: 1.6 !important;
}

.map-popup h4 {
color: var(--primary);
margin-bottom: 8px;
font-size: 16px;
}

.map-popup p {
color: var(--text-secondary);
margin-bottom: 12px;
font-size: 14px;
}

.map-direction {
display: inline-flex;
align-items: center;
gap: 5px;
color: var(--primary-light);
font-size: 14px;
text-decoration: none;
transition: all 0.3s ease;
}

.map-direction:hover {
color: var(--primary);
}

.leaflet-popup-tip {
background: var(--glass-bg) !important;
border: 1px solid var(--glass-border) !important;
}

/* کنترل مکان‌یابی */
.locate-control {
margin-bottom: 10px !important;
}

.locate-control button {
width: 40px;
height: 40px;
background: var(--glass-bg);
backdrop-filter: blur(10px);
border: 1px solid var(--glass-border);
border-radius: 10px;
color: var(--text-primary);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 18px;
transition: all 0.3s ease;
}

.locate-control button:hover {
background: var(--primary);
color: var(--white);
}

/* نشانگر موقعیت فعلی */
.current-location-marker {
position: relative;
}

.current-location-pulse {
position: absolute;
top: 0;
left: 0;
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--accent);
opacity: 0.6;
animation: pulse 2s infinite;
z-index: 1;
}

.current-location-icon {
position: absolute;
top: 0;
left: 0;
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--accent);
display: flex;
align-items: center;
justify-content: center;
z-index: 2;
}

.current-location-icon i {
color: white;
font-size: 8px;
}

/* انیمیشن پالس */
@keyframes pulse {
0% {
transform: scale(0.8);
opacity: 0.6;
}
70% {
transform: scale(1.8);
opacity: 0;
}
100% {
transform: scale(0.8);
opacity: 0;
}
}

/* واکنش‌گرایی برای نقشه */
@media (max-width: 768px) {
.contact-map {
height: 400px;
}

.leaflet-control-zoom a {
width: 35px !important;
height: 35px !important;
line-height: 35px !important;
font-size: 18px !important;
}

.locate-control button {
width: 35px;
height: 35px;
font-size: 16px;
}
}

@media (max-width: 576px) {
.contact-map {
height: 350px;
}

.marker-pulse,
.marker-icon {
width: 30px;
height: 30px;
}

.marker-icon i {
font-size: 14px;
}
}

/* بخش نمونه‌کارها */
.portfolio-section {
padding: 100px 0;
position: relative;
overflow: hidden;
background: var(--gradient5);
}

.portfolio-filter {
margin-bottom: 50px;
display: flex;
justify-content: center;
}

.filter-buttons {
display: flex;
flex-wrap: wrap;
gap: 15px;
justify-content: center;
}

.filter-btn {
padding: 12px 25px;
background: transparent;
border: 2px solid var(--primary);
color: var(--primary);
border-radius: 50px;
font-weight: var(--fw-bold);
cursor: pointer;
transition: all 0.3s ease;
}

.filter-btn:hover,
.filter-btn.active {
background: var(--gradient2);
color: var(--white);
border-color: transparent;
transform: translateY(-3px);
box-shadow: 0 10px 20px rgba(140, 34, 197, 0.3);
}

.portfolio-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
gap: 30px;
margin-bottom: 50px;
}

.portfolio-item {
position: relative;
border-radius: 20px;
overflow: hidden;
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
transition: all 0.5s ease;
}

.portfolio-item:hover {
transform: translateY(-10px);
box-shadow: 0 20px 40px rgba(148, 34, 197, 0.3);
}

.portfolio-image {
position: relative;
overflow: hidden;
aspect-ratio: 3/2;
}

.portfolio-image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: all 0.5s ease;
}

.portfolio-item:hover .portfolio-image img {
transform: scale(1.1);
}

.portfolio-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(13, 13, 13, 0.9);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: all 0.5s ease;
padding: 20px;
}

.portfolio-item:hover .portfolio-overlay {
opacity: 1;
}

.portfolio-content {
text-align: center;
color: var(--white);
transform: translateY(20px);
transition: all 0.5s ease;
}

.portfolio-item:hover .portfolio-content {
transform: translateY(0);
}

.portfolio-content h3 {
font-size: 1.5rem;
margin-bottom: 10px;
color: var(--primary-light);
}

.portfolio-content p {
color: var(--text-secondary);
margin-bottom: 20px;
}

.portfolio-actions {
display: flex;
gap: 15px;
justify-content: center;
}

.portfolio-link {
width: 45px;
height: 45px;
border-radius: 50%;
background: var(--gradient2);
color: var(--white);
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
}

.portfolio-link:hover {
transform: translateY(-5px);
box-shadow: 0 5px 15px rgba(178, 34, 197, 0.4);
}

.portfolio-cta {
margin-top: 40px;
}

/* واکنش‌گرایی برای بخش نمونه‌کارها */
@media (max-width: 992px) {
.portfolio-grid {
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}
}

@media (max-width: 768px) {
.portfolio-section {
padding: 80px 0;
}

.filter-buttons {
gap: 10px;
}

.filter-btn {
padding: 10px 20px;
font-size: 14px;
}

.portfolio-grid {
grid-template-columns: 1fr;
gap: 20px;
}

.portfolio-content h3 {
font-size: 1.3rem;
}
}

@media (max-width: 576px) {
.portfolio-filter {
margin-bottom: 30px;
}

.filter-buttons {
flex-direction: column;
align-items: center;
width: 100%;
}

.filter-btn {
width: 100%;
max-width: 250px;
}

.portfolio-actions {
flex-wrap: wrap;
}
}


/* بخش خدمات */
.services-section {
padding: 100px 0;
position: relative;
overflow: hidden;
background: var(--gradient4);
}

.services-section::before {
content: '';
position: absolute;
bottom: -100px;
right: -100px;
width: 400px;
height: 400px;
border-radius: 50%;
background: var(--gradient1);
filter: blur(80px);
z-index: 0;
opacity: 0.2;
}

.services-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 30px;
margin-bottom: 50px;
}

.service-item {
background: var(--glass-bg);
border: 1px solid var(--glass-border);
border-radius: 20px;
padding: 40px 30px;
text-align: center;
backdrop-filter: blur(10px);
box-shadow: var(--glass-shadow);
transition: all 0.4s ease;
position: relative;
overflow: hidden;
z-index: 1;
}

.service-item::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: var(--gradient2);
opacity: 0;
transition: all 0.4s ease;
z-index: -1;
}

.service-item:hover {
transform: translateY(-10px);
border-color: transparent;
}

.service-item:hover::before {
opacity: 1;
}

.service-item:hover .service-icon {
background: rgba(255, 255, 255, 0.1);
color: var(--white);
}

.service-item:hover .service-icon .icon-shape {
opacity: 0.3;
transform: scale(1.1);
}

.service-item:hover h3,
.service-item:hover p,
.service-item:hover .service-features li,
.service-item:hover .service-link {
color: var(--white);
}

.service-icon {
width: 80px;
height: 80px;
margin: 0 auto 25px;
background: var(--gradient2);
border-radius: 20px;
display: flex;
align-items: center;
justify-content: center;
position: relative;
transition: all 0.4s ease;
}

.service-icon i {
font-size: 32px;
color: var(--white);
z-index: 2;
}

.icon-shape {
position: absolute;
width: 100%;
height: 100%;
border-radius: 20px;
background: var(--gradient3);
opacity: 0.3;
transition: all 0.4s ease;
}

.service-item h3 {
font-size: 1.5rem;
margin-bottom: 15px;
color: var(--primary-light);
transition: all 0.4s ease;
}

.service-item p {
color: var(--text-secondary);
margin-bottom: 20px;
line-height: 1.7;
transition: all 0.4s ease;
}

.service-features {
text-align: right;
margin-bottom: 25px;
}

.service-features li {
display: flex;
align-items: center;
justify-content: flex-start;
margin-bottom: 10px;
color: var(--text-secondary);
transition: all 0.4s ease;
}

.service-features li i {
color: var(--primary);
margin-left: 10px;
transition: all 0.4s ease;
}

.service-item:hover .service-features li i {
color: var(--white);
}

.service-link {
display: inline-flex;
align-items: center;
gap: 8px;
color: var(--primary);
font-weight: var(--fw-bold);
transition: all 0.3s ease;
}

.service-link:hover {
gap: 12px;
}

.services-cta {
background: var(--gradient2);
border-radius: 20px;
padding: 40px;
margin-top: 50px;
}

.services-cta p {
font-size: 1.2rem;
margin-bottom: 20px;
color: var(--white);
}

/* واکنش‌گرایی برای بخش خدمات */
@media (max-width: 1200px) {
.services-grid {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
}

@media (max-width: 768px) {
.services-section {
padding: 80px 0;
}

.services-grid {
grid-template-columns: 1fr;
gap: 20px;
}

.service-item {
padding: 30px 20px;
}

.services-cta {
padding: 30px 20px;
}

.services-cta p {
font-size: 1.1rem;
}
}

@media (max-width: 576px) {
.service-icon {
width: 70px;
height: 70px;
}

.service-icon i {
font-size: 28px;
}

.service-item h3 {
font-size: 1.3rem;
}
}
  /* استایل هدر بهبود یافته */
  .glass-header {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 1000;
   backdrop-filter: blur(12px);
   background: var(--glass-bg);
   border-bottom: 1px solid var(--glass-border);
   transition: all 0.4s ease;
   box-shadow: var(--glass-shadow);
}

.glass-header.scrolled {
   background: rgba(20, 15, 30, 0.95);
   padding: 5px 0;
}

.navbar {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 1rem 2rem;
   max-width: 1200px;
   margin: 0 auto;
}

.nav-brand {
   display: flex;
   align-items: center;
   gap: 12px;
   z-index: 1001;
}

.nav-brand .logo {
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background: var(--gradient);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-weight: bold;
   font-size: 20px;
   transition: all 0.3s ease;
   box-shadow: 0 4px 15px rgba(139, 95, 191, 0.4);
}

.nav-brand:hover .logo {
   transform: rotate(15deg) scale(1.1);
}

.brand-name {
   font-weight: 700;
   color: var(--white);
   font-size: 1.4rem;
}

.nav-menu {
   display: flex;
   gap: 2.5rem;
   list-style: none;
   margin: 0;
   padding: 0;
   transition: all 0.4s ease;
}

.nav-link {
   color: var(--text-primary);
   font-weight: 500;
   position: relative;
   padding: 0.5rem 0;
   transition: all 0.3s ease;
   font-size: 1.05rem;
}

.nav-link::after {
   content: '';
   position: absolute;
   bottom: 0;
   right: 0;
   width: 0;
   height: 2px;
   background: var(--gradient);
   transition: width 0.3s ease;
}

.nav-link:hover {
   color: var(--primary-light);
}

.nav-link:hover::after {
   width: 100%;
}

.nav-link.active {
   color: var(--primary-light);
}

.nav-link.active::after {
   width: 100%;
}

.nav-actions {
   display: flex;
   align-items: center;
   gap: 1.2rem;
}

.theme-toggle {
   width: 45px;
   height: 45px;
   border-radius: 50%;
   background: var(--glass-bg);
   backdrop-filter: blur(10px);
   border: 1px solid var(--glass-border);
   color: var(--text-primary);
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 1.2rem;
   transition: all 0.3s ease;
}

.theme-toggle:hover {
   background: var(--gradient);
   color: var(--white);
   transform: rotate(30deg);
}

.cta-button {
   padding: 15px 25px;
   background: var(--primary-dark);
   color: white;
   border: none;
   border-radius: 30px;
   font-weight: 600;
   cursor: pointer;
   transition: all 0.3s ease;
   display: flex;
   align-items: center;
   gap: 8px;
   box-shadow: 0 4px 15px rgba(139, 95, 191, 0.3);
}

.cta-button:hover {
   transform: translateY(-3px);
   box-shadow: 0 6px 20px rgba(139, 95, 191, 0.4);
}

.hamburger-menu {
   display: none;
   flex-direction: column;
   background: none;
   border: none;
   cursor: pointer;
   padding: 0.5rem;
   z-index: 1001;
}

.hamburger-menu span {
   width: 25px;
   height: 3px;
   background: var(--text-primary);
   margin: 3px 0;
   transition: all 0.3s ease;
   transform-origin: center;
   border-radius: 2px;
}

.hamburger-menu.active span:nth-child(1) {
   transform: rotate(45deg) translate(5px, 5px);
}

.hamburger-menu.active span:nth-child(2) {
   opacity: 0;
}

.hamburger-menu.active span:nth-child(3) {
   transform: rotate(-45deg) translate(7px, -6px);
}

/* محتوای نمونه برای نمایش اسکرول */
.content-section {
   height: 100vh;
   padding: 2rem;
   margin-bottom: 2rem;
   border-radius: 15px;
   background: rgba(30, 20, 40, 0.4);
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 2rem;
   backdrop-filter: blur(10px);
   border: 1px solid var(--glass-border);
}

/* رسپانسیو برای موبایل */
@media (max-width: 992px) {
   .nav-menu {
       position: fixed;
       top: 0;
       right: -100%;
       flex-direction: column;
       background: rgba(20, 15, 30, 0.98);
       backdrop-filter: blur(15px);
       width: 70%;
       height: 100vh;
       padding: 6rem 2rem 2rem;
       transition: all 0.4s ease;
       border-left: 1px solid var(--glass-border);
       box-shadow: -5px 0 25px rgba(0, 0, 0, 0.2);
   }
   
   .nav-menu.active {
       right: 0;
   }
   
   .hamburger-menu {
       display: flex;
   }
   
   .nav-actions {
       margin-right: auto;
       margin-left: 1rem;
   }
}

@media (max-width: 576px) {
   .navbar {
       padding: 1rem;
   }
   
   .brand-name {
       font-size: 1.2rem;
   }
   
   .cta-button {
       padding: 10px 18px;
       font-size: 0.9rem;
   }
   
   .theme-toggle {
       width: 40px;
       height: 40px;
   }
}


/* استایل فوتر */
.glass-footer {
position: relative;
background: var(--gradient6);
color: var(--text-primary);
padding-top: 80px;
margin-top: 100px;
}

.footer-wave {
position: absolute;
top: -1px;
left: 0;
width: 100%;
overflow: hidden;
line-height: 0;
}

.footer-wave svg {
position: relative;
display: block;
width: calc(100% + 1.3px);
height: 80px;
}

.footer-wave .shape-fill {
fill: var(--gradient6);
}

.footer-content {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 2rem;
max-width: 1200px;
margin: 0 auto;
padding: 0 2rem 3rem;
}

.footer-section h4 {
color: var(--primary-light);
margin-bottom: 1.5rem;
position: relative;
padding-bottom: 0.5rem;
}

.footer-section h4::after {
content: '';
position: absolute;
bottom: 0;
right: 0;
width: 50px;
height: 2px;
background: var(--gradient2);
}

.footer-logo {
margin-bottom: 1.5rem;
}


.footer-logo .logo {
width: 60px;
height: 60px;
border-radius: 50%;
background: var(--gradient2);
display: flex;
align-items: center;
justify-content: center;
color: white;
font-weight: bold;
font-size: 24px;
margin-bottom: 1rem;
}

.footer-description {
line-height: 1.7;
color: var(--text-secondary);
}

.footer-links {
list-style: none;
padding: 0;
margin: 0;
}

.footer-links li {
margin-bottom: 0.8rem;
}

.footer-links a {
color: var(--text-secondary);
transition: all 0.3s ease;
position: relative;
padding-left: 1rem;
}

.footer-links a::before {
content: '→';
position: absolute;
left: 0;
opacity: 0;
transition: all 0.3s ease;
}

.footer-links a:hover {
color: var(--primary-light);
padding-left: 1.5rem;
}

.footer-links a:hover::before {
opacity: 1;
left: 0.3rem;
}

.contact-item {
display: flex;
align-items: center;
gap: 0.8rem;
margin-bottom: 1rem;
color: var(--text-secondary);
}

.contact-item i {
color: var(--primary-light);
width: 20px;
}

.social-links {
display: flex;
gap: 1rem;
margin-top: 1.5rem;
}

.social-link {
width: 40px;
height: 40px;
border-radius: 50%;
background: rgba(255, 255, 255, 0.1);
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
}

.social-link:hover {
background: var(--gradient2);
transform: translateY(-5px);
}

.footer-bottom {
border-top: 1px solid var(--glass-border);
padding: 1.5rem 2rem;
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 1rem;
max-width: 1200px;
margin: 0 auto;
}

.copyright p {
color: var(--text-secondary);
margin: 0;
}

.footer-badges {
display: flex;
gap: 1rem;
}

.badge {
padding: 0.5rem 1rem;
background: rgba(255, 255, 255, 0.1);
border-radius: 50px;
font-size: 0.9rem;
color: var(--text-secondary);
}

.badge i {
color: #e74c3c;
}

.scroll-top {
position: fixed;
bottom: 2rem;
left: 2rem;
z-index: 999;
}

.scroll-top-btn {
width: 50px;
height: 50px;
border-radius: 50%;
background: var(--gradient2);
border: none;
color: white;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
transition: all 0.3s ease;
opacity: 0;
visibility: hidden;
}

.scroll-top-btn.show {
opacity: 1;
visibility: visible;
}

.scroll-top-btn:hover {
transform: translateY(-5px);
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

/* واکنش‌گرایی */
@media (max-width: 992px) {
.nav-menu {
 position: fixed;
 top: 70px;
 right: -100%;
 flex-direction: column;
 background: rgba(13, 13, 13, 0.95);
 backdrop-filter: blur(10px);
 width: 80%;
 height: calc(100vh - 70px);
 padding: 2rem;
 transition: all 0.4s ease;
 border-left: 1px solid var(--glass-border);
}

.nav-menu.active {
 right: 0;
}

.hamburger-menu {
 display: flex;
}

.hamburger-menu.active span:nth-child(1) {
 transform: rotate(45deg) translate(5px, 5px);
}

.hamburger-menu.active span:nth-child(2) {
 opacity: 0;
}

.hamburger-menu.active span:nth-child(3) {
 transform: rotate(-45deg) translate(7px, -6px);
}

.footer-content {
 grid-template-columns: 1fr;
 text-align: center;
}

.footer-section h4::after {
 right: 50%;
 transform: translateX(50%);
}

.contact-item {
 justify-content: center;
}
}

@media (max-width: 768px) {
.navbar {
 padding: 1rem;
}

.footer-bottom {
 flex-direction: column;
 text-align: center;
}

.scroll-top {
 left: 1rem;
 bottom: 1rem;
}

.scroll-top-btn {
 width: 45px;
 height: 45px;
}
}


  /* خط حاشیه موجی دوم برای عمق بیشتر */
  .footer-wave-border-bottom {
   position: absolute;
   top: -10px;
   right: 0;
   width: 100%;
   overflow: hidden;
   line-height: 0;
   transform: rotate(180deg);
   z-index: 1;
}

.footer-wave-border-bottom svg {
   position: relative;
   display: block;
   width: calc(100% + 1.3px);
   height: 40px;
}

.footer-wave-border-bottom .shape-fill {
   fill: rgba(149, 16, 251, 0.1);
}

/* استایل بخش وبلاگ */
.blog-section {
padding: 100px 0;
position: relative;
overflow: hidden;
background: var(--gradient5);
}

.blog-section::before {
content: '';
position: absolute;
top: -100px;
left: -100px;
width: 400px;
height: 400px;
border-radius: 50%;
background: var(--gradient1);
filter: blur(80px);
z-index: 0;
opacity: 0.2;
}

.blog-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 30px;
margin-bottom: 50px;
}

.blog-card {
background: var(--glass-bg);
border: 1px solid var(--glass-border);
border-radius: 20px;
overflow: hidden;
backdrop-filter: blur(10px);
box-shadow: var(--glass-shadow);
transition: all 0.4s ease;
position: relative;
}

.blog-card:hover {
transform: translateY(-10px);
box-shadow: 0 20px 40px rgba(148, 34, 197, 0.3);
border-color: var(--primary-light);
}

.blog-image {
position: relative;
overflow: hidden;
aspect-ratio: 16/9;
}

.blog-image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: all 0.5s ease;
}

.blog-card:hover .blog-image img {
transform: scale(1.1);
}

.blog-date {
position: absolute;
top: 20px;
left: 20px;
background: var(--gradient2);
color: var(--white);
padding: 12px;
border-radius: 12px;
text-align: center;
line-height: 1.2;
z-index: 2;
}

.date-day {
display: block;
font-size: 1.5rem;
font-weight: var(--fw-bold);
}

.date-month {
font-size: 0.9rem;
}

.blog-content {
padding: 25px;
}

.blog-meta {
display: flex;
justify-content: space-between;
margin-bottom: 15px;
font-size: 0.9rem;
color: var(--text-secondary);
}

.blog-meta span {
display: flex;
align-items: center;
gap: 5px;
}

.blog-meta i {
color: var(--primary);
}

.blog-title {
font-size: 1.3rem;
margin-bottom: 15px;
line-height: 1.4;
}

.blog-title a {
color: var(--white);
transition: all 0.3s ease;
}

.blog-title a:hover {
color: var(--primary-light);
}

.blog-excerpt {
color: var(--text-secondary);
margin-bottom: 20px;
line-height: 1.7;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}

.blog-actions {
display: flex;
justify-content: space-between;
align-items: center;
border-top: 1px solid var(--glass-border);
padding-top: 20px;
}

.blog-read-more {
color: var(--primary);
font-weight: var(--fw-bold);
transition: all 0.3s ease;
display: flex;
align-items: center;
gap: 8px;
}

.blog-read-more:hover {
color: var(--primary-light);
gap: 12px;
}

.blog-stats {
display: flex;
gap: 15px;
color: var(--text-secondary);
font-size: 0.9rem;
}

.blog-stats span {
display: flex;
align-items: center;
gap: 5px;
}

.blog-cta {
margin-top: 40px;
}

/* واکنش‌گرایی برای بخش وبلاگ */
@media (max-width: 992px) {
.blog-grid {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
}

@media (max-width: 768px) {
.blog-section {
padding: 80px 0;
}

.blog-grid {
grid-template-columns: 1fr;
gap: 20px;
}

.blog-meta {
flex-direction: column;
gap: 10px;
}

.blog-actions {
flex-direction: column;
gap: 15px;
align-items: flex-start;
}
}

@media (max-width: 576px) {
.blog-content {
padding: 20px;
}

.blog-title {
font-size: 1.2rem;
}

.blog-stats {
flex-wrap: wrap;
gap: 10px;
}
}



/* بخش مهارت‌ها */
.skills-section {
padding: 100px 0;
position: relative;
overflow: hidden;
background: var(--gradient5);
}

.skills-section::before {
content: '';
position: absolute;
top: -100px;
right: -100px;
width: 400px;
height: 400px;
border-radius: 50%;
background: var(--gradient1);
filter: blur(80px);
z-index: 0;
opacity: 0.2;
}

.skills-container {
margin-top: 60px;
}

.skills-content {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 50px;
align-items: center;
}

.skills-visual {
position: relative;
height: 500px;
display: flex;
align-items: center;
justify-content: center;
}

.orbital-skills {
position: relative;
width: 400px;
height: 400px;
}

.central-circle {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 120px;
height: 120px;
border-radius: 50%;
background: var(--gradient2);
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
color: var(--white);
font-weight: var(--fw-bold);
z-index: 10;
box-shadow: 0 0 30px rgba(139, 95, 191, 0.5);
animation: pulse 2s infinite ease-in-out;
}

.central-circle .core {
position: absolute;
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--white);
opacity: 0.8;
animation: glow 2s infinite alternate;
}

.orbit {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border: 1px solid rgba(139, 95, 191, 0.3);
border-radius: 50%;
}

.orbit-1 {
width: 180px;
height: 180px;
animation: rotate 20s linear infinite;
}

.orbit-2 {
width: 280px;
height: 280px;
animation: rotate 30s linear infinite reverse;
}

.orbit-3 {
width: 380px;
height: 380px;
animation: rotate 40s linear infinite;
}

.skill-node {
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 60px;
height: 60px;
border-radius: 50%;
background: var(--glass-bg);
backdrop-filter: blur(10px);
border: 1px solid var(--glass-border);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.3s ease;
box-shadow: var(--glass-shadow);
}

.skill-node:hover {
transform: translateX(-50%) scale(1.1);
background: var(--gradient2);
box-shadow: 0 5px 15px rgba(139, 95, 191, 0.4);
}

.skill-node:hover .node-icon {
color: var(--white);
}

.orbit-2 .skill-node:nth-child(1) {
transform: translateX(-50%) rotate(90deg);
top: initial;
left: initial;
right: 0;
bottom: 50%;
}

.orbit-2 .skill-node:nth-child(2) {
transform: translateX(-50%) rotate(270deg);
top: initial;
left: initial;
top: 50%;
left: 0;
}

.orbit-3 .skill-node:nth-child(1) {
transform: translateX(-50%) rotate(45deg);
top: initial;
left: initial;
right: 35px;
bottom: 35px;
}

.orbit-3 .skill-node:nth-child(2) {
transform: translateX(-50%) rotate(135deg);
top: initial;
left: initial;
right: 35px;
top: 35px;
}

.orbit-3 .skill-node:nth-child(3) {
transform: translateX(-50%) rotate(225deg);
top: initial;
left: initial;
left: 35px;
top: 35px;
}

.node-icon {
font-size: 24px;
color: var(--primary);
transition: all 0.3s ease;
}

.node-progress {
position: absolute;
bottom: -5px;
left: 50%;
transform: translateX(-50%);
width: 0;
height: 3px;
background: var(--primary);
border-radius: 2px;
transition: width 1.5s ease;
}

.skill-node:hover .node-progress {
width: 80%;
}

.skill-category {
margin-bottom: 40px;
}

.skill-category h3 {
font-size: 1.5rem;
color: var(--primary-light);
margin-bottom: 20px;
display: flex;
align-items: center;
gap: 10px;
}

.skill-category h3 i {
font-size: 1.2rem;
}

.skill-item {
margin-bottom: 25px;
}

.skill-info {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 8px;
}

.skill-name {
font-weight: var(--fw-medium);
color: var(--text-primary);

}

.skill-percent {
   color: var(--primary);
   font-weight: var(--fw-bold);
   font-family: 'peyda', sans-serif ;
   direction: ltr;

   }

.skill-bar {
width: 100%;
height: 8px;
background: rgba(255, 255, 255, 0.1);
border-radius: 10px;
overflow: hidden;
position: relative;
}

.skill-progress {
height: 100%;
border-radius: 10px;
background: var(--gradient2);
width: 0;
position: relative;
transition: width 1.5s ease-in-out;
}

.skill-progress::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
animation: shimmer 2s infinite;
}

@keyframes rotate {
from { transform: translate(-50%, -50%) rotate(0deg); }
to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes glow {
from { box-shadow: 0 0 5px rgba(255, 255, 255, 0.8); }
to { box-shadow: 0 0 20px rgba(255, 255, 255, 1); }
}

@keyframes shimmer {
0% { transform: translateX(-100%); }
100% { transform: translateX(100%); }
}

/* واکنش‌گرایی برای بخش مهارت‌ها */
@media (max-width: 992px) {
.skills-content {
grid-template-columns: 1fr;
gap: 30px;
}

.skills-visual {
height: 400px;
}

.orbital-skills {
width: 300px;
height: 300px;
}

.orbit-1 {
width: 140px;
height: 140px;
}

.orbit-2 {
width: 220px;
height: 220px;
}

.orbit-3 {
width: 300px;
height: 300px;
}

.skill-node {
width: 50px;
height: 50px;
}

.node-icon {
font-size: 20px;
}
}

@media (max-width: 768px) {
.skills-section {
padding: 80px 0;
}

.skills-visual {
height: 350px;
}

.orbital-skills {
width: 250px;
height: 250px;
}

.central-circle {
width: 100px;
height: 100px;
font-size: 14px;
}

.orbit-1 {
width: 120px;
height: 120px;
}

.orbit-2 {
width: 180px;
height: 180px;
}

.orbit-3 {
width: 240px;
height: 240px;
}

.skill-node {
width: 45px;
height: 45px;
}

.node-icon {
font-size: 18px;
}
}

@media (max-width: 576px) {
.skills-visual {
height: 300px;
}

.orbital-skills {
width: 220px;
height: 220px;
}

.orbit-1 {
width: 100px;
height: 100px;
}

.orbit-2 {
width: 150px;
height: 150px;
}

.orbit-3 {
width: 200px;
height: 200px;
}

.skill-node {
width: 40px;
height: 40px;
}

.node-icon {
font-size: 16px;
}

.skill-category h3 {
font-size: 1.3rem;
}
}



/* بخش فرآیند خلاقانه */
.creative-process-section {
padding: 100px 0;
position: relative;
overflow: hidden;
background: var(--gradient6);
}

.process-container {
margin-top: 60px;
position: relative;
z-index: 2;
}

.process-visualization {
position: relative;
margin-bottom: 80px;
}

.creative-journey {
position: relative;
height: 400px;
display: flex;
justify-content: space-between;
align-items: center;
}

.journey-path {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 80%;
height: 8px;
background: var(--gradient2);
border-radius: 10px;
z-index: 1;
}

.journey-path::before,
.journey-path::after {
content: '';
position: absolute;
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--primary);
top: 50%;
transform: translateY(-50%);
animation: pulse 2s infinite;
}

.journey-path::before {
left: -10px;
}

.journey-path::after {
right: -10px;
}

.process-step {
position: absolute;
display: flex;
flex-direction: column;
align-items: center;
width: 220px;
z-index: 2;
transition: all 0.4s ease;
cursor: pointer;
}

.process-step:hover {
transform: translateY(-10px);
}

.process-step.step-1 {
top: 20%;
left: 10%;
}

.process-step.step-2 {
top: 20%;
right: 10%;
}

.process-step.step-3 {
bottom: 20%;
right: 10%;
}

.process-step.step-4 {
bottom: 20%;
left: 10%;
}

.step-icon {
width: 80px;
height: 80px;
border-radius: 50%;
background: var(--glass-bg);
backdrop-filter: blur(10px);
border: 2px solid var(--glass-border);
display: flex;
align-items: center;
justify-content: center;
font-size: 30px;
color: var(--primary);
margin-bottom: 20px;
position: relative;
transition: all 0.4s ease;
box-shadow: var(--glass-shadow);
}

.process-step:hover .step-icon {
background: var(--gradient2);
color: var(--white);
transform: scale(1.1);
box-shadow: 0 10px 25px rgba(139, 95, 191, 0.4);
}

.step-icon::after {
content: '';
position: absolute;
width: 100%;
height: 100%;
border-radius: 50%;
border: 2px solid var(--primary);
opacity: 0;
animation: ripple 2s infinite;
}

.process-step:hover .step-icon::after {
opacity: 0.5;
}

.step-content {
text-align: center;
padding: 20px;
background: var(--glass-bg);
backdrop-filter: blur(10px);
border-radius: 20px;
border: 1px solid var(--glass-border);
box-shadow: var(--glass-shadow);
transition: all 0.4s ease;
}

.process-step:hover .step-content {
background: rgba(139, 95, 191, 0.1);
border-color: var(--primary-light);
}

.step-content h3 {
font-size: 1.3rem;
margin-bottom: 10px;
color: var(--primary-light);
}

.step-content p {
color: var(--text-secondary);
font-size: 0.9rem;
line-height: 1.6;
}

.step-dot {
width: 16px;
height: 16px;
border-radius: 50%;
background: var(--primary);
position: absolute;
bottom: -40px;
box-shadow: 0 0 0 6px rgba(139, 95, 191, 0.2);
transition: all 0.4s ease;
}

.process-step:hover .step-dot {
transform: scale(1.5);
box-shadow: 0 0 0 8px rgba(139, 95, 191, 0.3);
}

.process-details {
background: var(--glass-bg);
backdrop-filter: blur(10px);
border: 1px solid var(--glass-border);
border-radius: 20px;
padding: 40px;
box-shadow: var(--glass-shadow);
max-width: 800px;
margin: 0 auto;
position: relative;
}

.detail-content {
display: none;
animation: fadeIn 0.5s ease;
}

.detail-content.active {
display: block;
}

.detail-content h3 {
color: var(--primary-light);
margin-bottom: 20px;
font-size: 1.8rem;
}

.detail-content p {
color: var(--text-secondary);
margin-bottom: 25px;
line-height: 1.8;
font-size: 1.1rem;
}

.detail-content ul {
list-style: none;
padding: 0;
}

.detail-content ul li {
display: flex;
align-items: center;
margin-bottom: 12px;
color: var(--text-primary);
transition: all 0.3s ease;
}

.detail-content ul li:hover {
transform: translateX(10px);
}

.detail-content ul li i {
color: var(--primary);
margin-left: 10px;
font-size: 14px;
}

.floating-shapes {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 1;
}

.shape {
position: absolute;
border-radius: 50%;
background: var(--gradient1);
opacity: 0.1;
animation: float 6s infinite ease-in-out;
}

.shape-1 {
width: 80px;
height: 80px;
top: 20%;
left: 10%;
animation-delay: 0s;
}

.shape-2 {
width: 60px;
height: 60px;
top: 60%;
left: 15%;
animation-delay: 1s;
}

.shape-3 {
width: 100px;
height: 100px;
top: 30%;
right: 10%;
animation-delay: 2s;
}

.shape-4 {
width: 40px;
height: 40px;
top: 70%;
right: 20%;
animation-delay: 3s;
}

.shape-5 {
width: 120px;
height: 120px;
bottom: 10%;
left: 50%;
transform: translateX(-50%);
animation-delay: 4s;
}

@keyframes ripple {
0% {
transform: scale(1);
opacity: 1;
}
100% {
transform: scale(1.5);
opacity: 0;
}
}

@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}

/* واکنش‌گرایی برای بخش فرآیند خلاقانه */
@media (max-width: 992px) {
.creative-journey {
height: 600px;
flex-direction: column;
justify-content: space-around;
}

.journey-path {
width: 8px;
height: 80%;
left: 50%;
}

.process-step {
position: relative;
top: auto !important;
left: auto !important;
right: auto !important;
bottom: auto !important;
margin-bottom: 40px;
width: 100%;
max-width: 280px;
}

.process-step.step-1,
.process-step.step-2,
.process-step.step-3,
.process-step.step-4 {
position: relative;
margin: 0 auto 40px;
}

.step-dot {
display: none;
}
}

@media (max-width: 768px) {
.creative-process-section {
padding: 80px 0;
}

.process-details {
padding: 30px 20px;
}

.detail-content h3 {
font-size: 1.5rem;
}

.detail-content p {
font-size: 1rem;
}

.step-icon {
width: 70px;
height: 70px;
font-size: 24px;
}

.step-content {
padding: 15px;
}

.step-content h3 {
font-size: 1.2rem;
}
}

@media (max-width: 576px) {
.creative-journey {
height: auto;
}

.journey-path {
display: none;
}

.process-step {
margin-bottom: 30px;
flex-direction: row;
width: 100%;
max-width: 100%;
}

.step-icon {
margin-bottom: 0;
margin-left: 15px;
width: 60px;
height: 60px;
font-size: 20px;
}

.step-content {
text-align: right;
flex: 1;
}

.step-content h3 {
font-size: 1.1rem;
}

.step-content p {
font-size: 0.85rem;
}

.floating-shapes {
display: none;
}
}


/* بخش نظرات مشتریان */
.testimonials-section {
padding: 100px 0;
position: relative;
overflow: hidden;
background: var(--gradient4);
}

.testimonials-container {
position: relative;
margin-bottom: 80px;
z-index: 2;
}

.testimonials-carousel {
display: flex;
overflow: hidden;
margin: 0 -15px;
}

.testimonial-item {
flex: 0 0 100%;
padding: 0 15px;
transition: all 0.5s ease;
opacity: 0;
transform: translateX(50px);
position: absolute;
width: 100%;
}

.testimonial-item.active {
opacity: 1;
transform: translateX(0);
position: relative;
}

.testimonial-card {
background: var(--glass-bg);
backdrop-filter: blur(10px);
border: 1px solid var(--glass-border);
border-radius: 20px;
padding: 40px;
box-shadow: var(--glass-shadow);
position: relative;
transition: all 0.4s ease;
overflow: hidden;
}

.testimonial-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: var(--gradient2);
opacity: 0;
transition: all 0.4s ease;
z-index: 0;
}

.testimonial-card:hover::before {
opacity: 0.05;
}

.testimonial-card:hover {
transform: translateY(-10px);
box-shadow: 0 20px 40px rgba(139, 95, 191, 0.2);
}

.client-image {
width: 90px;
height: 90px;
border-radius: 50%;
overflow: hidden;
margin: 0 auto 25px;
position: relative;
border: 3px solid var(--primary-light);
box-shadow: 0 5px 15px rgba(139, 95, 191, 0.3);
}

.client-image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: all 0.4s ease;
}

.testimonial-card:hover .client-image img {
transform: scale(1.1);
}

.client-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(139, 95, 191, 0.7);
display: flex;
align-items: center;
justify-content: center;
color: white;
font-size: 24px;
opacity: 0;
transition: all 0.4s ease;
border-radius: 50%;
}

.testimonial-card:hover .client-overlay {
opacity: 1;
}

.testimonial-content {
position: relative;
z-index: 1;
text-align: center;
}

.rating {
margin-bottom: 20px;
display: flex;
justify-content: center;
gap: 5px;
}

.rating i {
color: #FFD700;
font-size: 18px;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.testimonial-text {
color: var(--text-secondary);
font-size: 1.1rem;
line-height: 1.8;
margin-bottom: 25px;
font-style: italic;
position: relative;
}

.testimonial-text::before,
.testimonial-text::after {
content: '"';
font-size: 60px;
color: var(--primary);
opacity: 0.2;
position: absolute;
font-family: 'peyda', sans-serif !important;
line-height: 1;
}

.testimonial-text::before {
top: -20px;
right: -10px;
}

.testimonial-text::after {
bottom: -40px;
left: -10px;
}

.client-info {
margin-top: 25px;
}

.client-name {
color: var(--primary-light);
margin-bottom: 5px;
font-size: 1.3rem;
}

.client-position {
color: var(--text-secondary);
font-size: 0.9rem;
}

.quote-icon {
position: absolute;
top: 30px;
left: 30px;
color: var(--primary);
opacity: 0.1;
font-size: 60px;
z-index: 0;
}

.testimonials-controls {
display: flex;
align-items: center;
justify-content: center;
margin-top: 40px;
gap: 20px;
}

.testimonial-prev,
.testimonial-next {
width: 50px;
height: 50px;
border-radius: 50%;
background: var(--gradient2);
border: none;
color: white;
font-size: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
box-shadow: 0 5px 15px rgba(139, 95, 191, 0.3);
}

.testimonial-prev:hover,
.testimonial-next:hover {
transform: translateY(-5px);
box-shadow: 0 8px 20px rgba(139, 95, 191, 0.4);
}

.testimonials-dots {
display: flex;
gap: 10px;
}

.testimonials-dots .dot {
width: 12px;
height: 12px;
border-radius: 50%;
background: rgba(255, 255, 255, 0.2);
cursor: pointer;
transition: all 0.3s ease;
}

.testimonials-dots .dot.active {
background: var(--primary);
transform: scale(1.2);
}

.testimonials-stats {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 30px;
margin-top: 50px;
font-family: Vazirmatn, sans-serif;

}

.stat-item {
background: var(--glass-bg);
backdrop-filter: blur(10px);
border: 1px solid var(--glass-border);
border-radius: 15px;
padding: 25px;
display: flex;
align-items: center;
gap: 20px;
transition: all 0.4s ease;
box-shadow: var(--glass-shadow);
}

.stat-item:hover {
transform: translateY(-5px);
background: rgba(139, 95, 191, 0.1);
}

.stat-icon {
width: 60px;
height: 60px;
border-radius: 50%;
background: var(--gradient2);
display: flex;
align-items: center;
justify-content: center;
font-size: 24px;
color: white;
flex-shrink: 0;
}

.stat-content h3 {
font-size: 2.5rem;
margin-bottom: 5px;
background: var(--gradient2);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.stat-content p {
color: var(--text-secondary);
margin: 0;
}

.testimonials-particles {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 1;
}

.particle {
position: absolute;
border-radius: 50%;
background: var(--gradient1);
opacity: 0.1;
animation: floatParticle 15s infinite linear;
}

.particle-1 {
width: 20px;
height: 20px;
top: 20%;
left: 10%;
animation-delay: 0s;
}

.particle-2 {
width: 15px;
height: 15px;
top: 60%;
left: 15%;
animation-delay: 2s;
}

.particle-3 {
width: 25px;
height: 25px;
top: 30%;
right: 10%;
animation-delay: 4s;
}

.particle-4 {
width: 10px;
height: 10px;
top: 70%;
right: 20%;
animation-delay: 6s;
}

.particle-5 {
width: 18px;
height: 18px;
bottom: 20%;
left: 30%;
animation-delay: 8s;
}

.particle-6 {
width: 12px;
height: 12px;
bottom: 40%;
right: 30%;
animation-delay: 10s;
}

.particle-7 {
width: 22px;
height: 22px;
top: 50%;
left: 40%;
animation-delay: 12s;
}

.particle-8 {
width: 17px;
height: 17px;
bottom: 30%;
right: 10%;
animation-delay: 14s;
}

@keyframes floatParticle {
0% {
transform: translateY(0) rotate(0deg);
opacity: 0.1;
}
25% {
transform: translateY(-20px) rotate(90deg);
opacity: 0.2;
}
50% {
transform: translateY(0) rotate(180deg);
opacity: 0.3;
}
75% {
transform: translateY(20px) rotate(270deg);
opacity: 0.2;
}
100% {
transform: translateY(0) rotate(360deg);
opacity: 0.1;
}
}

/* واکنش‌گرایی برای بخش نظرات مشتریان */
@media (max-width: 992px) {
.testimonials-stats {
grid-template-columns: repeat(2, 1fr);
}
}


.persian-number {
   font-family: 'Iranian Sans', 'B Nazanin', 'IRANSans', Tahoma, sans-serif;
   direction: ltr;
   display: inline-block;
}

@media (max-width: 768px) {
.testimonials-section {
padding: 80px 0;
}

.testimonial-card {
padding: 30px 20px;
}

.testimonial-text {
font-size: 1rem;
}

.client-name {
font-size: 1.2rem;
}

.stat-item {
flex-direction: column;
text-align: center;
padding: 20px;
}

.stat-content h3 {
font-size: 2rem;
}
}

@media (max-width: 576px) {
.testimonials-stats {
grid-template-columns: 1fr;
}

.testimonials-controls {
flex-wrap: wrap;
}

.testimonial-prev,
.testimonial-next {
width: 40px;
height: 40px;
font-size: 16px;
}

.client-image {
width: 70px;
height: 70px;
}

.quote-icon {
top: 20px;
left: 20px;
font-size: 40px;
}

.testimonial-text::before,
.testimonial-text::after {
font-size: 40px;
}

.testimonial-text::before {
top: -15px;
right: -5px;
}

.testimonial-text::after {
bottom: -30px;
left: -5px;
}
}
