:root {
  --steel-dark: #212531;
  --steel-blue: #3F77A5;
  --steel-accent: #7CB8E2;
  --steel-card-bg: linear-gradient(135deg, #243651 90%, #4f6e8e 100%);
  --steel-card-shadow: 0 8px 32px rgba(60, 136, 202, 0.15), 0 1.5px 10px rgba(36,54,81,0.10);
  --steel-gradient: linear-gradient(90deg, #7CB8E2 5%, #4f6e8e 95%);
}

body {
  background: var(--steel-dark);
  color: #f3f5f7;
  font-family: 'Manrope', Arial, sans-serif;
}


.steel-section-title {
  font-family: 'Manrope', Arial, sans-serif;
  font-size: 2.8rem;
  font-weight: 800;
  color: var(--steel-accent);
  margin-bottom: 1.6rem;
  letter-spacing: 0.02em;
  position: relative;
  background: var(--steel-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.steel-section-title::after {
  content: "";
  display: block;
  width: 54px;
  height: 3px;
  border-radius: 2px;
  background: var(--steel-accent);
  margin: 1.1rem 0 0 0;
}

.steel-lead {
  color: var(--steel-blue);
  background: linear-gradient(90deg, rgba(124,184,226,0.09), transparent 85%);
  border-left: 4px solid var(--steel-accent);
  font-size: 1.23rem;
  font-weight: 600;
  line-height: 1.7;
  padding: 1.2rem 2rem 1.2rem 1.3rem;
  margin-bottom: 2.5rem;
  border-radius: 1.1rem;
  box-shadow: 0 2px 12px rgba(63,119,165,0.07);
  transition: background .18s;
}
.steel-lead strong, .steel-lead b {
  color: var(--steel-dark);
  font-weight: 700;
}

.steel-card-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
  justify-content: center;
  margin-bottom: 1rem;
}
.steel-card {
  background: var(--steel-card-bg);
  border-radius: 2.1rem;
  box-shadow: var(--steel-card-shadow);
  min-width: 280px;
  flex: 1 1 310px;
  max-width: 370px;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 2.3rem 2rem 1.7rem 2rem;
  margin-bottom: 0;
  position: relative;
  overflow: hidden;
  transition: box-shadow .19s cubic-bezier(.55,.14,.41,1.01), transform .13s;
}
.steel-card:hover {
  box-shadow: 0 12px 36px rgba(124,184,226,0.25), 0 6px 36px rgba(63,119,165,0.17);
  transform: translateY(-8px) scale(1.035);
}
.steel-card .steel-icon {
  font-size: 2.7rem;
  color: var(--steel-accent);
  background: rgba(124,184,226,0.07);
  border-radius: 1.3rem;
  padding: 0.65rem 1.2rem;
  margin-bottom: 1.3rem;
  box-shadow: 0 2px 16px rgba(124,184,226,0.09);
  transition: color .19s, background .19s;
}
.steel-card:hover .steel-icon {
  color: #fff;
  background: var(--steel-accent);
}
.steel-card-title {
  font-weight: 700;
  color: #f9fbfc;
  font-size: 1.24rem;
  margin-bottom: 0.75rem;
  letter-spacing: 0.01em;
}
.steel-card-text {
  color: #dae7f4;
  font-size: 1.09rem;
  line-height: 1.68;
  opacity: 0.96;
}
.steel-card::before {

  content: '';
  position: absolute;
  right: -65px;
  bottom: -75px;
  width: 190px;
  height: 190px;
  background: rgba(124,184,226,0.10);
  border-radius: 50%;
  z-index: 0;
}
.steel-card > * { position: relative; z-index: 1; }

.steel-img {
  max-width: 100%;
  border-radius: 1.6rem;
  box-shadow: 0 2px 16px rgba(40,54,74,0.11);
}


@media (max-width: 991px) {
  .steel-section-title { font-size: 2.15rem; }
  .steel-card { min-width: 220px; max-width: 100%; }
}
@media (max-width: 600px) {
  .steel-card-row { flex-direction: column; gap: 1.5rem; }
  .steel-card { min-height: 0; }
}

/* Для hero блока с картинкой и текстом */
.steel-hero {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background: linear-gradient(135deg, #fafdff 60%, #f5faff 100%);
}
.steel-img-effect {
  border-radius: 2.2rem;
  box-shadow: 0 6px 32px rgba(85, 147, 185, 0.10), 0 1.5px 10px rgba(78, 155, 209,0.08);
  transition: box-shadow .23s, transform .2s;
}
.steel-img-effect:hover {
  box-shadow: 0 12px 48px rgba(85, 147, 185, 0.22), 0 4px 28px rgba(78, 155, 209,0.15);
  transform: scale(1.025) rotate(-2deg);
}

.steel-section-title {
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-size: 2.7rem;
  font-weight: 800;
  letter-spacing: -.01em;
  color: #569cd6;
  margin-bottom: 1rem;
  line-height: 1.18;
}
.text-highlight {
  background: linear-gradient(90deg, #b1e5fc 10%, #e3f8ff 100%);
  color: #1270a9;
  border-radius: .5rem;
  padding: 0 .5em;
  font-weight: 700;
  box-decoration-break: clone;
}
.steel-subtitle {
  color: #95cbe7;
  font-size: 1rem;
  letter-spacing: 0.18em;
  font-weight: 700;
  margin-bottom: .4em;
  opacity: 0.95;
}
.steel-lead {
  color: #4a6882;
  background: rgba(177,229,252,0.08);
  border-left: 3.5px solid #77bfe2;
  font-size: 1.13rem;
  font-weight: 500;
  line-height: 1.65;
  padding: .92rem 1.5rem .92rem 1.1rem;
  margin-bottom: 1.1rem;
  border-radius: 1.1rem;
  box-shadow: 0 2px 14px rgba(63,119,165,0.05);
}

.steel-cta-link {
  color: #1270a9;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 2px solid #b1e5fc;
  transition: color .17s, border-color .2s;
  font-size: 1.13rem;
  margin-top: 1rem;
  display: inline-block;
}
.steel-cta-link:hover {
  color: #1ba5e1;
  border-color: #95cbe7;
}

.steel-footer {
  background: linear-gradient(135deg, #264a5d 70%, #213745 100%);
  color: #cde7fa;
  font-family: 'Manrope', Arial, sans-serif;
  font-size: 1.07rem;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  border-top: 2px solid #4680a7;
}
.footer-line {
  height: 2px;
  width: 100%;
  background: linear-gradient(90deg, #4680a7 30%, #284359 100%);
  margin-bottom: 1.5rem;
  opacity: 0.9;
  border-radius: 1px;
}
.footer-title {
  font-size: 1.18rem;
  color: #96d3fa;
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-weight: 700;
  margin-bottom: .9rem;
  letter-spacing: .01em;
}
.footer-legal b {
  color: #7ec7f9;
  font-weight: 700;
}
.footer-legal {
  font-size: 1.03rem;
  line-height: 1.55;
  margin-bottom: .6rem;
  color: #d2e6f4;
}
.footer-copy {
  font-size: 1rem;
  color: #7ec7f9;
  font-weight: 600;
  letter-spacing: .01em;
}
.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-links li {
  margin-bottom: .35em;
}
.footer-links a {
  color: #98dafc;
  font-weight: 600;
  font-size: 1.09rem;
  text-decoration: none;
  border-bottom: 2px dotted #68b5e6;
  transition: color .17s, border .18s;
  padding-bottom: 2px;
}
.footer-links a:hover {
  color: #ffffff;
  border-bottom: 2px solid #68b5e6;
}
@media (max-width: 767px) {
  .steel-footer-info {
    margin-bottom: 2.3rem;
  }
  .footer-title { text-align: left !important; }
  .footer-links { text-align: left; }
}

.steel-header {
  background: linear-gradient(90deg, #223a49 80%, #33586d 100%);
  box-shadow: 0 2px 16px rgba(42,73,105,0.05);
  padding-top: .5rem;
  padding-bottom: .5rem;
}
.steel-header .navbar {
  background: none !important;
  padding: 0;
  min-height: 64px;
}
.steel-header .navbar-brand {
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  color: #e5f6ff !important;
  text-shadow: 0 2px 6px rgba(34,58,73,.03);
  letter-spacing: .01em;
  gap: 0.85rem;
}
.steel-header .navbar-caption {
  color: #e5f6ff;
  font-size: 1.17rem;
  font-weight: 700;
  margin-left: .45rem;
}
.steel-header .navbar-nav .nav-link {
  color: #c6e2f8 !important;
  font-weight: 600;
  font-size: 1.08rem;
  padding: .6rem 1.1rem;
  border-radius: 9px;
  transition: background .19s, color .18s;
}
.steel-header .navbar-nav .nav-link:hover,
.steel-header .navbar-nav .nav-link.active {
  background: #30577d;
  color: #fff !important;
}
.steel-btn {
  background: linear-gradient(90deg, #42b0e6 50%, #2073b5 100%);
  color: #fff !important;
  font-weight: 700;
  border: none;
  border-radius: 18px;
  padding: .6em 1.45em;
  box-shadow: 0 4px 18px rgba(66,176,230,0.09);
  letter-spacing: .02em;
  font-size: 1.07rem;
  transition: background .18s, box-shadow .16s, color .18s;
}
.steel-btn:hover {
  background: linear-gradient(90deg, #2073b5 10%, #42b0e6 90%);
  color: #e5f6ff !important;
  box-shadow: 0 6px 20px rgba(66,176,230,0.18);
}

@media (max-width: 991px) {
  .steel-header .navbar-nav {
    background: #223a49;
    border-radius: 1.25rem;
    padding: 1.25rem 1.2rem .8rem 1.2rem;
    margin-top: .6rem;
    box-shadow: 0 6px 22px rgba(42,73,105,0.09);
  }
  .steel-btn {
    margin-top: 1rem;
    width: 100%;
  }
}



.steel-section-title {
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-size: 2.7rem;
  font-weight: 800;
  color: #5a93b7;
  line-height: 1.16;
  margin-bottom: 0.5rem;
  position: relative;
  z-index: 1;
}

.text-highlight {
  background: linear-gradient(90deg, #c6eafd 65%, #e7f8ff 100%);
  border-radius: .45rem;
  padding: 0 .4em;
  color: #3386ae;
  font-weight: 800;
  box-decoration-break: clone;
  z-index: 2;
  /* не перекрывает текст! */
}

.steel-title-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  margin-bottom: 2rem;
}
.steel-section-title.text-highlight {
  font-size: 2.5rem;
  font-weight: 800;
  color: #3386ae;
  padding: 0 .4em;
  background: linear-gradient(90deg, #c6eafd 65%, #e7f8ff 100%);
  border-radius: .45rem;
  line-height: 1.1;
  display: inline-block;
  position: relative;
  z-index: 1;
}
.steel-section-subtitle {
  font-size: 2.3rem;
  font-weight: 400;
  color: #5a93b7;
  margin-top: .2em;
  line-height: 1.1;
  letter-spacing: .01em;
  z-index: 2;
}

.steel-underline {
  width: 90px;
  height: 5px;
  background: linear-gradient(90deg, #7fccec 10%, #e4f4ff 100%);
  border-radius: 6px;
  margin: 14px auto 0 auto;
}

/* Текстовые блоки */
.steel-lead {
  color: #6a829b;
  font-size: 1.23rem;
  line-height: 1.66;
  font-family: 'Manrope', Arial, sans-serif;
  margin-bottom: 1rem;
}

/* Кнопка */
.steel-btn {
  background: linear-gradient(90deg, #59afd3 0%, #73c8e0 100%);
  color: #fff;
  font-weight: 700;
  border-radius: 2em;
  padding: .8em 2.1em;
  text-decoration: none;
  font-family: 'Manrope', Arial, sans-serif;
  font-size: 1.1rem;
  box-shadow: 0 4px 18px 0 #8ccae6a1;
  transition: background .22s, box-shadow .18s, color .13s;
  border: none;
  display: inline-block;
}
.steel-btn:hover, .steel-btn:focus {
  background: linear-gradient(90deg, #3880b5 0%, #5ac6e6 100%);
  color: #fff;
  box-shadow: 0 8px 26px 0 #88b7d7b7;
  text-decoration: none;
}

.steel-achievements {
  background: #f7fbfd;
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.steel-ach-card {
  background: #fff;
  border-radius: 1.4rem;
  box-shadow: 0 4px 24px 0 rgba(136,187,215,0.13);
  padding: 2.2rem 1.5rem 1.6rem;
  transition: box-shadow .19s, transform .19s;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 340px;
}

.steel-ach-card:hover, .steel-ach-card:focus {
  box-shadow: 0 12px 36px 0 #bee7f9;
  transform: translateY(-6px) scale(1.03);
}

.steel-ach-icon {
  background: linear-gradient(135deg, #88b7d7 75%, #e0f4fb 100%);
  color: #3177a6;
  width: 64px; height: 64px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 1.5rem;
  font-size: 2.3rem;
  margin-bottom: 1.2rem;
  box-shadow: 0 2px 14px 0 #c8e2f4;
}

.steel-ach-title {
  font-weight: 800;
  font-size: 1.23rem;
  color: #3177a6;
  margin-bottom: 1rem;
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
}

.steel-ach-card p {
  color: #51728c;
  font-size: 1.03rem;
  line-height: 1.55;
  margin-bottom: 0;
}

/* Базовые стили секции */
.steel-section-title {
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-size: 2.3rem;
  font-weight: 800;
  color: #3783ad;
  letter-spacing: -1px;
  margin-bottom: 0.5em;
}

.steel-lead {
  color: #5a93b7;
  font-size: 1.12rem;
  line-height: 1.6;
}

.text-highlight {
  background: linear-gradient(90deg, #c6eafd 65%, #e7f8ff 100%);
  border-radius: .45rem;
  padding: 0 .4em;
  color: #3386ae;
  font-weight: 700;
  box-decoration-break: clone;
}

.steel-team-card {
  background: #6fbfd9;
  border-radius: 1.5rem;
  box-shadow: 0 2px 24px rgba(66,155,180,0.07);
  padding: 2rem 1.6rem 1.4rem;
  transition: box-shadow .23s, transform .23s;
  min-height: 340px;
  display: flex;
  text-shadow: none;
  opacity: 1;
  flex-direction: column;
  align-items: center;
  justify-content: start;
}

.steel-team-card:hover {
  box-shadow: 0 8px 32px rgba(33,90,120,0.14);
  transform: translateY(-7px) scale(1.03);
}

.steel-avatar {
  font-size: 4.3rem;
  color: #85c8f8;
  margin-bottom: 0.7rem;
}

.steel-team-title {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.45em;
  color: #061119;
  line-height: 1.12;
}

.steel-role {
  display: block;
  font-size: 0.98rem;
  font-weight: 400;
  color: #193a4d;
  margin-top: 0.2em;
  letter-spacing: .05em;
}

.steel-faq {
  background: #f8fbfd;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.steel-faq .mbr-section-title {
  color: #3487b9;
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-size: 2.1rem;
  font-weight: 800;
  margin-bottom: 2.2rem;
  letter-spacing: 0.01em;
  text-align: center;
}

.steel-faq .panel-group .card {
  background: #fff;
  border-radius: 1.25rem;
  margin-bottom: 1.3rem;
  border: none;
  box-shadow: 0 2px 16px 0 rgba(52,135,185,0.07);
  transition: box-shadow 0.22s;
}

.steel-faq .card-header {
  border-radius: 1.25rem;
  background: none;
  padding: 0;
  border: none;
}

.steel-faq .panel-title {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 1.28rem;
  font-weight: 700;
  color: #3287b9;
  cursor: pointer;
  padding: 1.15rem 1.5rem;
  border-radius: 1.25rem;
  background: none;
  transition: background 0.13s;
}

.steel-faq .panel-title.collapsed:hover,
.steel-faq .panel-title:not(.collapsed) {
  background: linear-gradient(90deg, #d8f1ff 60%, #e7faff 100%);
}

.steel-faq .icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.5rem;
}

.steel-faq .icon-wrap .mbr-iconfont {
  font-size: 1.75rem;
  color: #41afe0;
  background: #e6f6ff;
  border-radius: 50%;
  padding: 0.35em;
  box-shadow: 0 2px 12px 0 rgba(82,192,232,0.13);
}

.steel-faq .icon-wrapper {
  margin-left: auto;
  display: flex;
  align-items: center;
}

.steel-faq .icon-wrapper .sign {
  font-size: 1.3rem;
  color: #8dd1fa;
  transition: transform .3s;
}
.steel-faq .panel-title[aria-expanded="true"] .sign,
.steel-faq .panel-title:not(.collapsed) .sign {
  transform: rotate(180deg);
}

.steel-faq .panel-title-edit {
  margin: 0;
  font-size: 1.18rem;
  font-weight: 700;
  color: #2477ad;
}

.steel-faq .panel-collapse .panel-body {
  padding: 0 1.6rem 1.2rem 4rem;
  background: none;
}

.steel-faq .panel-body p {
  color: #4779a7;
  font-size: 1.04rem;
  margin-bottom: 0;
  font-family: 'Manrope', Arial, sans-serif;
}

@media (max-width: 767px) {
  .steel-faq .panel-title {
    font-size: 1.08rem;
    padding: 1rem 1rem;
  }
  .steel-faq .panel-body {
    padding-left: 2.5rem !important;
    padding-right: 0.7rem !important;
  }
}
.steel-faq .panel-title .sign {
  transition: transform .23s;
}
.steel-faq .panel-title[aria-expanded="true"] .sign,
.steel-faq .panel-title:not(.collapsed) .sign {
  transform: rotate(180deg);
}

.steel-faq .panel-title:not(.collapsed) {
  box-shadow: 0 4px 24px 0 rgba(65,175,224,0.13);
}


.steel-goal .steel-section-title {
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-size: 2.3rem;
  font-weight: 800;
  color: #5a93b7;
  line-height: 1.15;
  margin-bottom: 0.8rem;
  letter-spacing: -0.02em;
}
.steel-goal .steel-subtitle {
  color: #41afe0;
  font-size: 1.08rem;
  font-weight: 700;
  letter-spacing: .13em;
}
.steel-goal .steel-lead {
  font-family: 'Manrope', Arial, sans-serif;
  color: #305a72;
  font-size: 1.13rem;
  margin-bottom: 1rem;
  line-height: 1.66;
}
.steel-goal .text-highlight {
  background: none;
  color: #2b8fc5;
  font-weight: 800;
  border-radius: 0;
  padding: 0;
}
@media (max-width: 600px) {
  .steel-goal .steel-section-title { font-size: 1.35rem; }
  .steel-goal .steel-lead { font-size: 1rem; }
}

.steel-contact .steel-section-title {
  font-family: 'Space Grotesk', 'Manrope', Arial, sans-serif;
  font-size: 2.2rem;
  font-weight: 800;
  color: #368abf;
  line-height: 1.15;
  letter-spacing: -0.01em;
}
.steel-contact .steel-subtitle {
  color: #41afe0;
  font-size: 1.08rem;
  font-weight: 700;
  letter-spacing: .13em;
}
.steel-contact-list {
  font-size: 1.22rem;
  color: #28678e;
  margin: 0;
  padding: 0;
}
.steel-contact-link {
  color: #1c81b3;
  font-weight: 700;
  text-decoration: underline dotted;
  transition: color 0.2s;
}
.steel-contact-link:hover {
  color: #1670a5;
  text-decoration: underline solid;
}
.steel-contact-address {
  color: #305a72;
  font-weight: 500;
  letter-spacing: 0.01em;
}
.steel-map-wrapper {
  margin-top: 2.5rem;
  border-radius: 1.3rem;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(58, 128, 196, 0.08);
}
@media (max-width: 600px) {
  .steel-contact .steel-section-title { font-size: 1.19rem; }
  .steel-contact-list { font-size: 1.02rem; }
  .steel-map-wrapper { margin-top: 1.2rem; }
}

.steel-form-section {
  background: #fafdff;
  border-radius: 1.4rem;
  box-shadow: 0 8px 32px rgba(50, 130, 200, 0.08);
  margin-bottom: 3rem;
}
.steel-form-control {
  width: 100%;
  padding: 0.82em 1em;
  border-radius: 0.9em;
  border: 1.5px solid #bbe5fd;
  font-size: 1.09rem;
  background: #fff;
  color: #265982;
  margin-bottom: 0;
  transition: border-color .23s, box-shadow .23s;
  font-family: 'Manrope', 'Space Grotesk', Arial, sans-serif;
}
.steel-form-control:focus {
  border-color: #52a9e1;
  box-shadow: 0 0 0 2px #c6eafd55;
  background: #f6fcff;
  outline: none;
}
.steel-form label {
  font-weight: 600;
  color: #4b86a2;
  margin-bottom: .4em;
  display: block;
}
.steel-btn {
  background: linear-gradient(90deg, #52a9e1 50%, #368abf 100%);
  color: #fff !important;
  font-weight: 700;
  border: none;
  border-radius: 1em;
  padding: 0.7em 2.1em;
  font-size: 1.13rem;
  transition: background .17s, box-shadow .19s;
  box-shadow: 0 4px 16px rgba(50, 138, 191, 0.10);
  letter-spacing: .03em;
}
.steel-btn:hover, .steel-btn:focus {
  background: linear-gradient(90deg, #368abf 40%, #2977a4 100%);
  color: #fff;
  box-shadow: 0 4px 22px rgba(50, 138, 191, 0.18);
}

@media (max-width: 600px) {
  .steel-form-section { padding: 2rem 0.6rem; }
  .steel-section-title { font-size: 1.25rem; }
  .steel-form-control { font-size: .98rem; }
  .steel-btn { font-size: 1.02rem; }
}
