/* ====================================================================
YARA - ONE PAGE TEMPLATE
======================================================================= 
 Theme Name: YARA
 Theme URI: http://
 Description: Personal Portfolio Template
 Author: gecdesigns
*/



/*=================================================
 == Table Of Content

    1. TYPOGRAPHY 
    2. GLOBAL STYLES
    3. NAVGITION
    4. HEADER 
    5. ABOUT
    6. SERVICES
    7. COUNT
    8. PORTFOLIO
    9. PROJECT-AREA
    10. TESTIMONIALS   
    11. BLOG
    12. SUBSCRIBE
    13. CONTACT
    14. FOOTER

*/

@font-face {
    font-family: 'BYekan';
    src: url('../fonts/BYekan.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}



/*---------------------------------------
  1. TYPOGRAPHY                
-----------------------------------------*/
/* FONTS */
@import url("https://fonts.googleapis.com/css?family=Poppins");

/* --------------------------------------
  2. GLOBAL STYLES
-----------------------------------------*/
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    box-sizing: border-box;
    font-size: 62.5%;
}

/*------ width < 75em ------*/
@media only screen and (max-width: 75em) {
    html {
        font-size: 56.25%;
    }
}

/*------ width < 61.94em ------*/
@media only screen and (max-width: 61.94em) {
    html {
        font-size: 53.13%;
    }
}

/*------ width < 48em ------*/
@media only screen and (max-width: 48em) {
    html {
        font-size: 50%;
    }
}

body {
    font-family: 'BYekan', 'Poppins', sans-serif;
    background-color: var(--background_color); /* #353434 */
    font-size: 1.6rem;
    color: var(--white_color); /* #fff */
    line-height: 1.6;
    letter-spacing: .08rem;
    font-weight: 400;
}

.section-title .title {
    font-size: 40px;
    position: relative;
    text-transform: capitalize;
}

@media (max-width: 767px) {
    .section-title .title {
        font-size: 34px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .section-title .title {
        font-size: 40px;
    }
}

.section-title .title::before {
    display: block;
    content: '';
    width: 100px;
    height: 5px;
    background-color: var(--red_f06_color); /* #ff0066 */
    margin-bottom: 15px;
}

.section-title p {
    line-height: 30px;
}

@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .section-title p {
        padding: 0 0 30px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .section-title p {
        padding: 0 0 30px;
        font-size: 14px;
        line-height: 26px;
    }

    .section-title .title::before {
        margin-top: 20px;
    }
}

@media (max-width: 767px) {
    .section-title p {
        padding: 0 0 30px;
        font-size: 14px;
        line-height: 26px;
    }

    .section-title .title::before {
        margin-top: 20px;
    }
}

ul,
ol {
    padding: 0;
    margin: 0;
}

li {
    list-style: none;
}

img {
    width: 100%;
    height: auto;
}

a,
a:hover,
a:focus,
a:active {
    text-decoration: none;
    outline: none;
    color: var(--background_color); /* #353434 */
}

button,
button:hover,
button:focus,
button:active {
    text-decoration: none;
    outline: none;
}

/* Custom search icon button */
.search-icon-button {
    /* Override y-button's default width if necessary */
    width: 80px; /* Or a value that matches your input field's height */
    height: 60px; /* Or a value that matches your input field's height */
    padding: 0; /* Reset padding, flex will center the icon */
    display: flex;
    align-items: center;
    justify-content: center;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    /* Ensure the border matches the input field or remove if input-group handles it */
    /* border: 1px solid #ced4da; /* Example: Bootstrap's default input border color */
    /* border-left: none; /* Important if it's appended to an input */
}

/* Ensure y-button specifics don't conflict when search-icon-button is also applied */
.y-button.search-icon-button {
    width: 80px; /* Explicitly set width */
    height: 65px; /* Explicitly set height */
    line-height: normal; /* Override y-button's line-height if it's fixed */
    /* padding: 0; /* y-button might have its own padding */
}


.search-icon-button i {
    /* Icon is centered by flex, no specific margin/padding needed unless for size adjustment */
    font-size: 2.5rem; /* Adjust this value to make the icon larger or smaller */
}

.padding {
    padding: 120px 0;
    position: relative;
}

/*------------ PRELOADER --------*/
.preloader {
    background-color: var(--dark_333_color); /* #333333 */
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999999;
    overflow: hidden;
}

.d-table {
    width: 100%;
    height: 100%;
}

.preloader .spinner {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    background-color: var(--red_f06_color); /* #ff0066 */
    border-radius: 100%;
    -webkit-animation: scaleout 1s infinite ease-in-out;
    animation: scaleout 1s infinite ease-in-out;
}

/*------ scaleout ------*/
@-webkit-keyframes scaleout {
    0% {
        -webkit-transform: scale(0);
    }

    100% {
        -webkit-transform: scale(1);
        opacity: 0;
    }
}

/*------ scaleout ------*/
@keyframes scaleout {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}

.loaded .d-table {
    opacity: 0;
    -webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.loaded .preloader {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: all 1s ease-out;
    transition: all 1s ease-out;
}

/*------ Scroll to Top------- */
#scroll-to-top {
    cursor: pointer;
    position: fixed;
    bottom: 20px;
    right: 20px;
    border-radius: 50%;
    display: none;
    z-index: 9;
    background: var(--red_f06_color); /* #ff0066 */
    color: var(--white_color); /* #fff */
    transition: all .3s;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -o-transition: all .3s;
    -ms-transition: all .3s;
}

#scroll-to-top i {
    display: block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    font-size: 14px;
}

#scroll-to-top:hover {
    background: var(--white_color); /* #fff */
    color: var(--red_f06_color); /* #ff0066 */
    transform: scale(1.2);
}

