/* ========================================
   ROYAL FURNITURE
   PREMIUM LUXURY STYLE
======================================== */


:root{

    
  /* Typography Scale */
  --font-display: "Cormorant Garamond", serif;
  --font-body: "Inter", sans-serif;
  --font-fa: "Vazirmatn", sans-serif;
  --font-ar: "Cairo", sans-serif;

    --gold:#C9A86A;
    --gold-light:#E2C38B;
    --dark:#111111;
    --dark-soft:#1B1B1B;
    --cream:#F7F3ED;
    --white:#FFFFFF;
    --text:#2E2E2E;

    --shadow:
    0 20px 50px rgba(0,0,0,.08);

    --transition:
    all .4s ease;

}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}
/* Persian */
html[lang="fa"] body{
  font-family: var(--font-fa);
  letter-spacing: 0;
}

/* Arabic */
html[lang="ar"] body{
  font-family: var(--font-ar);
  letter-spacing: 0;
}

/* English */
html[lang="en"] body{
  font-family: var(--font-body);
  letter-spacing: 0.2px;
}

body{

    font-family:'Vazirmatn',sans-serif;

    background:var(--cream);

    color:var(--text);

    overflow-x:hidden;

}

img{

    max-width:100%;
    display:block;

}

a{

    text-decoration:none;

}

ul{

    list-style:none;

}

/* ========================================
   PRELOADER
======================================== */

#preloader{

    position:fixed;

    inset:0;

    background:#fff;

    z-index:999999;

    display:flex;

    justify-content:center;

    align-items:center;

}

.loader-logo{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:10px;

}

.loader-logo span{

    font-family:
    'Cormorant Garamond',
    serif;

    letter-spacing:8px;

    color:var(--gold);

    font-size:2rem;

    animation:
    fadePulse 2s infinite;

}

@keyframes fadePulse{

    0%{
        opacity:.3;
    }

    50%{
        opacity:1;
    }

    100%{
        opacity:.3;
    }

}

/* ========================================
   HEADER
======================================== */

header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:9999;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:22px 7%;

    backdrop-filter:blur(15px);

    background:
    rgba(255,255,255,.55);

    border-bottom:
    1px solid rgba(255,255,255,.4);

    transition:.4s;

}

header.scrolled{

    background:
    rgba(255,255,255,.95);

    box-shadow:var(--shadow);

}

.logo{

    font-family:
    'Cormorant Garamond',
    serif;

    color:var(--dark);

    font-size:2rem;

    font-weight:700;

    letter-spacing:3px;

}

.logo span{

    color:var(--gold);

    display:block;

    font-size:.9rem;

    letter-spacing:5px;

}

/* ========================================
   DESKTOP MENU
======================================== */

.desktop-nav{

    display:flex;

    gap:40px;

}

.desktop-nav a{

    color:var(--dark);

    font-size:.95rem;

    position:relative;

    transition:.3s;

}

.desktop-nav a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:var(--gold);

    transition:.4s;

}

.desktop-nav a:hover::after{

    width:100%;

}

.desktop-nav a:hover{

    color:var(--gold);

}

/* ========================================
   LANGUAGE
======================================== */

.header-right{

    display:flex;

    align-items:center;

    gap:30px;

}

.language-switcher{

    display:flex;

    gap:8px;

}

.language-switcher button{

    border:none;

    background:transparent;

    color:var(--dark);

    cursor:pointer;

    font-size:.8rem;

    transition:.3s;

}

.language-switcher button:hover{

    color:var(--gold);

}

/* ========================================
   HAMBURGER
======================================== */

#hamburger{

    width:35px;

    display:none;

    flex-direction:column;

    gap:6px;

    cursor:pointer;

}

#hamburger span{

    width:100%;

    height:2px;

    background:var(--dark);

    transition:.3s;

}

/* ========================================
   MOBILE MENU
======================================== */

#mobileMenu{

    position:fixed;

    top:0;

    right:-100%;

    width:100%;

    height:100vh;

    background:
    rgba(17,17,17,.97);

    z-index:9998;

    display:flex;

    justify-content:center;

    align-items:center;

    transition:.5s;

}

#mobileMenu.active{

    right:0;

}

.mobile-links{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:30px;

}

.mobile-links a{

    color:white;

    font-size:2rem;

    font-family:
    'Cormorant Garamond',
    serif;

    transition:.3s;

}

.mobile-links a:hover{

    color:var(--gold);

}

/* ========================================
   HERO
======================================== */

.hero{

    height:100vh;

    position:relative;

    overflow:hidden;

}

.hero video{

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    object-fit:cover;

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
    rgba(0,0,0,.45),
    rgba(0,0,0,.55)
    );

}

.hero-content{

    position:relative;

    z-index:10;

    height:100%;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    color:white;

    padding:0 20px;

}

