/* ====================================
   HERO SECTION BASE
==================================== */
:root{
  --services-top: 255px;
  --services-right: 400px;

  --icon1-x: 45px;
  --icon2-x: 30px;
  --icon3-x: 15px;
  --icon4-x: 0px;
  --icon5-x: -15px;
  --icon6-x: -20px;
  --icon7-x: -25px;
}
.hero {
  min-height: 100vh;
  padding: 1.5rem 0 3.5rem;
  position: relative;
  color: #ffffff;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  /* Default desktop background */
}
 
 .hero::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 160px; /* ارتفاع کوتاه‌تر و طبیعی‌تر */
  background: linear-gradient(
    to top,
    rgba(255, 255, 255, 1)   0%,   /* کاملاً سفید - خیلی نازک */
    rgba(255, 255, 255, 0.85) 20%, /* سفید ملایم */
    rgba(255, 255, 255, 0.45) 45%, /* فید رو به محو شدن */
    rgba(255, 255, 255, 0.15) 70%, /* خیلی ملایم */
    rgba(255, 255, 255, 0.00) 100% /* کاملاً محو */
  );
  pointer-events: none;
  z-index: 1;
}

 
/* MOBILE BACKGROUND 


/* TABLET BACKGROUND */
 

 
/* XL SCREEN */
 

/* گرادیانت روی بک‌گراند */
.hero-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 20%, rgba(0, 188, 255, 0.35), transparent 55%),
              radial-gradient(circle at 80% 80%, rgba(0, 68, 255, 0.45), transparent 65%);
  pointer-events: none;
}

/* ====================================
   HEADER / NAVBAR
==================================== */

.hero-header {
  position: relative;
  z-index: 10;
  margin-bottom: 4rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* LOGO */
.hero-logo  {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  cursor: pointer;
}
.hero-logo img{
 /* Group */

position: absolute;
width: 130px;
height: 26.23px;
left: 88px;
/*top: calc(50% - 26.23px/2 - 337.38px);*/


}



/* NAV PILL */
.hero-nav-pill {
  background: rgba(255, 255, 255, 0.94);
  padding: 0.2rem 0.45rem;
  border-radius: 999px;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.18);


  
}

.hero-nav-pill .nav-link {
  padding: 0.55rem 1.4rem;
  border-radius: 999px;
  color: black;
  font-size: 0.92rem;
  font-weight: 700;
}

.hero-nav-pill .nav-link.active {
 /* color:black;*/
 
}

/* CALL + WHATSAPP BUTTONS */

.hero-btn-call:hover
{
   background: #1a2a6c;        /* رنگ بنفش فیگما */

}
.hero-btn-call {
   background: #FFFFFF;        /* رنگ بنفش فیگما */
  color: black;
  padding: 0.55rem 1.6rem;
  border-radius: 999px;
  font-size: 0.9rem;
  border: none;
  box-shadow: 0 18px 34px rgba(53, 31, 145, 0.55);
  font-weight: 700;

  /* Frame 1 */

box-sizing: border-box;

/* Auto layout */
 
padding: 8px 32px;
gap: 4px;

 

background: rgba(255, 255, 255, 0.9);
/* Dark Blue */
border: 0.2px solid #1A2A6C;
border-radius: 24px;

}

.hero-btn-call-icon {
  margin-right: 0.35rem;
}
.hero-btn-whatsapp:hover{
 background:#1a2a6c;

}

.hero-btn-whatsapp {
  font-weight: 700;
 
top: 72px;
left: 1038px;
background-color: #1A2A6C;
 
box-shadow: 4px 4px 9px 0px rgba(26, 42, 108, 0.3);
color: rgba(255, 255, 255, 1);

opacity: 1;
border-width: 0.2px;
border-radius: 24px;
padding-top: 8px;
padding-right: 32px;
padding-bottom: 8px;
padding-left: 32px;
gap: 4px;

}
/* WhatsApp icon inside button */
.hero-btn-whatsapp-icon {
  
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
}

.hero-btn-whatsapp-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor; /* آیکون همیشه مثل رنگ دکمه سفید می‌شود */
}

/* MOBILE MENU BUTTON */

.hero-btn-menu {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 0px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  background-color: transparent;
}

.hero-btn-menu span {
  width: 14px;
  height: 2px;
  border-radius: 999px;
  background: #ffffff;
}

