/*
Theme Name: Pro Agency Theme
Theme URI: https://example.com
Author: Your Name
Author URI: https://example.com
Description: قالب اختصاصی برای آژانس طراحی سایت، برنامه‌نویسی و سئو
Version: 1.1
Text Domain: pro-agency-theme
*/

/* ===========================
   FONTS
=========================== */
@font-face {
  font-family: 'Tehran';
  src: url('/wp-content/themes/siteva/assets/fonts/tehran.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Sahel';
  src: url('/wp-content/themes/siteva/assets/fonts/sahel.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* ===========================
   RESET & BASE
=========================== */
html, body {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
*, *::before, *::after { box-sizing: inherit; }

body{
  font-family: 'Sahel', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  direction: rtl;
  text-align: right;
  background-color: #0b0b15;
  color: rgba(255,255,255,0.9);
  font-size: 16px;
  line-height: 1.9;
}

a{ color: inherit; text-decoration: none; }
a:hover{ text-decoration: underline; }

img{ max-width:100%; height:auto; }

/* ===========================
   CONTAINERS
=========================== */
.container{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}

/* هماهنگ با header.php */
.vam-container{
  width:100%;
  max-width:1280px;
  margin:0 auto;
  padding:0 24px;
}
@media (max-width:992px){
  .vam-container{max-width:100%;padding:0 20px;}
}
@media (max-width:640px){
  .vam-container{padding:0 16px;}
}

/* ===========================
   BUTTONS
=========================== */
.btn{
  display:inline-block;
  padding:10px 24px;
  border-radius:999px;
  font-size:.95rem;
  font-weight:500;
  border:1px solid transparent;
  cursor:pointer;
  transition:all .2s ease;
  position:relative;
  overflow:hidden;
  font-family:'Tehran', sans-serif;
  letter-spacing:.03em;
}
.btn-primary{
  background:linear-gradient(135deg,#5b3dff,#9b5bff);
  color:#fff;
}
.btn-primary::before{
  content:"";
  position:absolute;
  inset-inline-start:-40%;
  top:0;
  width:40%;
  height:100%;
  background:linear-gradient(120deg,rgba(255,255,255,.3),rgba(255,255,255,0));
  transform:skewX(-20deg);
  opacity:0;
  transition:transform .4s ease, opacity .4s ease;
}
.btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 25px rgba(91,61,255,.35);
}
.btn-primary:hover::before{
  opacity:1;
  transform:translateX(260%) skewX(-20deg);
}
.btn-secondary{
  background:transparent;
  color:#f5f5f7;
  border-color:rgba(245,245,247,.35);
}
.btn-secondary:hover{ background:rgba(255,255,255,.05); }

/* ===========================
   SECTIONS
=========================== */
.section{
  padding:60px 0;
  position:relative;
}
.section::before{
  content:"";
  position:absolute;
  inset-inline-end:0;
  top:0;
  width:180px;
  height:180px;
  background:radial-gradient(circle,rgba(91,61,255,.15),transparent);
  opacity:.6;
  pointer-events:none;
}

.section.section-alt{ background:#060613; }
.section.section-alt::before{
  opacity:.3;
  inset-inline-end:auto;
  inset-inline-start:0;
}

/* Titles */
.section-title{
  font-family:'Tehran', sans-serif;
  font-size:clamp(2rem,1.2vw + 1.4rem,2.6rem);
  font-weight:900;
  text-align:center;
  background:linear-gradient(90deg,#c850ff 0%,#7a5cff 40%,#4bc4ff 100%);
  -webkit-background-clip:text;
  color:transparent;
  background-size:200% 200%;
  animation:headingGradient 5s ease-in-out infinite;
  margin-bottom:14px;
  line-height:1.3;
}
@keyframes headingGradient{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}

.section-subtitle{
  font-family:'Sahel', sans-serif;
  font-size:.98rem;
  font-weight:400;
  color:#a9a9c4;
  margin:0 auto 30px;
  max-width:640px;
  text-align:center;
  opacity:.9;
}

/* ===========================
   HERO
=========================== */
.hero{
  padding:80px 0 50px;
  background:
    linear-gradient(to right, rgba(10,10,25,.85), rgba(10,10,25,.55)),
    url('http://siteva.ir/wp-content/uploads/2025/11/124.png');
  background-size:cover !important;
  background-position:right center !important;
  position:relative;
  overflow:hidden;
}
.hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(150px,300px);
  column-gap:60px;
  align-items:center;
}
.hero-parallax{
  position:absolute;
  inset:-140px;
  background:radial-gradient(circle at top left,rgba(155,91,255,.28),transparent 55%);
  opacity:.7;
  z-index:0;
  pointer-events:none;
  transform:translate3d(0,0,0);
  transition:transform .15s ease-out;
}

.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:5px 12px;
  border-radius:999px;
  background:rgba(16,16,32,.8);
  border:1px solid rgba(255,255,255,.06);
  font-size:.8rem;
  color:#c7c7de;
  margin-bottom:16px;
}
.hero-badge span{
  width:8px;height:8px;border-radius:999px;
  background:#4ade80;
  box-shadow:0 0 0 6px rgba(74,222,128,.2);
}

.hero-title{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:0 0 18px;
}

/* خط اول: یک سطر */
.hero-line-1{
  font-family:'Tehran', sans-serif;
  font-size:clamp(2.4rem,3vw + 1rem,3.6rem);
  font-weight:800;
  line-height:1.3;
  color:#fff;
  white-space:nowrap;
}

/* خط دوم: RTL slide + typewriter + gradient */
.hero-line-2{
  font-family:'Tehran', sans-serif;
  font-size:clamp(2.2rem,2.6vw + 1rem,3.4rem);
  font-weight:800;
  line-height:1.3;
}

/* span داخل خط دوم */
.hero-line-2-text{
  display:inline-block;
  white-space:nowrap;
  overflow:hidden;
  border-right:4px solid rgba(255,255,255,.55);

  background:linear-gradient(90deg,#ff7ce5,#b36bff,#6a7bff,#34d2ff);
  background-size:260% 260%;
  -webkit-background-clip:text;
  color:transparent;

  opacity:0;
  transform:translateX(60px);

  animation:
    slideInRTL .8s ease forwards,
    typing 2.2s steps(30) .2s forwards,
    caretBlink .8s infinite,
    gradientMove 4.5s ease-in-out infinite;
}

/* ورود از راست به چپ */
@keyframes slideInRTL{
  to{ opacity:1; transform:translateX(0); }
}

/* تایپ */
@keyframes typing{
  0%{ width:0; opacity:1; }
  100%{ width:100%; opacity:1; }
}
@keyframes caretBlink{
  0%,50%{ border-color:rgba(255,255,255,.8); }
  51%,100%{ border-color:transparent; }
}
@keyframes gradientMove{
  0%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
  100%{ background-position:0% 50%; }
}

.hero-text{
  font-family:'Sahel', sans-serif;
  font-size:1rem;
  font-weight:400;
  color:#c4c4de;
  max-width:540px;
  line-height:1.9;
}

.hero-actions{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
}

.hero-meta{
  display:flex;
  gap:20px;
  font-size:.8rem;
  color:#a0a0b8;
}
.hero-meta strong{
  display:block;
  font-size:1rem;
  color:#f5f5f7;
}

/* پنل متریک‌ها */
.hero-right{
  max-width:480px;
  padding:24px 26px;
  border-radius:22px;
}
.hero-right-header{
  display:flex;
  justify-content:space-between;
  font-size:.9rem;
  margin-bottom:18px;
  opacity:.9;
}
.hero-right-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.hero-card{
  padding:14px 14px;
  font-size:.9rem;
  line-height:1.6;
  border-radius:16px;
  min-height:80px;
  background:rgba(15,15,34,.95);
  border:1px solid rgba(255,255,255,.04);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.hero-card:hover{
  transform:translateY(-3px);
  border-color:rgba(155,91,255,.6);
  box-shadow:0 12px 30px rgba(0,0,0,.6);
}
.hero-card-label{
  font-size:.8rem;
  opacity:.85;
  margin-bottom:4px;
  color:#8b8bb0;
}
.hero-card-value{
  font-size:1rem;
  font-weight:600;
  margin-bottom:2px;
}

/* ===========================
   CARDS (Unified Gradient)
=========================== */
:root{
  --siteva-card-radius:24px;
  --siteva-card-border:rgba(255,255,255,0.07);
  --siteva-card-bg:#070617;
  --siteva-purple:#7c3aed;
  --siteva-blue:#3b82f6;
  --siteva-pink:#ec4899;
}

.feature-card,
.service-card,
.process-step,
.portfolio-card,
.metric-card,
.stat-card,
.testimonial-card,
.pricing-card{
  position:relative;
  overflow:hidden;
  border-radius:var(--siteva-card-radius);
  border:1px solid var(--siteva-card-border);
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.22) 0, transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.18) 0, transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,.2) 0, transparent 55%),
    var(--siteva-card-bg);
  box-shadow:
    0 18px 40px rgba(7,6,32,.9),
    0 0 0 1px rgba(255,255,255,.02);
  padding:28px 26px;
  backdrop-filter:blur(18px);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .35s ease;
}
.feature-card::before,
.service-card::before,
.process-step::before,
.portfolio-card::before,
.metric-card::before,
.stat-card::before,
.testimonial-card::before,
.pricing-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  background:linear-gradient(
    135deg,
    rgba(124,58,237,.4),
    rgba(59,130,246,.25),
    rgba(236,72,153,.45)
  );
  opacity:0;
  mix-blend-mode:screen;
  pointer-events:none;
  transition:opacity .35s ease;
}
.feature-card:hover,
.service-card:hover,
.process-step:hover,
.portfolio-card:hover,
.metric-card:hover,
.stat-card:hover,
.testimonial-card:hover,
.pricing-card:hover{
  transform:translateY(-6px);
  box-shadow:
    0 24px 55px rgba(7,6,32,1),
    0 0 0 1px rgba(255,255,255,.06);
  border-color:rgba(236,72,153,.55);
}
.feature-card:hover::before,
.service-card:hover::before,
.process-step:hover::before,
.portfolio-card:hover::before,
.metric-card:hover::before,
.stat-card:hover::before,
.testimonial-card:hover::before,
.pricing-card:hover::before{ opacity:.9; }

/* ===========================
   GRIDS
=========================== */
.features-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:28px;
}
.services-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px;
}
.process-steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.stats-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px;
}
.testimonials-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px;
}

