@import url("https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;600;700;800;900&display=swap");

:root{
  --bg:#030714;
  --bg-soft:#09122c;
  --text:#f2f7ff;
  --muted:rgba(237,243,255,.72);

  --cyan:#18dfff;
  --cyan-2:#54eaff;
  --violet:#6c63ff;
  --mint:#2fffcf;

  --glass:rgba(255,255,255,.07);
  --glass-2:rgba(255,255,255,.04);
  --line:rgba(255,255,255,.16);

  --shadow:0 25px 90px rgba(0,0,0,.55);
  --shadow-soft:0 18px 50px rgba(0,0,0,.45);

  --neon-cyan:0 0 10px rgba(24,223,255,.55),0 0 24px rgba(24,223,255,.35),0 0 48px rgba(24,223,255,.2);
  --neon-violet:0 0 10px rgba(108,99,255,.45),0 0 22px rgba(108,99,255,.28);

  --scrollbar-size:11px;
  --scrollbar-track:rgba(255,255,255,.04);
  --scrollbar-thumb-1:rgba(24,223,255,.95);
  --scrollbar-thumb-2:rgba(108,99,255,.92);
  --scrollbar-thumb-border:rgba(255,255,255,.15);
}

*{box-sizing:border-box}
html,body{height:100%}

html{
  scroll-behavior:smooth;
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-gutter:stable;
  -webkit-text-size-adjust:100%;
  touch-action:manipulation;
}

body{
  margin:0;
  font-family:"Vazirmatn",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(1000px 580px at 86% -10%, rgba(35,92,180,.38) 0%, transparent 60%),
    radial-gradient(800px 460px at 10% 110%, rgba(108,99,255,.22) 0%, transparent 64%),
    radial-gradient(700px 300px at 60% 30%, rgba(24,223,255,.10) 0%, transparent 72%),
    var(--bg);
  overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-y:contain;
  text-rendering:optimizeLegibility;
}

