/*=========================================
 Ghateino UI
 Version 1.0
==========================================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
}

:root{

--primary:#FDBB19;
--dark:#0F2139;
--text:#3b3b3b;
--border:#ececec;
--bg:#f8f9fb;
--white:#fff;
--radius:18px;
--shadow:0 10px 30px rgba(0,0,0,.07);

}


@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 100;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Thin.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Thin.woff2') format('woff2');		
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 200;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-UltraLight.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-UltraLight.woff2') format('woff2');	
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 300;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Light.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Light.woff2') format('woff2');		 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 500;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Medium.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Medium.woff2') format('woff2');		 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 600;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-DemiBold.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-DemiBold.woff2') format('woff2');	 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 800;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-ExtraBold.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-ExtraBold.woff2') format('woff2');		 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 900;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Black.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Black.woff2') format('woff2');		 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 950;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-ExtraBlack.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-ExtraBlack.woff2') format('woff2');		 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: 1000;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Heavy.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Heavy.woff2') format('woff2');		 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: bold;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Bold.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Bold.woff2') format('woff2');	 
}

@font-face {
	font-family: IRANSansX;
	font-style: normal;
	font-weight: normal;
	src: url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Regular.woff') format('woff'),   
	url('//ghateino.com/wp-content/themes/hbwp/fonts/IRANSansXFaNum-Regular.woff2') format('woff2');	
}


body{

font-family:IRANSansX,sans-serif!important;
direction:rtl;
background:var(--bg);
color:var(--text);
overflow-x:hidden;

}

a{

text-decoration:none;
color:inherit;

}

img{

max-width:100%;
display:block;

}

ul{

list-style:none;

}

.container{

width:100%;
max-width:1400px;
margin:auto;
padding:0 15px;

}

/*=========================
    FEATURES
==========================*/

.features{

margin:35px 0;

}

.features .container{

display:grid;
grid-template-columns:repeat(5,1fr);
gap:20px;

}

.feature{

background:#fff;
border-radius:18px;
padding:22px;
text-align:center;
transition:.35s;
border:1px solid #f1f1f1;

}