/* ===========================
   SERVICES
=========================== */
.service-card{
  padding:26px 28px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  height:100%;
}
.service-card-header{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:14px;
}
.service-icon{
  width:40px;height:40px;border-radius:999px;
  display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at top,#9b5bff,#5b3dff);
  box-shadow:0 8px 22px rgba(0,0,0,.6);
  font-size:1.2rem;
}
.service-icon--web{ background:radial-gradient(circle at top,#6366f1,#4f46e5); }
.service-icon--dev{ background:radial-gradient(circle at top,#14b8a6,#0f766e); }
.service-icon--seo{ background:radial-gradient(circle at top,#f97316,#ea580c); }

.service-title{
  font-family:'Tehran', sans-serif;
  font-size:1.25rem;
  font-weight:700;
  margin-bottom:6px;
}
.service-desc{
  font-size:.95rem;
  opacity:.9;
  line-height:1.7;
}
.service-list{
  margin:16px 0;
  padding:0;
  list-style:none;
}
.service-list li{
  margin-bottom:6px;
  font-size:.92rem;
  line-height:1.65;
}
.service-card .btn{ margin-top:auto; }

/* ===========================
   PROCESS
=========================== */
.process-step{
  padding:18px;
  border-radius:18px;
  font-size:.85rem;
}
.process-step-number{
  display:inline-flex;
  width:24px;height:24px;border-radius:999px;
  background:#1f2937;
  align-items:center;justify-content:center;
  font-size:.75rem;
  margin-bottom:6px;
}

/* ===========================
   PORTFOLIO
=========================== */
.portfolio-card{
  border-radius:18px;
  overflow:hidden;
  background:#05050f;
}
.portfolio-body{
  padding:14px 16px 16px;
  font-size:.85rem;
}
.portfolio-name{ font-weight:600; margin-bottom:4px; }

/* ===========================
   STATS
=========================== */
.stat-card{
  text-align:center;
  min-height:180px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.stat-icon{
  margin:0 auto 10px;
  width:28px;height:28px;border-radius:999px;
  background:radial-gradient(circle at top,rgba(155,91,255,.9),rgba(91,61,255,.9));
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;
}
.stat-value{
  font-family:'Tehran', sans-serif;
  font-size:2.2rem;
  font-weight:600;
  letter-spacing:.04em;
}
.stat-label{
  font-family:'Sahel', sans-serif;
  font-size:.95rem;
}

/* ===========================
   TESTIMONIALS
=========================== */
.testimonial-card{ padding:28px; }
.testimonial-header{
  display:flex;align-items:center;gap:10px;
  margin-bottom:10px;
}
.testimonial-avatar{
  width:40px;height:40px;border-radius:999px;
  background:radial-gradient(circle at top,#4f46e5,#111827);
  display:flex;align-items:center;justify-content:center;
  font-size:.8rem;font-weight:600;
}
.testimonial-meta{ display:flex;flex-direction:column;gap:2px; }
.testimonial-name{
  font-family:'Tehran', sans-serif;
  font-weight:600;font-size:.92rem;
  color:#e7e7ff;
}
.testimonial-role{ font-size:.75rem;color:#9ca3af; }
.testimonial-card p{
  font-size:.95rem;line-height:1.8;
}

/* ===========================
   CONTACT
=========================== */
.contact-wrapper{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);
  gap:40px;
  align-items:flex-start;
}
.contact-form form{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.contact-form label{
  display:block;
  font-size:.92rem;
  margin-bottom:4px;
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  width:100%;
  display:block;
  padding:12px 14px;
  font-size:.95rem;
  border-radius:10px;
}
.contact-form textarea{
  min-height:130px;
  resize:vertical;
}
.contact-form .btn{
  align-self:flex-start;
  margin-top:6px;
}
.contact-info{
  font-size:.95rem;
  line-height:1.9;
}
.contact-info p{ margin-bottom:8px; }

/* ===========================
   FOOTER
=========================== */
.site-footer .footer-top{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);
  gap:40px;
  align-items:flex-start;
}
.footer-bottom{
  margin-top:24px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.05);
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-size:.9rem;
}

/* ===========================
   FLOATING CTA
=========================== */
.floating-cta{
  position:fixed;
  inset-inline-start:24px;
  bottom:24px;
  z-index:999;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 18px;
  border-radius:999px;
  background:linear-gradient(135deg,#25d366,#128c7e);
  color:#fff;
  font-size:.9rem;
  font-weight:500;
  box-shadow:0 12px 30px rgba(0,0,0,.6);
  border:1px solid rgba(255,255,255,.18);
  opacity:.95;
  transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
.floating-cta:hover{
  transform:translateY(-3px);
  opacity:1;
  box-shadow:0 16px 40px rgba(0,0,0,.8);
}
@media (max-width:640px){
  .floating-cta{
    inset-inline-start:16px;
    bottom:16px;
    padding:9px 14px;
    font-size:.8rem;
  }
}

/* ===========================
   REVEAL / STAGGER
=========================== */
.reveal{
  opacity:0;
  transform:translateY(40px);
  transition:all .6s ease;
}
.reveal.active{
  opacity:1;
  transform:translateY(0);
}
.stagger > div{
  opacity:0;
  transform:translateY(25px);
}
.stagger.active > div{
  opacity:1;
  transform:translateY(0);
}
.stagger.active > div:nth-child(1){ transition-delay:.1s; }
.stagger.active > div:nth-child(2){ transition-delay:.2s; }
.stagger.active > div:nth-child(3){ transition-delay:.3s; }
.stagger.active > div:nth-child(4){ transition-delay:.4s; }
.stagger.active > div:nth-child(5){ transition-delay:.5s; }
.stagger.active > div:nth-child(6){ transition-delay:.6s; }

.hero.fade-left{
  transition-duration:.9s;
  transform:translateX(-50px);
}
.hero.fade-left.active{ transform:translateX(0); }

/* ===========================
   HEADER / NAV (NEW)
=========================== */
.vam-header{
  position:sticky;
  top:0;
  z-index:50;
  background:radial-gradient(circle at top left,#1c0938 0,#050415 55%,#02010b 100%);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.04);
}
.vam-header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:14px 0;
}

/* Logo */
.vam-logo .logo-wrapper{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  text-decoration:none;
  transform-origin:center;
  transition:transform .25s ease, filter .25s ease;
}
.site-logo{ display:block; height:44px; width:auto; }
.desktop-logo{ display:block; }
.mobile-logo{ display:none; }
.vam-logo .logo-wrapper:hover{
  transform:translateY(-1px) scale(1.02);
  filter:drop-shadow(0 0 10px rgba(124,90,255,.55));
}

/* Nav */
.vam-nav{
  flex:1;
  display:flex;
  justify-content:center;
}
.vam-nav-menu{
  display:flex;
  align-items:center;
  gap:32px;
  list-style:none;
  margin:0;
  padding:0;
}
.vam-nav-menu > li{ position:relative; }
.vam-nav-menu > li > a{
  position:relative;
  display:inline-flex;
  align-items:center;
  padding:6px 0;
  font-family:'Sahel', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:15px;
  font-weight:500;
  color:rgba(255,255,255,.88);
  text-decoration:none;
  transition:color .25s ease, transform .25s ease, filter .25s ease;
}
.vam-nav-menu > li > a::after{
  content:"";
  position:absolute;
  right:0;left:0;
  bottom:-6px;
  height:3px;border-radius:999px;
  background:linear-gradient(90deg,#ff7ce5 0%,#7c3aed 50%,#34d2ff 100%);
  transform-origin:right center;
  transform:scaleX(0);
  opacity:0;
  transition:transform .25s ease, opacity .25s ease;
}
.vam-nav-menu > li:hover > a::after,
.vam-nav-menu > li:focus-within > a::after{
  transform:scaleX(1); opacity:1;
}
.vam-nav-menu > li:hover > a,
.vam-nav-menu > li:focus-within > a{
  color:#fff;
  transform:translateY(-2px);
  filter:drop-shadow(0 6px 12px rgba(124,58,237,.45));
}
body.home .vam-nav-menu > li.current-menu-item > a::after,
body.home .vam-nav-menu > li.current_page_item > a::after{
  transform:scaleX(0); opacity:0;
}
body.home .vam-nav-menu > li.current-menu-item > a,
body.home .vam-nav-menu > li.current_page_item > a{
  color:rgba(255,255,255,.88);
}

/* Header Actions */
.vam-header-actions{
  display:flex;
  align-items:center;
  gap:12px;
}
.vam-btn-primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 22px;
  border-radius:999px;
  font-size:14px;
  font-weight:600;
  background:linear-gradient(135deg,#7c3aed,#ec4899);
  color:#fff;
  text-decoration:none;
  box-shadow:0 8px 25px rgba(124,58,237,.5);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.vam-btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 30px rgba(124,58,237,.65);
  filter:brightness(1.05);
}
.vam-btn-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 20px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.88);
  font-size:14px;
  font-weight:500;
  text-decoration:none;
  background:radial-gradient(circle at top left,rgba(255,255,255,.04),rgba(8,7,23,.9));
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.vam-btn-outline:hover{
  border-color:rgba(255,255,255,.35);
  color:#fff;
}

/* Mobile Nav */
@media (max-width: 992px){
  .vam-header-inner{gap:16px;}
  .vam-nav-toggle{display:flex;}

  .vam-nav{
    position:absolute;
    inset-inline:0;
    top:100%;
    background:radial-gradient(circle at top left,#1a0b33,#050414 70%);
    border-bottom:1px solid rgba(255,255,255,.06);
    transform-origin:top center;
    transform:scaleY(0);
    opacity:0;
    visibility:hidden;
    transition:transform .18s ease, opacity .18s ease, visibility .18s;
  }
  .vam-nav.is-open{
    transform:scaleY(1);
    opacity:1;
    visibility:visible;
  }
  .vam-nav-menu{
    flex-direction:column;
    align-items:flex-start;
    padding:12px 20px 16px;
    gap:10px;
  }
  .vam-header-actions{display:none;}

  .desktop-logo{display:none;}
  .mobile-logo{display:block;height:40px;}
}

/* ===========================
   PRICING – PRO / LUX FINAL
   فقط این بلوک برای قیمت‌ها مرجع باشد
=========================== */
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px;
  margin-top:28px;
  align-items:stretch;
}

.pricing-card{
  text-align:center;
  padding:34px 30px;
  min-height:380px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  position:relative;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.pricing-card::after{
  content:"";
  position:absolute;
  bottom:-18px;
  left:50%;
  transform:translateX(-50%);
  width:70%;
  height:28px;
  background:radial-gradient(circle, rgba(124,58,237,.35), transparent 70%);
  filter:blur(22px);
  opacity:.45;
  pointer-events:none;
}

.pricing-name{
  font-family:'Tehran', sans-serif;
  font-size:1.15rem;
  font-weight:700;
  margin-bottom:10px;
  color:#fff;
}
.pricing-price{
  font-family:'Tehran', sans-serif;
  font-size:1.45rem;
  font-weight:900;
  margin-bottom:16px;
  color:#fff;
  letter-spacing:.2px;
}

.pricing-list{
  list-style:none;
  padding:0;
  margin:0 0 18px 0;
  line-height:1.95;
  font-size:.98rem;
  color:rgba(255,255,255,.9);
}
.pricing-list li{
  padding:6px 0;
  border-bottom:1px dashed rgba(255,255,255,.08);
}
.pricing-list li:last-child{border-bottom:none;}

.pricing-card:hover{
  transform:translateY(-10px);
  border-color:rgba(236,72,153,.55);
  box-shadow:0 24px 55px rgba(0,0,0,.7);
}

/* Featured plan */
.pricing-card--featured{
  transform:translateY(-8px) scale(1.06);
  border:1px solid rgba(236,72,153,.6) !important;
  box-shadow:
    0 0 55px rgba(124,58,237,.55),
    inset 0 0 28px rgba(236,72,153,.22);
  position:relative;
}

.pricing-card--featured::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:24px;
  background:linear-gradient(135deg,
    rgba(236,72,153,.45),
    rgba(124,58,237,.45),
    rgba(59,130,246,.45)
  );
  opacity:.22;
  filter:blur(28px);
  z-index:-1;
}

.pricing-card--featured:hover{
  transform:translateY(-12px) scale(1.08);
}

/* ===== Badge پیشنهادی – نسخه حرفه‌ای (بالای کارت – خارج از Box) ===== */

.pricing-card-wrapper {
  position: relative;
}

.pricing-badge {
  position: absolute;
  top: -18px;                 /* بالای کارت */
  right: 50%;
  transform: translateX(50%); /* وسط‌چین کامل */

  padding: 6px 18px;
  font-size: .75rem;
  font-weight: 700;

  border-radius: 999px;
  color: #fff;

  background: linear-gradient(135deg,#7c3aed,#ec4899);
  box-shadow:
    0 8px 20px rgba(236,72,153,0.45),
    0 0 16px rgba(124,58,237,0.55);

  z-index: 10;
}

/* کمی پالس ملایم */
@keyframes badgePulse {
  0%, 100% { transform: translateX(50%) scale(1); }
  50% { transform: translateX(50%) scale(1.05); }
}
.pricing-badge {
  animation: badgePulse 2.8s ease-in-out infinite;
}


/* ===========================
   RESPONSIVE GLOBAL
=========================== */
@media (max-width: 992px){
  .hero-inner{grid-template-columns:1fr;}
  .hero-right{margin-top:20px;}

  .features-grid,
  .services-grid,
  .process-steps,
  .portfolio-grid,
  .stats-grid,
  .testimonials-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .contact-wrapper{grid-template-columns:1fr;}
}

@media (max-width: 640px){
  .features-grid,
  .services-grid,
  .process-steps,
  .portfolio-grid,
  .stats-grid,
  .testimonials-grid,
  .footer-top{
    grid-template-columns:1fr;
  }

  .hero-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .footer-bottom{
    flex-direction:column;
    gap:6px;
    align-items:flex-start;
  }

  .hero-line-1,
  .hero-line-2{ font-size:2rem; white-space:normal; }
}
/* ==========================================
   PORTFOLIO ULTRA PREMIUM (Siteva x Dribbble)
========================================== */

.portfolio-ultra-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:32px;
  margin-top:26px;
  align-items:stretch;
}

/* کارت اصلی */
.portfolio-ultra-card{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  border:1px solid rgba(255,255,255,0.07);
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.20), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.18), transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,.18), transparent 55%),
    #070617;
  box-shadow:0 20px 60px rgba(0,0,0,.65);
  backdrop-filter: blur(14px);
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

/* مدیا (عکس) */
.portfolio-ultra-media{
  position:relative;
  display:block;
  height:240px;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,0.06);
}

.portfolio-ultra-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.02);
  transition:transform .6s ease, filter .6s ease;
  filter:saturate(1.05) contrast(1.05);
}

/* اورلی گرادیانت روی تصویر */
.portfolio-ultra-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(6,6,18,0.15) 0%, rgba(6,6,18,0.6) 60%, rgba(6,6,18,0.95) 100%),
    radial-gradient(circle at top left, rgba(124,58,237,.55), transparent 50%),
    radial-gradient(circle at top right, rgba(59,130,246,.45), transparent 55%);
  opacity:.9;
  transition:opacity .45s ease;
}

/* تگ‌های شناور */
.portfolio-ultra-tags{
  position:absolute;
  top:14px;
  right:14px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  z-index:3;
}

.tag{
  font-size:.72rem;
  font-weight:700;
  padding:5px 10px;
  border-radius:999px;
  color:#fff;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(10,10,25,0.65);
  backdrop-filter: blur(10px);
  box-shadow:0 6px 18px rgba(0,0,0,.45);
}

.tag-purple{ background:linear-gradient(135deg,#7c3aed,#a855f7); }
.tag-blue  { background:linear-gradient(135deg,#3b82f6,#22d3ee); }
.tag-pink  { background:linear-gradient(135deg,#ec4899,#f472b6); }

/* متریک‌های شناور */
.portfolio-ultra-metrics{
  position:absolute;
  bottom:12px;
  left:12px;
  display:flex;
  gap:8px;
  z-index:3;
}

.metric-chip{
  min-width:92px;
  padding:8px 10px;
  border-radius:14px;
  background:rgba(7,7,18,0.7);
  border:1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(12px);
  text-align:center;
}

.metric-value{
  font-size:1rem;
  font-weight:900;
  color:#fff;
}
.metric-label{
  font-size:.72rem;
  color:rgba(255,255,255,0.75);
  margin-top:2px;
}

/* بدنه کارت */
.portfolio-ultra-body{
  padding:20px 20px 18px;
}

.portfolio-ultra-title{
  font-family:'Tehran',sans-serif;
  font-size:1.12rem;
  font-weight:800;
  color:#fff;
  margin-bottom:6px;
}

.portfolio-ultra-meta{
  font-size:.9rem;
  color:#a9a9c4;
  margin-bottom:10px;
}

.portfolio-ultra-desc{
  font-size:.95rem;
  line-height:1.9;
  color:rgba(255,255,255,0.9);
  opacity:.95;
  min-height:66px;
}

/* فوتر کارت */
.portfolio-ultra-footer{
  margin-top:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:10px;
  border-top:1px dashed rgba(255,255,255,0.08);
}

.portfolio-ultra-stack{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  font-size:.75rem;
}
.portfolio-ultra-stack span{
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.06);
}

.portfolio-ultra-cta{
  font-size:.9rem;
  font-weight:700;
  background:linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  -webkit-background-clip:text;
  color:transparent;
}

/* شاین لوکس روی کارت */
.portfolio-ultra-card::before{
  content:"";
  position:absolute;
  inset:-40% -20%;
  background:linear-gradient(120deg, transparent 40%, rgba(255,255,255,0.10) 50%, transparent 60%);
  transform:translateX(-120%) rotate(8deg);
  transition:transform .9s ease;
  pointer-events:none;
}

/* هاور سینمایی */
.portfolio-ultra-card:hover{
  transform:translateY(-10px) scale(1.015);
  border-color:rgba(236,72,153,0.55);
  box-shadow:0 28px 80px rgba(0,0,0,.8);
}

.portfolio-ultra-card:hover::before{
  transform:translateX(120%) rotate(8deg);
}

.portfolio-ultra-card:hover .portfolio-ultra-media img{
  transform:scale(1.08);
  filter:saturate(1.2) contrast(1.1);
}

.portfolio-ultra-card:hover .portfolio-ultra-overlay{
  opacity:1;
}

/* ریسپانسیو */
@media(max-width:992px){
  .portfolio-ultra-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .portfolio-ultra-media{ height:220px; }
}
@media(max-width:640px){
  .portfolio-ultra-grid{ grid-template-columns:1fr; }
  .portfolio-ultra-media{ height:210px; }
}
/* ============================
   Ultra Premium Portfolio Cards
   Luxury – Dribbble Style
============================ */

.portfolio-ultra {
  padding: 100px 0;
  text-align: center;
}

.section-title-ultra {
  font-size: 2.8rem;
  font-weight: 900;
  background: linear-gradient(90deg,#d946ef,#7c3aed,#3b82f6);
  -webkit-background-clip: text;
  color: transparent;
  margin-bottom: 14px;
}

.section-subtitle-ultra {
  color: #b5b5d6;
  margin-bottom: 45px;
}

.portfolio-grid-ultra {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 28px;
}

.portfolio-thumb-ultra {
  width: 100%;
  height: 200px;
  background-size: cover;
  background-position: center;
}

.portfolio-body-ultra {
  padding: 22px;
  text-align: right;
}

.portfolio-body-ultra h3 {
  margin: 0 0 8px;
  font-size: 1.15rem;
  color: #fff;
  font-weight: 700;
}

.portfolio-body-ultra p {
  margin: 0 0 16px;
  font-size: .92rem;
  color: #c2c2dd;
}

.portfolio-body-ultra a {
  display: inline-block;
  padding: 8px 20px;
  background: linear-gradient(135deg,#7c3aed,#ec4899);
  border-radius: 999px;
  color: #fff;
  font-size: .85rem;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .25s ease;
}

.portfolio-body-ultra a:hover {
  opacity: .85;
}
/* ===== ULTRA PREMIUM PORTFOLIO – Dribbble Style ===== */

.portfolio-ultra {
  margin-top: 50px;
}

.portfolio-ultra-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 38px;
  margin-top: 40px;
}

.portfolio-card-ultra {
  position: relative;
  border-radius: 26px;
  overflow: hidden;
  padding: 0;
  cursor: pointer;

  /* شیشه‌ای + گرادیانت */
  background: rgba(25, 20, 55, 0.35);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, 0.06);

  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  box-shadow: 0 28px 55px rgba(0,0,0,0.75);
}

.portfolio-card-ultra:hover {
  transform: translateY(-12px);
  border-color: rgba(236,72,153,0.45);
  box-shadow: 
    0 20px 45px rgba(124,58,237,0.48),
    0 0 22px rgba(236,72,153,0.35);
}

/* تصویر */
.portfolio-img img {
  width: 100%;
  height: 240px;
  object-fit: cover;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}

/* محتوا */
.portfolio-content {
  padding: 24px;
  text-align: center;
}

.portfolio-title {
  font-size: 1.2rem;
  font-weight: 800;
  margin-bottom: 10px;
}

.portfolio-tags {
  font-size: 0.95rem;
  opacity: .8;
  margin-bottom: 22px;
}

/* دکمه */
.portfolio-btn {
  display: inline-block;
  padding: 10px 26px;
  border-radius: 999px;
  font-size: .95rem;
  background: linear-gradient(135deg, #9b5bff, #ec4899);
  color: #fff;
  transition: 0.25s ease;
  box-shadow: 0 8px 25px rgba(124,58,237,.45);
}

.portfolio-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 15px 35px rgba(124,58,237,.65);
}

/* ریسپانسیو */
@media (max-width: 992px) {
  .portfolio-ultra-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .portfolio-ultra-grid {
    grid-template-columns: 1fr;
  }
}
/* ==========================================
   PROCESS – Ultra Premium (Siteva)
========================================== */

.process-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 26px;
  align-items: stretch;
}

/* خط اتصال پشت کارت‌ها */
.process-grid::before{
  content:"";
  position:absolute;
  top: 46px;
  right: 7%;
  left: 7%;
  height: 2px;
  background: linear-gradient(90deg,
    rgba(124,58,237,.0),
    rgba(124,58,237,.55),
    rgba(59,130,246,.55),
    rgba(236,72,153,.55),
    rgba(236,72,153,.0)
  );
  opacity:.55;
  filter: blur(.2px);
  z-index:0;
}

/* کارت مرحله */
.process-card{
  position: relative;
  z-index: 1;
  padding: 28px 22px 24px;
  border-radius: 22px;
  text-align: center;
  min-height: 230px;

  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.22) 0, transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.18) 0, transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,.2) 0, transparent 55%),
    #070617;

  border: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(14px);
  box-shadow: 0 18px 40px rgba(7,6,32,.9);

  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

/* badge شماره مرحله */
.process-badge{
  position:absolute;
  top: 12px;
  right: 12px;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.9rem;
  font-weight:800;
  color:#fff;

  background: linear-gradient(135deg,#7c3aed,#3b82f6,#ec4899);
  box-shadow: 0 8px 18px rgba(124,58,237,.5);
}

/* آیکن */
.process-icon{
  width: 58px;
  height: 58px;
  margin: 6px auto 12px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 1.6rem;

  background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  box-shadow: inset 0 0 14px rgba(124,58,237,.25);
}

/* عنوان مرحله */
.process-title{
  font-family: 'Tehran', sans-serif !important;
  font-size: 1.05rem;
  font-weight: 700;
  margin: 6px 0 10px;
  color: #fff;
}

/* متن */
.process-text{
  font-family: 'Sahel', sans-serif !important;
  font-size: .95rem;
  line-height: 1.9;
  color: rgba(255,255,255,.86);
  margin: 0;
}

/* هاور پریمیوم */
.process-card:hover{
  transform: translateY(-8px);
  border-color: rgba(236,72,153,.55);
  box-shadow: 0 24px 55px rgba(0,0,0,.75);
}

/* Glow نرم روی هاور */
.process-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius: inherit;
  background: linear-gradient(135deg,
    rgba(124,58,237,.35),
    rgba(59,130,246,.25),
    rgba(236,72,153,.35)
  );
  opacity:0;
  filter: blur(22px);
  z-index:-1;
  transition: opacity .35s ease;
}
.process-card:hover::after{ opacity:.9; }

/* ریسپانسیو */
@media (max-width: 992px){
  .process-grid{
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .process-grid::before{
    top: 38px;
    right: 10%;
    left: 10%;
  }
}

@media (max-width: 640px){
  .process-grid{
    grid-template-columns: 1fr;
  }
  .process-grid::before{
    display:none; /* در موبایل بهتره حذف شه تا شلوغ نشه */
  }
  .process-card{
    text-align: right;
    padding: 26px 20px 22px;
  }
  .process-icon{
    margin-right: 0;
    margin-left: auto;
  }
  .process-badge{
    right: auto;
    left: 12px;
  }
}
/* ==========================================
   PROCESS ULTRA PREMIUM (Siteva)
========================================== */

.process-ultra {
  position: relative;
  padding-top: 70px;
  padding-bottom: 90px;
  overflow: hidden;
}

.process-ultra .section-subtitle{
  text-align:center;
  margin-inline:auto;
}

/* wrap */
.process-ultra-wrap{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:22px;
  margin-top:46px;
  align-items:stretch;
  isolation:isolate;
}

/* flowing line behind cards */
.process-flow{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(800px 220px at 10% 55%, rgba(124,58,237,.25), transparent 65%),
    radial-gradient(700px 220px at 90% 45%, rgba(59,130,246,.22), transparent 68%);
  filter: blur(18px);
  opacity:.9;
}

/* card base (use your global card palette too) */
.process-card{
  position:relative;
  z-index:2;
  min-height: 300px;
  padding: 34px 26px 30px;
  border-radius: 26px;
  text-align:center;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:12px;

  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,0.28) 0, transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,0.22) 0, transparent 60%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,0.20) 0, transparent 55%),
    #070617;

  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 20px 55px rgba(0,0,0,.75),
    inset 0 0 0 1px rgba(255,255,255,.02);

  backdrop-filter: blur(18px);

  transition:
    transform .35s ease,
    border-color .35s ease,
    box-shadow .35s ease;
}