/* scrollbar */
*{
  scrollbar-width:thin;
  scrollbar-color:var(--scrollbar-thumb-2) var(--scrollbar-track);
}
*::-webkit-scrollbar{
  width:var(--scrollbar-size);
  height:var(--scrollbar-size);
}
*::-webkit-scrollbar-track{
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.06));
  border-radius:999px;
}
*::-webkit-scrollbar-thumb{
  border-radius:999px;
  border:2px solid transparent;
  background:
    linear-gradient(180deg,var(--scrollbar-thumb-1),var(--scrollbar-thumb-2)) padding-box,
    linear-gradient(180deg,rgba(24,223,255,.45),rgba(108,99,255,.38)) border-box;
  box-shadow:
    inset 0 0 0 1px var(--scrollbar-thumb-border),
    0 0 12px rgba(24,223,255,.26),
    0 0 24px rgba(108,99,255,.20);
}
*::-webkit-scrollbar-thumb:hover{
  background:
    linear-gradient(180deg,#46ebff,#8078ff) padding-box,
    linear-gradient(180deg,rgba(24,223,255,.62),rgba(108,99,255,.56)) border-box;
}
*::-webkit-scrollbar-corner{background:transparent}

/* global */
.glass{
  background:linear-gradient(180deg, var(--glass), var(--glass-2));
  border:1px solid var(--line);
  box-shadow:inset 0 0 0 1px rgba(24,223,255,.08), 0 0 0 1px rgba(108,99,255,.06);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  text-decoration:none;
  font-weight:800;
  border-radius:14px;
  border:1px solid transparent;
  padding:.65rem 1rem;
  transition:.25s ease;
  white-space:nowrap;
}
.btn-lg{
  padding:.85rem 1.2rem;
  border-radius:15px;
}
.btn-solid{
  color:#04131a;
  background:linear-gradient(135deg,var(--cyan),#61f0ff);
  box-shadow:
    0 12px 34px rgba(24,223,255,.35),
    0 0 22px rgba(24,223,255,.35),
    inset 0 -2px 0 rgba(0,0,0,.15);
}
.btn-solid:hover{
  transform:translateY(-2px);
  box-shadow:
    0 16px 42px rgba(24,223,255,.45),
    0 0 28px rgba(24,223,255,.48);
}
.btn-ghost{
  color:var(--text);
  background:rgba(255,255,255,.03);
  border-color:rgba(24,223,255,.35);
  box-shadow:inset 0 0 14px rgba(24,223,255,.08);
}
.btn-ghost:hover{
  transform:translateY(-2px);
  border-color:rgba(24,223,255,.72);
  box-shadow:0 0 0 3px rgba(24,223,255,.12), 0 0 22px rgba(24,223,255,.25);
}

/* animated background */
.bg-layers{
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
}
.orb{
  position:absolute;
  border-radius:50%;
  filter:blur(75px);
  opacity:.55;
  animation:drift 12s ease-in-out infinite alternate;
}
.orb-cyan{
  width:520px;height:520px;right:-130px;top:-150px;
  background:radial-gradient(circle,rgba(24,223,255,.9) 0%, transparent 65%);
}
.orb-violet{
  width:560px;height:560px;left:-150px;bottom:-180px;
  background:radial-gradient(circle,rgba(108,99,255,.8) 0%, transparent 65%);
  animation-delay:1.2s;
}
.orb-mint{
  width:380px;height:380px;left:22%;top:18%;
  background:radial-gradient(circle,rgba(47,255,207,.42) 0%, transparent 70%);
  animation-delay:2s;
}
.grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:radial-gradient(circle at 50% 30%, #000 35%, transparent 80%);
}
.noise{
  position:absolute;
  inset:0;
  opacity:.06;
  background-image:radial-gradient(#fff 1px, transparent 1px);
  background-size:3px 3px;
}
@keyframes drift{
  0%{transform:translateY(0) translateX(0) scale(1)}
  100%{transform:translateY(24px) translateX(-15px) scale(1.05)}
}

/* header */
.header{
  position:sticky;
  top:0;
  z-index:60;
  margin:12px clamp(12px,4vw,36px) 0;
  border-radius:20px;
  padding:12px clamp(12px,3vw,24px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  box-shadow:var(--shadow-soft), 0 0 24px rgba(24,223,255,.12);
  background:linear-gradient(180deg, rgba(7,14,36,.75), rgba(7,14,36,.52));
  border:1px solid rgba(140,190,255,.18);
  backdrop-filter:blur(16px) saturate(140%);
  -webkit-backdrop-filter:blur(16px) saturate(140%);
}
.header-right{
  display:flex;
  align-items:center;
  gap:28px;
  min-width:0;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:var(--text);
  min-width:0;
}
.brand-icon{
  width:44px;
  height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#061319;
  background:linear-gradient(135deg,var(--cyan),#7ff4ff);
  box-shadow:0 0 0 1px rgba(24,223,255,.5),0 10px 30px rgba(24,223,255,.38), var(--neon-cyan);
  flex-shrink:0;
}
.brand-logo{
  overflow:visible;
  padding:6px;
  position:relative;
}
.brand-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  transform-origin:center;
  animation:headerLogoPulse 4s ease-in-out infinite;
  will-change:transform;
}
@keyframes headerLogoPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(2)}
}
.brand-copy strong{
  display:block;
  font-size:.9rem;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.brand-copy small{
  display:block;
  color:rgba(237,243,255,.68);
  font-size:.72rem;
  margin-top:3px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.nav{
  display:flex;
  align-items:center;
  gap:10px;
}
.nav a{
  text-decoration:none;
  color:rgba(237,243,255,.8);
  padding:.52rem .72rem;
  border-radius:10px;
  font-size:.9rem;
  font-weight:600;
  transition:.2s;
}
.nav a:hover{
  background:rgba(255,255,255,.05);
  color:#fff;
  box-shadow:0 0 14px rgba(24,223,255,.18);
}
.nav a.active{
  color:var(--cyan);
  background:rgba(24,223,255,.11);
  box-shadow:inset 0 0 0 1px rgba(24,223,255,.35), 0 0 14px rgba(24,223,255,.22);
}
.header-left{
  display:flex;
  align-items:center;
  gap:10px;
}

.menu-toggle{
  display:none;
  width:42px;
  height:42px;
  border-radius:12px;
  border:1px solid rgba(24,223,255,.35);
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:1.05rem;
  box-shadow:0 0 14px rgba(24,223,255,.18);
  cursor:pointer;
}

.mobile-nav{
  display:none;
  margin:10px 12px 0;
  border-radius:16px;
  padding:10px;
  z-index:55;
  position:sticky;
  top:84px;
}
.mobile-nav.open{display:block}
.mobile-nav a{
  display:block;
  color:rgba(237,243,255,.9);
  text-decoration:none;
  padding:.72rem .7rem;
  border-radius:10px;
  font-weight:600;
}
.mobile-nav a:hover,
.mobile-nav a.active{
  background:rgba(24,223,255,.12);
  color:#fff;
  box-shadow:0 0 12px rgba(24,223,255,.22);
}
.mobile-nav hr{
  border:none;
  border-top:1px solid rgba(255,255,255,.14);
  margin:8px 4px;
}
.mobile-nav .mobile-cta{
  background:linear-gradient(135deg,var(--cyan),#61f0ff);
  color:#04131a;
  font-weight:800;
  text-align:center;
  box-shadow:0 0 18px rgba(24,223,255,.35);
}

.mobile-actions{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:12px;
}

/* hero + features background continuity */
.hero-wrap{
  position:relative;
  isolation:isolate;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}

.hero-wrap::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(900px 480px at 72% 40%, rgba(24,223,255,.14), transparent 65%),
    linear-gradient(90deg, rgba(3,7,20,.58) 0%, rgba(3,7,20,.35) 45%, rgba(3,7,20,.2) 100%);
  pointer-events:none;
}

/* hero */
.hero{
  position:relative;
  z-index:1;
  min-height:calc(100vh - 94px);
  background:none !important;
}
.hero-overlay{
  display:none !important;
}
.hero-inner{
  padding:40px clamp(16px,6vw,90px) 20px;
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:clamp(22px,4vw,48px);
  align-items:center;
}

.glass-panel{
  background:linear-gradient(180deg, rgba(8,14,34,.58), rgba(8,14,34,.40));
  border:1px solid rgba(24,223,255,.24);
  backdrop-filter:blur(12px) saturate(140%);
  -webkit-backdrop-filter:blur(12px) saturate(140%);
  border-radius:24px;
  box-shadow:0 20px 55px rgba(0,0,0,.35), 0 0 22px rgba(24,223,255,.12), inset 0 0 18px rgba(108,99,255,.08);
}

.hero-content{
  padding:22px 22px 18px;
}
.eyebrow{
  margin:0 0 12px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(24,223,255,.45);
  color:rgba(222,250,255,.98);
  background:rgba(24,223,255,.1);
  font-weight:700;
  font-size:.82rem;
  box-shadow:0 0 16px rgba(24,223,255,.2);
}
.hero-content h1{
  margin:0;
  font-size:clamp(52px, 8.2vw, 132px);
  line-height:.92;
  font-weight:900;
  letter-spacing:-1.4px;
  text-shadow:0 4px 25px rgba(0,0,0,.55), 0 0 28px rgba(24,223,255,.28), 0 0 44px rgba(108,99,255,.18);
  word-break:break-word;
}
.hero-content h2{
  margin:10px 0 14px;
  font-size:clamp(18px,2.2vw,33px);
  color:#9fefff;
  font-weight:800;
  text-shadow:0 2px 14px rgba(0,0,0,.45), 0 0 18px rgba(24,223,255,.28);
}
.desc{
  margin:0 0 22px;
  color:rgba(240,246,255,.94);
  line-height:2;
  max-width:60ch;
}
.actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.chips{
  display:grid;
  gap:12px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.chip{
  min-width:0;
  display:flex;
  gap:10px;
  align-items:center;
  border-radius:16px;
  padding:11px 12px;
  background:linear-gradient(180deg, rgba(8,14,34,.6), rgba(8,14,34,.42));
  border:1px solid rgba(24,223,255,.22);
  box-shadow:inset 0 0 14px rgba(24,223,255,.06);
}
.chip i{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:var(--cyan);
  background:rgba(24,223,255,.12);
  box-shadow:inset 0 0 0 1px rgba(24,223,255,.28), 0 0 14px rgba(24,223,255,.22);
  flex-shrink:0;
}
.chip h3{
  margin:0;
  font-size:.82rem;
  font-weight:800;
}
.chip p{
  margin:3px 0 0;
  font-size:.72rem;
  color:rgba(237,243,255,.68);
}

/* visual */
.hero-visual{
  position:relative;
  min-height:580px;
  isolation:isolate;
}
.visual-panel{
  padding:8px;
}

/* حذف پنل شیشه‌ای دور ویژوال */
.hero-visual.glass-panel{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* قاب داخلی حذف شده */
.hero-visual .frame.glass{
  display:none !important;
}

/* هاله‌های نوری پشت دستگاه‌ها */
.hero-visual::before,
.hero-visual::after{
  content:"";
  position:absolute;
  border-radius:50%;
  filter:blur(42px);
  pointer-events:none;
}
.hero-visual::before{
  width:340px;
  height:340px;
  right:14%;
  top:70px;
  z-index:1;
  background:radial-gradient(circle, rgba(24,223,255,.40) 0%, rgba(24,223,255,.16) 40%, transparent 72%);
}
.hero-visual::after{
  width:260px;
  height:260px;
  left:6%;
  bottom:30px;
  z-index:1;
  background:radial-gradient(circle, rgba(108,99,255,.34) 0%, rgba(108,99,255,.14) 42%, transparent 74%);
}

/* بیضی نئونی حجمی زیر دستگاه‌ها */
.frame{
  position:absolute;
  inset:30px 8% 32px 4%;
  border-radius:34px;
  background:transparent;
  border:none;
  box-shadow:none;
}
.frame::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  width:min(760px, 94%);
  height:150px;
  border-radius:999px;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(55% 120% at 50% 22%, rgba(24,223,255,.42) 0%, rgba(24,223,255,.24) 28%, rgba(108,99,255,.18) 48%, rgba(47,255,207,.08) 60%, rgba(0,0,0,0) 76%),
    radial-gradient(68% 180% at 50% 100%, rgba(0,0,0,.42) 0%, rgba(0,0,0,.18) 42%, rgba(0,0,0,0) 72%);
  box-shadow:
    0 22px 55px rgba(0,0,0,.52),
    0 0 24px rgba(24,223,255,.34),
    0 0 44px rgba(108,99,255,.22),
    inset 0 1px 0 rgba(255,255,255,.10);
  outline:1px solid rgba(24,223,255,.16);
  outline-offset:-14px;
  opacity:.98;
}

/* هایلایت نازک روی بیضی */
.frame::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:92px;
  transform:translateX(-50%);
  width:min(460px, 58%);
  height:26px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,255,255,.18) 0%, rgba(24,223,255,.12) 45%, rgba(255,255,255,0) 78%);
  filter:blur(8px);
  z-index:2;
  pointer-events:none;
  opacity:.8;
}

.tablet{
  position:absolute;
  right:7%;
  top:18px;
  z-index:3;
  width:min(740px,95%);
  filter:
    drop-shadow(0 24px 50px rgba(0,0,0,.65))
    drop-shadow(0 0 18px rgba(24,223,255,.35))
    drop-shadow(0 0 34px rgba(108,99,255,.20));
}
.mobile{
  position:absolute;
  left:7%;
  bottom:-15px;
  z-index:4;
  width:min(270px,40%);
  filter:
    drop-shadow(0 28px 65px rgba(0,0,0,.75))
    drop-shadow(0 0 18px rgba(24,223,255,.38))
    drop-shadow(0 0 30px rgba(108,99,255,.24));
  animation:float 4.8s ease-in-out infinite;
}
@keyframes float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-14px)}
}
@keyframes mobileFloat{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-12px)}
}