/*------ button------- */

.y-button {
    display: inline-block;
    font-size: 14px;
    letter-spacing: 2px;
    color: var(--white_color); /* #fff */
    background-color: var(--red_f06_color); /* #ff0066 */
    border-radius: 6px;
    line-height: 50px;
    height: 50px;
    width: 150px;
    font-weight: 600;
    text-align: center;
    transition: all .5s;
    box-shadow: 0 15px 40px -10px rgba(0, 0, 0, 0.3);
    overflow: hidden;
}

.y-button:hover,
.y-button:focus {
    color: var(--dark_color); /* #000 */
    background: var(--white_color); /* #fff */
    transition: all 2s ease-in-out;
}

/* --------------------------------------
  3. NAVIGATION
-----------------------------------------*/
.navbar {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    border: 0;
    background: var(--dark_333_color); /* #333333 */
    z-index: 99;
    min-height: 80px;
    box-shadow: 0px 34px 150px 0px rgba(0, 0, 0, 0.5);
    transition: all 0.5s
}

nav.scrollUp {
    transform: translateY(-90px);
}

.navbar-brand .logo {
    width: 50%;
    height: 50%;
    margin-left: 2rem;
}

.navbar .icon-bar {
    color: var(--white_color); /* #fff */
    margin-right: 15px;
}

.navbar .navbar-nav .active {
    color: var(--red_f06_color) !important; /* rgb(255, 0, 102) */
}

.navbar .navbar-nav .nav-link:hover {
    -webkit-transition: all 200ms ease-in;
    -webkit-transform: scale(1.1);
    -ms-transition: all 200ms ease-in;
    -ms-transform: scale(1.1);
    -moz-transition: all 200ms ease-in;
    -moz-transform: scale(1.1);
    transition: all 200ms ease-in;
    transform: scale(1.1);
}

.navbar-collapse .navbar-nav .nav-link {
    text-align: center;
    color: var(--white_color); /* #fff */
    padding: 15px;
    margin: 1rem;
    font-weight: 500;
    letter-spacing: 1px;
}

