/* ==========================
   RESET
========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    direction:rtl;
    font-family:tahoma,sans-serif;
    background:#f7f9fc;
    color:#222;
    line-height:1.8;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

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

/* ==========================
   CONTAINER
========================== */

.container{
    width:90%;
    max-width:1300px;
    margin:auto;
}

/* ==========================
   HEADER
========================== */

.header{
    position:fixed;
    top:0;
    right:0;
    left:0;
    z-index:999;
    background:#fff;
    box-shadow:0 3px 15px rgba(0,0,0,.08);
}

.header .container{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:80px;
}

.logo{
    font-size:28px;
    font-weight:bold;
    color:#0d6efd;
}

.navbar ul{
    display:flex;
    gap:30px;
}

.navbar a{
    color:#333;
    font-size:16px;
    font-weight:600;
    transition:.3s;
}

.navbar a:hover{
    color:#0d6efd;
}

.menu-btn{
    display:none;
    font-size:28px;
    cursor:pointer;
}

/* ==========================
   HERO
========================== */

.hero{
    height:100vh;

    background:
    linear-gradient(
        rgba(0,0,0,.55),
        rgba(0,0,0,.55)
    ),
    url('../images/hero.jpg');

    background-size:cover;
    background-position:center;

    display:flex;
    justify-content:center;
    align-items:center;

    text-align:center;
}

.overlay{
    color:#fff;
}

.overlay h1{
    font-size:65px;
    margin-bottom:20px;
}

.overlay p{
    font-size:22px;
    margin-bottom:35px;
}

.btn{
    display:inline-block;

    padding:15px 35px;

    background:#0d6efd;

    color:#fff;

    border-radius:8px;

    transition:.3s;
}

.btn:hover{
    background:#0954c9;
    transform:translateY(-3px);
}

/* ==========================
   ABOUT
========================== */

.about-section{
    padding:120px 0;
    background:#fff;
}

.about-section h2{
    text-align:center;
    font-size:40px;
    margin-bottom:30px;
}

.about-section p{
    max-width:850px;
    margin:auto;
    text-align:center;
    color:#666;
    font-size:18px;
}

/* ==========================
   ARTICLES
========================== */

.articles-section{
    padding:120px 0;
}

.articles-section h2{
    text-align:center;
    margin-bottom:60px;
    font-size:40px;
}

.articles-grid{
    display:grid;
    grid-template-columns:
    repeat(auto-fit,minmax(320px,1fr));

    gap:30px;
}

.article-card{
    background:#fff;
    border-radius:15px;
    overflow:hidden;

    box-shadow:
    0 5px 20px rgba(0,0,0,.08);

    transition:.3s;
}

.article-card:hover{
    transform:translateY(-10px);
}

.article-card img{
    width:100%;
    height:240px;
    object-fit:cover;
}

.article-card .content{
    padding:25px;
}

.article-card h3{
    margin-bottom:15px;
}

.article-card p{
    color:#666;
}

/* ==========================
   STATS
========================== */

.stats{
    padding:100px 0;
    background:#0d6efd;
}

.stats .container{
    display:grid;
    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

    gap:30px;
}

.stat-box{
    background:rgba(255,255,255,.12);

    text-align:center;

    padding:40px;

    border-radius:15px;

    color:#fff;
}

.stat-box h3{
    font-size:45px;
    margin-bottom:10px;
}

.stat-box p{
    font-size:18px;
}

/* ==========================
   FOOTER
========================== */

footer{
    background:#111827;
    color:white;
    padding:60px 0;
    text-align:center;
}

footer h3{
    margin-bottom:15px;
    font-size:30px;
}

/* ==========================
   ANIMATION
========================== */

.article-card,
.stat-box,
.btn{
    transition:all .3s ease;
}

/* ==========================
   RESPONSIVE
========================== */

@media(max-width:992px){

    .overlay h1{
        font-size:45px;
    }

    .overlay p{
        font-size:18px;
    }

}