/* features */
.features{
  position:relative;
  z-index:1;
  margin-top:0;
  padding:10px clamp(16px,6vw,90px) 58px;
  display:grid;
  gap:12px;
  grid-template-columns:repeat(6,minmax(0,1fr));
  background:transparent !important;
}
.feature{
  min-height:158px;
  border-radius:18px;
  padding:16px 14px 14px;
  background:linear-gradient(180deg, rgba(10,20,48,.68), rgba(8,14,34,.46));
  border:1px solid rgba(92,148,255,.26);
  box-shadow:
    inset 0 0 0 1px rgba(24,223,255,.08),
    0 10px 30px rgba(0,0,0,.32),
    0 0 18px rgba(24,223,255,.10);
  position:relative;
  overflow:hidden;
  direction:rtl;
  text-align:right;

  opacity:0;
  transform:translateY(34px) scale(.96);
  filter:blur(8px);
  transition:
    opacity .9s cubic-bezier(.22,.61,.36,1),
    transform .9s cubic-bezier(.22,.61,.36,1),
    filter .9s cubic-bezier(.22,.61,.36,1),
    box-shadow .35s ease,
    border-color .35s ease;
  will-change:transform,opacity,filter;
}
.feature::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  background:linear-gradient(120deg, rgba(24,223,255,.16), rgba(108,99,255,.16), rgba(24,223,255,.08));
  opacity:0;
  transition:.25s ease;
  pointer-events:none;
}
.feature::after{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(220px 120px at 20% 0%, rgba(255,170,220,.22), transparent 65%),
    radial-gradient(180px 120px at 80% 100%, rgba(24,223,255,.18), transparent 70%);
  transition:opacity .8s ease;
}
.feature:hover{
  transform:translateY(-5px);
  border-color:rgba(24,223,255,.42);
  box-shadow:
    0 20px 45px rgba(0,0,0,.38),
    inset 0 0 0 1px rgba(24,223,255,.18),
    0 0 22px rgba(24,223,255,.24);
}
.feature:hover::before{opacity:1}