/*---------------------------------------
  4. HEADER                
-----------------------------------------*/
.home {
    padding: 30rem 0;
    background: url("../img/hero.jpg") no-repeat center;
    background-size: cover;
    clip-path: circle(78.1% at 64% 0);
}

.home-content h1 {
    font-size: 10rem;
    font-weight: 900;
    color: var(--white_color); /* #fff */
    display: block;
    overflow: hidden;
    animation: moveInLeft 3s ease-out;
    animation-delay: 2s;
    animation-duration: 4s;
}

.home-content h4 {
    font-size: 2rem;
    display: block;
    overflow: hidden;
    animation: fadeInRight 3s ease-out;
    animation-delay: 2s;
    animation-duration: 3s;
}

/*------ moveInLeft ------*/
@keyframes moveInLeft {
    0% {
        opacity: 0;
        transform: translateX(-10rem);
    }

    80% {
        transform: translateX(1rem);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

/*------ fadeInRight ------*/
@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(10rem);
    }

    80% {
        transform: translateX(1rem);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

/*------ width < 991px ------*/
@media (max-width: 991px) {
    .home {
        padding: 23rem 0;
    }
}

/*------ width < 768px ------*/
@media (max-width: 768px) {
    .home {
        padding: 25rem 0;
    }

    .home-content {
        margin-top: 20px;
        text-align: center;
    }

    .home-content h1 {
        margin-top: 20px;
        font-size: 5rem;
    }

    .home-content h4 {
        font-size: 1.8rem;
    }
}

/* --------------------------------------
  5. ABOUT
-----------------------------------------*/
.about .about_img_box {
    position: relative;
}

.about .about_img_box .about_img {
    position: relative;
    z-index: 1;
}

.about .about_img_box .about_img:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    left: -40px;
    top: 40px;
    background: var(--dark_color); /* #000 */
    border-radius: 50px;
    z-index: -1;
}

.about .about_img_box .about_img img {
    border-radius: 20px;
}

.about .about_img_box .experience_box {
    position: absolute;
    left: 0px;
    top: 50%;
    margin-top: -75px;
    width: 150px;
    height: 150px;
    background-color: var(--red_f06_color); /* #ff0066 */
    text-align: center;
    padding-top: 31px;
    padding-bottom: 31px;
    z-index: 1;
}

.about .about_img_box .experience_box h3 {
    color: var(--white_color); /* #fff */
    font-weight: 600;
    font-size: 30px;
    text-shadow: -1px -1px 0 var(--dark_333_color), -1px -1px 0 var(--dark_333_color); /* #333333 */
}

.about .about_img_box .experience_box span {
    color: var(--white_color); /* #fff */
    font-size: 18px;
    font-weight: 400;
    display: block;
    margin-top: -1px
}

.about .about_content_box {
    display: table;
    margin-top: -5px;
}

.about .about_content_box p,
.about .about_content_box h2 {
    color: var(--white_color); /* #fff */
    padding-bottom: 20px;
}

.about .about_content_box p {
    margin-bottom: 29px;
    display: inline-table;
}

/*------ width 1200 > 991px ------*/
@media only screen and (min-width: 992px) and (max-width : 1200px) {

    .about .about_content_box h2 {
        font-size: 32px;
    }

    .about .about_content_box h2:after {
        margin-bottom: 20px;
    }

    .about .about_content_box p {
        margin-bottom: 10px;
    }

}

/*------ width 991 > 768px ------*/
@media only screen and (min-width: 768px) and (max-width : 991px) {
    .about .about_img_box {
        margin-bottom: 60px;
    }

    .about .about_content_box h2 {
        font-size: 28px;
    }
}

/*------ width < 768px ------*/
@media only screen and (max-width : 767px) {

    .about .about_img_box {
        margin-bottom: 60px;
    }

    .about .about_content_box h2 {
        font-size: 28px;
    }

    .about .about_img_box .experience_box {
        top: 60%;
    }
}

/*------ width < 320px ------*/
@media only screen and (max-width : 320px) {
    .about .about_content_box h2 {
        font-size: 22px;
    }
}

/*------ width 450 < 768px ------*/
@media only screen and (min-width: 450px) and (max-width : 767px) {
    .about .about_img_box .experience_box {
        top: 50%;
    }
}

/* --------------------------------------
  6. SERVICES
-----------------------------------------*/
.services .section-title .title {
    padding-bottom: 28px;
}

.services .single-sevices {
    padding: 100px 40px 20px;
    border-radius: 10px;
    box-shadow: 0px 34px 150px 0px rgba(0, 0, 0, 0.1);
    margin-top: 115px;
    position: relative;
}

/*------ width < 768px ------*/
@media (max-width: 767px) {
    .services .single-sevices {
        padding: 100px 20px 60px;
    }
}

/*------ width 576 < 768px ------*/
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .services .single-sevices {
        padding: 100px 40px 60px;
    }
}