/* light sweep */
.process-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  background: linear-gradient(
    135deg,
    rgba(124,58,237,.75),
    rgba(59,130,246,.35),
    rgba(236,72,153,.8)
  );
  opacity:0;
  filter: blur(26px);
  transition:opacity .35s ease;
  z-index:-1;
}

/* top highlight */
.process-card::after{
  content:"";
  position:absolute;
  top:-40%;
  left:-35%;
  width:75%;
  height:75%;
  background: radial-gradient(circle, rgba(255,255,255,.10), transparent 70%);
  transform: rotate(12deg);
  opacity:.0;
  transition:opacity .35s ease, transform .6s ease;
  pointer-events:none;
}

.process-card:hover{
  transform: translateY(-10px) scale(1.03);
  border-color: rgba(236,72,153,.6);
  box-shadow: 0 28px 70px rgba(0,0,0,.9);
}
.process-card:hover::before{ opacity:.28; }
.process-card:hover::after{
  opacity:.9;
  transform: translateY(18%) rotate(20deg);
}

/* step number bubble */
.process-step-num{
  position:absolute;
  top:14px;
  right:14px;
  width:44px;
  height:44px;
  border-radius:999px;
  display:grid;
  place-items:center;

  font-family:'Tehran',sans-serif;
  font-size:1rem;
  font-weight:900;
  color:#fff;

  background: radial-gradient(circle at top, #7c3aed, #3b82f6);
  box-shadow:
    0 8px 20px rgba(124,58,237,.55),
    inset 0 0 10px rgba(255,255,255,.18);
  animation: pulseGlow 2.8s ease-in-out infinite;
}

@keyframes pulseGlow{
  0%,100%{ transform:translateY(0) scale(1); filter:brightness(1); }
  50%{ transform:translateY(-2px) scale(1.08); filter:brightness(1.15); }
}

/* icon wrapper */
.process-icon{
  position:relative;
  width:82px;
  height:82px;
  margin:0 auto 6px;
  border-radius:22px;
  display:grid;
  place-items:center;
  overflow:hidden;

  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 0 20px rgba(255,255,255,.03);
}

.process-icon-bg{
  position:absolute;
  inset:-30%;
  background:
    conic-gradient(from 120deg,
      rgba(124,58,237,.9),
      rgba(59,130,246,.9),
      rgba(236,72,153,.9),
      rgba(124,58,237,.9)
    );
  filter: blur(18px);
  opacity:.55;
  animation: spinHalo 6s linear infinite;
}

@keyframes spinHalo{
  to{ transform:rotate(360deg); }
}

.process-icon-emoji{
  position:relative;
  font-size:1.7rem;
  z-index:2;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.6));
}

/* title & text */
.process-title{
  font-family:'Tehran',sans-serif;
  font-size:1.15rem;
  font-weight:800;
  color:#fff;
  margin-top:4px;
}

.process-text{
  font-family:'Sahel',sans-serif;
  font-size:.97rem;
  line-height:1.9;
  color:rgba(255,255,255,.86);
  padding-inline:6px;
}

/* chip */
.process-chip{
  margin-top:auto;
  align-self:center;
  font-size:.78rem;
  font-weight:700;
  padding:6px 12px;
  border-radius:999px;
  color:#fff;
  background: rgba(255,255,255,.06);
  border:1px dashed rgba(255,255,255,.18);
  backdrop-filter: blur(6px);
}

/* per-step accents */
.process-card.is-step-1{ --accent:#7c3aed; }
.process-card.is-step-2{ --accent:#3b82f6; }
.process-card.is-step-3{ --accent:#ec4899; }
.process-card.is-step-4{ --accent:#22c55e; }

.process-card.is-step-1 .process-icon-bg{ opacity:.55; }
.process-card.is-step-2 .process-icon-bg{ opacity:.50; }
.process-card.is-step-3 .process-icon-bg{ opacity:.60; }
.process-card.is-step-4 .process-icon-bg{
  background: conic-gradient(from 140deg,
    rgba(34,197,94,.9),
    rgba(59,130,246,.9),
    rgba(124,58,237,.9),
    rgba(34,197,94,.9)
  );
}

/* stagger support (you already have, this just helps) */
.process-ultra-wrap > .process-card{
  opacity:0;
  transform: translateY(18px);
}
.process-ultra-wrap.active > .process-card{
  opacity:1;
  transform: translateY(0);
  transition: opacity .7s ease, transform .7s ease;
}
.process-ultra-wrap.active > .process-card:nth-child(1){ transition-delay:.05s;}
.process-ultra-wrap.active > .process-card:nth-child(2){ transition-delay:.15s;}
.process-ultra-wrap.active > .process-card:nth-child(3){ transition-delay:.25s;}
.process-ultra-wrap.active > .process-card:nth-child(4){ transition-delay:.35s;}

/* responsive */
@media (max-width: 992px){
  .process-ultra-wrap{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px){
  .process-ultra-wrap{ grid-template-columns:1fr; }
  .process-card{ text-align:right; }
  .process-icon{ margin-inline:0; }
}
/* ==========================================
   SERVICES – ULTRA PREMIUM (Siteva)
========================================== */

.services-ultra{
  position: relative;
  padding-top: 70px;
  padding-bottom: 90px;
}

.services-ultra::before{
  content:"";
  position:absolute;
  inset:-120px -40px auto -40px;
  height:360px;
  background:
    radial-gradient(circle at 15% 20%, rgba(124,58,237,.30), transparent 60%),
    radial-gradient(circle at 85% 10%, rgba(59,130,246,.22), transparent 55%),
    radial-gradient(circle at 50% 80%, rgba(236,72,153,.22), transparent 60%);
  filter: blur(35px);
  opacity:.9;
  pointer-events:none;
}

.services-ultra__head{
  text-align:center;
  margin-bottom: 34px;
  position: relative;
  z-index:1;
}

.services-ultra__title{
  font-family:'Tehran', sans-serif;
  font-size: clamp(2.1rem, 1.2vw + 1.4rem, 2.8rem);
  font-weight: 800;
  background: linear-gradient(90deg,#c850ff,#7a5cff,#4bc4ff);
  -webkit-background-clip:text;
  color:transparent;
  margin-bottom:10px;
}

.services-ultra__subtitle{
  font-family:'Sahel', sans-serif;
  color:#a9a9c4;
  font-size:1.02rem;
  max-width:760px;
  margin:0 auto;
  line-height:1.9;
}

.services-ultra__grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:28px;
  position:relative;
  z-index:1;
}

/* کارت */
.services-ultra__card{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  padding:28px 26px 22px;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.18), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.16), transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,.16), transparent 55%),
    #070617;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 18px 45px rgba(0,0,0,.65),
    inset 0 0 0 1px rgba(255,255,255,.02);
  backdrop-filter: blur(18px);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  min-height: 420px;
  transform-style: preserve-3d;
}

.services-ultra__card:hover{
  transform: translateY(-8px);
  border-color: rgba(236,72,153,.55);
  box-shadow: 0 28px 70px rgba(0,0,0,.8);
}

/* خط گرادیانی دور کارت */
.services-ultra__card::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background: linear-gradient(135deg,
    rgba(124,58,237,.8),
    rgba(59,130,246,.55),
    rgba(236,72,153,.8));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.25;
  transition: opacity .35s ease;
  pointer-events:none;
}
.services-ultra__card:hover::before{ opacity:.8; }