.feature-head{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  margin-bottom:10px;
}
.feature-head i{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  font-size:1.2rem;
  color:var(--cyan);
  background:rgba(24,223,255,.10);
  border:1px solid rgba(24,223,255,.28);
  text-shadow:0 0 16px rgba(24,223,255,.4), 0 0 26px rgba(24,223,255,.25);
  flex-shrink:0;
}
.feature-head h3{
  margin:0;
  font-size:.92rem;
  font-weight:800;
  color:#eaf4ff;
  text-align:right;
}
.feature p{
  margin:0;
  color:rgba(232,242,255,.75);
  font-size:.77rem;
  line-height:1.9;
}

.feature.in-view{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
  animation:romanticPop .95s cubic-bezier(.18,.89,.32,1.25) both;
}
.feature.in-view::after{opacity:1}

.feature.in-view:nth-child(1){transition-delay:.04s;animation-delay:.04s}
.feature.in-view:nth-child(2){transition-delay:.14s;animation-delay:.14s}
.feature.in-view:nth-child(3){transition-delay:.24s;animation-delay:.24s}
.feature.in-view:nth-child(4){transition-delay:.34s;animation-delay:.34s}
.feature.in-view:nth-child(5){transition-delay:.44s;animation-delay:.44s}
.feature.in-view:nth-child(6){transition-delay:.54s;animation-delay:.54s}
.feature.in-view:nth-child(7){transition-delay:.64s;animation-delay:.64s}
.feature.in-view:nth-child(8){transition-delay:.74s;animation-delay:.74s}
.feature.in-view:nth-child(9){transition-delay:.84s;animation-delay:.84s}
.feature.in-view:nth-child(10){transition-delay:.94s;animation-delay:.94s}

