
.bold {
  font-weight: bold !important;
}
.color-white {
  color: #fff;
}
.color-black {
  color: #111;
}

.justify_center {
  justify-content: center;
}

.mt_0 {
  margin-top: 0px !important;
}

.mt_10 {
  margin-top: 10px !important;
}

.mt_20 {
  margin-top: 20px !important;
}

.mt_30 {
  margin-top: 30px !important;
}

.mt_50 {
  margin-top: 50px !important;
}
.mt_80 {
  margin-top: 80px !important;
}

.mb_0 {
  margin-bottom: 0px !important;
}

.mb_10px {
  margin-bottom: 10px !important;
}

.mb_15px {
  margin-bottom: 15px;
}

.mb_20px {
  margin-bottom: 20px !important;
}

.mb_30px {
  margin-bottom: 30px !important;
}

.pt-0 {
  padding-top: 0px !important;
}
.pt-20 {
  padding-top: 20px !important;
}

.mb_40px {
  margin-bottom: 40px !important;
}

.mr_0 {
  margin-right: 0 !important;
}
.mr_10 {
  margin-right: 10px !important;
}

.pl-pt-40px {
  padding: 40px 0px 0px 40px;
}
.pd_10 {
  padding: 10px !important;
}

.pr-40px {
  padding-right: 40px;
}
.pr-48px {
  padding-right: 48px;
}

.p-0 {
  padding: 0 !important;
}

