.banner-part {
    padding: 175px 0px 95px;
    background: var(--gradient)
}

.banner-content {
    margin-right: 30px
}

.banner-content h1 {
    font-size: 70px;
    font-weight: 900;
    line-height: 75px;
    margin-bottom: 20px;
    letter-spacing: -1.5px;
    text-transform: capitalize;
    color: var(--white)
}

.banner-content p {
    color: var(--white);
    margin-bottom: 45px;
    margin-right: 50px
}

.banner-image img {
    width: 100%;
    animation: miron 5s linear infinite
}

@keyframes miron {
    0% {
        transform: translateY(20px) rotate(5deg)
    }

    50% {
        transform: translateY(-20px) rotate(0deg)
    }

    100% {
        transform: translateY(20px) rotate(5deg)
    }
}

.banner-tabs {
    margin: 0px 0px 25px;
    background: transparent
}

.banner-tabs .tab-link {
    color: var(--primary-light)
}

.banner-tabs .tab-link:hover {
    color: var(--white)
}

.banner-form {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start
}

.banner-form button {
    height: 60px;
    font-size: 16px;
    font-weight: 500;
    padding: 10px 40px;
    margin-left: 15px;
    color: var(--white);
    background: var(--primary);
    box-shadow: var(--primary-bshadow);
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all linear .3s;
    -webkit-transition: all linear .3s;
    -moz-transition: all linear .3s;
    -ms-transition: all linear .3s;
    -o-transition: all linear .3s
}

.banner-form button:hover {
    background: var(--primary-deep)
}

.banner-form button i {
    margin-right: 8px
}

.banner-input-group {
    width: 100%
}

.banner-input {
    width: 100%;
    padding: 0px 22px;
    margin-bottom: 15px;
    background: var(--white);
    box-shadow: var(--primary-bshadow);
    display: flex;
    align-items: center;
    justify-content: center
}

.banner-input input {
    width: 100%;
    height: 60px
}

.banner-input .nice-select {
    font-weight: 500;
    padding: 0px 15px 0px 20px;
    border-left: 1px solid var(--border)
}

.banner-input .nice-select .list {
    height: 160px;
    overflow: inherit;
    overflow-y: scroll
}