.services .single-sevices i {
    height: 130px;
    width: 130px;
    background: var(--red_f06_color); /* #ff0066 */
    border-radius: 50%;
    text-align: center;
    line-height: 130px;
    color: var(--white_color); /* #fff */
    font-size: 60px;
    position: absolute;
    left: 40px;
    top: -75px;
    transition: all linear 0.4s;
    box-shadow: 0px 30px 30px -15px rgba(0, 0, 0, 0.75);
}

.services .single-sevices .title {
    font-size: 24px;
    font-weight: 500;
}

.services .single-sevices p {
    line-height: 30px;
    padding-top: 10px;
    color: var(--dark_333_color); /* #333333 */
}

/*------ width 1200 > 991px ------*/
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .services .single-sevices p {
        font-size: 14px;
    }
}

.services .single-sevices:hover i {
    background: var(--white_color); /* #fff */
    color: var(--red_f06_color); /* #ff0066 */
    box-shadow: none;
}

/* --------------------------------------
  7. COUNT
-----------------------------------------*/
.counts {
    padding: 80px 0;
    background: url("../img/count-bg.jpg") no-repeat fixed center;
    background-size: cover;
}

.skill_box {
    text-align: center;
}

.skill_box .chart {
    position: relative;
    width: 140px;
    height: 140px;
    line-height: 140px;
    text-align: center;
    margin: 0 auto;
    font-weight: 600;
    font-size: 32px;
    color: var(--dark_333_color); /* #333333 */
}

.counts .chart {
    border-radius: 50%;
    box-shadow: 0px 30px 30px -15px rgba(0, 0, 0, 0.45);
}

.skill_box canvas {
    position: absolute;
    left: 0;
    top: 0;
}

.skill_box h4 {
    font-weight: 400;
    color: var(--dark_333_color); /* #333333 */
    margin-top: 36px;
}

/* ----------------------------------------------------------------
  8. PORFOLIO
-----------------------------------------------------------------*/
.portfolio .port-title h2 {
    margin-bottom: 60px;
}

.portfolio .section-title .title {
    padding-bottom: 28px;
}

.portfolio .filtr-item {
    padding: 20px;
}
/* 
.portfolio .port-caption {
    position: relative;
    width: 100%;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

.portfolio .port-caption img {
    height: auto;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
    top: 0;
    left: 0;
}

.portfolio .port-caption .overlay {
    position: absolute;
    background: var(--red_f06_color);
    height: 30%;
    left: 0;
    bottom: 0;
    width: 100%;
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.portfolio .port-caption .view-more {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.portfolio .port-caption .view-more .title {
    text-align: center;
    font-size: 18px;
    padding-bottom: 10px;
}

.portfolio .port-caption .view-more .fa {
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
    opacity: 0;
    background: var(--white_color); 
    -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    display: inline-block;
    line-height: 40px;
    font-size: 20px;
    text-align: center;
    text-decoration: none;
    width: 40px;
    height: 40px;
    margin: 0 1px;
    color: var(--red_f06_color_0_9); 
    -webkit-transition: all 0.3s cubic-bezier(0, 1.135, 0.73, 1.405);
    -moz-transition: all 0.3s cubic-bezier(0, 1.135, 0.73, 1.405);
    -o-transition: all 0.3s cubic-bezier(0, 1.135, 0.73, 1.405);
    transition: all 0.3s cubic-bezier(0, 1.135, 0.73, 1.405);
}

.portfolio .port-caption .view-more .fa-search {
    -webkit-transition-delay: 0.1s;
    -moz-transition-delay: 0.1s;
    -ms-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

.portfolio .port-caption:hover .view-more .fa {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

.portfolio .port-caption:hover .overlay {
    opacity: 1;
}

.portfolio .port-caption:focus,
.portfolio .filtr-item:focus,
.portfolio .port-caption img:focus,
.portfolio .port-caption a:focus {
    outline: none;
} */

