:root{
  --brand:#c4161c;
  --brand-dark:#a11217;
  --dark:#0f172a;
  --dark-2:#111827;
  --bg:#f3f4f6;
  --card:#ffffff;
  --muted:#6b7280;
  --border:#e5e7eb;
  --shadow:0 12px 28px rgba(15,23,42,.12);
  --radius:18px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:Vazirmatn,IRANSans,Segoe UI,sans-serif;
  background:var(--bg);
  color:var(--dark-2);
  line-height:1.9;
}
a{color:inherit;text-decoration:none;}
.container{max-width:1180px;margin:0 auto;padding:0 20px;}

/* Header */
.site-header{
  background:var(--dark);
  color:#fff;
  position:sticky;top:0;z-index:50;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.navbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;}
.brand img{height:48px;width:auto;border-radius:10px;background:#fff;padding:6px;}
.nav-links{display:flex;flex-wrap:wrap;gap:14px;font-weight:700;}
.nav-links a{color:#fff;opacity:.9;}
.nav-cta{display:flex;gap:10px;}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--brand);color:#fff;
  padding:10px 16px;border-radius:12px;font-weight:800;
  box-shadow:0 8px 18px rgba(196,22,28,.25);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.btn.secondary{background:#fff;color:var(--dark-2);box-shadow:var(--shadow);}
.btn:hover{transform:translateY(-2px);background:var(--brand-dark);} 

/* Hero */
.hero{
  position:relative;
  min-height:70vh;
  background:linear-gradient(120deg, #0f172a 0%, #111827 55%, #1f2937 100%);
  color:#fff;
  overflow:hidden;
}
.hero::before{
  content:;position:absolute;inset:-20%;
  background:radial-gradient(circle at 30% 20%, rgba(196,22,28,.25), transparent 50%),
             radial-gradient(circle at 80% 30%, rgba(255,255,255,.08), transparent 40%);
}
.hero-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center;padding:60px 0;}
.hero h1{font-size:clamp(26px,3.5vw,44px);line-height:1.4;margin-bottom:14px;}
.hero p{color:#d1d5db;margin-bottom:18px;}
.hero-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius);padding:22px;backdrop-filter:blur(6px);} 
.hero-image{height:340px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);}
.hero-image img{width:100%;height:100%;object-fit:cover;}

/* Services */
.section{padding:48px 0;}
.section-title{font-size:24px;margin-bottom:8px;}
.section-sub{color:var(--muted);margin-bottom:18px;}
.services{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;}
.service-card{position:relative;background:var(--card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);min-height:190px;}
.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.65);} 
.service-content{position:relative;padding:16px;color:#fff;display:flex;flex-direction:column;gap:10px;align-items:flex-start;}
.service-content h3{font-size:20px;}
.service-content .btn{padding:8px 12px;font-size:14px;}

/* Trust */
.trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.trust .card{background:var(--card);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);border:1px solid var(--border);} 

/* CTA */
.cta-block{background:var(--brand);color:#fff;border-radius:var(--radius);padding:24px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;box-shadow:var(--shadow);} 

/* Footer */
.footer{background:#0b1222;color:#e5e7eb;padding:28px 0;margin-top:30px;}
.footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;}
.footer a{color:#e5e7eb;opacity:.9;}

/* Responsive */
@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr;}
  .nav-links{display:none;}
}
@media(max-width:600px){
  .navbar{gap:8px;}
  .brand img{height:42px;}
  .hero{min-height:auto;}
  .hero-inner{padding:36px 0;}
}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:12px;}
.gallery img{width:100%;height:180px;object-fit:cover;border-radius:12px;box-shadow:var(--shadow);} 

/* Hero slider */
.hero-slider{position:relative;min-height:70vh;background:#0f172a;overflow:hidden;}
.hero-slider .slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease-in-out;}
.hero-slider .slide.active{opacity:1;}
.hero-slider .slide img{width:100%;height:100%;object-fit:cover;filter:brightness(.78);} 
.hero-overlay{position:relative;z-index:2;padding:70px 0;}
.hero-overlay .hero-card{max-width:640px;}

