.wgt-geo-security {
  --gap-2xl-42: 42px;

  padding-top: var(--gap-section-120);
  margin-bottom: var(--gap-section-120);
}

.wgt-geo-security .home-inner {
  display: flex;
  flex-direction: column;
  gap: var(--gap-2xl-42);
  align-items: center;
}

.wgt-geo-security .home-section-head {
  align-items: center;
  width: 100%;
  gap: var(--gap-md-12);
}

.wgt-geo-security .home-section-text {
  gap: var(--gap-md-12);
  align-items: center;
}

.wgt-geo-security .home-tag {
  background: var(--background-primary-light);
  border-color: var(--primary-color-05);
}

/* Section title: 24px → 38px (375→1920) */
.wgt-geo-security .geo-security-title,
.wgt-geo-security .geo-security-title :is(h1, h2, h3, h4, h5, h6, p) {
  margin: 0 auto;
  color: var(--text-title);
  font-size: clamp(1.5rem, 1.2876rem + 0.9061vw, 2.375rem);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-display);
  text-align: center;
}

/* Description: 14px → 16px (375→1920) */
.wgt-geo-security .geo-security-description,
.wgt-geo-security .geo-security-description p {
  max-width: 446px;
  margin: 0 auto;
  color: var(--text-body);
  font-size: clamp(0.875rem, 0.8447rem + 0.1294vw, 1rem);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-body);
  text-align: center;
}

.geo-security-grid {
  display: flex;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  list-style: none;
  border: 1px solid var(--border-default-grey);
  border-radius: var(--radius-sm);
  background: var(--background-gray);
}

.geo-security-card {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: var(--gap-lg-24);
  align-items: flex-start;
  min-width: 0;
  padding: var(--padding-lg-24) var(--padding-lg-20);
}

.geo-security-card + .geo-security-card {
  border-left: 1px solid var(--border-default-grey);
}

.geo-security-card-image {
  display: block;
  width: 100%;
  max-width: 360px;
  height: auto;
}

.geo-security-card-text {
  display: flex;
  flex-direction: column;
  gap: var(--gap-sm-8);
  width: 100%;
}

/* Card title: 18px → 24px (375→1920) */
.geo-security-card-title {
  margin: 0;
  color: var(--text-title);
  font-size: clamp(1.125rem, 1.034rem + 0.3883vw, 1.5rem);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-heading);
}

/* Card description: 14px → 16px (375→1920) */
.geo-security-card-description,
.geo-security-card-description p {
  margin: 0;
  color: var(--text-body);
  font-size: clamp(0.875rem, 0.8447rem + 0.1294vw, 1rem);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-body);
}

@media (max-width: 768px) {
  .wgt-geo-security {
    padding: var(--padding-4xl-80) var(--padding-md-15);
    padding-bottom: 0;
    margin-bottom: var(--padding-4xl-80);
  }

  .wgt-geo-security .home-inner {
    gap: var(--gap-xl-32);
    align-items: stretch;
  }

  .geo-security-grid {
    flex-direction: column;
    gap: var(--padding-lg-20);
    overflow: visible;
    border: 0;
    background: transparent;
  }

  .geo-security-card {
    flex: none;
    width: 100%;
    min-height: auto;
    padding: var(--padding-md-15);
    overflow: visible;
    border: 1px solid var(--border-default-grey);
    border-radius: var(--radius-sm);
    background: var(--background-gray);
  }

  .geo-security-card + .geo-security-card {
    border-left: 0;
  }

  .geo-security-card-image {
    max-width: none;
  }

  .geo-security-card-description,
  .geo-security-card-description p {
    line-height: var(--line-height-caption);
  }
}