/* --------------------------------------
  9.PROJECT-AREA
-----------------------------------------*/

.project-area {
    background-repeat: no-repeat !important;
    background-position: center top !important;
    color: var(--dark_333_color); /* #333333 */
}

/* --------------------------------------
  10.TESTIMONIALS
-----------------------------------------*/
.testi-area {
    padding: 110px 0 160px
}

.testi-area .section-title p {
    padding-bottom: 40px;
}

.testi-single {
    border-radius: 10px;
    padding: 20px 30px 30px;
    background-color: var(--white_color); /* #fff */
    border: 1px solid  var(--border_e6f0fa_color); /* #e6f0fa */
    color: var(--dark_333_color); /* #333333 */
    margin: 15px;
    transition: all 0.3s ease;
}

.testi-single img {
    max-width: 80px;
    border-radius: 50%;
    margin: 0 auto;
    box-shadow: 0px 30px 30px -15px rgba(0, 0, 0, 0.35);
}

.client-comment p i {
    color: var(--red_f06_color); /* #ff0066 */
    font-size: 16px;
}

.testi-single .client-info {
    margin: 30px 0 0;
    overflow: hidden;
}

.client-details h4 {
    color: var(--red_f06_color); /* #ff0066 */
    font-weight: 600;
    margin: 15px 0 0
}

.client-details {
    margin: 8px 0 0;
}

.client-details p {
    font-size: 16px;
    padding-top: 5px;
}

.client-comment span {
    color: var(--dark_333_color); /* #333333 */
    font-size: 40px;
    display: inline-block;
}

.client-comment p {
    font-size: 14px;
}

.testi-carousel .owl-nav {
    width: 200px;
    margin: 40px auto 0;
}

.testi-carousel {
    direction: ltr; /* برای درست کار کردن اسلایدر */
}

.testi-carousel .owl-stage {
    display: flex;
    align-items: center;
}

.testi-carousel .owl-nav i {
    left: 0;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 40px;
    font-size: 20px;
    border-radius: 4px;
    margin-left: 30px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    border: 1px solid var(border_e6f0fa_color); /*  rgba(229, 240, 255, 0.5) */
    background-color: var(--white_color); /* #fff */
    color: var(--red_f06_color); /* #ff0066 */
}

.testi-carousel .owl-nav i:hover {
    background-color: var(--red_f06_color); /* #ff0066 */
    color: var(--white_color); /* #fff */
    border: none;
}

.quote-wrapper {
    position: relative;
    padding: 20px;
}

.quote-start {
    position: absolute;
    top: 0;
    left: 0;
    color: var(--red_f06_color);
    font-size: 24px;
}

.quote-end {
    position: absolute;
    bottom: 0;
    right: 0;
    color: var(--red_f06_color);
    font-size: 24px;
}

.quote-icon {
    font-size: 16px;
    color: var(--red_f06_color);
    opacity: 0.7;
    display: inline-block;
    margin-bottom: 10px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .testi-area {
        padding: 90px 0 140px;
    }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
    .testi-area {
        padding: 70px 0 120px;
    }
}