.hero-subtitle{

    letter-spacing:6px;

    color:var(--gold);

    margin-bottom:20px;

}

.hero-content h1{

    font-family:
    'Cormorant Garamond',
    serif;

    font-size:6rem;

    max-width:1000px;

    line-height:1.1;

    margin-bottom:25px;

}

.hero-content p{

    font-size:1.2rem;

    max-width:700px;

    line-height:2;

    opacity:.9;

}

.hero-buttons{

    margin-top:40px;

    display:flex;

    gap:20px;

}

/* ========================================
   BUTTONS
======================================== */

.btn-gold{

    padding:
    16px 36px;

    background:var(--gold);

    color:white;

    border:1px solid var(--gold);

    transition:.4s;

}

.btn-gold:hover{

    background:transparent;

    color:var(--gold);

}

.btn-outline{

    padding:
    16px 36px;

    border:
    1px solid white;

    color:white;

    transition:.4s;

}

.btn-outline:hover{

    background:white;

    color:black;

}

/* ========================================
   SCROLL INDICATOR
======================================== */

.scroll-indicator{

    position:absolute;

    bottom:40px;

    left:50%;

    transform:translateX(-50%);

    z-index:20;

}

.scroll-indicator span{

    width:2px;

    height:70px;

    background:rgba(255,255,255,.3);

    display:block;

    position:relative;

    overflow:hidden;

}

.scroll-indicator span::before{

    content:"";

    position:absolute;

    top:-100%;

    left:0;

    width:100%;

    height:100%;

    background:white;

    animation:scrollMove 2s infinite;

}

@keyframes scrollMove{

    0%{
        top:-100%;
    }

    100%{
        top:100%;
    }

}

/* ========================================
   STATS
======================================== */

.stats{

    padding:120px 8%;

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:40px;

    background:white;

}

.stat-box{

    text-align:center;

}

.stat-box h2{

    font-size:4rem;

    color:var(--gold);

    font-family:
    'Cormorant Garamond',
    serif;

}

.stat-box p{

    margin-top:10px;

    font-size:1rem;

    color:#666;

}

/* ========================================
   SECTION TITLE
======================================== */

.section-title{

    text-align:center;

    margin-bottom:70px;

}

.section-title span{

    letter-spacing:4px;

    color:var(--gold);

    font-size:.9rem;

}

.section-title h2{

    font-size:3.5rem;

    margin-top:15px;

    font-family:
    'Cormorant Garamond',
    serif;

    color:var(--dark);

}

/* ========================================
   COLLECTION
======================================== */

.collection-section{

    padding:120px 8%;

    background:var(--cream);

}

.collection-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:35px;

}

.collection-card{

    position:relative;

    overflow:hidden;

    border-radius:10px;

    box-shadow:var(--shadow);

    cursor:pointer;

}

.collection-card img{

    width:100%;

    height:500px;

    object-fit:cover;

    transition:1s;

}

.collection-card:hover img{

    transform:scale(1.08);

}

.card-content{

    position:absolute;

    bottom:0;

    left:0;

    width:100%;

    padding:30px;

    background:
    linear-gradient(
    transparent,
    rgba(0,0,0,.75)
    );

}

.card-content h3{

    color:white;

    font-size:1.6rem;

    font-family:
    'Cormorant Garamond',
    serif;

}

/* ========================================
   SHOWCASE
======================================== */

.showcase{

    display:grid;

    grid-template-columns:
    1fr 1fr;

    min-height:700px;

    background:white;

}

.showcase-image img{

    width:100%;

    height:100%;

    object-fit:cover;

}