/* نور شناور روی کارت */
.services-ultra__shine{
  position:absolute;
  inset:-40%;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.14), transparent 45%);
  transform: translate3d(0,0,0);
  opacity:0;
  transition: opacity .35s ease;
  pointer-events:none;
  mix-blend-mode: screen;
}
.services-ultra__card:hover .services-ultra__shine{ opacity:.9; }

/* آیکن */
.services-ultra__icon{
  width:54px; height:54px;
  display:grid; place-items:center;
  border-radius:16px;
  position:relative;
  margin-bottom:14px;
  box-shadow: 0 12px 25px rgba(0,0,0,.55);
  transform: translateZ(25px);
}
.services-ultra__icon svg{
  width:26px; height:26px;
  fill:none; stroke:#fff; stroke-width:1.8;
  opacity:.95;
}
.services-ultra__icon-dot{
  position:absolute;
  top:-6px; left:-6px;
  width:14px; height:14px;
  border-radius:50%;
  background:#4ade80;
  box-shadow: 0 0 0 6px rgba(74,222,128,.18);
}

/* رنگ‌های آیکن */
.services-ultra__icon--seo{
  background: radial-gradient(circle at top, #f97316, #ea580c);
}
.services-ultra__icon--dev{
  background: radial-gradient(circle at top, #22c55e, #19a34a);
}
.services-ultra__icon--web{
  background: radial-gradient(circle at top, #6366f1, #4f46e5);
}

/* عنوان و متن */
.services-ultra__card-title{
  font-family:'Tehran', sans-serif;
  font-size:1.2rem;
  font-weight:800;
  color:#fff;
  margin-bottom:8px;
  transform: translateZ(18px);
}

.services-ultra__card-desc{
  font-family:'Sahel', sans-serif;
  font-size:.98rem;
  color:rgba(255,255,255,.82);
  line-height:1.9;
  margin-bottom:14px;
  transform: translateZ(12px);
}

/* لیست */
.services-ultra__list{
  list-style:none;
  padding:0;
  margin:0 0 18px 0;
  line-height:1.9;
  font-size:.96rem;
  color:rgba(255,255,255,.9);
}
.services-ultra__list li{
  position:relative;
  padding-right:18px; /* RTL */
  margin:6px 0;
}
.services-ultra__list li::before{
  content:"";
  position:absolute;
  right:0; top:.65em;
  width:7px; height:7px;
  border-radius:50%;
  background: linear-gradient(135deg,#7c3aed,#ec4899);
  box-shadow:0 0 10px rgba(236,72,153,.7);
}

/* فوتر کارت */
.services-ultra__footer{
  margin-top:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  transform: translateZ(18px);
}

.services-ultra__tag{
  font-size:.78rem;
  padding:6px 10px;
  border-radius:999px;
  color:#c9c9e8;
  background: rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

/* دکمه */
.services-ultra__btn{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border-radius:999px;
  font-size:.9rem;
  font-weight:700;
  color:#fff;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  overflow:hidden;
  transition: transform .22s ease, background .22s ease, border-color .22s ease;
}
.services-ultra__btn:hover{
  transform: translateY(-2px);
  background: rgba(124,58,237,.18);
  border-color: rgba(124,58,237,.55);
}

.services-ultra__btn--primary{
  background: linear-gradient(135deg,#7c3aed,#ec4899);
  border-color: transparent;
  box-shadow: 0 12px 30px rgba(124,58,237,.45);
}
.services-ultra__btn-glow{
  content:"";
  position:absolute; inset:-40%;
  background: radial-gradient(circle, rgba(255,255,255,.35), transparent 55%);
  opacity:0; transition:opacity .35s ease;
}
.services-ultra__btn:hover .services-ultra__btn-glow{ opacity:.9; }

/* کارت وسط ویژه */
.services-ultra__card.is-featured{
  transform: translateY(-6px) scale(1.03);
  border-color: rgba(236,72,153,.6);
  box-shadow:
   0 0 60px rgba(124,58,237,.55),
   0 25px 70px rgba(0,0,0,.85);
}
.services-ultra__card.is-featured:hover{
  transform: translateY(-10px) scale(1.05);
}

/* badge کارت ویژه */
.services-ultra__badge{
  position:absolute;
  top:14px; left:14px;
  font-size:.75rem;
  font-weight:800;
  padding:6px 10px;
  border-radius:999px;
  background: linear-gradient(135deg,#7c3aed,#ec4899);
  color:#fff;
  box-shadow:0 10px 25px rgba(124,58,237,.45);
  z-index:2;
}

/* ریسپانسیو */
@media(max-width:992px){
  .services-ultra__grid{ grid-template-columns: repeat(2,1fr); }
}
@media(max-width:640px){
  .services-ultra__grid{ grid-template-columns: 1fr; }
  .services-ultra__card{ min-height:auto; }
}
/* ==========================================
   WHY US – ULTRA++ Glassmorphism
========================================== */

.whyus-ultra{
  padding: 90px 0;
  position: relative;
}

.whyus-ultra .section-title{
  text-align:center;
  margin-bottom: 12px;
}

.whyus-ultra .section-subtitle{
  text-align:center;
  max-width: 880px;
  margin: 0 auto 40px auto;
  opacity: .9;
}

/* Grid */
.whyus-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 22px;
}

/* Card */
.whyus-card{
  position: relative;
  overflow: hidden;
  padding: 26px 22px 22px;
  border-radius: 22px;
  min-height: 280px;

  /* Glass background */
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,0.10), transparent 45%),
    radial-gradient(circle at 100% 100%, rgba(124,58,237,0.22), transparent 55%),
    rgba(255,255,255,0.06);

  border: 1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(18px);
  box-shadow:
    0 16px 45px rgba(0,0,0,0.5),
    inset 0 0 0 1px rgba(255,255,255,0.03);

  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

/* Glow top line */
.whyus-glow-line{
  position:absolute;
  left: 18px;
  right: 18px;
  top: 12px;
  height: 2px;
  border-radius:999px;
  background: linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  opacity:.7;
  filter: blur(.2px);
}

/* Icon bubble */
.whyus-icon{
  width: 54px;
  height: 54px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom: 14px;
  color:#fff;
  box-shadow: 0 10px 22px rgba(0,0,0,0.35);
  background: rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(8px);
}
.whyus-icon svg{
  width: 26px; height: 26px;
}

/* Icon themes */
.whyus-icon--orange{ background: radial-gradient(circle at top, rgba(249,115,22,.9), rgba(234,88,12,.65)); }
.whyus-icon--blue{ background: radial-gradient(circle at top, rgba(59,130,246,.9), rgba(124,58,237,.65)); }
.whyus-icon--pink{ background: radial-gradient(circle at top, rgba(236,72,153,.9), rgba(124,58,237,.65)); }
.whyus-icon--green{ background: radial-gradient(circle at top, rgba(20,184,166,.9), rgba(14,116,144,.7)); }

/* Text */
.whyus-title{
  font-family: 'Tehran', sans-serif;
  font-size: 1.05rem;
  font-weight: 800;
  margin: 0 0 10px 0;
  color: #fff;
}
.whyus-text{
  font-size: .95rem;
  line-height: 1.9;
  color: rgba(255,255,255,0.9);
}

/* Hover */
.whyus-card:hover{
  transform: translateY(-8px);
  border-color: rgba(236,72,153,0.5);
  box-shadow:
    0 24px 65px rgba(0,0,0,0.7),
    0 0 0 1px rgba(255,255,255,0.05);
}

/* Ripples */
.whyus-card .ripple{
  position:absolute;
  border-radius:50%;
  transform: translate(-50%,-50%);
  pointer-events:none;
  background: radial-gradient(circle,
    rgba(255,255,255,0.35),
    rgba(124,58,237,0.25),
    transparent 70%);
  width: 20px; height: 20px;
  animation: rippleAnim .8s ease-out forwards;
}
@keyframes rippleAnim{
  from{ opacity:.6; transform:translate(-50%,-50%) scale(1); }
  to{ opacity:0; transform:translate(-50%,-50%) scale(12); }
}

/* Responsive */
@media(max-width: 992px){
  .whyus-grid{ grid-template-columns: repeat(2,1fr); }
}
@media(max-width: 640px){
  .whyus-grid{ grid-template-columns: 1fr; }
}
/* ===========================
   CONTACT ULTRA (Siteva)
=========================== */
.contact-ultra{
  position: relative;
  padding: 80px 0;
}

.contact-ultra-grid{
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 36px;
  align-items: center;
}

/* LEFT */
.contact-ultra-info{
  padding: 12px;
}

.contact-ultra-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 12px;
  border-radius:999px;
  font-size:.82rem;
  color:#e6e6ff;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  margin-bottom:14px;
}
.contact-ultra-badge .dot{
  width:8px;height:8px;border-radius:999px;
  background:#4ade80;
  box-shadow:0 0 0 6px rgba(74,222,128,.15);
}

.contact-ultra-title{
  font-family:'Tehran',sans-serif;
  font-size: clamp(1.9rem, 2vw + 1rem, 2.6rem);
  line-height:1.4;
  margin: 0 0 10px;
}

.contact-ultra-sub{
  color:#b9b9d6;
  line-height:1.9;
  margin-bottom:18px;
}

.contact-ultra-points{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:18px;
}
.point{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}
.point-icon{
  width:30px;height:30px;border-radius:10px;
  display:grid;place-items:center;
  background: radial-gradient(circle at top, rgba(124,58,237,.9), rgba(59,130,246,.8));
  font-size:1rem;
}

.contact-ultra-channels{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
}
.channel-card{
  padding:12px;
  border-radius:14px;
  background:rgba(20,20,40,.55);
  border:1px solid rgba(255,255,255,.08);
  text-align:center;
  transition:.25s ease;
}
.channel-card span{font-size:.8rem;color:#bdbdd7;}
.channel-card strong{display:block;margin-top:4px;color:#fff;}
.channel-card:hover{
  transform: translateY(-3px);
  border-color: rgba(236,72,153,.5);
  box-shadow:0 14px 35px rgba(0,0,0,.55);
}

/* RIGHT CARD */
.contact-ultra-card{
  position:relative;
  border-radius:24px;
  padding:20px;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.22), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.18), transparent 55%),
    rgba(8,8,20,.85);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(18px);
  overflow:hidden;
}

/* soft glow */
.contact-ultra-card-glow{
  position:absolute; inset:-40%;
  background: radial-gradient(circle, rgba(124,58,237,.18), transparent 60%);
  filter: blur(40px);
  opacity:.8;
  pointer-events:none;
}

/* FORM */
.contact-ultra-form{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.contact-ultra-form label{
  font-size:.9rem;
  color:#e9e9ff;
  margin-top:6px;
}

.contact-ultra-form input,
.contact-ultra-form select,
.contact-ultra-form textarea{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  padding:12px 14px;
  border-radius:12px;
  outline:none;
  transition:.2s ease;
  font-family:'Sahel',sans-serif;
  font-size:.95rem;
}

.contact-ultra-form input::placeholder,
.contact-ultra-form textarea::placeholder{
  color:rgba(255,255,255,.5);
}

.contact-ultra-form input:focus,
.contact-ultra-form select:focus,
.contact-ultra-form textarea:focus{
  border-color: rgba(124,58,237,.9);
  box-shadow:0 0 0 3px rgba(124,58,237,.18);
  background:rgba(255,255,255,.06);
}

.contact-ultra-submit{
  margin-top:10px;
  width:100%;
  justify-content:center;
  font-size:1rem;
  padding:12px 18px;
}

.contact-ultra-note{
  margin:8px 0 0;
  font-size:.8rem;
  color:#a8a8c3;
  line-height:1.7;
  text-align:center;
}

/* RESPONSIVE */
@media(max-width:992px){
  .contact-ultra-grid{grid-template-columns:1fr;}
  .contact-ultra-channels{grid-template-columns:1fr 1fr;}
}
@media(max-width:640px){
  .contact-ultra-channels{grid-template-columns:1fr;}
}
/* ===========================
   CONTACT ULTRA++ 
=========================== */

.contact-ultra++ .contact-ultra-card{
  position:relative;
  isolation:isolate;
}

/* progress */
.msf-progress{
  position:relative;
  height:44px;
  margin-bottom:14px;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  overflow:hidden;
}
.msf-progress-bar{
  position:absolute; inset:0;
  width:33.33%;
  background:linear-gradient(90deg,#7c3aed,#ec4899,#3b82f6);
  filter:blur(0);
  transition:width .35s ease;
}
.msf-steps{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:space-around;
}
.msf-step{
  width:28px;height:28px;border-radius:999px;
  display:grid;place-items:center;
  font-size:.85rem;font-weight:800;
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.18);
  color:#cfcfe9;
  transition:.25s ease;
}
.msf-step.active{
  color:#fff;
  border-color:rgba(236,72,153,.9);
  box-shadow:0 0 0 4px rgba(236,72,153,.12);
  background:rgba(255,255,255,.06);
}

/* step panels */
.msf{
  position:relative;
}
.msf-step-panel{
  display:none;
  opacity:0;
  transform:translateX(30px);
  transition:opacity .35s ease, transform .35s ease;
}
.msf-step-panel.active{
  display:flex;
  flex-direction:column;
  gap:8px;
  opacity:1;
  transform:translateX(0);
}

/* actions */
.msf-actions{
  display:flex;
  gap:8px;
  margin-top:10px;
}
.msf-actions .btn{
  padding:10px 16px;
  font-size:.9rem;
}

/* LOTTIE */
.cta-lottie-wrap{
  position:relative;
  width:180px;height:180px;
  margin:12px 0 6px;
}
.cta-lottie{
  width:100%;height:100%;
  filter:drop-shadow(0 12px 30px rgba(124,58,237,.35));
}
.cta-lottie-glow{
  position:absolute; inset:-30%;
  background:radial-gradient(circle, rgba(124,58,237,.25), transparent 60%);
  filter:blur(30px);
  z-index:-1;
}

/* mockup placeholder */
.cta-mockup{
  margin:8px 0 16px;
}
.cta-mockup-screen{
  height:120px;
  border-radius:18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.18), transparent 60%),
    rgba(255,255,255,.03);
  border:1px dashed rgba(255,255,255,.12);
  display:grid;place-items:center;
  color:#bdbdd7;font-size:.85rem;
}

/* Noise soft layer */
.noise-layer{
  position:absolute; inset:0;
  border-radius:inherit;
  background-image:
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'>\
<filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/></filter>\
<rect width='140' height='140' filter='url(%23n)' opacity='0.08'/>\
</svg>");
  mix-blend-mode:soft-light;
  opacity:.35;
  pointer-events:none;
  animation:noiseMove 3.5s steps(2) infinite;
  z-index:1;
}
@keyframes noiseMove{
  0%{transform:translate(0,0);}
  50%{transform:translate(-8px,6px);}
  100%{transform:translate(0,0);}
}

/* Ripple surface */
.ripple-layer{
  position:absolute; inset:0;
  pointer-events:none;
  z-index:0;
}
.ripple{
  position:absolute;
  width:14px;height:14px;border-radius:999px;
  transform:translate(-50%,-50%) scale(0);
  background:radial-gradient(circle, rgba(236,72,153,.35), rgba(124,58,237,.15), transparent 70%);
  animation:rippleAnim .9s ease-out forwards;
  filter:blur(1px);
}
@keyframes rippleAnim{
  to{transform:translate(-50%,-50%) scale(14); opacity:0;}
}

/* keep form above layers */
.contact-ultra-card-glow{z-index:0;}
.noise-layer{z-index:1;}
.contact-ultra-form{position:relative; z-index:2;}
.footer-top-panel{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:12px;
  margin-bottom:22px;
}

.footer-mini-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 14px;
  border-radius:14px;
  background: rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
  backdrop-filter: blur(10px);
}

.footer-divider{
  height:1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
  margin:10px 0 22px;
}
.site-footer a{
  color:rgba(255,255,255,.82);
  transition:all .2s ease;
  position:relative;
}

.site-footer a:hover{
  color:#fff;
  transform: translateX(-2px);
}

.site-footer a::after{
  content:"";
  position:absolute;
  right:0; left:auto;
  bottom:-4px;
  width:0%;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  transition:width .25s ease;
}
.site-footer a:hover::after{ width:100%; }
.footer-contact-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
}