@media only screen and (min-width: 360px) and (max-width: 479px) {
    .testi-area {
        padding: 70px 0 120px;
    }
}

@media only screen and (min-width: 320px) and (max-width: 359px) {
    .testi-area {
        padding: 70px 0 120px;
    }
}

/* --------------------------------------
  11. BLOG
-----------------------------------------*/
.blog-area .section-title .title {
    padding-bottom: 37px;
}

.blog-area .single-blog .blog-thumb {
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}

.blog-area .single-blog .blog-thumb .blog-overlay {
    position: absolute;
    left: 100%; /* تغییر از right به left */
    top: 0;
    width: 100%;
    height: 100%;
    background: var(--red_0_5_color); /* rgba(255, 0, 102, 0.5) */
    -webkit-transition: all 0.4s ease-out 0s;
    -moz-transition: all 0.4s ease-out 0s;
    -ms-transition: all 0.4s ease-out 0s;
    -o-transition: all 0.4s ease-out 0s;
    transition: all 0.4s ease-out 0s;
}

.blog-area .single-blog .blog-thumb .blog-overlay a {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: var(--white_color); /* #fff */
    font-size: 20px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    border-radius: 50%;
    border: 1px solid var(--white_color); /* #fff */
}

.blog-area .single-blog .blog-thumb img {
    width: 100%;
    -webkit-transition: all 0.5s ease-out 0s;
    -moz-transition: all 0.5s ease-out 0s;
    -ms-transition: all 0.5s ease-out 0s;
    -o-transition: all 0.5s ease-out 0s;
    transition: all 0.5s ease-out 0s;
    overflow: hidden;
}

/* New styles for category and date */
.blog-area .single-blog .blog-content .category-badge {
    background-color: var(--red_0_5_color); /* rgba(255, 0, 102, 0.5) */
    color: var(--white_color); /* #000 */
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 14px;
}

.blog-area .single-blog .blog-content .article-date {
    color: var(--white_0_5_color); /* #28a745 */
}

.blog-area .single-blog .blog-content .article-author {
    color: var(--white_0_5_color); /* #666 */
}

.article-detail-area {
    padding-top: 150px;
    padding-bottom: 50px;
}

.article-header h1 {
    font-size: 2.5rem; /* اندازه فونت عنوان مقاله */
    margin-bottom: 20px;
    color: var(--white_color); /* استفاده از متغیر رنگ عنوان اگر تعریف شده باشد */
}

.article-meta-box {
    background-color: var(--red_0_5_color);
    color: var(--white_0_8_color);
    padding: 15px;
    border-radius: 5px;
    margin-bottom: 30px;
}

.article-meta-box span {
    margin-left: 25px; /* فاصله بین آیتم‌های متا */
    font-size: 1.2rem;
}

.article-meta-box span:last-child {
    margin-left: 0;
}

.article-top-image img {
    max-width: 100%;
    height: auto;
    border: 2px solid  var(--white_color);
}

.article-content {
    line-height: 2;
    font-size: 1.5rem;
}

.article-content img {
    max-width: 100%;
    height: auto;
    margin-top: 15px;
    margin-bottom: 15px;
    border-radius: 5px;
}

.blog-area .single-blog .blog-content span {
    color: var(--gray_666_color); /* #666666 */
    text-transform: capitalize;
    padding-top: 22px;
    padding-bottom: 16px;
}

.blog-area .single-blog .blog-content ul li {
    font-weight: 300;
    display: inline-block;
    margin-right: 20px;
    margin-bottom: 15px;
    color: var(--dark_color); /* #000 */
}

.blog-area .single-blog .blog-content .title {
    font-size: 18px;
    font-weight: 600;
    line-height: 30px;
    padding-left: 100px; 
    -webkit-transition: all 0.3s ease-out 0s;
    -moz-transition: all 0.3s ease-out 0s;
    -ms-transition: all 0.3s ease-out 0s;
    -o-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;

}