@media(max-width:768px){

    .navbar{
        display:none;
    }

    .menu-btn{
        display:block;
    }

    .overlay h1{
        font-size:35px;
    }

    .overlay p{
        font-size:16px;
    }

    .about-section h2,
    .articles-section h2{
        font-size:30px;
    }

}

@media(max-width:480px){

    .overlay h1{
        font-size:28px;
    }

    .btn{
        padding:12px 25px;
    }

}
/* =========================
ANIMATION
========================= */

.hidden{
    opacity:0;
    transform:translateY(50px);
    transition:all .8s ease;
}

.show{
    opacity:1;
    transform:translateY(0);
}

/* =========================
MOBILE MENU
========================= */

.mobile-active{
    display:block !important;
    position:absolute;
    top:80px;
    right:0;
    width:100%;
    background:white;
    padding:20px;
    box-shadow:0 10px 25px rgba(0,0,0,.1);
}

.mobile-active ul{
    flex-direction:column;
    gap:20px;
}

/* =========================
BACK TO TOP
========================= */

.back-top{

    position:fixed;

    left:25px;

    bottom:25px;

    width:55px;

    height:55px;

    border:none;

    border-radius:50%;

    font-size:24px;

    cursor:pointer;

    opacity:0;

    visibility:hidden;

    transition:.3s;

    z-index:9999;
}

.back-top.visible{

    opacity:1;

    visibility:visible;

}
/* =======================
PAGE HERO
======================= */

.page-hero{

    height:450px;

    background:
    linear-gradient(
    rgba(0,0,0,.55),
    rgba(0,0,0,.55)),
    url('../images/about-banner.jpg');

    background-size:cover;
    background-position:center;

    display:flex;
    justify-content:center;
    align-items:center;

    text-align:center;

    color:white;
}

.page-hero h1{
    font-size:60px;
}

.page-hero p{
    margin-top:15px;
    font-size:20px;
}

/* =======================
ABOUT PAGE
======================= */

.about-page{
    padding:120px 0;
}

.about-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(400px,1fr));

    gap:50px;

    align-items:center;
}

.about-grid img{
    border-radius:15px;
}

.about-grid h2{
    margin-bottom:20px;
}

/* =======================
MISSION
======================= */

.mission,
.vision{

    padding:100px 0;

    text-align:center;
}

.mission{
    background:white;
}

.vision{
    background:#f1f5f9;
}

.mission h2,
.vision h2{
    margin-bottom:20px;
}

/* =======================
TEAM
======================= */

.team{
    padding:120px 0;
}

.team h2{
    text-align:center;
    margin-bottom:50px;
}

.team-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(280px,1fr));

    gap:30px;
}

.team-card{

    background:white;

    text-align:center;

    border-radius:15px;

    overflow:hidden;

    box-shadow:
    0 5px 20px rgba(0,0,0,.08);
}

.team-card img{

    width:100%;
    height:320px;
    object-fit:cover;
}

.team-card h3{
    margin-top:20px;
}

.team-card p{
    padding:15px 20px 25px;
}

/* =======================
TIMELINE
======================= */

.timeline{
    padding:120px 0;
    background:white;
}

.timeline h2{
    text-align:center;
    margin-bottom:60px;
}

.timeline-item{

    background:#f7f9fc;

    margin-bottom:20px;

    padding:25px;

    border-right:
    5px solid #0d6efd;
}

.timeline-item span{

    font-weight:bold;

    color:#0d6efd;
}
/* ==========================
SEARCH
========================== */

.search-section{

padding:60px 0;
background:white;

}

.search-box{

max-width:700px;
margin:auto;

}

.search-box input{

width:100%;

padding:18px;

font-size:18px;

border:1px solid #ddd;

border-radius:10px;

outline:none;

}

/* ==========================
CATEGORY
========================== */

.category-section{

padding-bottom:60px;

background:white;

}

.categories{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

}

.filter-btn{

border:none;

padding:12px 25px;

background:#eef2f7;

cursor:pointer;

border-radius:30px;

transition:.3s;

}

.filter-btn:hover,
.filter-btn.active{

background:#0d6efd;

color:white;

}

/* ==========================
ARTICLE CATEGORY
========================== */