.footer-contact-card{
  padding:10px 12px;
  border-radius:12px;
  background: rgba(124,58,237,0.08);
  border:1px solid rgba(255,255,255,0.06);
  text-align:center;
  font-size:.9rem;
}
.footer-contact-card strong{
  display:block;
  margin-top:4px;
  color:#fff;
  font-weight:700;
}
.footer-bottom{
  margin-top:26px;
  padding:14px 0;
  border-top:1px solid rgba(255,255,255,0.06);
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:.85rem;
  color:rgba(255,255,255,.7);
  background: rgba(255,255,255,0.02);
  backdrop-filter: blur(6px);
}
/* ==========================================
   FOOTER – Ultra++ (Siteva)
   Dark Glass + Gradient Halo + Premium Hover
========================================== */

.site-footer{
  position: relative;
  margin-top: 80px;
  padding: 70px 0 28px;
  background:
    radial-gradient(circle at 10% 0%, rgba(124,58,237,.22), transparent 55%),
    radial-gradient(circle at 90% 20%, rgba(59,130,246,.18), transparent 60%),
    radial-gradient(circle at 50% 100%, rgba(236,72,153,.18), transparent 55%),
    #05040f;
  border-top: 1px solid rgba(255,255,255,.06);
  overflow: hidden;
}

/* نویز خیلی نرم روی بک‌گراند */
.site-footer::after{
  content:"";
  position:absolute;
  inset:0;
  background-image: url("data:image/svg+xml,%3Csvg width='180' height='180' viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
  pointer-events:none;
}

/* هاله‌های بلوری شناور */
.site-footer::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-120px;
  top:-220px;
  background: radial-gradient(circle, rgba(124,58,237,.35), transparent 65%);
  filter: blur(80px);
  opacity:.55;
  pointer-events:none;
}

/* گرید بالایی فوتر */
.site-footer .footer-top{
  display:grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);
  gap:36px;
  align-items:flex-start;
  padding: 28px;
  border-radius: 26px;

  background: rgba(10,10,25,0.65);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.07);
  box-shadow:
    0 22px 60px rgba(0,0,0,.7),
    inset 0 0 0 1px rgba(255,255,255,.02);
}

/* ستون‌ها */
.site-footer .footer-top > div{
  position:relative;
  padding: 6px 4px;
}

/* تیتر ستون‌ها */
.footer-title{
  font-family: 'Tehran', sans-serif;
  font-size: 1.05rem;
  font-weight: 800;
  margin-bottom: 12px;

  background: linear-gradient(90deg, #c850ff 0%, #7a5cff 40%, #4bc4ff 100%);
  -webkit-background-clip:text;
  color:transparent;
}

/* توضیح برند */
.site-footer p{
  font-size:.95rem;
  line-height:1.9;
  color:rgba(255,255,255,.8);
  margin:0;
  max-width: 420px;
}

/* لیست لینک‌ها */
.footer-links{
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:0;
  margin:0;
}

.footer-links li{
  font-size:.92rem;
  color:rgba(255,255,255,.86);
}

.footer-links a{
  position:relative;
  color:inherit;
  text-decoration:none;
  transition: color .2s ease, transform .2s ease, opacity .2s ease;
  opacity:.9;
  padding-right: 2px;
}

.footer-links a::after{
  content:"";
  position:absolute;
  right:0; left:0;
  bottom:-4px;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  transform:scaleX(0);
  transform-origin:right;
  transition:transform .25s ease;
  opacity:.9;
}

.footer-links a:hover{
  color:#fff;
  transform:translateX(-2px);
  opacity:1;
}

.footer-links a:hover::after{
  transform:scaleX(1);
}

/* ردیف پایین */
.footer-bottom{
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.06);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  font-size:.9rem;
  color:rgba(255,255,255,.65);
}

/* Hover کل کارت فوتر */
.site-footer .footer-top:hover{
  border-color: rgba(236,72,153,.35);
  box-shadow:
    0 28px 70px rgba(0,0,0,.8),
    0 0 0 1px rgba(255,255,255,.04);
  transform: translateY(-2px);
  transition: all .35s ease;
}

/* ==========================================
   Floating CTA – make it premium
========================================== */

.floating-cta{
  position:fixed;
  inset-inline-start:22px;
  bottom:22px;
  z-index:999;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 18px;
  border-radius:999px;

  background: linear-gradient(135deg,#7c3aed,#ec4899);
  color:#fff;
  font-size:.9rem;
  font-weight:700;

  box-shadow:
    0 12px 30px rgba(124,58,237,.45),
    0 0 0 1px rgba(255,255,255,.15);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.floating-cta:hover{
  transform: translateY(-4px);
  filter: brightness(1.08);
  box-shadow:
    0 18px 40px rgba(236,72,153,.55),
    0 0 0 1px rgba(255,255,255,.2);
}

/* ==========================================
   Responsive
========================================== */

@media (max-width: 992px){
  .site-footer .footer-top{
    grid-template-columns:1fr 1fr;
    gap:22px;
    padding:22px;
  }
}

@media (max-width: 640px){
  .site-footer{
    padding: 55px 0 24px;
  }

  .site-footer .footer-top{
    grid-template-columns:1fr;
    padding:18px;
    border-radius:20px;
  }

  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }

  .floating-cta{
    inset-inline-start:14px;
    bottom:14px;
    padding:9px 14px;
    font-size:.82rem;
  }
}
/* ==========================================
   ULTRA MOBILE FIX (Patch)
   add to END of style.css
========================================== */

/* 1) Base spacing + common overflow guard */
html, body {
  overflow-x: hidden;
}

.section {
  padding: 52px 0 !important;
}

.vam-container,
.container {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* 2) HERO – prevent huge text + broken layout */
@media (max-width: 640px) {
  .hero {
    padding: 64px 0 40px !important;
    background-position: center !important;
  }

  .hero-inner {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  .hero-title {
    gap: 6px !important;
    align-items: flex-start;
  }

  .hero-line-1,
  .hero-line-2 {
    font-size: 2.1rem !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    border-right: none !important; /* caret typewriter روی موبایل اذیت میکنه */
  }

  .hero-text {
    max-width: 100% !important;
    font-size: .95rem !important;
  }

  .hero-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .hero-right {
    max-width: 100% !important;
    padding: 16px !important;
  }

  .hero-right-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  .hero-card {
    min-height: auto !important;
    padding: 10px 12px !important;
  }
}

/* 3) All major grids -> single column on mobile */
@media (max-width: 640px) {
  .features-grid,
  .services-grid,
  .process-steps,
  .portfolio-grid,
  .stats-grid,
  .testimonials-grid,
  .pricing-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

/* 4) Pricing – disable big scale/offset on mobile */
@media (max-width: 640px) {
  .pricing-card,
  .pricing-card--featured {
    transform: none !important;
    min-height: auto !important;
    padding: 22px 18px !important;
  }

  .pricing-badge {
    top: 10px !important;
    left: 10px !important;
    font-size: .7rem !important;
    padding: 5px 10px !important;
  }

  .pricing-price {
    font-size: 1.25rem !important;
  }

  .pricing-list {
    font-size: .92rem !important;
    line-height: 1.8 !important;
  }
}

/* 5) Cards padding normalization on small screens */
@media (max-width: 640px) {
  .feature-card,
  .service-card,
  .process-step,
  .portfolio-card,
  .stat-card,
  .testimonial-card {
    padding: 18px !important;
    border-radius: 18px !important;
  }
}

/* 6) Footer -> clean stack */
@media (max-width: 640px) {
  .site-footer .footer-top {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
    gap: 16px !important;
  }

  .footer-title {
    font-size: 1rem !important;
  }

  .footer-links li,
  .site-footer p {
    font-size: .9rem !important;
  }
}

/* 7) Images/cards inside sections should not overflow */
img, .portfolio-card img {
  border-radius: 14px !important;
}

/* 8) Prevent long words/URLs breaking layout */
* {
  word-break: break-word;
}
/* ==========================================
   PRICING – MOBILE FIX (Siteva)
   add to END of style.css
========================================== */

/* گرید قیمت‌ها: موبایل تک ستونه و فشرده‌تر */
@media (max-width: 640px){
  .pricing-grid{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin-top: 18px !important;
  }
}

/* کارت‌ها: اسکیل/افست خاموش + ارتفاع آزاد */
@media (max-width: 640px){
  .pricing-card{
    padding: 20px 16px !important;
    min-height: auto !important;
    text-align: right !important;
    align-items: stretch !important;
  }

  /* کارت وسط (featured) در موبایل مثل بقیه */
  .pricing-card--featured{
    transform: none !important;
    box-shadow:
      0 18px 45px rgba(0,0,0,.65) !important;
  }
}

/* هاله‌ی زیر کارت‌ها در موبایل حذف یا کوچک */
@media (max-width: 640px){
  .pricing-card::after,
  .pricing-card::before,
  .pricing-card--featured::before,
  .pricing-card--featured::after{
    display: none !important;
  }
}

/* badge پیشنهادی: بالا-چپ، مزاحم متن نشه */
@media (max-width: 640px){
  .pricing-badge{
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    font-size: .7rem !important;
    padding: 4px 9px !important;
    z-index: 2 !important;
  }
}

/* تایپوگرافی قیمت‌ها در موبایل */
@media (max-width: 640px){
  .pricing-name{
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    margin-bottom: 8px !important;
  }

  .pricing-price{
    font-size: 1.2rem !important;
    margin-bottom: 12px !important;
  }

  .pricing-list{
    font-size: .92rem !important;
    line-height: 1.85 !important;
    margin-bottom: 14px !important;
  }

  .pricing-list li{
    padding: 5px 0 !important;
  }

  .pricing-card .btn{
    width: 100% !important;
    justify-content: center !important;
    margin-top: 6px !important;
  }
}
/* ==========================================
   EXTRAS ULTRA – Other Services Section
   Ultra Premium / Lightweight
========================================== */

.extras-ultra{
  position:relative;
  padding:70px 0 85px;
  overflow:hidden;
}

/* soft background glow (ONE layer to stay fast) */
.extras-ultra::before{
  content:"";
  position:absolute;
  inset:-120px -40px auto -40px;
  height:380px;
  background:
    radial-gradient(circle at 10% 15%, rgba(124,58,237,.30), transparent 60%),
    radial-gradient(circle at 85% 15%, rgba(59,130,246,.22), transparent 60%),
    radial-gradient(circle at 50% 85%, rgba(236,72,153,.20), transparent 60%);
  filter: blur(40px);
  opacity:.9;
  pointer-events:none;
}

.extras-ultra__head{
  text-align:center;
  position:relative;
  z-index:1;
  margin-bottom:32px;
}

.extras-ultra__halo-line{
  width:180px;
  height:3px;
  margin:10px auto 0;
  border-radius:999px;
  background: linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  opacity:.8;
  filter: blur(.2px);
}

/* grid */
.extras-ultra__grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:22px;
  position:relative;
  z-index:1;
}

/* card base */
.extras-ultra__card{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  padding:26px 22px 20px;
  min-height:250px;
  text-align:center;

  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.18), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.14), transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(59,130,246,.14), transparent 55%),
    #070617;

  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 45px rgba(0,0,0,.65);
  backdrop-filter: blur(14px);

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
  transform-style:preserve-3d;
}