.ps-40 {
  padding: 0px 40px !important;
}
ul.horizontal-menu {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

ul.horizontal-menu li {
  margin-right: 10% !important;
}

ul.horizontal-menu li:last-child {
  margin-right: 0;
}

.margin0 {
  padding: 0 !important;
  margin: 0 !important;
}

.font_green {
  color: #00984b !important;
}

.font-brand-navy {
  color: #193c96 !important;
}

.fs-25px {
  font-size: 25px !important;
}

.dp-flex {
  display: flex !important;
}

.bg-light-blue {
  background-color: #f0f5fa;
  padding: 1px 0;
}
.bg-light-blue2 {
  background-color: #f0f5fa !important;
  overflow: hidden;
  border-radius: 27px;
}

.background-price {
  background: linear-gradient(90deg, #004a99 0%, #00984b 99.52%) !important;
}

.boader-price {
  border: 2px solid transparent !important;
  border-radius: 6px !important;

  background: linear-gradient(#fff, #fff) padding-box,
    /* 내부 배경 */ linear-gradient(90deg, #004a99 0%, #00984b 100%) border-box; /* 그라데이션 보더 */
}
.w-40 {
  width: 40% !important;
}

.price-contents {
  width: 60% !important;

  align-self: center;
  justify-items: end;
  padding-top: 10px;
}
.price-text {
  font-weight: 400 !important;
  font-size: 20px !important;
  vertical-align: middle;
  color: var(--color-grey-46, #71767a);
}

.price-text-cancel {
  text-decoration: line-through;
}

.h-270px {
  height: 270px !important;
}

/* PC 기본: 가로 */
@media (min-width: 769px) {
  ul.horizontal-menu {
    flex-direction: row;
  }
  .price-padding {
    padding-right: 48px !important;
  }
}

/* 모바일: 세로 */
@media (max-width: 768px) {
  ul.horizontal-menu {
    flex-direction: column;
  }

  .price-padding {
    padding-right: 30px !important;
  }

  .tab_img {
    width: 22px;
    border-radius: 6px !important;
    vertical-align: baseline !important;
  }

    .sm-mt-100px {
    margin-top: 100px !important;
  }
}

.align-content-center {
  align-content: center !important;
}

.height-20px {
  height: 20px !important;
}

.justify_left {
  margin-left: auto !important;
  justify-content: flex-end !important;
}

.mt-20px {
  margin-top: 20px !important;
}
@media screen and (min-width: 980px) {
  .pricing__top-navigator .elementor-widget-button.current-tab .logo-title {
    display: inline-flex;
    align-items: center;
    position: relative;
  }

  .optional-products .product-list .elementor-row {
    gap: 30px;
  }

  .pricing__top-navigator
    .elementor-widget-button.current-tab
    .logo-title::after {
    content: "";
    position: absolute;
    left: 10px;
    bottom: 0px;
    /* 밑줄 위치를 31px 아래로 */
    width: 95%;
    /* 이미지 + 텍스트 전체 길이 */
    height: 3px;
    /* 밑줄 두께 */
    background-color: #202124;
  }

  .pricing__top-navigator .elementor-widget-button.current-tab .logo-title2 {
    display: inline-flex;
    align-items: center;
    position: relative;
  }

  .pricing__top-navigator
    .elementor-widget-button.current-tab
    .logo-title2::after {
    content: "";
    position: absolute;
    left: 10px;
    bottom: -13px;
    /* 밑줄 위치를 31px 아래로 */
    width: 95%;
    /* 이미지 + 텍스트 전체 길이 */
    height: 3px;
    /* 밑줄 두께 */
    background-color: #202124;
  }
}

.elementor-92878
  .elementor-element.elementor-element-8153ee2
  > .elementor-widget-container {
  margin: 0px 0px 0px 0px;
  padding: 8px 0px 0px 30px;
}

.package-font {
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.5px;
  text-align: center;
  vertical-align: middle;
  color: #666666;
}

.width-100 {
  width: 100% !important;
}

.sub-title {
  font-weight: 400 !important;
  font-size: 18px !important;
  line-height: 28px;
  letter-spacing: -0.5px;
}

.h-300 {
  height: 300px !important;
}

.img-box {
  overflow: hidden;
  height: 440px;
  margin-right: 30px !important;
}

@media (max-width: 979px) {
  .footer-padding {
    padding: 0 10px !important;
  }
  .optional-products .product-list .elementor-row {
    gap: 16px;
  }

  .img-box {
    overflow: hidden;
    height: 440px;
    margin-bottom: 30px !important;
    margin-right: 0 !important;
  }

  .package-font {
    font-weight: 400;
    font-size: 10px;
    line-height: 22px;
    letter-spacing: -0.5px;
    text-align: center;
    vertical-align: middle;
    color: #666666;
  }

  .black-text {
    color: #000000;
    font-family: Pretendard;
    font-weight: 700;
    font-style: Bold;
    font-size: 24px;
    line-height: 35px;
    letter-spacing: -0.5px;
    text-align: center;
    vertical-align: middle;
  }

  .gradient-text {
    background: linear-gradient(90deg, #093888 2%, #179144 98%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline;

    font-weight: 700;
    font-style: Bold;
    font-size: 24px;
    line-height: 64px;
    letter-spacing: -0.5px;
    text-align: center;
    vertical-align: middle;
  }
}

@media (min-width: 979px) {
  .mb_30px {
    margin-bottom: 30px !important;
  }

  .tab_img {
    width: 52px !important;
    height: 50px !important;
    border: 1px solid var(--color-black-10, #0000001a) !important;
    border-radius: 10px !important;
  }

  .tab_img2 {
    width: 70px !important;
    height: 70px !important;
    border: 1px solid var(--color-black-10, #0000001a) !important;
    border-radius: 10px !important;
  }

  .pt-5px {
    padding-top: 5px !important;
  }

  .pt-5px {
    padding-top: 5px !important;
  }
}

.tab_img2 {
  width: 70px !important;
  height: 70px !important;
  border: 1px solid var(--color-black-10, #0000001a) !important;
  border-radius: 10px !important;
}

.text_align_left {
  text-align: left !important;
}

/* toggle start */
.gradient-pill {
  position: relative;
  display: inline-block; /* span일 경우 필수 */
  border-radius: 100px;
  padding: 5px 18px;
  line-height: 28px;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  color: #00984b;
  background: transparent;
  letter-spacing: -0.5;
  vertical-align: middle;
}

.gradient-pill::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 2px;
  background: linear-gradient(
    285.31deg,
    rgba(23, 145, 68, 0.99) 58.56%,
    #093888 66.21%,
    rgba(9, 56, 136, 0.99) 72.76%
  );
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

/* toggle end */
.box-title {
  font-size: 22px;
  margin-top: 5px;
}
.box-sub {
  font-size: 16px;
  color: #4a5565;
  margin-top: 5px;
}

.expect-title {
  font-weight: 700;
  font-size: 32px !important;
  line-height: 64px;
  letter-spacing: -0.5px;
}

/* box - size */
.green-box {
  background: #f0fdf4;
  border-radius: 16px !important;
  font-weight: 500;
  font-size: 16.03px;
  line-height: 22.8px;
  letter-spacing: 0%;
  color: #179144;
  padding: 20px 20px;
  margin: 20px 0 0 0 !important;
}

.blue-box {
  background: #eff6ff;
  border-radius: 16px !important;
  font-weight: 500;
  font-size: 16.03px;
  line-height: 22.8px;
  letter-spacing: 0%;
  color: #093888;
  padding: 20px 20px;
  margin: 20px 0 0 0 !important;
}

.purple-box {
  background: #f2efff;
  border-radius: 16px !important;
  font-weight: 500;
  font-size: 16.03px;
  line-height: 22.8px;
  letter-spacing: 0%;
  color: #310988;
  padding: 20px 20px;
  margin: 20px 0 0 0 !important;
}

.photo-box {
  padding: 40px 0 0 40px !important;
  margin: 0px 0px 0px 0px;
  --e-column-margin-right: 0px;
  --e-column-margin-left: 98px;
  border-radius: 27px;
  overflow: hidden;
}

.lh-0 {
  line-height: 0 !important;
}