.category{

display:inline-block;

padding:5px 12px;

background:#0d6efd;

color:white;

border-radius:30px;

font-size:13px;

margin-bottom:15px;

}

/* ==========================
READ MORE
========================== */

.read-more{

display:inline-block;

margin-top:20px;

color:#0d6efd;

font-weight:bold;

}

/* ==========================
PAGINATION
========================== */

.pagination-section{

padding:80px 0;

}

.pagination{

display:flex;

justify-content:center;

gap:15px;

}

.pagination a{

width:45px;

height:45px;

display:flex;

align-items:center;

justify-content:center;

background:white;

border-radius:50%;

box-shadow:0 3px 10px rgba(0,0,0,.08);

color:#222;

}

.pagination a:hover{

background:#0d6efd;

color:white;

}
/* ==========================
SINGLE ARTICLE
========================== */

.single-hero{

margin-top:80px;

height:500px;

overflow:hidden;

}

.single-hero img{

width:100%;
height:100%;

object-fit:cover;

}

/* ==========================
LAYOUT
========================== */

.single-article{

padding:100px 0;

}

.article-layout{

display:grid;

grid-template-columns:
2fr 1fr;

gap:40px;

}

.article-content{

background:white;

padding:40px;

border-radius:15px;

box-shadow:
0 5px 20px rgba(0,0,0,.08);

}

.article-content h1{

margin:20px 0;

font-size:42px;

}

.meta{

display:flex;

gap:20px;

flex-wrap:wrap;

color:#777;

margin-bottom:30px;

}

.article-content p{

margin-bottom:25px;

line-height:2.2;

}

/* ==========================
SIDEBAR
========================== */

.sidebar{

display:flex;

flex-direction:column;

gap:30px;

}

.sidebar-box{

background:white;

padding:25px;

border-radius:15px;

box-shadow:
0 5px 20px rgba(0,0,0,.08);

}

.sidebar-box h3{

margin-bottom:20px;

}

.sidebar-box ul li{

margin-bottom:15px;

}

.sidebar-box a{

color:#333;

}

/* ==========================
SHARE
========================== */

.share-box{

margin-top:40px;

}

.share-buttons{

display:flex;

gap:10px;

flex-wrap:wrap;

margin-top:15px;

}

.share-buttons a{

background:#0d6efd;

color:white;

padding:10px 15px;

border-radius:8px;

}

/* ==========================
RELATED
========================== */

.related-posts{

padding:100px 0;

}

.related-posts h2{

text-align:center;

margin-bottom:50px;

}

/* ==========================
COMMENTS
========================== */

.comments{

padding:100px 0;

background:white;

}

.comments h2{

text-align:center;

margin-bottom:40px;

}

.comment-form{

max-width:800px;

margin:auto;

display:flex;

flex-direction:column;

gap:20px;

}

.comment-form input,
.comment-form textarea{

padding:15px;

border:1px solid #ddd;

border-radius:10px;

font-size:16px;

}

.comment-form textarea{

height:200px;

resize:none;

}

.comment-form button{

border:none;

padding:15px;

background:#0d6efd;

color:white;

font-size:18px;

cursor:pointer;

border-radius:10px;

}

/* ==========================
RESPONSIVE
========================== */

@media(max-width:992px){

.article-layout{

grid-template-columns:1fr;

}

}
.gallery{
padding:120px 0;
background:#fff;
}

.gallery-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
}

.gallery-grid img{
width:100%;
height:220px;
object-fit:cover;
border-radius:12px;
cursor:pointer;
transition:.3s;
}

.gallery-grid img:hover{
transform:scale(1.05);
}
.contact{
padding:120px 0;
background:#f7f9fc;
}

.contact-form{
max-width:700px;
margin:auto;
display:flex;
flex-direction:column;
gap:15px;
}

.contact-form input,
.contact-form textarea{
padding:15px;
border:1px solid #ddd;
border-radius:10px;
}

.contact-form button{
padding:15px;
border:none;
background:#0d6efd;
color:white;
border-radius:10px;
cursor:pointer;
}
/* ======================
SLIDER
====================== */

