
:root{
  --bg:#12100E;
  --nav:#4E3628;;
  --card:#201A17;
  --contrast:#2B221D;
  --text:#EDEAE6;
  --muted:#C7C1BA;
  --accent:#FFD90E;
  --accent-600:#A58D63;
}

*{box-sizing:border-box}
body{font-family:"Vazirmatn",system-ui,-apple-system,Segoe UI,Roboto; color:var(--text); background:var(--bg);}
.fw-black{font-weight:900}

.bg-body{background:var(--bg)}
.bg-nav{background:var(--nav)}
.bg-contrast{background:var(--contrast)}
.btn-accent{background:var(--accent); border-color:var(--accent); color:#1b130e}
.btn-accent:hover{background:var(--accent-600); border-color:var(--accent-600); color:#140e09}
.badge.bg-accent{background:var(--accent); color:#1b130e}

.topbar{background:#0f0d0b}
.nav-link{color:var(--text) !important; opacity:.9}
.nav-link.active,.nav-link:hover{opacity:1}
.navbar-brand{color:var(--text) !important}

.hero-caption{position:absolute; inset:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; text-align:right; max-width:680px; padding-inline:clamp(20px, 6vw, 96px)}

@media (max-width:576px){

  .hero-caption{padding-inline:14px}
}

/* --- Navbar hover effects & mobile spacing --- */
.navbar .nav-link{transition:transform .15s ease, opacity .15s ease;}
.navbar .nav-link:hover{transform:scale(1.05);}
@media (max-width: 991.98px){
  .navbar-collapse{padding: 0.75rem 1rem 0.25rem 1rem;}
  .navbar-nav .nav-item + .nav-item{border-top:1px solid rgba(255,255,255,.08);}
  .navbar-nav .nav-link{padding:.7rem .25rem;}
}

/* --- Hero CTA bottom-left placement --- */
.hero-cta{
  position:absolute;
  left:clamp(16px, 6vw, 96px);
  bottom:clamp(16px, 8vh, 96px);
  z-index:3;
  box-shadow:0 8px 24px rgba(0,0,0,.35);
  border-radius:12px;
}
.hero-cta:hover{transform:translateY(-2px);}


@media (max-width:576px){

  .hero-cta{left:16px; bottom:16px;}
}

/* --- Desktop navbar underline accent --- */
.navbar .nav-link{
  position:relative;
}
.navbar .nav-link::after{
  content:"";
  position:absolute;
  right:0; left:0; bottom:-6px;
  height:2px; background:transparent;
  transition:background-color .15s ease, transform .15s ease;
  transform:scaleX(0);
  transform-origin:right;
}
.navbar .nav-link:hover::after{
  background:var(--accent);
  transform:scaleX(1);
}

/* ==== HERO VIDEO — نهایی و تمیز ==== */
.hero-video{
  height: auto !important;
  max-height: none !important;
  overflow: hidden;
  background: #000;
}

/* پیش‌فرض: بدون برش (اگه جایی viewport خاص نخواستی) */
.hero-video > video{
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain !important;
  object-position: center center !important;
}

/* موبایل: پرِ تمام فریم، بدون نوار سیاه */
@media (max-width: 575.98px){
  .hero-video{ max-height: 56vh !important; }
  .hero-video > video{
    width: 100%; height: 100%;
    object-fit: cover !important;
  }
}

/* دسکتاپ: عرض کامل، بدون نوار سیاهِ چپ/راست */
@media (min-width: 992px){
  .hero-video{ height: 72vh !important; }        /* می‌خوای بیشتر/کمتر؟ فقط عدد رو عوض کن */
  .hero-video > video{
    width: 100%; height: 100%;
    object-fit: cover !important;                 /* حذف نوار سیاه کناره‌ها */
    object-position: center center !important;
  }
}

/* ==== HERO MOBILE FIX ==== */
@media (max-width: 576px) {

  .hero-caption h1 {
    font-size: 1.3rem;            /* تیتر کوچکتر */
    line-height: 1.6rem;
  }

  .hero-caption p {
    font-size: 0.9rem;            /* توضیح کوچکتر */
    line-height: 1.4rem;
    margin-bottom: 0.75rem;
  }

  .hero-cta {
    font-size: 0.9rem;            /* دکمه کوچکتر */
    padding: 0.55rem 1.2rem;
    border-radius: 10px;
  }
}