.banner-suggest {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.banner-suggest a h5 {
    font-size: 18px;
    font-weight: 600;
    color: var(--white);
    transition: all linear .3s;
    -webkit-transition: all linear .3s;
    -moz-transition: all linear .3s;
    -ms-transition: all linear .3s;
    -o-transition: all linear .3s
}

.banner-suggest a h5 span {
    font-size: 16px;
    font-weight: 400
}

.banner-suggest a h5:hover {
    color: var(--primary-light)
}

@media (max-width: 991px) {
    .banner-content {
        text-align: center;
        margin-right: 0px
    }

    .banner-content p {
        margin-right: 0px
    }

    .banner-form {
        flex-direction: column;
        align-items: center
    }

    .banner-form button {
        margin-left: 0px;
        margin-top: 25px
    }

    .banner-image {
        display: none
    }
}

@media (max-width: 480px) {
    .banner-suggest a h5 span {
        display: block
    }
}

@media (max-width: 575px) {
    .banner-part {
        padding: 120px 0px 65px
    }

    .banner-content h1 {
        font-size: 38px;
        line-height: 48px
    }

    .banner-tabs {
        margin: 0px auto 25px
    }
}

@media (min-width: 576px) and (max-width: 991px) {
    .banner-part {
        padding: 135px 0px 80px
    }

    .banner-content h1 {
        font-size: 45px;
        line-height: 55px
    }

    .banner-tabs {
        margin: 0px auto 25px
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .banner-suggest {
        justify-content: space-evenly
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .banner-content h1 {
        font-size: 55px;
        line-height: 65px
    }
}

.feature-part {
    /* padding: 15% 0px 10%; */
	 padding: 2% 0px 5%;
    background: var(--primary-chalk)
}

@media (max-width: 575px) {
    .feature-part {
        padding: 60px 0px 5px
    }
}

@media (min-width: 575px) and (max-width: 767px) {
    .feature-part {
        padding: 80px 0px 25px
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .feature-part {
        padding: 100px 0px 45px
    }
}
/* ================= CLOUD HERO (SCOPED) ================= */

.cloud-hero{
  --blue:#2aa7ff;
  --purple:#7c5cff;
  --pink:#ec4aa8;
  --dark:#0b1220;

  position:relative;
  padding:60px 8% 65px;
  overflow:hidden;
  background:
    radial-gradient(700px 300px at 15% 20%, rgba(124,92,255,.25), transparent 60%),
    radial-gradient(600px 280px at 75% 15%, rgba(42,167,255,.22), transparent 60%),
    radial-gradient(520px 260px at 50% 85%, rgba(236,74,168,.20), transparent 60%),
    linear-gradient(180deg,#f7f8ff 0%, #ffffff 70%);
}

/* glow blobs */
.cloud-hero::before{
  content:"";
  position:absolute;
  width:480px;
  height:480px;
  left:-160px;
  top:-200px;
  background:radial-gradient(circle, rgba(124,92,255,.35), transparent 70%);
  filter:blur(80px);
}

.cloud-hero::after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  right:-140px;
  bottom:-180px;
  background:radial-gradient(circle, rgba(42,167,255,.35), transparent 70%);
  filter:blur(80px);
}

.cloud-hero .hero-grid{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:1.15fr 0.85fr;
  gap:60px;
  align-items:center;
  position:relative;
  z-index:1;
}

/* ================= LEFT ================= */

.cloud-hero .hero-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 18px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--purple),var(--blue));
  color:#fff;
  font-weight:600;
  font-size:13px;
  margin-bottom:18px;
}

.cloud-hero h1{
  font-size:52px;
  font-weight:800;
  line-height:1.08;
  margin-bottom:18px;
  color:var(--dark);
}

.cloud-hero h1 span{
  display:block;
  background:linear-gradient(135deg,var(--purple),var(--pink));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.cloud-hero p{
  font-size:16px;
  color:#5c647a;
  max-width:620px;
  margin-bottom:24px;
}

/* CTA */

.cloud-hero .hero-actions{
  display:flex;
  align-items:center;
  gap:22px;
}

.cloud-hero .hero-btn{
  position:relative;
  padding:16px 42px;
  border:none;
  border-radius:999px;
  background:linear-gradient(135deg,var(--purple),var(--blue),var(--pink));
  background-size:200% 200%;
  color:#fff;
  font-weight:800;
  font-size:15px;
  cursor:pointer;
  box-shadow:
    0 18px 40px rgba(124,92,255,.45),
    0 0 0 6px rgba(124,92,255,.12);
  animation:cloud-cta 4s ease infinite;
}

.cloud-hero .hero-btn::after{
  content:"";
  position:absolute;
  inset:-6px;
  border-radius:inherit;
  background:linear-gradient(135deg,var(--purple),var(--blue),var(--pink));
  filter:blur(18px);
  opacity:.45;
  z-index:-1;
}

@keyframes cloud-cta{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}

.cloud-hero .hero-metric{
  font-size:13px;
  color:#5c647a;
}

/* ================= RIGHT CARDS ================= */

.cloud-hero .hero-stack{
  display:grid;
  gap:16px;
}

.cloud-hero .stack{
  position:relative;
  padding:18px 20px;
  border-radius:18px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(10px);
  box-shadow:0 12px 28px rgba(11,18,32,.08);
  display:flex;
  align-items:center;
  gap:14px;
}

.cloud-hero .stack::before{
  content:"";
  position:absolute;
  inset:0;
  padding:1px;
  border-radius:18px;
  background:linear-gradient(135deg,var(--purple),var(--blue),var(--pink));
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
          mask-composite:exclude;
}

.cloud-hero .stack-icon{
  width:44px;
  height:44px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,var(--icon1),var(--icon2));
}

.cloud-hero .stack-icon svg{
  width:22px;
  height:22px;
  stroke:#fff;
}

.cloud-hero .hero-stack .stack:nth-child(1){ --icon1:var(--purple); --icon2:var(--blue); }
.cloud-hero .hero-stack .stack:nth-child(2){ --icon1:var(--blue); --icon2:var(--pink); }
.cloud-hero .hero-stack .stack:nth-child(3){ --icon1:var(--pink); --icon2:var(--purple); }
.cloud-hero .hero-stack .stack:nth-child(4){ --icon1:var(--purple); --icon2:var(--blue); }

.cloud-hero .stack strong{
  display:block;
  font-size:14px;
  font-weight:600;
}

.cloud-hero .stack div{
  font-size:13px;
  color:#5c647a;
}

/* ================= METRICS ================= */

.cloud-hero .hero-strip{
  max-width:1200px;
  margin:40px auto 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.cloud-hero .strip-item{
  position:relative;
  background:linear-gradient(135deg,#e9e6ff,#e6f3ff);
  border-radius:16px;
  padding:16px;
  text-align:center;
  box-shadow:0 12px 28px rgba(124,92,255,.22);
  color:#2b1f5c;
}

.cloud-hero .strip-item::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,var(--purple),var(--blue),var(--pink));
}

.cloud-hero .strip-item strong{
  display:block;
  font-size:18px;
  font-weight:800;
}

/* ================= RESPONSIVE ================= */

@media(max-width:900px){
  .cloud-hero .hero-grid{grid-template-columns:1fr}
  .cloud-hero .hero-strip{grid-template-columns:1fr 1fr}
}