.blog-area .single-blog .blog-content p {
    color: var(--gray_afa_color); /* #afafaf */
}

@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .blog-area .single-blog .blog-content .title {
        padding-left: 20px; /* تغییر از padding-right به padding-left */
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .blog-area .single-blog .blog-content .title {
        padding-left: 60px; /* تغییر از padding-right به padding-left */
    }
}

@media (max-width: 767px) {
    .blog-area .single-blog .blog-content .title {
        padding-left: 0px; /* تغییر از padding-right به padding-left */
        font-size: 18px;
    }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .blog-area .single-blog .blog-content .title {
        padding-left: 50px; /* تغییر از padding-right به padding-left */
        font-size: 20px;
    }
}

.blog-area .single-blog:hover .blog-thumb .blog-overlay {
    left: 0; /* تغییر از right به left */
}

.blog-area .single-blog:hover .blog-content .title {
    color: var(--red_f06_color); /* #ff0066 */
}


/* ----------------------------------------------------------------
  12. SUBSCRIBE
-----------------------------------------------------------------*/
.subscribe {
    padding: 80px 0;
    color: var(--dark_333_color); /* #333333 */
    background: var(--white_color); /* #fff */
}

.subscribe h2 {
    font-size: 50px;
}

.subs-container form .input-group {
    padding: 2rem 20rem;
}

.subscribe .form-control {
    height: 50px;
    border: 1px solid var(--red_f06_color); /* #ff0066 */
    border-radius: 0;
    font-size: 15px;
    padding-left: 2rem;
}

.subscribe .form-control:focus {
    -webkit-box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.2);
}

.subscribe .btn {
    height: 50px !important;
    border-radius: 0;
    color: var(--dark_333_color); /* #333333 */
    border: 1px solid var(--red_f06_color); /* #ff0066 */
    background: var(--red_f06_color); /* #ff0066 */
    font-size: 15px;
    padding: 0 2rem;
}

.subscribe .btn:hover i {
    color: var(--dark_333_color); /* #333333 */
    transition: all 0.50s ease;
}

/*------ width < 991px ------*/
@media only screen and (max-width:991px) {
    .subs-container form .input-group {
        padding: 2rem 2rem;
    }
}

/* --------------------------------------
  13. CONTACT
-----------------------------------------*/
.contact-area .contact-form {
    background: var(--dark_333_color); /* #333333 */
}

/* Change Autocomplete styles in Chrome*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
    background-color: var(--dark_333_color); /* #333333 */
}

.contact .contact-form input {
    border-radius: .2rem;
}

.form-group {
    position: relative;
    margin-bottom: 30px;
}

.contact-form {
    padding: 5rem 0;
    background: whitesmoke;
    border-radius: 5px;
}

.form-control {
    width: 100%;
    height: 60px;
    color: var(--white_f_color); /* #ffffff */
    font-size: 14px;
    background-color: var(--dark_333_color); /* #333333 */
    padding: 20px;
}

.form-control::placeholder {
    color: var(--white_color); /* #fff */
}

textarea.form-control {
    min-height: 200px;
    max-height: 500px;
    display: inherit;
    padding: 12px 20px;
}

.contact-area .contact-form .y-button {
    width: 200px;
}

/* Article Search Form */
.search-form .input-group {
    position: relative;
}

.search-form .form-control {
    padding-left: 60px; /* Space for the clear button */
}

.search-form .clear-button-container {
    position: absolute;
    left: 2px;
    top: 1px;
    bottom: 1px;
    width: 58px; /* Makes it a square based on input height (60px) - 2px border */
    z-index: 4;
}

.search-form .clear-search-button {
    height: 100%;
    width: 100%; /* Fill the container */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}



/*---------------------------------------
  14.FOOTER
  ---------------------------------------*/
.footer {
    padding: 80px 0;
    background: var(--dark_color); /* #000 */
}