@keyframes romanticPop{
  0%{
    opacity:0;
    transform:translateY(34px) scale(.94);
    filter:blur(10px);
  }
  60%{
    opacity:1;
    transform:translateY(-6px) scale(1.015);
    filter:blur(0);
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

/* contact page */
.contact-page{
  min-height:calc(100vh - 120px);
  display:grid;
  place-items:center;
  padding:34px clamp(12px, 4vw, 36px) 60px;
}

.contact-card{
  width:min(920px, 100%);
  padding:22px;
  border-radius:24px;
  text-align:right;
}

.contact-title{
  margin:10px 0 8px;
  font-size:clamp(22px, 3vw, 34px);
  font-weight:900;
  text-shadow:0 4px 25px rgba(0,0,0,.45), 0 0 28px rgba(24,223,255,.18);
}

.contact-sub{
  margin:0 0 18px;
  color:rgba(240,246,255,.88);
  line-height:2;
  max-width:60ch;
}

.contact-number{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 14px;
  border-radius:16px;
  border:1px solid rgba(24,223,255,.26);
  background:linear-gradient(180deg, rgba(8,14,34,.62), rgba(8,14,34,.42));
  box-shadow:inset 0 0 14px rgba(24,223,255,.06), 0 0 22px rgba(24,223,255,.10);
  margin-bottom:16px;
}

.contact-number i{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:var(--cyan);
  background:rgba(24,223,255,.12);
  box-shadow:inset 0 0 0 1px rgba(24,223,255,.28), 0 0 14px rgba(24,223,255,.22);
  flex-shrink:0;
}

.contact-number span{
  font-size:1.25rem;
  font-weight:900;
  letter-spacing:.4px;
}

.contact-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:8px;
}

.contact-hint{
  margin:12px 0 0;
  color:rgba(237,243,255,.72);
  font-size:.9rem;
}

/* responsive */
@media (max-width:1200px){
  .features{
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:-60px;
  }
}

@media (max-width:1120px){
  .hero-inner{
    grid-template-columns:1fr;
  }
  .hero-content{
    text-align:center;
    padding:18px;
  }
  .desc{
    margin-inline:auto;
  }
  .actions{
    justify-content:center;
  }
  .chips{
    grid-template-columns:repeat(2,minmax(0,1fr));
    justify-items:stretch;
  }

  .hero-visual{
    min-height:520px;
  }

  .frame::after{
    width:min(700px, 92%);
    height:138px;
    bottom:18px;
  }

  .tablet{
    right:50%;
    transform:translateX(50%);
    width:min(760px,98%);
  }

  .mobile{
    left:2%;
    top:10px;
    bottom:auto;
    width:min(220px,32%);
  }
}

@media (max-width:860px){
  :root{
    --scrollbar-size:8px;
  }

  .desktop-nav{display:none}
  .menu-toggle{
    display:grid;
    place-items:center;
  }
  .header-left{display:none}

  .features{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-top:0;
  }

  html,body{
    overscroll-behavior-y:none;
  }
}

@media (max-width:640px){
  .header{
    margin:10px 10px 0;
    border-radius:16px;
    padding:10px 12px;
  }

  .brand-copy small{display:none}

  .hero-inner{
    padding:18px 10px 14px;
  }

  .hero-content{
    border-radius:18px;
    padding:14px;
    text-align:right;
  }

  .hero-content h1{
    font-size:clamp(36px, 12vw, 58px);
  }

  .hero-content h2{
    font-size:clamp(16px, 5vw, 24px);
  }

  .desc{
    line-height:1.9;
    font-size:.95rem;
  }

  .actions{
    flex-direction:column;
    align-items:stretch;
  }

  .actions .btn{
    width:100%;
  }

  .chips{
    grid-template-columns:1fr;
  }

  .hero-visual{
    display:block;
    min-height:290px;
    margin-top:10px;
    border-radius:18px;
    overflow:visible;
    position:relative;
  }

  .hero-visual .tablet{
    display:none;
  }

  .hero-visual::before{
    width:220px;
    height:220px;
    left:50%;
    top:44px;
    right:auto;
    transform:translateX(-50%);
    background:radial-gradient(circle, rgba(24,223,255,.34) 0%, rgba(24,223,255,.14) 45%, transparent 74%);
  }

  .hero-visual::after{
    width:180px;
    height:180px;
    left:50%;
    bottom:18px;
    transform:translateX(-50%);
    background:radial-gradient(circle, rgba(108,99,255,.30) 0%, rgba(108,99,255,.12) 45%, transparent 74%);
  }

  .hero-visual .frame{
    display:block !important;
    position:absolute;
    inset:0;
  }

  .hero-visual .frame::before{
    width:min(220px, 70%);
    bottom:82px;
    height:20px;
  }

  .hero-visual .frame::after{
    width:min(360px, 94%);
    height:96px;
    bottom:8px;
    outline-offset:-8px;
  }

  .hero-visual .mobile{
    position:absolute;
    left:50%;
    bottom:-8px;
    width:min(190px, 54vw);
    max-width:220px;
    transform:translateX(-50%);
    animation:mobileFloat 3.6s ease-in-out infinite;
    filter:
      drop-shadow(0 18px 35px rgba(0,0,0,.55))
      drop-shadow(0 0 20px rgba(24,223,255,.30))
      drop-shadow(0 0 30px rgba(108,99,255,.20));
  }

  .features{
    grid-template-columns:1fr;
    padding:16px 10px 40px;
  }

  .feature{
    min-height:auto;
    transform:translateY(26px) scale(.97);
    filter:blur(6px);
    transition-duration:.78s;
  }
}

@media (max-width:380px){
  .brand-copy strong{font-size:.82rem}
  .eyebrow{font-size:.75rem}
  .chip h3{font-size:.78rem}
  .chip p{font-size:.7rem}
  .hero-visual .mobile{
    width:min(170px, 58vw);
  }
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{
    animation:none !important;
    transition:none !important;
  }
  .feature,
  .feature.in-view{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }
}

/* ===== Fix: ثابت شدن فضای خالی بالای Features در دسکتاپ ===== */
@media (min-width:1201px){
  .hero{
    min-height:auto;
  }

  .hero-inner{
    padding-bottom:40px;
  }

  .features{
    margin-top:0;
    padding-top:10px;
  }
}


/* =========================
   Challenges section
   (Pain → Solution → Result)
========================= */

.challenges{
  position:relative;
  z-index:1;
  padding:14px clamp(16px,6vw,90px) 22px;
}

.challenges-inner{
  display:grid;
  gap:14px;
}

.challenges-head{
  padding:18px 18px 16px;
}

.challenges-title{
  margin:8px 0 10px;
  font-size:clamp(18px, 2.2vw, 30px);
  font-weight:900;
  line-height:1.5;
  text-shadow:0 4px 22px rgba(0,0,0,.35);
}

.challenges-sub{
  margin:0;
  color:rgba(240,246,255,.88);
  line-height:2;
  max-width:78ch;
}

.pain-solution{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:stretch;
}

.panel{
  border-radius:20px;
  padding:16px 16px 14px;
  background:linear-gradient(180deg, rgba(10,20,48,.62), rgba(8,14,34,.42));
  border:1px solid rgba(92,148,255,.22);
  box-shadow:
    inset 0 0 0 1px rgba(24,223,255,.07),
    0 12px 34px rgba(0,0,0,.30),
    0 0 18px rgba(24,223,255,.08);
}

.panel-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}

.panel-head i{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  font-size:1.15rem;
  color:var(--cyan);
  background:rgba(24,223,255,.10);
  border:1px solid rgba(24,223,255,.26);
  text-shadow:0 0 16px rgba(24,223,255,.35);
  flex-shrink:0;
}

.panel-head h3{
  margin:0;
  font-size:1rem;
  font-weight:900;
  color:#eaf4ff;
}

.checklist{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.checklist li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  color:rgba(237,243,255,.82);
  line-height:1.9;
  font-size:.9rem;
}

.checklist i{
  margin-top:3px;
  color:rgba(255,110,160,.92);
  filter:drop-shadow(0 0 10px rgba(255,110,160,.18));
  flex-shrink:0;
}

.flow{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.flow li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 10px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
}