/* subtle gradient border on hover */
.extras-ultra__card::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background: linear-gradient(135deg,
    rgba(124,58,237,.8),
    rgba(59,130,246,.55),
    rgba(236,72,153,.8));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.18;
  transition: opacity .35s ease;
  pointer-events:none;
}

.extras-ultra__card:hover{
  transform:translateY(-8px) scale(1.02);
  border-color:rgba(236,72,153,.55);
  box-shadow:0 26px 70px rgba(0,0,0,.8);
}
.extras-ultra__card:hover::before{ opacity:.65; }

/* icon glass */
.extras-ultra__icon{
  width:56px;
  height:56px;
  margin:0 auto 12px;
  border-radius:16px;
  display:grid;
  place-items:center;
  position:relative;

  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:
    inset 0 0 18px rgba(255,255,255,.04),
    0 10px 25px rgba(0,0,0,.45);

  transform: translateZ(18px);
}
.extras-ultra__icon svg{
  width:26px; height:26px;
  fill:none;
  stroke:#fff;
  stroke-width:1.8;
  opacity:.95;
}

.extras-ultra__icon-dot{
  position:absolute;
  top:-6px; left:-6px;
  width:12px; height:12px;
  border-radius:50%;
  background:#4ade80;
  box-shadow:0 0 0 6px rgba(74,222,128,.18);
}

