.sty-deg-container {
  gap: var(--sp-5);
}

.sty-deg {
  background: var(--white);
  border-radius: var(--sp-base);
  border: 1px solid #e1e4e8;
  overflow: hidden;
}

.sty-deg .sty-icon-box {
  border-bottom: 2px solid var(--main-color);
}

.sty-deg .sty-content {
  margin: 0 var(--sp-4);
  align-items: center;
  text-align: center;
}

.sty-deg .sty-content .sty-desc,
.sty-deg .sty-card-benefit-box .sty-benefit-text {
  text-align: center;
}

.sty-deg .sty-title {
  color: var(--main-color);
  padding-top: var(--sp-2);
}

.sty-deg .sty-eng {
  color: var(--mix-color);
  letter-spacing: 1px;
}

.sty-deg .sty-content .sty-desc {
  font-size: var(--font-size-sm);
  border-top: 1px solid #e1e4e8;
  margin-top: var(--sp-2);
  padding-top: var(--sp-3);
}

.sty-deg .sty-card-benefit-box {
  padding: var(--sp-1) var(--sp-3);
  background: var(--mix-light);
  margin: 0 var(--sp-3) var(--sp-3);
  border-radius: var(--sp-2);
  font-size: var(--font-size-sm);
  color: var(--mix-dark);
}

.sty-benefit-label {
  display: flex;
  gap: var(--sp-2);
}

.sty-benefit-label .sg-icon,
.sty-benefit-label .icon-svg {
  width: 20px;
  height: 20px;
}

.sty-condition {
  margin-bottom: var(--sp-5);
  padding: var(--sp-5);
}

.sty-condition h2,
.sty-condition h3 {
  margin-bottom: var(--sp-5);
}
.sty-condition p {
  margin-bottom: var(--sp-base);
}

.sty-box-conditions-ok {
  border: 1px dashed var(--mix-color);
  background: var(--bg-body);
}

.sty-box-conditions-ok h3 {
  color: var(--h2-color);
}

.sty-box-conditions-not {
  border: 1px dashed #d32626;
  background: #fff7f7;
}

.sty-box-conditions-not h3 {
  color: #d32626;
}

.sty-box-conditions-low {
  border: 1px solid #ddd;
  background: var(--white);
}

.sty-pkg {
  align-items: center;
  gap: var(--sp-8);
}

.sty-pkg-card {
  background: var(--white);
  border-radius: 30px;
  padding: 30px 20px 20px;
  position: relative;
  border: 1px solid rgba(105, 56, 151, 0.1);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03);
  height: auto;
}

.sty-pkg-card .sty-content {
  gap: var(--sp-4);
}

.sty-pkg-card .sty-desc {
  display: flex;
  margin: 0;
  align-items: center;
  gap: var(--sp-2);
  text-align: right;
}

.sty-pkg-card .sty-desc .sg-icon,
.sty-pkg-card .sty-desc .icon-svg {
  width: 25px;
  height: 25px;
  color: var(--mix-color);
}

.sty-featured {
  border: 1px solid var(--mix-color);
  background: #f9fffc;
}

.sty-pkg-badge {
  position: absolute;
  top: -20px;
  left: 37px;
  background: #fdf0ed;
  color: #d32626;
  padding: var(--sp-1) var(--sp-4);
  border-radius: 14px;
  box-shadow: 0 2px 15px #e595955e;
  border: 1px solid #f5b9b9;
  font-size: var(--font-size-sm);
}

.sty-pkg-tag {
  color: var(--main-dark);
  background: var(--main-light);
  font-size: var(--font-size-sm);
  padding: var(--sp-1) var(--sp-4);
  border-radius: 8px;
  display: inline-block;
  margin-bottom: 15px;
}

.sty-featured .sty-pkg-tag {
  color: var(--mix-dark);
  background: var(--mix-light);
}

.sty-pkg-title {
  font-size: 1.5rem;
  color: var(--main-color);
  margin: 0;
}

.sty-vip-text {
  color: var(--main-color);
}

.sty-pkg-subtitle {
  font-size: var(--font-size-sm);
  color: var(--text-light);
  margin-top: 5px;
  letter-spacing: 2px;
}

.sty-pkg-footer {
  text-align: center;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px dashed var(--main-light);
}

.sty-pkg-target {
  font-size: var(--font-size-sm);
  color: var(--text-light);
  margin-top: 5px;
}

@media (min-width: 768px) {
  .sty-pkg {
    gap: var(--sp-6);
  }
  .sty-featured {
    padding: 55px 45px;
  }
}