.flow .step{
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  color:#04131a;
  font-weight:900;
  background:linear-gradient(135deg,var(--cyan),#61f0ff);
  box-shadow:0 10px 24px rgba(24,223,255,.22);
  flex-shrink:0;
}

.flow strong{
  display:block;
  font-size:.95rem;
  font-weight:900;
  color:#eaf4ff;
  margin-bottom:2px;
}

.flow p{
  margin:0;
  color:rgba(237,243,255,.78);
  line-height:1.9;
  font-size:.88rem;
}

.panel-actions{
  margin-top:12px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.results{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}

.result{
  border-radius:18px;
  padding:14px 14px 12px;
  background:linear-gradient(180deg, rgba(10,20,48,.56), rgba(8,14,34,.38));
  border:1px solid rgba(92,148,255,.20);
  box-shadow:
    inset 0 0 0 1px rgba(24,223,255,.06),
    0 10px 28px rgba(0,0,0,.28);
}

.result-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}

.result-head i{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:var(--cyan);
  background:rgba(24,223,255,.10);
  border:1px solid rgba(24,223,255,.22);
  flex-shrink:0;
}

.result-head h3{
  margin:0;
  font-size:.95rem;
  font-weight:900;
  color:#eaf4ff;
}

.result p{
  margin:0;
  color:rgba(237,243,255,.78);
  line-height:1.9;
  font-size:.88rem;
}

/* responsive for challenges */
@media (max-width:1120px){
  .pain-solution{grid-template-columns:1fr;}
  .results{grid-template-columns:1fr;}
}

@media (max-width:640px){
  .challenges{padding:10px 10px 12px;}
  .challenges-head{padding:14px;}
  .panel{padding:14px;}
}


/* Optional: a slightly different accent for facilities section */
.challenges.facilities .panel-head i,
.challenges.facilities .result-head i{
  color:#9EF5FF;
  background:rgba(158,245,255,.10);
  border-color:rgba(158,245,255,.24);
  text-shadow:0 0 16px rgba(158,245,255,.30);
}

/* =========================
   Brand Promise Section
========================= */

.brand-promise{
  position:relative;
  z-index:1;
  padding:8px clamp(16px,6vw,90px) 14px;
}

.brand-promise-inner{
  text-align:center;
  padding:22px 18px;
  border-radius:24px;
  max-width:980px;
  margin:0 auto;
  background:linear-gradient(180deg, rgba(14,28,58,.58), rgba(8,16,36,.42));
  border:1px solid rgba(92,148,255,.18);
  box-shadow:
    inset 0 0 0 1px rgba(24,223,255,.05),
    0 14px 40px rgba(0,0,0,.24);
}

.promise-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 10px;
  padding:8px 12px;
  border-radius:999px;
  color:var(--cyan);
  font-size:.82rem;
  font-weight:800;
  background:rgba(24,223,255,.08);
  border:1px solid rgba(24,223,255,.18);
}

.promise-title{
  margin:0;
  font-size:clamp(20px, 2.2vw, 34px);
  line-height:1.9;
  font-weight:900;
  color:#f4f8ff;
  text-shadow:0 8px 24px rgba(0,0,0,.25);
}

.promise-title span{
  display:block;
  margin-top:6px;
  font-size:clamp(15px, 1.2vw, 19px);
  font-weight:500;
  color:rgba(235,243,255,.82);
}

@media (max-width:640px){
  .brand-promise{
    padding:6px 10px 10px;
  }

  .brand-promise-inner{
    padding:16px 14px;
    border-radius:18px;
  }

  .promise-title{
    line-height:1.8;
  }
}

/* =========================
   Footer (Complete)
========================= */

.site-footer{
  position:relative;
  z-index:1;
  padding:26px clamp(16px,6vw,90px) 18px;
  background:
    radial-gradient(1100px 500px at 50% 0%, rgba(24,223,255,.10), transparent 55%),
    linear-gradient(180deg, rgba(8,14,34,.75), rgba(5,10,26,.92));
  border-top:1px solid rgba(92,148,255,.18);
}

.footer-inner{
  max-width:1200px;
  margin:0 auto;
}

.footer-top{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1.2fr;
  gap:18px;
  padding:6px 0 18px;
}

.footer-col{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:16px 14px;
  box-shadow: inset 0 0 0 1px rgba(24,223,255,.04);
}

.footer-brand{
  padding:18px 16px;
}

.footer-logo{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  margin-bottom:10px;
}

.footer-logo img{
  width:34px;
  height:34px;
  object-fit:contain;
}

.footer-logo-text{
  font-weight:1000;
  letter-spacing:.2px;
  color:#eaf4ff;
  font-size:1.05rem;
}

.footer-desc{
  margin:0 0 12px;
  color:rgba(235,243,255,.78);
  line-height:2;
  font-size:.92rem;
  max-width:52ch;
}

.footer-social{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.footer-social a{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#eaf4ff;
  text-decoration:none;
  background:rgba(24,223,255,.07);
  border:1px solid rgba(24,223,255,.16);
  transition:transform .2s ease, background .2s ease, border-color .2s ease;
}

.footer-social a:hover{
  transform:translateY(-2px);
  background:rgba(24,223,255,.10);
  border-color:rgba(24,223,255,.26);
}

.footer-title{
  margin:0 0 10px;
  font-size:.95rem;
  font-weight:950;
  color:#eaf4ff;
}

.footer-links{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.footer-links a{
  color:rgba(235,243,255,.78);
  text-decoration:none;
  font-size:.92rem;
  line-height:1.8;
  transition:color .2s ease;
}

.footer-links a:hover{
  color:rgba(24,223,255,.95);
}

.footer-contact{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.footer-contact li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:rgba(235,243,255,.78);
  line-height:1.9;
  font-size:.92rem;
}

.footer-contact i{
  margin-top:3px;
  color:rgba(24,223,255,.95);
  filter:drop-shadow(0 0 10px rgba(24,223,255,.18));
  flex-shrink:0;
}

.footer-contact a{
  color:rgba(235,243,255,.80);
  text-decoration:none;
}

.footer-contact a:hover{
  color:rgba(24,223,255,.95);
}

.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.08);
}