.feature:hover{

transform:translateY(-6px);
box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.feature i{

font-size:34px;
color:var(--primary);
margin-bottom:18px;

}

.feature h4{

font-size:18px;
margin-bottom:8px;

}

.feature p{

font-size:14px;
color:#777;

}

/*=========================
   SECTION TITLE
==========================*/

.section-title{

display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:30px;

}

.section-title h2{

font-size:30px;
font-weight:800;
color:#222;

}

.section-title a{

color:var(--primary);
font-weight:bold;

}

/*=========================
    CATEGORIES
==========================*/

.categories{

margin:60px 0;

}

.grid{

display:grid;
grid-template-columns:repeat(6,1fr);
gap:25px;

}

.cat{

background:#fff;
border-radius:22px;
padding:30px 15px;
text-align:center;
transition:.3s;
border:1px solid #eee;

}

.cat:hover{

transform:translateY(-8px);
box-shadow:0 18px 40px rgba(0,0,0,.08);

}

.cat img{

height:95px;
margin:auto;
margin-bottom:18px;

}

.cat h3{

font-size:18px;
margin-bottom:10px;

}

.cat p{

font-size:13px;
color:#777;

}

/*=========================
 SELLER BANNER
==========================*/

.seller{

margin:50px 0;

}

.seller-box{

background:linear-gradient(90deg,#FFF6DA,#FFE6A5);
border-radius:22px;
padding:35px 45px;
display:flex;
justify-content:space-between;
align-items:center;

}

.seller-box h2{

font-size:32px;
margin-bottom:10px;

}

.seller-box p{

font-size:16px;

}

.seller-box a{

background:#FDBB19;
color:#222;
padding:16px 35px;
border-radius:12px;
font-weight:bold;
transition:.3s;

}

.seller-box a:hover{

transform:translateY(-3px);

}

/*=========================
 PRODUCTS
==========================*/

.products{

margin:60px 0;

}

.product-grid{

display:grid;
grid-template-columns:repeat(5,1fr);
gap:25px;

}

.product{

background:#fff;
border-radius:20px;
padding:18px;
transition:.35s;
border:1px solid #eee;
position:relative;

}

.product:hover{

transform:translateY(-10px);
box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.product img{

height:170px;
object-fit:contain;
margin:auto;

}

.product h3{

font-size:16px;
margin:20px 0 12px;
height:45px;
line-height:24px;

}

.price{

font-size:22px;
font-weight:800;
color:#111;

}

.old-price{

font-size:14px;
color:#999;
text-decoration:line-through;

}

.discount{

position:absolute;
top:18px;
left:18px;
background:#ff4d4f;
color:#fff;
padding:6px 12px;
border-radius:20px;
font-size:13px;

}

.rating{

margin-top:12px;
display:flex;
align-items:center;
gap:3px;

}

.rating i{

color:#FDBB19;
font-size:13px;

}

.add-cart{

margin-top:18px;
height:46px;
background:#FDBB19;
border:none;
width:100%;
border-radius:12px;
cursor:pointer;
font-size:15px;
font-weight:bold;
transition:.3s;

}

.add-cart:hover{

background:#f3af00;

}

/*=========================
 BADGE
==========================*/

.badge{

position:absolute;
right:18px;
top:18px;
background:#1abc9c;
color:#fff;
padding:6px 12px;
border-radius:30px;
font-size:12px;

}

/*=========================
 HOVER IMAGE
==========================*/

.product{

overflow:hidden;

}

.product img{

transition:.4s;

}

.product:hover img{

transform:scale(1.08);

}

/*=========================
 BUTTON
==========================*/

.btn{

display:inline-flex;
align-items:center;
justify-content:center;
height:52px;
padding:0 35px;
border-radius:14px;
background:#FDBB19;
font-weight:bold;
transition:.3s;

}

.btn:hover{

transform:translateY(-3px);

}

/*==========================
    SLIDER
===========================*/

.slider{

margin:60px 0;
position:relative;

}

.slider-wrapper{

overflow:hidden;
border-radius:25px;

}

.slides{

display:flex;
transition:.6s;

}

.slide{

min-width:100%;
background:#fff;
display:flex;
align-items:center;
justify-content:space-between;
padding:60px;

}

.slide-content{

width:45%;

}

.slide-content h2{

font-size:42px;
margin-bottom:20px;
color:#222;

}

.slide-content p{

font-size:17px;
line-height:35px;
color:#666;

}

.slide-image{

width:45%;

}

.slide-image img{

width:100%;

}

.prev,
.next{

position:absolute;
top:50%;
transform:translateY(-50%);
width:55px;
height:55px;
border:none;
border-radius:50%;
background:#fff;
cursor:pointer;
font-size:20px;
box-shadow:0 10px 25px rgba(0,0,0,.12);

}

.prev{

right:-25px;

}

.next{

left:-25px;

}

.prev:hover,
.next:hover{

background:var(--primary);

}

/*==========================
  NEWSLETTER
===========================*/

.newsletter{

margin:70px 0;

}

.newsletter-box{

background:var(--dark);
color:#fff;
padding:60px;
border-radius:24px;
display:flex;
justify-content:space-between;
align-items:center;

}

.newsletter h2{

font-size:34px;

}

.newsletter form{

display:flex;
gap:15px;

}

.newsletter input{

width:360px;
height:58px;
border:none;
border-radius:14px;
padding:0 18px;
outline:none;

}

.newsletter button{

width:170px;
border:none;
border-radius:14px;
background:var(--primary);
font-weight:bold;
cursor:pointer;

}

/*==========================
 FOOTER
===========================*/

footer{

background:#0F2139;
margin-top:80px;
color:#fff;

}

.footer-top{

padding:70px 0;
display:grid;
grid-template-columns:2fr 1fr 1fr 1fr;
gap:50px;

}

.footer-top h3{

margin-bottom:25px;
font-size:22px;

}

.footer-top ul li{

margin-bottom:14px;

}

.footer-top a{

color:#d5d5d5;
transition:.3s;

}

.footer-top a:hover{

color:#FDBB19;

}

.footer-about{

line-height:35px;
color:#cfcfcf;

}

.social{

display:flex;
gap:12px;
margin-top:25px;

}

.social a{

width:42px;
height:42px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:rgba(255,255,255,.08);
transition:.3s;

}

.social a:hover{

background:#FDBB19;
color:#111;

}

.footer-bottom{

border-top:1px solid rgba(255,255,255,.08);
padding:25px 0;
display:flex;
justify-content:space-between;
align-items:center;
font-size:14px;
color:#bdbdbd;

}

/*==========================
 SCROLL TO TOP
===========================*/

.scroll-top{

position:fixed;
bottom:30px;
left:30px;
width:55px;
height:55px;
background:#FDBB19;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
cursor:pointer;
opacity:0;
visibility:hidden;
transition:.4s;
box-shadow:0 15px 35px rgba(0,0,0,.18);

}

.scroll-top.active{

opacity:1;
visibility:visible;

}

/*==========================
 ANIMATIONS
===========================*/

.fade-up{

opacity:0;
transform:translateY(40px);
transition:.7s;

}

.fade-up.show{

opacity:1;
transform:none;

}

.zoom{

transition:.35s;

}

.zoom:hover{

transform:scale(1.05);

}

.rotate:hover{

transform:rotate(2deg);

}

.shadow-hover{

transition:.3s;

}

.shadow-hover:hover{

box-shadow:0 20px 45px rgba(0,0,0,.12);

}

/*==========================
 LOADER
===========================*/

.loader{

position:fixed;
inset:0;
background:#fff;
display:flex;
align-items:center;
justify-content:center;
z-index:99999;

}

.loader::before{

content:"";
width:65px;
height:65px;
border-radius:50%;
border:6px solid #eee;
border-top-color:#FDBB19;
animation:spin .8s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}
/*==================================================
        MOBILE MENU
==================================================*/

.mobile-toggle{

display:none;
width:46px;
height:46px;
border:none;
background:#FDBB19;
border-radius:12px;
cursor:pointer;
font-size:20px;

}

.mobile-menu{

position:fixed;
top:0;
right:-340px;
width:320px;
height:100%;
background:#fff;
z-index:9999;
transition:.35s;
overflow:auto;
box-shadow:-5px 0 30px rgba(0,0,0,.15);

}

.mobile-menu.active{

right:0;

}

.mobile-menu-header{

height:80px;
display:flex;
align-items:center;
justify-content:space-between;
padding:0 20px;
border-bottom:1px solid #eee;

}

.mobile-menu ul{

padding:20px;

}

.mobile-menu li{

border-bottom:1px solid #f2f2f2;

}

.mobile-menu a{

display:block;
padding:18px 10px;
font-size:15px;
font-weight:600;

}

.mobile-menu a:hover{

color:#FDBB19;

}

.overlay{

position:fixed;
inset:0;
background:rgba(0,0,0,.45);
opacity:0;
visibility:hidden;
transition:.3s;
z-index:9998;

}

.overlay.active{

opacity:1;
visibility:visible;

}

/*==================================================
        SEARCH POPUP
==================================================*/

.search-popup{

position:fixed;
top:-100%;
left:0;
width:100%;
background:#fff;
padding:40px;
z-index:9999;
transition:.4s;
box-shadow:0 15px 40px rgba(0,0,0,.15);

}

.search-popup.active{

top:0;

}

.search-popup input{

width:100%;
height:60px;
border:2px solid #eee;
border-radius:15px;
padding:0 20px;
font-size:18px;
outline:none;

}

/*==================================================
        MOBILE BOTTOM BAR
==================================================*/

.bottom-bar{

display:none;

position:fixed;
bottom:0;
right:0;
left:0;

height:68px;

background:#fff;

box-shadow:0 -8px 25px rgba(0,0,0,.08);

z-index:999;

}

.bottom-bar ul{

display:flex;

height:100%;

}

.bottom-bar li{

flex:1;

}

.bottom-bar a{

display:flex;

flex-direction:column;

align-items:center;

justify-content:center;

height:100%;

font-size:12px;

gap:5px;

}

.bottom-bar i{

font-size:20px;

}

/*==================================================
          MEGA MENU
==================================================*/

nav ul li{

position:relative;

}

.mega{

position:absolute;

top:70px;

right:0;

width:900px;

background:#fff;

border-radius:20px;

padding:35px;

display:none;

grid-template-columns:repeat(4,1fr);

gap:30px;

box-shadow:0 20px 45px rgba(0,0,0,.12);

}

nav li:hover .mega{

display:grid;

}

.mega h4{

margin-bottom:15px;

font-size:18px;

}

.mega a{

display:block;

padding:8px 0;

font-size:14px;

color:#666;

}

/*==================================================
             RESPONSIVE
==================================================*/

@media(max-width:1200px){

.grid{

grid-template-columns:repeat(4,1fr);

}

.product-grid{

grid-template-columns:repeat(4,1fr);

}

.hero-text h1{

font-size:42px;
line-height:65px;

}

}

@media(max-width:992px){

nav{

display:none;

}

.mobile-toggle{

display:block;

}

.hero-content{

flex-direction:column;

padding:40px;

}

.hero-text{

width:100%;
text-align:center;
margin-bottom:40px;

}

.hero-image{

width:100%;

}

.search-box{

width:95%;

}

.features .container{

grid-template-columns:repeat(2,1fr);

}

.grid{

grid-template-columns:repeat(3,1fr);

}

.product-grid{

grid-template-columns:repeat(2,1fr);

}

.footer-top{

grid-template-columns:1fr 1fr;

}

.newsletter-box{

flex-direction:column;
gap:30px;
text-align:center;

}

.newsletter form{

width:100%;

}

.newsletter input{

flex:1;

}

}

@media(max-width:768px){

.topbar{

display:none;

}

.navbar{

height:70px;

}

.logo img{

height:38px;

}

.hero{

margin-top:10px;

}

.hero-content{

padding:25px;

border-radius:20px;

}

.hero-text h1{

font-size:30px;
line-height:48px;

}

.hero-text p{

font-size:15px;

}

.search-row{

flex-direction:column;

}

.search-row button{

width:100%;

}

.tabs{

overflow:auto;

}

.tabs button{

min-width:180px;

}

.features .container{

grid-template-columns:1fr;

}

.grid{

grid-template-columns:repeat(2,1fr);

gap:15px;

}

.product-grid{

grid-template-columns:1fr;

}

.seller-box{

flex-direction:column;

text-align:center;

gap:20px;

}

.footer-top{

grid-template-columns:1fr;

}

.footer-bottom{

flex-direction:column;

gap:15px;

}

.bottom-bar{

display:block;

}

.scroll-top{

bottom:85px;

}

}

@media(max-width:480px){

.container{

padding:0 12px;

}

.hero-text h1{

font-size:25px;
line-height:40px;

}

.section-title h2{

font-size:24px;

}

.grid{

grid-template-columns:1fr 1fr;

}

.cat{

padding:18px 10px;

}

.cat img{

height:70px;

}

.product img{

height:130px;

}

.price{

font-size:18px;

}

.newsletter{

display:none;

}

}

.header{

background:#fff;
position:sticky;
top:0;
z-index:1000;
box-shadow:0 3px 15px rgba(0,0,0,.05);

}

.topbar{

height:42px;
border-bottom:1px solid #efefef;

}

.topbar .container{

display:flex;
justify-content:space-between;
align-items:center;
height:100%;

}

.topbar .right{

display:flex;
gap:25px;
font-size:14px;

}

.topbar .left{

font-size:14px;
display:flex;
gap:8px;
align-items:center;

}

.navbar{

height:85px;

}

.navbar .container{

display:flex;
justify-content:space-between;
align-items:center;
height:100%;

}

.logo img{

height:45px;

}

nav ul{

display:flex;
gap:35px;

}

nav li{

position:relative;

}

nav a{

font-size:15px;
font-weight:600;
transition:.3s;

}

nav a:hover{

color:var(--primary);

}

.actions{

display:flex;
align-items:center;
gap:12px;

}

.actions button{

height:48px;
border:none;
padding:0 22px;
border-radius:14px;
cursor:pointer;
transition:.3s;
font-size:15px;

}

.category{

background:var(--primary);
color:#111;
font-weight:700;

}

.actions button:last-child{

width:48px;
padding:0;
background:#fff;
border:1px solid var(--border);

}

.actions button:hover{

transform:translateY(-2px);

}

.hero{

margin-top:25px;

}

.hero-content{

background:var(--dark);
border-radius:25px;
padding:70px;
display:flex;
justify-content:space-between;
align-items:center;
position:relative;
overflow:hidden;

}

.hero-content::after{

content:"";
position:absolute;
right:-200px;
top:-200px;
width:500px;
height:500px;
border-radius:50%;
background:rgba(255,255,255,.03);

}

.hero-text{

width:40%;
color:#fff;
z-index:2;

}

.hero-text h1{

font-size:52px;
line-height:82px;
font-weight:800;

}

.hero-text span{

color:var(--primary);

}

.hero-text p{

margin-top:25px;
font-size:20px;
opacity:.85;

}

.hero-image{

width:48%;
z-index:2;

}

.hero-image img{

width:100%;
animation:float 5s infinite ease-in-out;

}

@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-12px);

}

100%{

transform:translateY(0);

}

}
.search-box{

width:78%;
margin:auto;
background:#fff;
margin-top:-55px;
position:relative;
z-index:10;
border-radius:22px;
box-shadow:var(--shadow);

}

