/* Start custom CSS for html, class: .elementor-element-6f82f32 */.jp-about-modern{
  max-width:1280px;
  margin:0 auto;
  padding:90px 28px;
  color:#07111f;
}

/* HERO */

.jp-about-hero{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:80px;
  align-items:center;
}

.jp-eyebrow{
  display:inline-flex;

  margin-bottom:18px;

  font-size:12px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;

  color:#0f766e;
}

.jp-about-copy{
  max-width:920px;
}

.jp-about-copy h2{
  max-width:980px;

  margin:0 0 30px;

  font-size:clamp(40px,5vw,82px);

  line-height:1.02;

  letter-spacing:-4px;

  font-weight:900;

  color:#06101f;
}

.jp-about-copy p{
  max-width:760px;

  margin:0;

  font-size:19px;

  line-height:1.85;

  color:#526174;
}

/* BUTTONS */

.jp-about-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;

  margin-top:38px;
}

.jp-btn-primary,
.jp-btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:56px;

  padding:0 26px;

  border-radius:999px;

  text-decoration:none;

  font-size:15px;
  font-weight:800;

  transition:.18s ease;
}

.jp-btn-primary{
  background:#07111f;
  color:#fff;

  box-shadow:
  0 18px 40px rgba(7,17,31,.18);
}

.jp-btn-secondary{
  background:#fff;
  color:#07111f;

  border:1px solid #dbe2ea;
}

.jp-btn-primary:hover,
.jp-btn-secondary:hover{
  transform:translateY(-2px);
}

/* HERO IMAGE */

.jp-about-image{
  position:relative;
}

.jp-about-image::before{
  content:"";

  position:absolute;

  inset:-18px;

  border-radius:38px;

  background:
  linear-gradient(
  135deg,
  rgba(15,118,110,.12),
  rgba(7,17,31,.05)
  );

  z-index:-1;
}

.jp-about-image img{
  width:100%;
  height:620px;

  object-fit:cover;

  border-radius:34px;

  display:block;

  box-shadow:
  0 30px 70px rgba(15,23,42,.14);
}

/* STATS */

.jp-about-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:20px;

  margin:70px 0 100px;
}

.jp-stat-card{
  padding:34px;

  border-radius:28px;

  background:#fff;

  border:1px solid #e5eaf1;

  box-shadow:
  0 18px 40px rgba(15,23,42,.05);
}

.jp-stat-card strong{
  display:block;

  margin-bottom:10px;

  font-size:42px;
  line-height:1;

  color:#07111f;
}

.jp-stat-card span{
  font-size:15px;
  color:#5f6f89;
}

/* SECTION HEAD */

.jp-section-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:40px;

  margin-bottom:34px;
}

.jp-section-head span{
  font-size:12px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;

  color:#0f766e;
}

.jp-section-head h3{
  max-width:650px;

  margin:0;

  text-align:right;

  font-size:clamp(32px,4vw,56px);

  line-height:1;

  letter-spacing:-2px;

  color:#07111f;
}

/* PRODUCTS */

.jp-product-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:20px;
}

.jp-product-card{
  padding:36px;

  border-radius:30px;

  background:#fff;

  border:1px solid #e5eaf1;

  box-shadow:
  0 20px 45px rgba(15,23,42,.05);

  transition:.18s ease;
}

.jp-product-card:hover{
  transform:translateY(-4px);

  box-shadow:
  0 30px 60px rgba(15,23,42,.08);
}

.jp-card-number{
  margin-bottom:60px;

  font-size:13px;
  font-weight:900;

  color:#0f766e;
}

.jp-product-card h4{
  margin:0 0 14px;

  font-size:24px;

  line-height:1.2;

  font-weight:850;

  color:#07111f;
}

.jp-product-card p{
  margin:0;

  font-size:15px;

  line-height:1.8;

  color:#5f6f89;
}

/* BOTTOM */

.jp-about-bottom{
  display:grid;
  grid-template-columns:.95fr 1.05fr;

  gap:70px;

  align-items:center;

  margin-top:110px;
}

.jp-bottom-image img{
  width:100%;
  height:640px;

  object-fit:cover;

  border-radius:36px;

  display:block;

  box-shadow:
  0 30px 70px rgba(7,17,31,.14);
}

.jp-bottom-content h3{
  margin:0 0 26px;

  font-size:clamp(38px,4vw,64px);

  line-height:1;

  letter-spacing:-2px;

  color:#07111f;
}

.jp-bottom-content p{
  margin:0 0 34px;

  font-size:18px;

  line-height:1.9;

  color:#526174;
}

.jp-bottom-content ul{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:14px;

  padding:0;
  margin:0;

  list-style:none;
}

.jp-bottom-content li{
  padding:18px 20px;

  border-radius:18px;

  background:#fff;

  border:1px solid #e5eaf1;

  font-size:15px;
  font-weight:700;

  color:#07111f;

  box-shadow:
  0 14px 30px rgba(15,23,42,.04);
}

/* MOBILE */

@media(max-width:980px){

  .jp-about-hero,
  .jp-about-bottom{
    grid-template-columns:1fr;
  }

  .jp-product-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .jp-section-head{
    display:block;
  }

  .jp-section-head h3{
    margin-top:12px;
    text-align:left;
  }

  .jp-about-image{
    order:-1;
  }
}

@media(max-width:640px){

  .jp-about-modern{
    padding:60px 18px;
  }

  .jp-about-copy h2{
    font-size:48px;
    letter-spacing:-2px;
  }

  .jp-about-copy p{
    font-size:17px;
  }

  .jp-about-image img,
  .jp-bottom-image img{
    height:340px;
  }

  .jp-about-stats,
  .jp-product-grid,
  .jp-bottom-content ul{
    grid-template-columns:1fr;
  }

  .jp-product-card{
    padding:28px;
  }

  .jp-card-number{
    margin-bottom:30px;
  }

  .jp-bottom-content h3{
    font-size:42px;
  }
}/* End custom CSS */