.footer-copy{
  margin:0;
  color:rgba(235,243,255,.66);
  font-size:.88rem;
}

.footer-legal{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(235,243,255,.55);
  font-size:.88rem;
}

.footer-legal a{
  color:rgba(235,243,255,.70);
  text-decoration:none;
}

.footer-legal a:hover{
  color:rgba(24,223,255,.95);
}

.footer-legal .dot{
  opacity:.6;
}

/* Responsive */
@media (max-width: 1100px){
  .footer-top{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width: 640px){
  .site-footer{
    padding:18px 10px 14px;
  }

  .footer-top{
    grid-template-columns:1fr;
    gap:12px;
  }

  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}


/* =========================
   Monitoring (Data-first)
========================= */

.monitoring-kpis{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:10px;
  margin-top:14px;
}

.kpi{
  padding:12px 12px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
}

.kpi-label{
  display:block;
  font-size:.82rem;
  color:rgba(235,243,255,.65);
  margin-bottom:6px;
}

.kpi-value{
  display:block;
  font-weight:950;
  letter-spacing:.3px;
  color:#eaf4ff;
}

.monitoring-showcase{
  margin-top:14px;
  padding:16px;
  border-radius:18px;
}

.showcase-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}

.showcase-head h3{
  margin:0 0 6px;
  font-size:1.02rem;
  font-weight:1000;
}

.showcase-head p{
  margin:0;
  color:rgba(235,243,255,.72);
  line-height:1.9;
  font-size:.92rem;
  max-width:70ch;
}

.badge-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.badge{
  padding:7px 10px;
  border-radius:999px;
  font-size:.78rem;
  color:#eaf4ff;
  background:rgba(24,223,255,.08);
  border:1px solid rgba(24,223,255,.18);
}

.dash-grid{
  display:grid;
  grid-template-columns:1fr 1.2fr 1fr;
  gap:12px;
  margin-top:10px;
}

.dash-card{
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}

.dash-title{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
  color:#eaf4ff;
  font-weight:900;
}

.pill{
  padding:6px 10px;
  border-radius:999px;
  font-size:.78rem;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(235,243,255,.85);
}

.pill.ok{ background:rgba(46,213,115,.10); border-color:rgba(46,213,115,.24); }
.pill.warn{ background:rgba(255,165,2,.12); border-color:rgba(255,165,2,.25); }
.pill.danger{ background:rgba(255,71,87,.12); border-color:rgba(255,71,87,.25); }

.mini-list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
  color:rgba(235,243,255,.78);
  font-size:.92rem;
}

.status{
  margin-right:10px;
  padding:4px 10px;
  border-radius:999px;
  font-size:.78rem;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.05);
}

.status.ok{ border-color:rgba(46,213,115,.22); background:rgba(46,213,115,.10); color:#dfffea; }
.status.warn{ border-color:rgba(255,165,2,.25); background:rgba(255,165,2,.12); color:#fff2d6; }

.fake-chart{
  height:96px;
  border-radius:14px;
  border:1px solid rgba(24,223,255,.16);
  background:
    radial-gradient(500px 120px at 20% 10%, rgba(24,223,255,.18), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  position:relative;
  overflow:hidden;
}
.fake-chart::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,
      transparent 0%,
      rgba(24,223,255,.20) 15%,
      transparent 35%,
      rgba(24,223,255,.14) 55%,
      transparent 75%,
      rgba(24,223,255,.18) 100%);
  opacity:.5;
  transform:skewX(-12deg);
}

.dash-note{
  margin:10px 0 0;
  color:rgba(235,243,255,.68);
  font-size:.86rem;
  line-height:1.8;
}

.alert-item{
  padding:10px 10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  margin-bottom:10px;
}

.alert-meta{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:6px;
}

.alert-type{
  font-size:.78rem;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:rgba(235,243,255,.85);
}
.alert-type.warn{ border-color:rgba(255,165,2,.25); background:rgba(255,165,2,.12); }
.alert-type.danger{ border-color:rgba(255,71,87,.25); background:rgba(255,71,87,.12); }

.alert-time{
  font-size:.78rem;
  color:rgba(235,243,255,.60);
}

.alert-text{
  margin:0;
  color:rgba(235,243,255,.78);
  font-size:.9rem;
  line-height:1.9;
}

.role-row{
  margin-top:12px;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}

.role-card{
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}

.role-card h4{
  margin:0 0 6px;
  font-size:.95rem;
  font-weight:950;
  color:#eaf4ff;
  display:flex;
  align-items:center;
  gap:10px;
}

.role-card h4 i{
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(24,223,255,.08);
  border:1px solid rgba(24,223,255,.18);
  color:#7ee6ff;
}

.role-card p{
  margin:0;
  color:rgba(235,243,255,.72);
  line-height:1.9;
  font-size:.9rem;
}

/* Responsive */
@media (max-width: 980px){
  .monitoring-kpis{ grid-template-columns:repeat(2, 1fr); }
  .dash-grid{ grid-template-columns:1fr; }
  .role-row{ grid-template-columns:1fr; }
}
/* ===============================
   With You / Commitment Section
   =============================== */
.with-you {
  position: relative;
  overflow: hidden;
  margin: 32px 0 40px;
  padding: 30px;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(9, 18, 44, 0.72), rgba(8, 14, 34, 0.5)),
    rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow:
    0 18px 45px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 0 28px rgba(59, 130, 246, 0.08);
}

.with-you::before {
  content: "";
  position: absolute;
  left: -70px;
  bottom: -70px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, rgba(124, 58, 237, 0.2) 0%, rgba(124, 58, 237, 0) 72%);
  pointer-events: none;
  filter: blur(8px);
}