.tabs{

display:flex;
border-bottom:1px solid var(--border);

}

.tabs button{

flex:1;
height:60px;
border:none;
background:none;
font-size:15px;
cursor:pointer;

}

.tabs button.active{

background:#fff7e2;
color:#111;
font-weight:700;

}

.search-row{

display:flex;
padding:22px;
gap:18px;

}

.search-row input{

flex:1;
height:58px;
border:1px solid var(--border);
border-radius:14px;
padding:0 20px;
font-size:15px;
outline:none;

}

.search-row button{

width:180px;
background:var(--primary);
border:none;
border-radius:14px;
font-size:16px;
font-weight:700;
cursor:pointer;

}

.toast{

position:fixed;
bottom:30px;
right:30px;
background:#222;
color:#fff;
padding:16px 25px;
border-radius:12px;
opacity:0;
transform:translateY(40px);
transition:.3s;
z-index:99999;

}

.toast.show{

opacity:1;
transform:none;

}
body.dark{

background:#111827;
color:#fff;

}

body.dark .product,
body.dark .cat,
body.dark .feature,
body.dark .search-box,
body.dark header{

background:#1d2636;
color:#fff;

}

body.dark input{

background:#2a3445;
color:#fff;

}
.header{

background:#fff;

position:sticky;

top:0;

z-index:999;

}