.hero-slider{

height:100vh;

position:relative;

overflow:hidden;

}

.slide{

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

opacity:0;

visibility:hidden;

transition:1s;

}

.slide.active{

opacity:1;

visibility:visible;

}

.slide img{

width:100%;
height:100%;

object-fit:cover;

filter:brightness(.55);

}

.slide-content{

position:absolute;

top:50%;

left:50%;

transform:
translate(-50%,-50%);

text-align:center;

color:white;

width:90%;

max-width:900px;

}

.slide-content h1{

font-size:70px;

margin-bottom:20px;

}

.slide-content p{

font-size:24px;

margin-bottom:30px;

}

.slider-prev,
.slider-next{

position:absolute;

top:50%;

transform:translateY(-50%);

width:60px;

height:60px;

border:none;

background:
rgba(255,255,255,.2);

backdrop-filter:blur(10px);

color:white;

font-size:28px;

cursor:pointer;

z-index:20;

border-radius:50%;

}

.slider-prev{

right:30px;

}

.slider-next{

left:30px;

}

.slider-prev:hover,
.slider-next:hover{

background:
rgba(255,255,255,.35);

}
.dark-mode{

background:#111827;

color:white;

}

.dark-mode .header{

background:#1f2937;

}

.dark-mode .article-card,
.dark-mode .sidebar-box,
.dark-mode .team-card{

background:#1f2937;

color:white;

}

.dark-mode footer{

background:#000;

}


.hero{

width:100%;

height:100vh;

background-image:url("/images/f1.jpg"); /* 👈 عکس پس‌زمینه */

background-size:cover;

background-position:center;

background-repeat:no-repeat;

position:relative;

display:flex;

align-items:center;

justify-content:center;

}


/* لایه تیره برای خوانایی متن */
.hero::before{

content:"";

position:absolute;

inset:0;

background:rgba(0,0,0,0.55);

z-index:1;

}


/* متن روی عکس */
.hero .overlay{

position:relative;

z-index:2;

color:white;

text-align:center;

padding:20px;

}


.shop-section{

padding:80px 0;

}


.shop-search{

display:flex;

gap:15px;

margin-bottom:40px;

}


.shop-search input{

flex:1;

padding:15px;

border:none;

border-radius:12px;

background:#fff;

font-size:15px;

}


.shop-search button{

padding:15px 30px;

background:#2563eb;

color:white;

border:none;

border-radius:12px;

cursor:pointer;

}


.shop-grid{

display:grid;

grid-template-columns:

repeat(auto-fit,minmax(280px,1fr));

gap:30px;

}


.product-card{

background:white;

border-radius:20px;

overflow:hidden;

box-shadow:

0 10px 25px rgba(0,0,0,.08);

transition:.3s;

}


.product-card:hover{

transform:translateY(-8px);

}


.product-card img{

width:100%;

height:240px;

object-fit:cover;

}


.product-info{

padding:20px;

}


.product-info h3{

margin-bottom:10px;

}


.product-info p{

color:#666;

line-height:1.8;

}


.price{

display:block;

margin-top:15px;

font-size:18px;

font-weight:bold;

color:#2563eb;

}


.product-info button{

width:100%;

padding:14px;

border:none;

background:#2563eb;

color:white;

border-radius:10px;

margin-top:20px;

cursor:pointer;

}


.product-info button:hover{

background:#1e40af;

}


.login-modal{

display:none;

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:

rgba(0,0,0,.7);

backdrop-filter:

blur(10px);

justify-content:center;

align-items:center;

z-index:99999;

}


.login-box{

background:white;

padding:40px;

border-radius:20px;

width:400px;

position:relative;

}


.login-box h2{

margin-bottom:20px;

text-align:center;

}


.login-box input{

width:100%;

padding:15px;

margin-bottom:15px;

border-radius:10px;

border:1px solid #ddd;

}


.login-box button{

width:100%;

padding:15px;

background:#2563eb;

border:none;

color:white;

border-radius:10px;

cursor:pointer;

}


.close{

position:absolute;

top:15px;

left:20px;

font-size:25px;

cursor:pointer;

}