.with-you::after {
  content: "";
  position: absolute;
  right: -80px;
  top: -90px;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(59, 130, 246, 0.18) 0%, rgba(59, 130, 246, 0) 72%);
  pointer-events: none;
  filter: blur(8px);
}

.with-you-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 28px;
  align-items: center;
}

.with-you-text h3 {
  margin: 14px 0 12px;
  font-size: clamp(1.6rem, 2.1vw, 2.15rem);
  line-height: 1.45;
  color: #ffffff;
  font-weight: 900;
  letter-spacing: -0.02em;
  text-shadow: 0 2px 18px rgba(59, 130, 246, 0.12);
}

.with-you-text p {
  margin: 0;
  font-size: 1rem;
  line-height: 2;
  color: rgba(255, 255, 255, 0.78);
  max-width: 60ch;
}

.section-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 14px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.05));
  border: 1px solid rgba(96, 165, 250, 0.22);
  color: #dbeafe;
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.01em;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 0 18px rgba(59, 130, 246, 0.08);
}

.with-you-points {
  display: grid;
  gap: 14px;
}

.with-you-points .point {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 20px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.045));
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 10px 24px rgba(2, 8, 23, 0.14);
  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease,
    box-shadow 0.28s ease;
}

.with-you-points .point::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(59, 130, 246, 0.08), rgba(124, 58, 237, 0.06));
  opacity: 0;
  transition: opacity 0.28s ease;
  pointer-events: none;
}

.with-you-points .point:hover {
  transform: translateY(-4px);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.06));
  border-color: rgba(96, 165, 250, 0.34);
  box-shadow:
    0 16px 36px rgba(15, 23, 42, 0.24),
    0 0 22px rgba(59, 130, 246, 0.08);
}

.with-you-points .point:hover::before {
  opacity: 1;
}

.with-you-points .point i {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  color: #ffffff;
  font-size: 1.08rem;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.95), rgba(124, 58, 237, 0.95));
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow:
    0 12px 26px rgba(59, 130, 246, 0.22),
    0 0 18px rgba(124, 58, 237, 0.14);
}

.with-you-points .point strong {
  display: block;
  margin-bottom: 4px;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.5;
}

.with-you-points .point span {
  display: block;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.94rem;
  line-height: 1.8;
}

/* Optional subtle divider if needed below section */
.with-you + section {
  margin-top: 12px;
}

/* Responsive */
@media (max-width: 992px) {
  .with-you {
    padding: 24px;
    border-radius: 22px;
  }

  .with-you-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .with-you-text p {
    max-width: 100%;
  }
}

@media (max-width: 640px) {
  .with-you {
    margin: 24px 0 30px;
    padding: 18px;
    border-radius: 20px;
  }

  .with-you-inner {
    gap: 18px;
  }

  .with-you-text h3 {
    margin-top: 10px;
    font-size: 1.3rem;
    line-height: 1.75;
  }

  .with-you-text p {
    font-size: 0.95rem;
    line-height: 1.95;
  }

  .section-badge {
    font-size: 0.8rem;
    padding: 7px 12px;
    min-height: 34px;
  }

  .with-you-points .point {
    align-items: flex-start;
    padding: 14px;
    border-radius: 16px;
  }

  .with-you-points .point i {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    font-size: 1rem;
  }

  .with-you-points .point strong {
    font-size: 0.95rem;
  }

  .with-you-points .point span {
    font-size: 0.9rem;
    line-height: 1.9;
  }
}


/* ===============================
   With You — Compact Desktop Tune
   (adds a tighter, more premium desktop look)
   =============================== */
@media (min-width: 993px) {
  .with-you{
    margin: 22px 0 28px;
    padding: 22px 24px;
    border-radius: 22px;
    box-shadow:
      0 14px 34px rgba(0,0,0,.20),
      inset 0 1px 0 rgba(255,255,255,.05);
  }

  .with-you::before{
    width: 200px;
    height: 200px;
    left: -70px;
    bottom: -80px;
    opacity: .75;
    filter: blur(10px);
  }
  .with-you::after{
    width: 230px;
    height: 230px;
    right: -90px;
    top: -95px;
    opacity: .7;
    filter: blur(10px);
  }

  .with-you-inner{
    grid-template-columns: 1.25fr 0.9fr; /* متن کمی عریض‌تر، کارت‌ها جمع‌تر */
    gap: 18px;
    align-items: center;
  }

  .section-badge{
    min-height: 32px;
    padding: 6px 12px;
    font-size: .8rem;
    border-radius: 999px;
  }

  .with-you-text h3{
    margin: 10px 0 8px;
    font-size: clamp(1.35rem, 1.5vw, 1.75rem);
    line-height: 1.35;
    letter-spacing: -0.02em;
  }

  .with-you-text p{
    font-size: .96rem;
    line-height: 1.85;
    max-width: 52ch; /* کوتاه‌تر و خوش‌فرم‌تر */
  }

  .with-you-points{
    gap: 10px;
  }

  .with-you-points .point{
    padding: 12px 14px;
    border-radius: 16px;
    gap: 12px;
  }

  .with-you-points .point:hover{
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(2,8,23,.22);
  }

  .with-you-points .point i{
    width: 44px;
    height: 44px;
    border-radius: 14px;
    font-size: 1rem;
    box-shadow:
      0 10px 20px rgba(59,130,246,.20),
      0 0 16px rgba(124,58,237,.12);
  }

  .with-you-points .point strong{
    margin-bottom: 2px;
    font-size: .95rem;
    line-height: 1.35;
  }

  .with-you-points .point span{
    font-size: .9rem;
    line-height: 1.65;
  }
}