.showcase-content{

    padding:100px;

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.showcase-content span{

    color:var(--gold);

    letter-spacing:4px;

}

.showcase-content h2{

    font-size:4rem;

    margin:20px 0;

    font-family:
    'Cormorant Garamond',
    serif;

}

.showcase-content p{

    line-height:2.2;

    color:#666;

    margin-bottom:35px;

}

/* ========================================
   GALLERY
======================================== */

.gallery-section{

    padding:120px 6%;

    background:var(--cream);

}

.gallery-grid{

    columns:3;

    column-gap:20px;

}

.gallery-grid img{

    width:100%;

    margin-bottom:20px;

    border-radius:8px;

    transition:.5s;

    cursor:pointer;

}

.gallery-grid img:hover{

    transform:scale(1.03);

}

/* ========================================
   CTA
======================================== */

.cta{

    padding:140px 20px;

    background:
    linear-gradient(
    rgba(0,0,0,.65),
    rgba(0,0,0,.65)
    ),
    url('../assets/images/cta.jpg');

    background-size:cover;

    background-position:center;

    text-align:center;

}

.cta-content h2{

    color:white;

    font-size:4rem;

    margin-bottom:35px;

    font-family:
    'Cormorant Garamond',
    serif;

}

/* ========================================
   FOOTER
======================================== */

footer{

    background:#111;

    color:white;

    padding:80px 8%;

    text-align:center;

}

.footer-logo{

    font-size:2rem;

    color:var(--gold);

    font-family:
    'Cormorant Garamond',
    serif;

    margin-bottom:25px;

}

.footer-contact{

    margin-bottom:25px;

}

.footer-contact a{

    color:white;

    font-size:1.1rem;

}

.footer-social{

    display:flex;

    justify-content:center;

    gap:25px;

    margin-bottom:25px;

}

.footer-social a{

    color:white;

    font-size:1.4rem;

    transition:.3s;

}

.footer-social a:hover{

    color:var(--gold);

}

footer p{

    color:#999;

    font-size:.9rem;

}

/* ========================================
   FLOATING BUTTONS
======================================== */

.floating-buttons{

    position:fixed;

    left:25px;

    bottom:25px;

    z-index:999;

    display:flex;

    flex-direction:column;

    gap:12px;

}

.floating-buttons a{

    width:58px;

    height:58px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:var(--gold);

    color:white;

    font-size:1.2rem;

    box-shadow:
    0 15px 35px rgba(0,0,0,.15);

    transition:.4s;

}

.floating-buttons a:hover{

    transform:translateY(-5px);

}

/* ========================================
   REVEAL EFFECT
======================================== */

.reveal{

    opacity:0;

    transform:translateY(60px);

    transition:1s;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}

/* ========================================
   RESPONSIVE 1200
======================================== */

@media(max-width:1200px){

.hero-content h1{

    font-size:4.8rem;

}

.showcase-content{

    padding:70px;

}

.showcase-content h2{

    font-size:3rem;

}

}

/* ========================================
   RESPONSIVE 992
======================================== */

@media(max-width:992px){

.desktop-nav{

    display:none;

}

#hamburger{

    display:flex;

}

.collection-grid{

    grid-template-columns:
    repeat(2,1fr);

}

.showcase{

    grid-template-columns:1fr;

}

.showcase-image{

    min-height:500px;

}

.showcase-content{

    padding:70px 40px;

}

.stats{

    grid-template-columns:1fr;

}

.gallery-grid{

    columns:2;

}

}

/* ========================================
   RESPONSIVE 768
======================================== */

@media(max-width:768px){

header{

    padding:20px;

}

.hero-content h1{

    font-size:3rem;

}

.hero-content p{

    font-size:1rem;

}

.hero-buttons{

    flex-direction:column;

}

.section-title h2{

    font-size:2.3rem;

}

.collection-grid{

    grid-template-columns:1fr;

}

.collection-card img{

    height:400px;

}

.gallery-grid{

    columns:1;

}

.cta-content h2{

    font-size:2.3rem;

}

.showcase-content h2{

    font-size:2.5rem;

}

.showcase-content{

    padding:50px 25px;

}

}

/* ========================================
   RESPONSIVE 480
======================================== */

@media(max-width:480px){

.logo{

    font-size:1.4rem;

}

.hero-content h1{

    font-size:2.2rem;

}

.stat-box h2{

    font-size:3rem;

}

.mobile-links a{

    font-size:1.7rem;

}

.floating-buttons a{

    width:50px;

    height:50px;

}

}

.hero-video{
    transform:scale(1.1);
    filter:contrast(1.1) brightness(.8);
}

.hero-overlay{
    background: radial-gradient(
        circle at center,
        rgba(0,0,0,.3),
        rgba(0,0,0,.75)
    );
}

/* برای حس سینمایی */
.hero-content h1{
    letter-spacing:2px;
}
h1, .h1{
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 5vw, 6rem);
  letter-spacing: 2px;
  line-height: 1.05;
  font-weight: 600;
}

h2, .h2{
  font-family: var(--font-display);
  font-size: clamp(2rem, 3vw, 3.5rem);
  letter-spacing: 1px;
  line-height: 1.2;
}

h3, .h3{
  font-family: var(--font-display);
  font-size: 1.6rem;
  letter-spacing: .5px;
}
p, body{
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.9;

}
.hero h1{
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: 4px;
  font-weight: 500;
}

.hero p{
  font-size: 1.2rem;
  opacity: .85;
  max-width: 700px;
  margin: 0 auto;
}
.text-luxury{
  position: relative;
  display: inline-block;
}

.text-luxury::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  width: 40%;
  height: 2px;
  background: linear-gradient(90deg, #C9A86A, transparent);
}
button, .btn-gold, .btn-outline{
  font-family: var(--font-body);
  font-size: .95rem;
  letter-spacing: 1px;
  text-transform: uppercase;
}