.footer_top {
    padding: 50px 0;
    border-bottom: 1px solid var(--gray_666_color); /* #666666 */
}

/*------ width < 991px ------*/
@media (max-width: 991px) {
    .footer .footer_top {
        text-align: center;
    }

    .footer .social_link {
        float: none;
    }

}

/*------ width < 767px ------*/
@media (max-width: 767px) {
    .footer .footer-list {
        padding: 15px 0;
    }
}

.footer .footer-list ul li {
    display: inline-block;
}

.footer .footer-list ul li a {
    color: var(--white_color); /* #fff */
    text-transform: capitalize;
    font-weight: 500;
    margin: 0 14px;
    -webkit-transition: all 0.3s ease-out 0s;
    -moz-transition: all 0.3s ease-out 0s;
    -ms-transition: all 0.3s ease-out 0s;
    -o-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
}

@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .footer .footer-list ul li a {
        font-size: 14px;
        margin: 0 10px;
    }
}

@media (max-width: 767px) {
    .footer .footer-list ul li a {
        font-size: 14px;
        margin: 0 8px;
    }
}

.footer .footer-list ul li a:hover {
    color: var(--red_f06_color); /* #ff0066 */
}

.social_link {
    float: right;
}

.social_link ul li {
    display: inline-block;
    margin-left: 27px;
}

.social_link ul li a {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 50%;
    border: 1px solid var(--white_color); /* #fff */
    color: var(--white_color); /* #fff */
    background-color: transparent;
    transition: all .3s;
}

.social_link ul li a:hover,
.social_link ul li a:focus {
    background-color: var(--red_f06_color); /* #ff0066 */
    color: var(--white_color); /* #fff */
    border-color: var(--red_f06_color); /* #ff0066 */
}

.footer_copyright {
    padding: 23px 0 25px;
}

.footer_copyright .copyright_text p {
    color: var(--white_f_color); /* #FFF */
}

.text-center {
    text-align: center !important;
}

.pagination-block {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-top: 100px;
    margin-bottom: 48px;
    clear: both;
    width: 100%;
    position: relative;
    z-index: 1;
    flex-basis: 100%;
    flex-grow: 1;
    align-self: stretch;
}

/* Masonry Grid for Portfolio Section */


.pinterest-grid {
  column-width: 300px;
  column-gap: 24px;
  direction: rtl;
}

.pinterest-item {
  break-inside: avoid;
  margin-bottom: 24px;
  width: 100%;
}

.image-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}

.image-wrapper img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 10px;
  transition: transform 0.3s ease;
}

.image-wrapper:hover img {
  transform: scale(1.03);
}

.overlay {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: var(--red_0_5_color);
  color: var(--white_color);
  opacity: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  text-align: center;
  transition: opacity 0.4s ease;
}

.image-wrapper:hover .overlay {
  opacity: 1;
}

.overlay h3,
.overlay-icons {
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.4s ease;
}

.image-wrapper:hover .overlay h3 {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.1s;
}

.image-wrapper:hover .overlay-icons {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.2s;
}

.overlay h3 {
  font-size: 1.4rem;
  margin-bottom: 0.5rem;
}

.overlay-icons {
  margin-top: 0.5rem;
  display: flex;
  gap: 1rem;
}

.zoom-icon {
  color: var(--white_color);
  font-size: 2rem;
  transition: transform 0.3s ease;
}

.zoom-icon:hover {
  transform: scale(1.2);
}

/* Lightbox caption styling */
.lightbox-caption {
  direction: rtl;
  text-align: right;
  padding: 1rem;
  background: #fff;
  color: #000;
  font-size: 1rem;
}

.scrollable-description {
  max-height: 200px;
  overflow-y: auto;
  line-height: 1.6;
  text-align: right;
  direction: rtl;
}

/* Empty state styling */
.no-items-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 3rem 0;
  text-align: center;
}

.no-items-container p {
  margin: 0.5rem 0;
  font-size: 1.1rem;
}


  