/* ====================================
   HERO TEXT
==================================== */

.hero-content {
  position: relative;
  z-index: 5;
}



.hero-title {
  font-size:  48px !important;
  color: #22c4ff;
  font-weight: 800;
  margin-bottom: 1rem;
}

.hero-subtitle {
  max-width: 420px;
  font-size: 1rem;
  opacity: 0.95;
  margin-bottom: 1.8rem;
  line-height: 1.6;
}

/* CTA BUTTON */

.hero-btn-start {
  background: #341e92;
  color: #fff;
  padding: 0.75rem 2.1rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  box-shadow: 0 18px 38px rgba(14, 8, 85, 0.65);
  border: none;
  font-size: 1rem;
}

.hero-btn-start-arrow {
  font-size: 1.2rem;
}

/* ====================================
   SERVICES ICONS + FLOAT CARD
==================================== */

.hero-services-panel {
  position: absolute;
  inset: 0;
  pointer-events: none;
    z-index: 20;
}

.hero-services-list{
  position: absolute;
  /*top: var(--services-top);
  right: var(--services-right);*/
  transform: none;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  align-items: center;
  z-index: 21;
  pointer-events: auto;
}



/* ICON BUTTON */

.hero-service-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: transparent;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  /*box-shadow: 0 15px 30px rgba(0, 15, 55, 0.8);*/
  transition: 0.25s ease;
  cursor: pointer;

  /* keep X-offset stable via CSS var */
  transform: translateX(var(--icon-x, 0px));
}


.hero-service-icon:hover {
   /*background: rgba(10, 28, 88, 0.7);*/
  transform: translateX(var(--icon-x, 0px)) translateY(-4px);
  box-shadow: 0 20px 46px rgba(0, 195, 255, 0.6);
}

/* SVG inside icons */

.hero-service-icon svg {
  width: 70%;
  height: 70%;
}

.hero-service-icon-circle {
  stroke: #fff;
  stroke-width: 1.5;
  fill: none;
  opacity: 0.9;
}

.hero-service-icon-stroke {
  stroke: #fff;
  stroke-width: 1.7;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* SERVICE CARD */

.hero-service-card {
  opacity: 0;
   transition: opacity .2s ease, transform .2s ease;
  position: absolute;
  top: 0;
  right: 100%;
  margin-right: 100px; /* فاصله 100px از ستون آیکون‌ها */
  width: 200px;
  height: 219px;
  max-width: 80vw;
  background: #fff;
  color: #1a1b30;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 28px 60px rgba(0, 0, 0, 0.45);
  pointer-events: none;
  transition: 0.25s ease;
}

 .hero-services-list.show-card .hero-service-card{
  opacity: 1;
  pointer-events: auto;
}

/* CARD IMAGE */
 
.hero-service-card-image img {
  
 position: relative;
top: 8px;
left: 8px;
border-radius: 8px;
opacity: 1;


  width: 184px;
  height: 110px;
  object-fit: cover;
}

/* CARD BODY */

.hero-service-card-body {
  padding: 1rem 1.2rem 1.2rem;
}

.hero-service-card-brand {


  width: 59.999847412109375px;
height: 17.36077117919922px;
 
opacity: 1;


  display: flex;
  align-items: center;
  margin-bottom: 0.8rem;
}

.hero-service-card-brand-mark {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: #111541;
  color: #fff;
  font-weight: 700;
  font-size: 0.75rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 0.6rem;
}

.hero-service-card-brand-text {
  font-family: 'Avenir';
font-weight: 400;
font-style: Roman;
font-size: 10px;
line-height: 100%;
letter-spacing: 0px;

  line-height: 1.2;
  opacity: 0.8;
}

.hero-service-card-title {
  
top: 155px;
left: 8px;
color: #1A2A6C;

  font-size: 1rem;
  margin-bottom: 0.4rem;
  color: #1A2A6C;
font-family: 'Avenir';
font-weight: 800;
font-style: Heavy;
font-size: 12px;
line-height: 100%;
letter-spacing: 0px;

}

.hero-service-card-text {
 
top: 175px;
left: 8px;
 



  font-family: 'Avenir';
font-weight: 400;
font-style: Roman;
font-size: 10px;
line-height: 100%;
letter-spacing: 0px;
color: #1A2A6C99;



  line-height: 1.55;
}