/* Map */
.map-embed{border:0;width:100%;height:260px;border-radius:16px;box-shadow:var(--shadow);} 

/* Keywords */
.keywords{background:var(--card);border:1px solid var(--border);padding:18px;border-radius:var(--radius);box-shadow:var(--shadow);} 
.keywords ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin-top:10px;}
.keywords li{background:#eef2f7;border:1px solid var(--border);padding:6px 10px;border-radius:10px;font-size:14px;}

@media(max-width:768px){
  .hero-slider{min-height:55vh;}
  .map-embed{height:220px;}
}
.brand img{object-fit:contain;background:#fff;border:1px solid #e5e7eb;}

/* Adjust hero size */
.hero-slider{min-height:55vh;}
@media(max-width:768px){.hero-slider{min-height:45vh;}}

/* Hero badge */
.hero-badge{display:inline-flex;gap:8px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:#e5e7eb;padding:8px 14px;border-radius:12px;font-weight:700;backdrop-filter:blur(4px);margin-bottom:12px;}
.hero-actions .btn{min-width:140px;}

/* Clients slider */
.clients-section{padding:18px 0 24px;margin:0 auto;max-width:1180px;text-align:center;}
.clients-section h2{margin-bottom:6px;}
.clients-section p{color:#4b5563;margin:0 auto 14px;max-width:680px;}
.clients-slider{overflow:hidden;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 10px 26px rgba(0,0,0,.06);padding:12px;}
.clients-track{display:flex;align-items:center;gap:24px;animation:clientScroll 26s linear infinite;min-width:200%;}
.clients-track:hover{animation-play-state:paused;}
.clients-track img{height:54px;width:auto;object-fit:contain;filter:grayscale(0);transition:transform .2s ease, filter .2s ease;}
.clients-track a{display:flex;align-items:center;justify-content:center;padding:8px 12px;}
.clients-track a:hover img{transform:scale(1.06);filter:grayscale(0);} 
@keyframes clientScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media(max-width:900px){.clients-track{gap:18px;}.clients-track img{height:48px;}}
@media(max-width:600px){.clients-track{gap:14px;}.clients-track img{height:44px;}}

/* Portfolio */
.portfolio{max-width:1180px;margin:16px auto;padding:0 16px;}
.portfolio h2{text-align:center;margin-bottom:4px;}
.portfolio p.lead{color:#4b5563;text-align:center;margin-bottom:12px;}
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.project-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.06);} 
.project-card img{width:100%;height:170px;object-fit:cover;display:block;}
.project-meta{padding:10px 12px;display:flex;flex-direction:column;gap:4px;}
.project-meta h3{margin:0;font-size:16px;color:#111827;}
.project-meta span{color:#6b7280;font-size:13px;}

/* CTA buttons tweak */
.btn.whatsapp{background:#25d366;color:#fff !important;box-shadow:0 8px 18px rgba(37,211,102,.2);} 
.btn.whatsapp:hover{background:#1eb257;}
/* Hero card refinement */
.hero-slider .hero-card{background:rgba(15,23,42,.35);border:1px solid rgba(255,255,255,.12);padding:20px;border-radius:16px;box-shadow:0 12px 32px rgba(0,0,0,.28);}
.hero-slider .hero-card h1{color:#f8fafc;}
.hero-slider .hero-card p{color:#cbd5e1;}
/* Mobile nav */
.menu-toggle{display:none;font-size:24px;cursor:pointer;color:#111827;padding:6px 10px;border:1px solid #e5e7eb;border-radius:10px;}
.navbar{position:relative;}
@media(max-width:900px){
  .menu-toggle{display:block;}
  .nav-links{display:none;position:absolute;top:70px;right:10px;background:#0f172a;color:#fff;border-radius:12px;padding:12px;flex-direction:column;gap:10px;box-shadow:0 12px 30px rgba(0,0,0,.18);}
  .nav-links a{color:#fff;}
  .nav-links.open{display:flex;}
  .nav-cta{display:none;}
}