/* per-card accent via soft glow */
.extras-ultra__card.is-blue  .extras-ultra__icon{ background:radial-gradient(circle at top,#3b82f6,#1d4ed8); }
.extras-ultra__card.is-purple .extras-ultra__icon{ background:radial-gradient(circle at top,#7c3aed,#4f46e5); }
.extras-ultra__card.is-pink  .extras-ultra__icon{ background:radial-gradient(circle at top,#ec4899,#be185d); }
.extras-ultra__card.is-green .extras-ultra__icon{ background:radial-gradient(circle at top,#22c55e,#15803d); }

/* title/text */
.extras-ultra__title{
  font-family:'Tehran',sans-serif;
  font-size:1.15rem;
  font-weight:800;
  color:#fff;
  margin:6px 0 8px;
  transform: translateZ(12px);
}
.extras-ultra__text{
  font-family:'Sahel',sans-serif;
  font-size:.95rem;
  line-height:1.9;
  color:rgba(255,255,255,.88);
  min-height:64px;
  transform: translateZ(6px);
}

/* CTA */
.extras-ultra__cta{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.9rem;
  font-weight:800;
  margin-top:10px;

  background:linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  -webkit-background-clip:text;
  color:transparent;
  position:relative;
}
.extras-ultra__cta-line{
  position:absolute;
  right:0; left:0;
  bottom:-4px;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  transform:scaleX(0);
  transform-origin:right;
  transition:transform .25s ease;
}
.extras-ultra__cta:hover .extras-ultra__cta-line{
  transform:scaleX(1);
}

/* responsive */
@media (max-width: 992px){
  .extras-ultra__grid{
    grid-template-columns:repeat(2,1fr);
    gap:16px;
  }
}
@media (max-width: 640px){
  .extras-ultra{
    padding:55px 0 65px;
  }
  .extras-ultra__grid{
    grid-template-columns:1fr;
  }
  .extras-ultra__card{
    text-align:right;
    padding:20px 18px;
    min-height:auto;
  }
  .extras-ultra__icon{
    margin-right:0;
    margin-left:auto;
  }
}
/* ==========================================
   WHY US – Ultra++ Final (Siteva)
   Glow + Glass + 3D + Ripple + Neon Beam
   add to END of style.css
========================================== */

/* section neon beam bg */
.whyus-ultra-final{
  position:relative;
  padding:90px 0;
  overflow:hidden;
  isolation:isolate;
}
.whyus-ultra-final::before{
  content:"";
  position:absolute;
  inset:-120px -60px auto -60px;
  height:360px;
  background:
    radial-gradient(circle at 12% 10%, rgba(124,58,237,.28), transparent 60%),
    radial-gradient(circle at 88% 5%, rgba(59,130,246,.20), transparent 60%),
    radial-gradient(circle at 50% 90%, rgba(236,72,153,.18), transparent 60%);
  filter: blur(40px);
  opacity:.9;
  pointer-events:none;
  z-index:0;
}

/* head */
.whyus-head{
  text-align:center;
  margin-bottom:38px;
  position:relative;
  z-index:2;
}

/* neon title */
.whyus-title-neon{
  font-family:'Tehran',sans-serif;
  font-size:clamp(2.1rem,1.2vw + 1.4rem,2.8rem);
  font-weight:900;
  letter-spacing:.3px;
  background:linear-gradient(90deg,#d946ef,#7c3aed,#3b82f6);
  -webkit-background-clip:text;
  color:transparent;
  text-shadow:
    0 0 18px rgba(124,58,237,.35),
    0 0 40px rgba(59,130,246,.25);
  margin:0 0 10px;
  position:relative;
}
.whyus-title-neon::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-10px;
  transform:translateX(-50%);
  width:150px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  opacity:.9;
  box-shadow:0 0 18px rgba(124,58,237,.6);
}

.whyus-sub-neon{
  font-size:1rem;
  color:#b7b7d7;
  max-width:780px;
  margin:0 auto;
  line-height:1.95;
}

/* grid */
.whyus-grid-final{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  position:relative;
  z-index:2;
}

/* final cards */
.whyus-card-final{
  position:relative;
  overflow:hidden;
  padding:28px 22px 22px;
  border-radius:24px;
  min-height:285px;
  text-align:right;

  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,0.10), transparent 45%),
    radial-gradient(circle at 100% 100%, rgba(124,58,237,0.20), transparent 55%),
    rgba(255,255,255,0.055);

  border:1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(18px);
  box-shadow:
    0 18px 55px rgba(0,0,0,.65),
    inset 0 0 0 1px rgba(255,255,255,0.03);

  transform-style:preserve-3d;
  transition:
    transform .35s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}

/* top neon beam per card */
.whyus-card-final .whyus-beam{
  position:absolute;
  right:18px; left:18px; top:12px;
  height:2px; border-radius:999px;
  background:linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  opacity:.75;
  filter: blur(.2px);
}

/* noise glass */
.whyus-card-final .whyus-noise{
  position:absolute; inset:0;
  background-image:
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'>\
<filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/></filter>\
<rect width='140' height='140' filter='url(%23n)' opacity='0.06'/>\
</svg>");
  mix-blend-mode:soft-light;
  opacity:.45;
  pointer-events:none;
}

/* halo behind each card */
.whyus-card-final .whyus-halo{
  position:absolute;
  inset:-35%;
  background:radial-gradient(circle, var(--halo-color, rgba(124,58,237,.25)), transparent 60%);
  filter: blur(50px);
  opacity:.85;
  pointer-events:none;
  z-index:-1;
}

/* color accents */
.whyus-card-final.is-blue   { --halo-color: rgba(59,130,246,.28); }
.whyus-card-final.is-pink   { --halo-color: rgba(236,72,153,.28); }
.whyus-card-final.is-orange { --halo-color: rgba(249,115,22,.26); }
.whyus-card-final.is-green  { --halo-color: rgba(34,197,94,.26); }

/* icon */
.whyus-icon-final{
  width:58px;height:58px;border-radius:18px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:14px;
  font-size:1.5rem;
  box-shadow:0 12px 25px rgba(0,0,0,0.45);
  border:1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(8px);
  transform: translateZ(22px);
  transition: transform .35s ease, box-shadow .35s ease;
}
.whyus-card-final:hover .whyus-icon-final{
  transform: translateZ(30px) translateY(-2px) scale(1.03);
  box-shadow:0 18px 40px rgba(0,0,0,.6);
}

.whyus-icon--orange{ background: radial-gradient(circle at top, rgba(249,115,22,.95), rgba(234,88,12,.7)); }
.whyus-icon--blue  { background: radial-gradient(circle at top, rgba(59,130,246,.95), rgba(124,58,237,.7)); }
.whyus-icon--pink  { background: radial-gradient(circle at top, rgba(236,72,153,.95), rgba(124,58,237,.7)); }
.whyus-icon--green { background: radial-gradient(circle at top, rgba(34,197,94,.95), rgba(16,185,129,.7)); }

/* text */
.whyus-card-final .whyus-title{
  font-family:'Tehran',sans-serif;
  font-size:1.07rem;
  font-weight:800;
  margin:0 0 10px;
  color:#fff;
  transform: translateZ(14px);
}
.whyus-card-final .whyus-text{
  font-size:.96rem;
  line-height:1.9;
  color:rgba(255,255,255,0.9);
  transform: translateZ(8px);
}

/* light sweep */
.whyus-card-final .whyus-sweep{
  content:"";
  position:absolute;
  inset:-40% -20%;
  background:linear-gradient(120deg, transparent 40%, rgba(255,255,255,0.12) 50%, transparent 60%);
  transform:translateX(-130%) rotate(8deg);
  transition:transform .9s ease;
  pointer-events:none;
  mix-blend-mode:screen;
}
.whyus-card-final:hover .whyus-sweep{
  transform:translateX(130%) rotate(8deg);
}

/* hover 3D lift */
.whyus-card-final:hover{
  transform: translateY(-10px) rotateX(2.5deg) rotateY(-2deg);
  border-color: rgba(236,72,153,0.55);
  box-shadow:
    0 28px 80px rgba(0,0,0,0.85),
    0 0 0 1px rgba(255,255,255,0.06);
}

/* ripple effect element */
.whyus-card-final .ripple{
  position:absolute;
  width:16px;height:16px;border-radius:999px;
  transform:translate(-50%,-50%) scale(0);
  background:radial-gradient(circle,
    rgba(255,255,255,0.35),
    rgba(124,58,237,0.25),
    transparent 70%);
  animation:rippleAnim .9s ease-out forwards;
  pointer-events:none;
  filter:blur(1px);
}
@keyframes rippleAnim{
  to{transform:translate(-50%,-50%) scale(16); opacity:0;}
}

/* responsive */
@media(max-width:992px){
  .whyus-grid-final{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px){
  .whyus-ultra-final{ padding:70px 0; }
  .whyus-grid-final{ grid-template-columns:1fr; }
  .whyus-card-final{ min-height:auto; padding:22px 18px; }
  .whyus-title-neon{ font-size:2rem; }
}
/* ===== Fix Select Options for Dark UI ===== */

/* استایل خود SELECT */
.contact-ultra-form select {
  background: rgba(20,20,40,0.65) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  border-radius: 12px !important;
  padding: 12px 14px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

/* ↓ یک فلش سفارشی هماهنگ با تم Ultra++ */
.contact-ultra-form select {
  background-image: url("data:image/svg+xml;utf8,\
<svg fill='white' height='14' viewBox='0 0 24 24' width='14' xmlns='http://www.w3.org/2000/svg'>\
<path d='M7 10l5 5 5-5z'/>\
</svg>");
  background-repeat: no-repeat;
  background-position: left 14px center;
  background-size: 14px;
}

/* ===== Dropdown: گزینه‌های داخلی ===== */
.contact-ultra-form select option {
  background: #0b0b15 !important;
  color: #fff !important;
  padding: 10px 12px !important;
  font-size: 0.95rem !important;
}

/* Hover روی گزینه‌ها در مرورگرهایی که پشتیبانی می‌کنند */
.contact-ultra-form select option:hover {
  background: rgba(124,58,237,0.4) !important;
}

/* مخصوص فایرفاکس: جلوگیری از سفید شدن گزینه‌ها */
@-moz-document url-prefix() {
  .contact-ultra-form select option {
    background-color: #0b0b15 !important;
    color: #fff !important;
  }
}
/* ==========================================
   PRICING ULTRA++ FINAL (Fast & Premium)
   Replace old pricing blocks
========================================== */

.pricing-ultra{
  position:relative;
  padding:70px 0 80px;
  overflow:hidden;
  isolation:isolate;
}

/* soft background halo (lightweight) */
.pricing-ultra::before{
  content:"";
  position:absolute;
  inset:-120px -60px auto -60px;
  height:380px;
  background:
    radial-gradient(circle at 15% 15%, rgba(124,58,237,.18), transparent 60%),
    radial-gradient(circle at 85% 10%, rgba(59,130,246,.14), transparent 55%),
    radial-gradient(circle at 50% 80%, rgba(236,72,153,.12), transparent 60%);
  filter: blur(30px);
  opacity:.8;
  pointer-events:none;
  z-index:-1;
}

/* GRID */
.pricing-ultra-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:24px;
  margin-top:26px;
  align-items:stretch;
}

/* CARD */
.pricing-ultra-card{
  position:relative;
  border-radius:24px;
  padding:26px 24px 22px;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.16), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.12), transparent 60%),
    rgba(10,10,24,.9);
  border:1px solid rgba(255,255,255,.06);
  box-shadow: 0 14px 34px rgba(0,0,0,.55); /* lighter shadow */
  backdrop-filter: blur(12px);
  display:flex;
  flex-direction:column;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  will-change: transform;
  contain: layout paint style; /* perf */
}

.pricing-ultra-card:hover{
  transform: translateY(-6px);
  border-color: rgba(236,72,153,.45);
  box-shadow: 0 20px 45px rgba(0,0,0,.7);
}

/* FEATURED */
.pricing-ultra-card.is-featured{
  border:1px solid rgba(236,72,153,.55);
  box-shadow:
    0 0 45px rgba(124,58,237,.35),
    0 20px 55px rgba(0,0,0,.8);
  transform: translateY(-4px) scale(1.03);
}

.pricing-ultra-card.is-featured:hover{
  transform: translateY(-8px) scale(1.04);
}

.pricing-ultra-badge{
  position:absolute;
  top:-12px;
  right:50%;
  transform:translateX(50%);
  padding:6px 14px;
  font-size:.75rem;
  font-weight:800;
  color:#fff;
  border-radius:999px;
  background:linear-gradient(135deg,#7c3aed,#ec4899);
  box-shadow:0 8px 18px rgba(124,58,237,.45);
  z-index:2;
}

/* HEAD */
.pricing-ultra-head{
  text-align:center;
  padding-bottom:14px;
  margin-bottom:14px;
  border-bottom:1px dashed rgba(255,255,255,.08);
}

.pricing-ultra-chip{
  display:inline-flex;
  padding:5px 10px;
  font-size:.75rem;
  font-weight:700;
  color:#cfcfe9;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  border-radius:999px;
  margin-bottom:8px;
}

.pricing-ultra-title{
  font-family:'Tehran',sans-serif;
  font-size:1.15rem;
  font-weight:800;
  color:#fff;
  margin:0 0 8px;
}

/* PRICE */
.pricing-ultra-price{
  display:flex;
  gap:6px;
  justify-content:center;
  align-items:baseline;
  color:#fff;
}
.pricing-ultra-price .price-from{
  font-size:.85rem;
  color:#a9a9c4;
}
.pricing-ultra-price .price-amount{
  font-family:'Tehran',sans-serif;
  font-size:1.7rem;
  font-weight:900;
  letter-spacing:.2px;
  background: linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  -webkit-background-clip:text;
  color:transparent;
}
.pricing-ultra-price .price-currency{
  font-size:.9rem;
  color:#dcdcf2;
}

/* LIST */
.pricing-ultra-list{
  list-style:none;
  padding:0;
  margin:0 0 16px 0;
  font-size:.96rem;
  line-height:1.9;
  color:rgba(255,255,255,.92);
}
.pricing-ultra-list li{
  padding:7px 0;
  border-bottom:1px dashed rgba(255,255,255,.06);
}
.pricing-ultra-list li:last-child{border-bottom:none;}

/* ACTION */
.pricing-ultra-action{
  margin-top:auto;
  text-align:center;
}
.pricing-ultra-btn{
  width:100%;
  justify-content:center;
  padding:12px 18px;
  font-size:.95rem;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce){
  .pricing-ultra-card,
  .pricing-ultra-card:hover{
    transition:none !important;
    transform:none !important;
  }
}

/* RESPONSIVE */
@media (max-width: 992px){
  .pricing-ultra-grid{ grid-template-columns:repeat(2,1fr); }
  .pricing-ultra-card.is-featured{
    transform:none;
  }
}

@media (max-width: 640px){
  .pricing-ultra-grid{
    grid-template-columns:1fr;
    gap:14px;
    margin-top:18px;
  }
  .pricing-ultra-card{
    padding:20px 16px;
    text-align:right;
  }
  .pricing-ultra-head{
    text-align:right;
  }
  .pricing-ultra-price{
    justify-content:flex-start;
  }
  .pricing-ultra-badge{
    top:10px;
    right:auto;
    left:10px;
    transform:none;
    font-size:.7rem;
    padding:5px 9px;
  }
}
/* ABOUT PAGE PATCH */
.hero-about{
  background:
    linear-gradient(to right, rgba(10,10,25,.88), rgba(10,10,25,.6)),
    url('http://siteva.ir/wp-content/uploads/2025/11/124.png');
  background-size:cover;
  background-position:center;
}

.about-story-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  margin-top:20px;
}
.about-mini-title{
  font-family:'Tehran', sans-serif;
  font-size:1.1rem;
  font-weight:800;
  margin-bottom:8px;
}

.about-skills-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:20px;
}

@media (max-width:992px){
  .about-story-grid,
  .about-skills-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media (max-width:640px){
  .about-story-grid,
  .about-skills-grid{
    grid-template-columns:1fr;
  }
}
/* ==========================================
   CONTACT PAGE – Ultra++ Final (Lightweight)
========================================== */

/* HERO */
.contact-hero{
  padding:90px 0 70px;
  background:
    radial-gradient(900px 420px at 80% 10%, rgba(124,58,237,.22), transparent 60%),
    radial-gradient(700px 360px at 10% 80%, rgba(236,72,153,.18), transparent 60%),
    #05040f;
  overflow:hidden;
}
.contact-hero-grid{
  display:grid;
  grid-template-columns: minmax(0,1.3fr) minmax(0,.9fr);
  gap:34px;
  align-items:center;
}
.contact-hero-title{
  font-family:'Tehran',sans-serif;
  font-size: clamp(2rem, 2.2vw + 1.2rem, 3rem);
  line-height:1.35;
  margin:0 0 12px;
}
.contact-hero-title-accent{
  display:block;
  margin-top:8px;
  font-size:.95em;
  background:linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  -webkit-background-clip:text;
  color:transparent;
}
.contact-hero-sub{
  color:#c7c7de;
  font-size:1rem;
  line-height:1.9;
  max-width:620px;
}
.contact-hero-actions{
  display:flex;
  gap:10px;
  margin-top:16px;
}
.contact-hero-meta{
  display:flex; gap:14px; flex-wrap:wrap;
  margin-top:18px; font-size:.85rem; color:#a9a9c4;
}
.meta-item{
  padding:8px 12px;border-radius:12px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
}
.meta-item strong{display:block;color:#fff;font-size:.98rem}

/* right card */
.contact-hero-card{
  position:relative;
  border-radius:24px;
  padding:22px;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.18), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.16), transparent 55%),
    #070617;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 45px rgba(0,0,0,.7);
  overflow:hidden;
}
.contact-card-glow{
  position:absolute; inset:-40%;
  background:radial-gradient(circle, rgba(124,58,237,.22), transparent 60%);
  filter:blur(45px); opacity:.9; pointer-events:none;
}
.contact-card-title{
  font-family:'Tehran',sans-serif;
  font-size:1.1rem;font-weight:800;margin:0 0 12px;color:#fff;
}

.contact-chips{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.contact-chip{
  display:flex; align-items:center; gap:8px;
  padding:10px 12px;border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  transition:.2s ease;
}
.contact-chip:hover{
  transform:translateY(-2px);
  border-color:rgba(236,72,153,.55);
  box-shadow:0 10px 26px rgba(0,0,0,.6);
}
.chip-ic{font-size:1.1rem}
.chip-txt{font-weight:600;color:#fff}

.contact-mini{
  margin-top:12px;
  display:flex; flex-direction:column; gap:6px;
  font-size:.9rem;color:#bdbdd7;
}
.contact-mini-row{
  display:flex; justify-content:space-between;
  padding:8px 10px;border-radius:12px;
  background:rgba(255,255,255,.03);
  border:1px dashed rgba(255,255,255,.08);
}
.contact-mini-row strong{color:#fff}

.contact-socials{
  margin-top:12px; display:flex; gap:8px;
}
.contact-socials a{
  width:36px;height:36px;border-radius:999px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  transition:.2s ease; font-size:1.05rem;
}
.contact-socials a:hover{
  transform:translateY(-2px);
  background:rgba(124,58,237,.18);
  border-color:rgba(124,58,237,.6);
}

/* MAP */
.map-card{
  margin-top:16px;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}
.map-card-head{
  padding:10px 12px; font-size:.9rem;
  display:flex; align-items:center; gap:8px;
  border-bottom:1px solid rgba(255,255,255,.06);
  color:#e7e7ff;
}
.map-dot{
  width:8px;height:8px;border-radius:999px;background:#4ade80;
  box-shadow:0 0 0 6px rgba(74,222,128,.15);
}
.map-embed iframe{
  width:100%;height:220px;border:0;display:block;
}
.map-placeholder{
  height:220px;display:grid;place-items:center;
  color:#9ca3af;font-size:.9rem;
}

/* FAQ */
.faq-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:20px;
}
.faq-card{
  padding:18px;border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}
.faq-card h3{
  font-size:1rem;font-weight:800;color:#fff;margin:0 0 6px;
}
.faq-card p{color:#c7c7de;font-size:.95rem;line-height:1.8;margin:0}

/* Responsive */
@media (max-width:992px){
  .contact-hero-grid{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .contact-hero-actions{flex-direction:column;align-items:stretch}
  .faq-grid{grid-template-columns:1fr}
}
/* ==========================================
   CONTACT PAGE + CF7 ULTRA FIXES (Final)
   add to END of style.css
========================================== */

/* ---- CF7 base reset ---- */
.ultra-form-wrapper .wpcf7,
.ultra-form-wrapper form{
  margin:0;
}

.ultra-form-wrapper p{
  margin:0 !important;
}

/* inputs */
.ultra-form-wrapper input[type="text"],
.ultra-form-wrapper input[type="tel"],
.ultra-form-wrapper input[type="email"],
.ultra-form-wrapper input[type="url"],
.ultra-form-wrapper textarea,
.ultra-form-wrapper select{
  width:100%;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  padding:12px 14px;
  border-radius:12px;
  outline:none;
  font-family:'Sahel',sans-serif;
  font-size:.95rem;
  transition:.2s ease;
  appearance:none;
}

.ultra-form-wrapper textarea{ min-height:140px; }

/* focus */
.ultra-form-wrapper input:focus,
.ultra-form-wrapper textarea:focus,
.ultra-form-wrapper select:focus{
  border-color: rgba(124,58,237,.95);
  box-shadow:0 0 0 3px rgba(124,58,237,.2);
  background:rgba(255,255,255,.06);
}

/* placeholder */
.ultra-form-wrapper input::placeholder,
.ultra-form-wrapper textarea::placeholder{
  color:rgba(255,255,255,.55);
}

/* ---- SELECT DROPDOWN FIX ---- */
/* رنگ گزینه‌ها داخل دراپ‌داون (مشکل اصلی اسکرین‌شات تو) */
.ultra-form-wrapper select{
  background-image: linear-gradient(135deg, rgba(124,58,237,.25), rgba(236,72,153,.15));
}

.ultra-form-wrapper select option{
  background:#0b0b18;
  color:#fff;
}

.ultra-form-wrapper select option:checked{
  background:#5b3dff;
  color:#fff;
}

/* ---- CF7 labels ---- */
.ultra-form-wrapper label{
  display:block;
  margin:8px 0 6px;
  font-size:.9rem;
  color:#e9e9ff;
}

/* ---- CF7 submit ---- */
.ultra-form-wrapper input[type="submit"],
.ultra-form-wrapper button{
  width:100%;
  border:none;
  cursor:pointer;
  padding:12px 18px;
  border-radius:999px;
  font-size:1rem;
  font-weight:700;
  background:linear-gradient(135deg,#7c3aed,#ec4899);
  color:#fff;
  box-shadow:0 12px 30px rgba(124,58,237,.45);
  transition:transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.ultra-form-wrapper input[type="submit"]:hover{
  transform:translateY(-2px);
  filter:brightness(1.06);
  box-shadow:0 18px 40px rgba(236,72,153,.5);
}

/* messages */
.ultra-form-wrapper .wpcf7-response-output{
  border-radius:12px;
  padding:10px 12px;
  margin-top:12px;
  color:#fff;
  border-color:rgba(255,255,255,.2);
  background:rgba(0,0,0,.4);
}

/* errors */
.ultra-form-wrapper .wpcf7-not-valid-tip{
  font-size:.8rem;
  color:#ff9bbd;
  margin-top:4px;
}

/* ---- Contact grids responsive ---- */
.contact-hero-grid{
  display:grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr);
  gap:28px;
  align-items:center;
}

.contact-ultra-grid{
  display:grid;
  grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr);
  gap:32px;
  align-items:flex-start;
}

@media (max-width: 992px){
  .contact-hero-grid,
  .contact-ultra-grid{
    grid-template-columns:1fr;
  }
}

/* ---- FAQ cards for Contact ---- */
.faq-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.faq-card{
  border-radius:18px;
  padding:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
@media(max-width:992px){
  .faq-grid{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px){
  .faq-grid{ grid-template-columns:1fr; }
}
/* ==========================================
   CONTACT FORM – Ultra++ Final Patch
========================================== */

.contact-ultra-form input,
.contact-ultra-form select,
.contact-ultra-form textarea{
  width:100%;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  padding:12px 14px;
  border-radius:12px;
  outline:none;
  transition:.2s ease;
  font-family:'Sahel',sans-serif;
  font-size:.95rem;
}

.contact-ultra-form input::placeholder,
.contact-ultra-form textarea::placeholder{
  color:rgba(255,255,255,.55);
}

/* focus premium */
.contact-ultra-form input:focus,
.contact-ultra-form select:focus,
.contact-ultra-form textarea:focus{
  border-color: rgba(124,58,237,.9);
  box-shadow:0 0 0 3px rgba(124,58,237,.18);
  background:rgba(255,255,255,.06);
}

/* ✅ Fix select dropdown readability */
.contact-ultra-form select{
  appearance:none;
  background-image:
    linear-gradient(135deg, rgba(124,58,237,.25), rgba(236,72,153,.18)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='white'><path d='M7 10l5 5 5-5'/></svg>");
  background-repeat:no-repeat;
  background-position: left 14px center, 12px center; /* RTL */
  background-size: auto, 18px;
  padding-left:40px;
}

/* dropdown options color */
.contact-ultra-form select option{
  background:#0b0b15;
  color:#fff;
}

/* success/error */
.contact-success,
.contact-error{
  padding:12px 14px;
  border-radius:12px;
  margin-bottom:12px;
  font-size:.95rem;
  line-height:1.8;
}
.contact-success{
  background:rgba(34,197,94,.12);
  border:1px solid rgba(34,197,94,.35);
}
.contact-error{
  background:rgba(239,68,68,.12);
  border:1px solid rgba(239,68,68,.35);
}
/* ==========================================
   BLOG PAGE – Ultra++ Final
========================================== */

.blog-page { background: transparent; }

/* hero */
.blog-hero-grid{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap:24px;
  align-items:center;
}
.blog-hero-card{
  position:relative;
  background:linear-gradient(160deg, rgba(255,255,255,.05), rgba(124,58,237,.06), rgba(236,72,153,.05));
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:18px;
  backdrop-filter: blur(10px);
  box-shadow:0 12px 40px rgba(0,0,0,.45);
}
.blog-hero-title{ font-size:2.1rem; line-height:1.5; margin:8px 0; }
.blog-hero-title-accent{
  display:block; font-size:1.1rem; color:#9aa3ff; margin-top:6px;
}
.blog-hero-sub{ color:rgba(255,255,255,.75); line-height:2; }

/* search */
.blog-search-form{ display:flex; gap:10px; margin-top:12px; }
.blog-search-input{
  flex:1; background:rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.12);
  color:#fff; padding:12px 14px; border-radius:12px; outline:none;
}
.blog-search-input::placeholder{ color:rgba(255,255,255,.5); }
.blog-search-btn{
  background:linear-gradient(135deg, #6d28d9, #8b5cf6);
  color:#fff; border:none; border-radius:12px; padding:0 16px; cursor:pointer;
  font-weight:700;
}

/* category chips */
.blog-cat-box{ margin-top:16px; }
.blog-cat-title{ font-weight:700; margin-bottom:8px; color:#c8c9ff; }
.blog-cat-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.blog-cat-chip{
  display:inline-flex; padding:6px 10px; border-radius:999px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08);
  color:#fff; font-size:.85rem; transition:.2s;
}
.blog-cat-chip:hover{ transform:translateY(-2px); border-color:rgba(139,92,246,.8); }

/* grid */
.blog-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:18px;
  margin-top:20px;
}
.blog-card{
  background:linear-gradient(160deg, rgba(255,255,255,.04), rgba(124,58,237,.06), rgba(236,72,153,.04));
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px; overflow:hidden;
  box-shadow:0 12px 40px rgba(0,0,0,.45);
  transition:.25s ease;
}
.blog-card:hover{ transform:translateY(-6px); border-color:rgba(124,58,237,.7); }

.blog-thumb{ position:relative; display:block; height:210px; overflow:hidden; }
.blog-thumb img{
  width:100%; height:100%; object-fit:cover; transform:scale(1);
  transition:transform .5s ease;
}
.blog-card:hover .blog-thumb img{ transform:scale(1.06); }
.blog-thumb-overlay{
  position:absolute; inset:0;
  background: radial-gradient(600px circle at 80% 20%, rgba(124,58,237,.2), transparent 55%),
              linear-gradient(180deg, transparent, rgba(0,0,0,.55));
}
.blog-thumb-placeholder{
  width:100%; height:100%;
  background:linear-gradient(135deg, rgba(124,58,237,.25), rgba(236,72,153,.2));
}

.blog-card-body{ padding:14px 14px 12px; }
.blog-meta{ display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.blog-date{ font-size:.82rem; color:rgba(255,255,255,.6); }
.blog-cat{
  font-size:.78rem; padding:4px 8px; border-radius:999px;
  background:rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.08); color:#fff;
}

.blog-title{ font-size:1.05rem; line-height:1.8; margin:4px 0 8px; }
.blog-title a{ color:#fff; }
.blog-excerpt{ color:rgba(255,255,255,.75); line-height:1.9; min-height:68px; }

.blog-footer{
  display:flex; justify-content:space-between; align-items:center;
  border-top:1px dashed rgba(255,255,255,.07); padding-top:10px; margin-top:8px;
}
.blog-readtime{ font-size:.8rem; color:rgba(255,255,255,.6); }
.blog-more{ font-weight:700; color:#a78bfa; }

/* pagination */
.blog-pagination{ margin-top:24px; display:flex; justify-content:center; }
.blog-pagination .page-numbers{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:40px; height:40px; padding:0 10px; margin:0 4px;
  border-radius:10px; background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08); color:#fff; transition:.2s;
}
.blog-pagination .page-numbers.current{
  background:linear-gradient(135deg,#6d28d9,#8b5cf6); border-color:transparent;
}
.blog-pagination .page-numbers:hover{ transform:translateY(-2px); }

/* empty */
.blog-empty{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  padding:18px; border-radius:14px; text-align:center;
}

/* responsive */
@media (max-width: 1024px){
  .blog-hero-grid{ grid-template-columns:1fr; }
  .blog-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px){
  .blog-grid{ grid-template-columns:1fr; }
  .blog-thumb{ height:190px; }
  .blog-hero-title{ font-size:1.6rem; }
}
/* ==========================================
   BLOG + SINGLE (Ultra++ Final)
========================================== */

/* Blog hero */
.blog-hero{
  padding:80px 0 40px;
  text-align:center;
  background:
    radial-gradient(circle at 10% 0%, rgba(124,58,237,.25), transparent 60%),
    radial-gradient(circle at 90% 20%, rgba(59,130,246,.2), transparent 65%),
    #050412;
}

/* Blog grid cards */
.blog-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:26px;
  margin-top:20px;
}

.blog-card-ultra{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.18), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.16), transparent 55%),
    #070617;
  box-shadow:0 18px 45px rgba(0,0,0,.7);
  transition:.35s ease;
}
.blog-card-link{ display:block; color:inherit; }

.blog-card-media{ position:relative; height:220px; overflow:hidden; }
.blog-card-media img{
  width:100%; height:100%; object-fit:cover;
  transform:scale(1.02);
  transition:transform .6s ease, filter .6s ease;
  filter:saturate(1.05) contrast(1.05);
}
.blog-card-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(180deg,rgba(6,6,18,.1),rgba(6,6,18,.85)),
    radial-gradient(circle at top left,rgba(124,58,237,.55),transparent 55%);
  opacity:.9; transition:.35s ease;
}

.blog-card-body{ padding:18px 18px 16px; text-align:right;}
.blog-card-meta{
  display:flex; gap:10px; font-size:.8rem; color:#b8b8d3; margin-bottom:6px;
}
.blog-card-title{
  font-family:'Tehran',sans-serif;
  font-size:1.12rem; font-weight:800; margin:0 0 8px; color:#fff;
}
.blog-card-excerpt{ font-size:.95rem; color:rgba(255,255,255,.85); line-height:1.9; min-height:64px;}
.blog-card-footer{
  margin-top:10px; padding-top:8px; border-top:1px dashed rgba(255,255,255,.08);
}
.blog-card-cta{
  font-weight:800;
  background:linear-gradient(90deg,#ff7ce5,#7c3aed,#34d2ff);
  -webkit-background-clip:text; color:transparent;
}

/* hover cinema */
.blog-card-ultra:hover{
  transform:translateY(-10px);
  border-color:rgba(236,72,153,.55);
  box-shadow:0 28px 70px rgba(0,0,0,.85);
}
.blog-card-ultra:hover img{ transform:scale(1.08); filter:saturate(1.2) contrast(1.1);}
.blog-card-ultra:hover .blog-card-overlay{ opacity:1; }

/* Pagination */
.blog-pagination{
  margin-top:28px;
  display:flex; justify-content:center;
}
.blog-pagination .page-numbers{
  display:inline-flex;
  padding:6px 12px; margin:0 4px;
  border-radius:10px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;
}
.blog-pagination .page-numbers.current{
  background:linear-gradient(135deg,#7c3aed,#ec4899);
  border-color:transparent;
}

/* Single hero */
.post-hero{
  padding:90px 0 40px;
  background:
    radial-gradient(circle at 15% 10%, rgba(124,58,237,.28), transparent 60%),
    radial-gradient(circle at 85% 20%, rgba(59,130,246,.22), transparent 65%),
    #050412;
}
.post-hero-wrap{ text-align:right; position:relative; }
.post-hero-badge{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 12px; border-radius:999px;
  font-size:.8rem; background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.09);
  margin-bottom:12px;
}
.post-hero-badge .dot{
  width:8px;height:8px;border-radius:999px;
  background:#4ade80; box-shadow:0 0 0 6px rgba(74,222,128,.2);
}
.post-hero-title{
  font-family:'Tehran',sans-serif;
  font-size:clamp(2rem,2.6vw + 1rem,3rem);
  font-weight:900; color:#fff; line-height:1.5;
}
.post-hero-meta{
  display:flex; flex-wrap:wrap; gap:8px; margin-top:12px;
}
.meta-chip{
  font-size:.8rem; color:#eaeaff;
  background:rgba(10,10,25,.7);
  border:1px solid rgba(255,255,255,.08);
  padding:5px 10px; border-radius:999px;
}

.post-hero-thumb{
  position:relative; margin-top:18px; border-radius:20px; overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 45px rgba(0,0,0,.7);
}
.post-hero-thumb img{ width:100%; height:auto; display:block; }
.post-hero-thumb-overlay{
  position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(5,4,15,0),rgba(5,4,15,.75));
}

/* Single layout */
.post-layout{
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);
  gap:26px;
  align-items:start;
}
.post-article{
  border-radius:22px;
  padding:26px 24px;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.14), transparent 55%),
    #070617;
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 18px 45px rgba(0,0,0,.65);
}
.post-article-content{
  font-size:1rem; line-height:2; color:rgba(255,255,255,.92);
}
.post-article-content h2,
.post-article-content h3{
  font-family:'Tehran',sans-serif;
  margin-top:22px; color:#fff;
}
.post-article-content img{
  margin:14px 0; border-radius:16px;
}

/* Tags */
.post-tags{ margin-top:18px; }
.tag-list a{
  display:inline-flex; padding:5px 10px; margin:4px;
  font-size:.8rem; border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

/* Author box */
.author-box{
  margin-top:24px; display:flex; gap:12px; align-items:center;
  padding:14px; border-radius:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.author-avatar img{ border-radius:999px; }
.author-info h4{ margin:0 0 4px; font-family:'Tehran'; }
.author-info p{ margin:0; font-size:.9rem; color:#c9c9e2; }

/* Sidebar */
.post-sidebar{ display:flex; flex-direction:column; gap:14px; }
.side-card{
  border-radius:18px; padding:14px;
  background:rgba(8,8,20,.9);
  border:1px solid rgba(255,255,255,.07);
}
.side-title{
  font-family:'Tehran'; font-size:1rem; margin:0 0 8px;
}
.side-list{ list-style:none; margin:0; padding:0; }
.side-list li{ margin:6px 0; font-size:.92rem; opacity:.9; }

/* Responsive */
@media (max-width: 992px){
  .blog-grid{ grid-template-columns:repeat(2,1fr); }
  .post-layout{ grid-template-columns:1fr; }
}
@media (max-width: 640px){
  .blog-grid{ grid-template-columns:1fr; }
  .post-hero{ padding-top:70px; }
  .post-article{ padding:18px; }
}
/* ==========================================
   TOC + MID CTA (Ultra++ Final)
========================================== */

/* TOC */
.siteva-toc{
  margin: 0 0 18px;
  padding: 16px 16px 10px;
  border-radius:18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.18), transparent 55%),
    rgba(10,10,25,.75);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 14px 35px rgba(0,0,0,.6);
}
.siteva-toc-head{
  display:flex; align-items:center; justify-content:space-between;
  font-family:'Tehran',sans-serif;
  font-weight:800; font-size:1rem; color:#fff;
  margin-bottom:8px;
}
.siteva-toc-dot{
  width:8px;height:8px;border-radius:999px;
  background:#4ade80; box-shadow:0 0 0 6px rgba(74,222,128,.2);
  margin-left:8px;
}
.siteva-toc-toggle{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:#fff; padding:4px 8px; border-radius:10px;
  font-size:.75rem; cursor:pointer;
}
.siteva-toc-list{
  list-style:none; padding:0; margin:0;
  display:flex; flex-direction:column; gap:6px;
}
.siteva-toc-list li{
  font-size:.92rem; color:#ddd;
  padding-right:6px;
}
.siteva-toc-list li.h3{ padding-right:18px; opacity:.9; font-size:.9rem; }
.siteva-toc-list a{
  color:inherit; text-decoration:none;
}
.siteva-toc-list a:hover{ color:#fff; }

/* MID CTA */
.mid-cta{
  position:relative;
  margin: 20px 0;
  padding: 22px 20px;
  border-radius:20px;
  text-align:right;
  background:
    radial-gradient(circle at 0% 0%, rgba(124,58,237,.22), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(236,72,153,.18), transparent 60%),
    #070617;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 45px rgba(0,0,0,.7);
  overflow:hidden;
}
.mid-cta-glow{
  position:absolute; inset:-40%;
  background: radial-gradient(circle, rgba(124,58,237,.25), transparent 60%);
  filter: blur(40px); opacity:.8; pointer-events:none;
}
.mid-cta-badge{
  display:inline-flex; align-items:center; gap:8px;
  font-size:.8rem; padding:5px 10px; border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  margin-bottom:8px;
}
.mid-cta-badge span{
  width:7px;height:7px;border-radius:999px;background:#4ade80;
  box-shadow:0 0 0 5px rgba(74,222,128,.18);
}
.mid-cta h3{
  font-family:'Tehran',sans-serif;
  font-size:1.2rem; margin:0 0 6px; color:#fff;
}
.mid-cta p{
  margin:0 0 12px; color:rgba(255,255,255,.88); line-height:1.9;
}
.mid-cta-actions{ display:flex; gap:8px; flex-wrap:wrap; }

/* Mobile */
@media (max-width:640px){
  .mid-cta-actions{ flex-direction:column; }
  .mid-cta-actions .btn{ width:100%; text-align:center; }
}