.header-top{

height:85px;

border-bottom:1px solid #eee;

}

.header-top .container{

display:flex;

align-items:center;

justify-content:space-between;

height:100%;

gap:25px;

}

.logo img{

height:48px;

}

.search{

flex:1;

position:relative;

}

.search input{

width:100%;

height:54px;

border:none;

background:#f4f6f8;

border-radius:50px;

padding-right:55px;

padding-left:20px;

font-size:15px;

outline:none;

}

.search i{

position:absolute;

right:20px;

top:50%;

transform:translateY(-50%);

font-size:18px;

color:#999;

}

.header-actions{

display:flex;

gap:12px;

}

.icon-btn{

width:48px;

height:48px;

border:none;

border-radius:50%;

background:#f5f5f5;

cursor:pointer;

transition:.3s;

}

.icon-btn:hover{

background:#FDBB19;

}

.cart-btn{

position:relative;

width:55px;

height:48px;

border:none;

background:#FDBB19;

border-radius:14px;

cursor:pointer;

}

.cart-btn span{

position:absolute;

top:-8px;

left:-5px;

width:22px;

height:22px;

background:#ff3b30;

border-radius:50%;

color:#fff;

display:flex;

align-items:center;

justify-content:center;

font-size:11px;

}
.has-mega{

position:relative;

}

.mega-menu{

position:absolute;

top:70px;

right:0;

width:950px;

background:#fff;

display:none;

grid-template-columns:repeat(4,1fr);

gap:30px;

padding:35px;

border-radius:20px;

box-shadow:0 25px 45px rgba(0,0,0,.12);

}

.has-mega:hover .mega-menu{

display:grid;

}

.mega-menu h4{

margin-bottom:18px;

font-size:18px;

}

.mega-menu a{

display:block;

padding:8px 0;

color:#666;

}

.mega-menu img{

width:100%;

border-radius:15px;

}
























