/**
 * fullPage 1.4.5
 * https://github.com/alvarotrigo/fullPage.js
 * MIT licensed
 *
 * Copyright (C) 2013 alvarotrigo.com - A project by Alvaro Trigo
 */
html,
body {
  margin: 0;
  padding: 0;
}

/* Product inquiry form: scoped to the new product-detail template only. */
.sfc-product-detail__form .wpcf7-form { display: grid; gap: 18px; }
.sfc-product-detail__form .wpcf7-form > div { display: grid; gap: 18px; }
.sfc-product-detail__form .list { margin: 0; }
.sfc-product-detail__form .list h6 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}
.sfc-product-detail__form .list h6 span { color: #1ab1c0; }
.sfc-product-detail__form .list p,
.sfc-product-detail__form .wpcf7-form > p { margin: 0; }
.sfc-product-detail__form .list input:not([type="submit"]),
.sfc-product-detail__form .list textarea,
.sfc-product-detail__form .list select {
  display: block;
  width: 100%;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 0;
  background: #fff;
  color: var(--sfc-pd-ink);
  font: inherit;
  line-height: 1.45;
}
.sfc-product-detail__form .list textarea { resize: vertical; }
.sfc-product-detail__form .list input::placeholder,
.sfc-product-detail__form .list textarea::placeholder { color: #748185; opacity: 1; }
.sfc-product-detail__form .list input:focus,
.sfc-product-detail__form .list textarea:focus,
.sfc-product-detail__form .list select:focus { border-color: #1ab1c0; outline: 3px solid rgba(26,177,192,.22); outline-offset: 0; }
.sfc-product-detail__form #refer { display: none !important; }
.sfc-product-detail__form .wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 25px;
  border: 1px solid #0f94a5;
  border-radius: 0;
  background: #0f94a5;
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: background-color .2s ease, border-color .2s ease;
}
.sfc-product-detail__form .wpcf7-submit:hover { border-color: #1ab1c0; background: #1ab1c0; }
.sfc-product-detail__form .wpcf7-not-valid-tip { display: block; margin-top: 7px; color: #ffd1d1; font-size: 13px; }
.sfc-product-detail__form .wpcf7-response-output { margin: 0; color: #fff; }

/* News detail: all rules are limited to the existing single-news template. */
.single-news .newshow {
  max-width: none;
  padding: clamp(30px, 5vw, 70px);
  border: 1px solid #dce6e8;
  background: #fff;
  box-shadow: 0 18px 44px rgba(18,55,69,.07);
}
.single-news .newshow_title {
  max-width: 940px;
  margin: 0 auto;
  padding-bottom: clamp(24px, 3vw, 42px);
  border-bottom: 1px solid #dce6e8;
}
.single-news .newshow_title h1 {
  max-width: 980px;
  font-size: clamp(32px, 4vw, 58px);
  line-height: 1.12;
  letter-spacing: -.035em;
}
.single-news .newshow_title p {
  margin: 18px 0 0;
  color: #718286;
  font-size: 14px;
}
.single-news .newshow_main {
  max-width: 940px;
  margin: clamp(28px, 4vw, 54px) auto 0;
  color: #455c62;
  font-size: clamp(16px, 1.15vw, 18px);
  line-height: 1.82;
}
.single-news .newshow_main h2,
.single-news .newshow_main h3 { margin: 2em 0 .7em; color: #18383d; }
.single-news .newshow_main h2 { font-size: clamp(25px, 2.4vw, 38px); line-height: 1.2; }
.single-news .newshow_main h3 { font-size: clamp(19px, 1.7vw, 25px); line-height: 1.35; }
.single-news .newshow_main p { margin: 0 0 1.3em; }
.single-news .newshow_main ul,
.single-news .newshow_main ol { margin: 1.3em 0; padding-left: 1.35em; }
.single-news .newshow_main li + li { margin-top: .55em; }
.single-news .newshow_main a { color: #087987; text-decoration-thickness: 1px; text-underline-offset: .16em; }
.single-news .newshow_main blockquote {
  margin: 2em 0;
  padding: 18px 24px;
  border-left: 3px solid #087987;
  background: #f3f7f7;
  color: #18383d;
}
.single-news .newshow_main table { display: block; width: 100%; overflow-x: auto; margin: 28px 0; border-collapse: collapse; white-space: nowrap; }
.single-news .newshow_main th,
.single-news .newshow_main td { padding: 13px 15px; border: 1px solid #dce6e8; text-align: left; vertical-align: middle; }
.single-news .newshow_main th { background: #18383d; color: #fff; font-weight: 600; }
.single-news .newshow_main tr:nth-child(even) td { background: #f5f8f8; }
.single-news .newshow_main img { margin: 28px 0; background: #f3f7f7; }
.single-news .fanye { max-width: 940px; margin: clamp(38px, 5vw, 68px) auto 0; padding-top: 24px; border-top: 1px solid #dce6e8; }
.single-news .page_ctrl_box { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.single-news .page_ctrl_box a { color: #18383d; font-size: 14px; text-decoration: none; }
.single-news .page_ctrl_box a:hover { color: #087987; }
.single-news .newsinfo { margin-top: 0; padding: 26px; border: 1px solid #dce6e8; background: #fff; }
.single-news .newsinfotit { margin-bottom: 18px; color: #18383d; font-size: 20px; font-weight: 700; }

@media (max-width: 1199px) {
  .single-news .newsinfo { margin-top: 28px; }
}

@media (max-width: 600px) {
  .sfc-product-detail__form .wpcf7-submit { width: 100%; }
  .single-news .newshow { padding: 28px 20px; }
  .single-news .newshow_title h1 { font-size: 32px; }
  .single-news .newshow_main { font-size: 16px; }
  .single-news .newshow_main blockquote { padding: 16px 18px; }
  .single-news .page_ctrl_box { flex-wrap: wrap; }
}

/* Isolated product-detail template: does not alter legacy product sliders or sidebars. */
.sfc-product-detail {
  --sfc-pd-ink: #18383d;
  --sfc-pd-text: #53696d;
  --sfc-pd-line: #dbe5e6;
  --sfc-pd-soft: #f2f6f6;
  --sfc-pd-accent: #087987;
  padding: clamp(42px, 6vw, 88px) 0 clamp(68px, 9vw, 124px);
  background: #f5f8f8;
  color: var(--sfc-pd-text);
}

.sfc-product-detail *,
.sfc-product-detail *::before,
.sfc-product-detail *::after { box-sizing: border-box; }

.sfc-product-detail__container {
  width: min(75vw, 1920px);
  margin: 0 auto;
}

.sfc-product-detail__crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 0 0 26px;
  color: #718286;
  font-size: 13px;
}

.sfc-product-detail__crumbs a { color: inherit; text-decoration: none; }
.sfc-product-detail__crumbs a:hover { color: var(--sfc-pd-accent); }

.sfc-product-detail__article { min-width: 0; }

.sfc-product-detail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
  gap: clamp(32px, 3vw, 52px);
  align-items: start;
}

.sfc-product-detail__main { min-width: 0; }

.sfc-product-detail__sidebar {
  display: grid;
  gap: 32px;
  position: sticky;
  top: 112px;
}

.sfc-product-detail__side-section { min-width: 0; }

.sfc-product-detail__side-section h2 {
  margin: 0;
  color: var(--sfc-pd-ink);
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -.025em;
}

.sfc-product-detail__side-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 13px;
  border-bottom: 2px solid var(--sfc-pd-ink);
}

.sfc-product-detail__side-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.sfc-product-detail__side-card {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-width: 0;
  border: 1px solid var(--sfc-pd-line);
  background: #fff;
  color: var(--sfc-pd-ink);
  text-decoration: none;
  transition: border-color .2s ease, transform .2s ease;
}

.sfc-product-detail__side-card:hover {
  border-color: var(--sfc-pd-accent);
  transform: translateY(-2px);
}

.sfc-product-detail__side-card img {
  display: block;
  width: 86px;
  aspect-ratio: 1;
  object-fit: cover;
}

.sfc-product-detail__side-card span {
  min-width: 0;
  padding: 10px 20px 10px 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  overflow-wrap: anywhere;
}

.sfc-product-detail__latest-controls { display: flex; gap: 6px; }

.sfc-product-detail__latest-button {
  display: inline-grid;
  width: 30px;
  height: 30px;
  padding: 0;
  place-items: center;
  border: 1px solid var(--sfc-pd-line);
  background: #fff;
  color: var(--sfc-pd-ink);
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease;
}

.sfc-product-detail__latest-button:hover {
  background: var(--sfc-pd-accent);
  border-color: var(--sfc-pd-accent);
  color: #fff;
}

.sfc-product-detail__latest-swiper {
  height: 340px;
  margin-top: 14px;
}

.sfc-product-detail__latest-swiper .swiper-slide { height: auto; }

.sfc-product-detail__hero {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(24px, 3vw, 48px);
  align-items: stretch;
  padding: clamp(20px, 4vw, 56px);
  background: #fff;
  box-shadow: 0 20px 46px rgba(16, 50, 55, .07);
}

.sfc-product-detail__media {
  min-width: 0;
  padding: clamp(8px, 1vw, 16px);
  border: 1px solid var(--sfc-pd-line);
  background: #f9fbfb;
}

.sfc-product-detail__main-swiper { overflow: hidden; background: #fff; }

.sfc-product-detail__carousel-slide {
  display: flex;
  flex: 0 0 100%;
  align-items: center;
  justify-content: center;
  min-height: clamp(300px, 39vw, 510px);
  margin: 0;
}

.sfc-product-detail__carousel-slide img {
  display: block;
  width: 100%;
  max-height: clamp(300px, 36vw, 470px);
  object-fit: contain;
}

.sfc-product-detail__carousel-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 14px;
}

.sfc-product-detail__carousel-button {
  border: 1px solid var(--sfc-pd-line);
  border-radius: 0;
  background: #fff;
  cursor: pointer;
}

.sfc-product-detail__carousel-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  min-height: 38px;
  color: var(--sfc-pd-ink);
  font-size: 20px;
  line-height: 1;
}

.sfc-product-detail__carousel-button:hover,
.sfc-product-detail__carousel-button:focus-visible { border-color: var(--sfc-pd-accent); color: var(--sfc-pd-accent); }
.sfc-product-detail__carousel-status { min-width: 48px; color: var(--sfc-pd-text); font-size: 13px; text-align: center; }

.sfc-product-detail__thumb-swiper { margin-top: 12px; overflow: hidden; }

.sfc-product-detail__thumb-slide {
  overflow: hidden;
  border: 1px solid transparent;
  background: #fff;
  cursor: pointer;
  opacity: .56;
  transition: border-color .2s ease, opacity .2s ease;
}

.sfc-product-detail__thumb-slide.swiper-slide-thumb-active {
  border-color: var(--sfc-pd-accent);
  opacity: 1;
}

.sfc-product-detail__thumb-slide img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.sfc-product-detail__summary {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(4px, 1vw, 16px) 0;
}

.sfc-product-detail__eyebrow,
.sfc-product-detail__section-label {
  margin: 0 0 17px;
  color: var(--sfc-pd-accent);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.sfc-product-detail h1,
.sfc-product-detail h2,
.sfc-product-detail h3 { color: var(--sfc-pd-ink); }

.sfc-product-detail h1 {
  max-width: none;
  margin: 0;
  font-size: clamp(24px, 3.2vw, 40px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -.045em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.sfc-product-detail__intro {
  max-width: 58ch;
  margin: 25px 0 0;
  font-size: clamp(16px, 1.2vw, 19px);
  line-height: 1.78;
}

.sfc-product-detail__facts {
  display: grid;
  gap: 0;
  margin: 29px 0 0;
  border-top: 1px solid var(--sfc-pd-line);
}

.sfc-product-detail__facts div {
  display: grid;
  grid-template-columns: minmax(128px, .45fr) 1fr;
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid var(--sfc-pd-line);
}

.sfc-product-detail__facts dt { color: var(--sfc-pd-ink); font-weight: 600; }
.sfc-product-detail__facts dd { margin: 0; overflow-wrap: anywhere; }

.sfc-product-detail__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }

.sfc-product-detail__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 228px;
  min-height: 56px;
  padding: 14px 28px;
  border: 1px solid var(--sfc-pd-accent);
  background: var(--sfc-pd-accent);
  box-shadow: 0 10px 20px rgba(8, 121, 135, .18);
  color: #fff !important;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .01em;
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.sfc-product-detail__button--secondary { background: transparent; color: var(--sfc-pd-accent) !important; box-shadow: none; }
.sfc-product-detail__button:hover { background: #055d68; border-color: #055d68; box-shadow: 0 14px 26px rgba(8, 121, 135, .24); color: #fff !important; transform: translateY(-2px); }
.sfc-product-detail__button--secondary:hover { background: transparent; border-color: #055d68; color: #055d68 !important; box-shadow: none; }
.sfc-product-detail__button:focus-visible,
.sfc-product-detail__carousel-button:focus-visible { outline: 3px solid rgba(8, 121, 135, .3); outline-offset: 3px; }

.sfc-product-detail__content {
  margin-top: clamp(28px, 4vw, 54px);
  padding: clamp(28px, 5vw, 72px);
  background: #fff;
}

.sfc-product-detail__prose { max-width: none; font-size: clamp(16px, 1.15vw, 18px); line-height: 1.82; }
.sfc-product-detail__prose img { display: block; max-width: 100%; height: auto; margin: 28px 0; cursor: zoom-in; }
.sfc-product-detail__prose .sfc-product-source-images { margin: 32px 0; }
.sfc-product-detail__prose .sfc-product-source-images figure { margin: 0 0 28px; }
.sfc-product-detail__prose .sfc-product-source-images img { display: block; width: auto; max-width: 100%; height: auto; margin: 0; }
.sfc-product-detail__carousel-slide img { cursor: zoom-in; }
.sfc-product-detail__prose > *:first-child { margin-top: 0; }
.sfc-product-detail__prose h2 { margin: 2.45em 0 .7em; font-size: clamp(27px, 2.5vw, 42px); line-height: 1.15; letter-spacing: -.03em; }
.sfc-product-detail__prose h3 { margin: 1.8em 0 .55em; font-size: clamp(19px, 1.7vw, 25px); line-height: 1.3; }
.sfc-product-detail__prose p { margin: 0 0 1.25em; }
.sfc-product-detail__prose ul,
.sfc-product-detail__prose ol { margin: 1.25em 0; padding-left: 1.35em; }
.sfc-product-detail__prose li + li { margin-top: .6em; }

.sfc-product-detail__prose table {
  display: block;
  width: 100%;
  overflow-x: auto;
  margin: 28px 0;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.45;
  white-space: nowrap;
}

.sfc-product-detail__prose th,
.sfc-product-detail__prose td { padding: 14px 16px; border: 1px solid var(--sfc-pd-line); text-align: left; vertical-align: middle; }
.sfc-product-detail__prose th { background: var(--sfc-pd-ink); color: #fff; font-weight: 600; }
.sfc-product-detail__prose tr:nth-child(even) td { background: #f5f8f8; }

.sfc-product-detail__features { margin-top: 60px; }
.sfc-product-detail__features h2,
.sfc-product-detail__related h2 { margin: 0 0 26px; font-size: clamp(27px, 2.4vw, 40px); line-height: 1.15; letter-spacing: -.03em; }
.sfc-product-detail__feature-grid,
.sfc-product-detail__related-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.sfc-product-detail__feature { padding: 22px; border-top: 3px solid var(--sfc-pd-accent); background: var(--sfc-pd-soft); }
.sfc-product-detail__feature h3 { margin: 0 0 10px; font-size: 18px; }
.sfc-product-detail__feature p { margin: 0; line-height: 1.65; }

.sfc-product-detail__inquiry {
  display: grid;
  grid-template-columns: minmax(240px, .7fr) minmax(300px, 1.3fr);
  gap: clamp(28px, 5vw, 70px);
  align-items: start;
  margin-top: clamp(36px, 5vw, 64px);
  padding: clamp(28px, 5vw, 68px);
  background: var(--sfc-pd-ink);
  color: rgba(255, 255, 255, .78);
}

.sfc-product-detail__inquiry h2 { margin: 0 0 16px; color: #fff; font-size: clamp(29px, 3vw, 48px); line-height: 1.08; letter-spacing: -.035em; }
.sfc-product-detail__inquiry p { margin: 0; line-height: 1.7; }
.sfc-product-detail__form input,
.sfc-product-detail__form textarea,
.sfc-product-detail__form select { width: 100%; border: 1px solid rgba(255,255,255,.35); border-radius: 0; background: #fff; color: var(--sfc-pd-ink); }
.sfc-product-detail__form input[type="submit"] { width: auto; min-height: 48px; padding: 11px 22px; border: 0; background: var(--sfc-pd-accent); color: #fff; font-weight: 700; }

.sfc-product-detail__inquiry--bottom {
  margin-top: clamp(44px, 6vw, 82px);
}

/* The inquiry belongs to the product sidebar, so it uses a compact one-column form. */
.sfc-product-detail__sidebar .sfc-product-detail__inquiry {
  display: block;
  min-width: 0;
  margin: 0;
  padding: 28px 22px 30px;
}
.sfc-product-detail__sidebar .sfc-product-detail__inquiry-intro { margin-bottom: 24px; }
.sfc-product-detail__sidebar .sfc-product-detail__inquiry h2 {
  font-size: clamp(20px, 2vw, 28px);
  overflow-wrap: anywhere;
}
.sfc-product-detail__sidebar .sfc-product-detail__form,
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7,
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form {
  min-width: 0;
  width: 100%;
}
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form { gap: 14px; }
.sfc-product-detail__sidebar .sfc-product-detail__form input:not([type="submit"]),
.sfc-product-detail__sidebar .sfc-product-detail__form textarea,
.sfc-product-detail__sidebar .sfc-product-detail__form select {
  max-width: 100%;
}
.sfc-product-detail__sidebar .sfc-product-detail__form textarea {
  height: 96px;
  min-height: 96px;
  max-height: 120px;
}
.sfc-product-detail__sidebar .sfc-product-detail__form input[type="submit"] { width: 100%; }

.sfc-product-detail__related { margin-top: clamp(44px, 6vw, 82px); }
.sfc-product-detail__related-card { display: block; overflow: hidden; background: #fff; color: var(--sfc-pd-ink); text-decoration: none; }
.sfc-product-detail__related-card img { display: block; width: 100%; aspect-ratio: 1.25; object-fit: cover; transition: transform .3s ease; }
.sfc-product-detail__related-card span { display: block; padding: 18px; font-size: 16px; font-weight: 700; line-height: 1.35; }
.sfc-product-detail__related-card:hover img { transform: scale(1.04); }

@media (max-width: 1100px) {
  .sfc-product-detail__layout { grid-template-columns: 1fr; }
  .sfc-product-detail__sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sfc-product-detail__sidebar .sfc-product-detail__inquiry { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  .sfc-product-detail__hero,
  .sfc-product-detail__inquiry { grid-template-columns: 1fr; }
  .sfc-product-detail h1 { max-width: none; }
}

@media (max-width: 600px) {
  .sfc-product-detail { padding: 32px 0 66px; }
  .sfc-product-detail__container { width: calc(100% - 28px); }
  .sfc-product-detail__sidebar { grid-template-columns: 1fr; }
  .sfc-product-detail__hero { gap: 26px; padding: 14px; }
  .sfc-product-detail__main-image { min-height: 260px; }
  .sfc-product-detail__facts div { grid-template-columns: 1fr; gap: 4px; }
  .sfc-product-detail__actions { display: grid; }
  .sfc-product-detail__button { width: 100%; }
  .sfc-product-detail__content { padding: 30px 20px 40px; }
  .sfc-product-detail__inquiry { padding: 30px 20px; }
}

/* Product detail refinement: supports empty or populated legacy galleries. */
body.single-post .product_show {
  padding: 72px 0;
  background: #fff;
}

body.single-post .product_show .product_show_main {
  margin-bottom: 54px;
  padding: 34px;
  border: 1px solid #dce6e8;
  background: #f7faf9;
}

body.single-post .product_show .product_show_main_flex {
  align-items: stretch;
  row-gap: 28px;
}

body.single-post .product_show .product_show_main_left,
body.single-post .product_show .product_show_main_right {
  display: flex;
}

body.single-post .product_show .sect-container,
body.single-post .product_show .b50,
body.single-post .product_show .content,
body.single-post .product_show .images,
body.single-post .product_show .nickx-slider-for {
  width: 100%;
}

body.single-post .product_show .product_show_main_describe {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  padding: 18px 24px;
}

body.single-post .product_show .product_show_main_describe h1 {
  max-width: 18ch;
  font-size: clamp(30px, 3.1vw, 50px);
  letter-spacing: -0.03em;
}

body.single-post .product_show .product_show_main_describe > p {
  max-width: 62ch;
  margin: 24px 0 0;
  color: #526167;
}

body.single-post .product_show .product_show_main_button {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}

body.single-post .product_show .product_show_main_button a {
  margin: 0;
  border-radius: 2px;
}

body.single-post .product_show .productshow_tab {
  display: flex;
  gap: 28px;
  margin: 0;
  border-bottom: 1px solid #dce6e8;
}

body.single-post .product_show .productshow_tab h4 {
  margin: 0;
  padding: 0 0 14px;
  color: #718086;
  font-size: 16px;
  font-weight: 600;
}

body.single-post .product_show .productshow_tab h4.productshow_tab_active {
  border-bottom: 2px solid #0f8090;
  color: #123745;
}

body.single-post .product_show .productshow_tabmain {
  max-width: 860px;
  margin: 0;
  padding: 30px 0 12px;
}

body.single-post .product_show .productshow_tab_main {
  color: #4c5a60;
  font-size: 16px;
  line-height: 1.8;
}

body.single-post .product_show .productshow_tab_main p + p {
  margin-top: 1.2em;
}

body.single-post .product_show .fanye {
  margin: 42px 0;
}

body.single-post .product_show .product_inquiry_form {
  margin: 54px 0 0;
  padding: 34px;
  background: #123745;
}

body.single-post .product_show .product_inquiry_form h2 {
  margin-top: 0;
  color: #fff;
}

@media (max-width: 991px) {
  body.single-post .product_show {
    padding: 52px 0;
  }

  body.single-post .product_show .product_show_main {
    padding: 22px;
  }

  body.single-post .product_show .product_show_main_describe {
    padding: 10px 0;
  }
}

@media (max-width: 767px) {
  body.single-post .product_show {
    padding: 36px 0;
  }

  body.single-post .product_show .product_show_main,
  body.single-post .product_show .product_inquiry_form {
    padding: 20px;
  }

  body.single-post .product_show .productshow_tab {
    gap: 20px;
    overflow-x: auto;
  }

  body.single-post .product_show .productshow_tab_main {
    font-size: 15px;
  }
}

/* Dynamic product and news detail pages. Scoped to detail templates only. */
.single-product .product_show,
.single-post .product_show,
.single-news .newshow {
  color: #1f2a30;
}

.single-product .product_show_main,
.single-post .product_show_main,
.single-news .newshow {
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}

.single-product .product_show img,
.single-post .product_show img,
.single-news .newshow img,
.single-news .sfc-case-gallery img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.single-product .product_show_main_describe h1,
.single-post .product_show_main_describe h1,
.single-news .newshow_title h1 {
  margin: 0;
  color: #123745;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.single-product .product_show_main_describe p,
.single-post .product_show_main_describe p,
.single-news .newshow_main,
.single-news .newshow_main p,
.single-news .newshow_main li {
  color: #4c5a60;
  font-size: 16px;
  line-height: 1.8;
  overflow-wrap: anywhere;
}

.single-news .newshow_main {
  max-width: 860px;
}

.single-news .newshow_main > * + * {
  margin-top: 1.25em;
}

.single-news .newshow_main h2,
.single-news .newshow_main h3,
.single-news .sfc-case-details h2 {
  color: #123745;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.sfc-product-specs,
.sfc-case-details {
  display: grid;
  gap: 14px;
  margin: 28px 0;
  padding: 22px;
  border: 1px solid #dce6e8;
  border-radius: 4px;
  background: #f7faf9;
}

.sfc-product-specs p,
.sfc-case-details > p {
  margin: 0;
  overflow-wrap: anywhere;
}

.sfc-product-specs strong,
.sfc-case-details strong {
  color: #123745;
}

.sfc-product-features {
  margin: 36px 0;
}

.sfc-product-features h2 {
  color: #123745;
  line-height: 1.35;
}

.sfc-product-features ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}

.sfc-product-features li {
  display: grid;
  gap: 8px;
  padding: 18px;
  border: 1px solid #dce6e8;
  border-radius: 4px;
  background: #fff;
  overflow-wrap: anywhere;
}

.sfc-product-features li strong {
  color: #123745;
}

.sfc-product-features li span {
  color: #58666c;
  line-height: 1.65;
}

.sfc-case-details section + section {
  padding-top: 22px;
  border-top: 1px solid #dce6e8;
}

.sfc-case-details section h2 {
  margin: 0 0 12px;
  font-size: 22px;
}

.sfc-case-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin-top: 8px;
}

.sfc-case-gallery img {
  border-radius: 4px;
  background: #edf3f2;
}

.single-product .product_show_main_button a,
.single-post .product_show_main_button a,
.single-news .technical-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 20px;
  border: 1px solid #0f8090;
  background: #0f8090;
  color: #fff;
  line-height: 1.2;
  text-decoration: none;
}

.single-product .product_show_main_button a + a,
.single-post .product_show_main_button a + a {
  margin-left: 10px;
}

@media (max-width: 991px) {
  .single-product .product_show_main_describe h1,
  .single-post .product_show_main_describe h1,
  .single-news .newshow_title h1 {
    font-size: 30px;
  }

  .single-news .newshow_main,
  .single-news .newshow_main p,
  .single-news .newshow_main li,
  .single-product .product_show_main_describe p,
  .single-post .product_show_main_describe p {
    font-size: 15px;
  }
}

@media (max-width: 767px) {
  .sfc-product-specs,
  .sfc-case-details {
    margin: 22px 0;
    padding: 16px;
  }

  .sfc-product-features {
    margin: 28px 0;
  }

  .sfc-product-features ul,
  .sfc-case-gallery {
    grid-template-columns: 1fr;
  }

  .single-product .product_show_main_button,
  .single-post .product_show_main_button {
    display: grid;
    gap: 10px;
  }

  .single-product .product_show_main_button a,
  .single-post .product_show_main_button a {
    width: 100%;
  }

  .single-product .product_show_main_button a + a,
  .single-post .product_show_main_button a + a {
    margin-left: 0;
  }

  .single-news .newshow_title h1,
  .single-product .product_show_main_describe h1,
  .single-post .product_show_main_describe h1 {
    font-size: 25px;
  }
}

/* STC product detail: a restrained industrial layout for variable WordPress content. */
body.single-post .product_show {
  --sfc-detail-ink: #16363b;
  --sfc-detail-muted: #607276;
  --sfc-detail-line: #d8e2e3;
  --sfc-detail-surface: #ffffff;
  --sfc-detail-ground: #f3f6f6;
  --sfc-detail-accent: #087784;
  padding: clamp(42px, 6vw, 88px) 0 clamp(64px, 8vw, 112px);
  background: var(--sfc-detail-ground);
}

body.single-post .product_show .product_list_flex {
  align-items: flex-start;
  row-gap: 28px;
}

body.single-post .product_show .productlist_left {
  position: sticky;
  top: 112px;
}

body.single-post .product_show .productlist_right {
  min-width: 0;
}

body.single-post .product_show .product_show_main {
  margin: 0 0 clamp(34px, 5vw, 66px);
  padding: clamp(18px, 3vw, 42px);
  border: 1px solid var(--sfc-detail-line);
  border-radius: 0;
  background: var(--sfc-detail-surface);
  box-shadow: 0 18px 42px rgba(22, 54, 59, .07);
}

body.single-post .product_show .product_show_main_flex {
  align-items: stretch;
  row-gap: 30px;
}

body.single-post .product_show .product_show_main_left {
  padding-right: clamp(0px, 2vw, 30px);
}

body.single-post .product_show .images {
  padding: clamp(8px, 1vw, 16px);
  border: 1px solid #e7eeee;
  background: #f8fbfb;
}

body.single-post .product_show .nickx-slider-for:not(:empty) {
  min-height: min(48vw, 540px);
  padding: clamp(10px, 2vw, 28px);
  background: #fff;
}

body.single-post .product_show .nickx-slider-for .zoom {
  display: flex;
  align-items: center;
  justify-content: center;
}

body.single-post .product_show .nickx-slider-for img {
  max-height: min(44vw, 480px);
  object-fit: contain;
}

body.single-post .product_show #nickx-gallery {
  margin-top: 14px;
}

body.single-post .product_show .product_thumbnail_item {
  overflow: hidden;
  margin: 0 7px;
  border: 1px solid transparent;
  background: #fff;
  transition: border-color .22s ease, transform .22s ease;
}

body.single-post .product_show .product_thumbnail_item:hover {
  border-color: var(--sfc-detail-accent);
  transform: translateY(-2px);
}

body.single-post .product_show .product_thumbnail_item img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

body.single-post .product_show .product_show_main_describe {
  justify-content: center;
  padding: clamp(6px, 1vw, 18px) clamp(0px, 1vw, 14px);
}

body.single-post .product_show .product_show_main_describe h1 {
  max-width: 17ch;
  color: var(--sfc-detail-ink);
  font-size: clamp(32px, 3vw, 56px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -.045em;
  text-wrap: balance;
}

body.single-post .product_show .product_show_main_describe > p {
  max-width: 58ch;
  margin: 24px 0 0;
  color: var(--sfc-detail-muted);
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.8;
}

body.single-post .product_show .sfc-product-specs {
  gap: 0;
  margin: 28px 0 0;
  padding: 0;
  border: 0;
  border-top: 1px solid var(--sfc-detail-line);
  border-radius: 0;
  background: transparent;
}

body.single-post .product_show .sfc-product-specs p {
  display: grid;
  grid-template-columns: minmax(120px, .45fr) 1fr;
  gap: 14px;
  padding: 13px 0;
  border-bottom: 1px solid var(--sfc-detail-line);
  color: var(--sfc-detail-muted);
  font-size: 14px;
  line-height: 1.55;
}

body.single-post .product_show .sfc-product-specs strong {
  color: var(--sfc-detail-ink);
  font-weight: 600;
}

body.single-post .product_show .product_show_main_button {
  gap: 12px;
  margin-top: 32px;
}

body.single-post .product_show .product_show_main_button a {
  min-height: 50px;
  padding: 14px 22px;
  border: 1px solid var(--sfc-detail-accent);
  border-radius: 0;
  background: var(--sfc-detail-accent);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: none;
  transition: background-color .22s ease, color .22s ease, transform .22s ease;
}

body.single-post .product_show .product_show_main_button a + a {
  margin-left: 0;
  background: transparent;
  color: var(--sfc-detail-accent);
}

body.single-post .product_show .product_show_main_button a:hover {
  background: #075d67;
  color: #fff;
  transform: translateY(-2px);
}

body.single-post .product_show .product_show_main_button a:focus-visible,
body.single-post .product_show .productshow_tab h4:focus-visible {
  outline: 3px solid rgba(8, 119, 132, .3);
  outline-offset: 3px;
}

body.single-post .product_show .productshow_tab {
  gap: 28px;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid var(--sfc-detail-line);
}

body.single-post .product_show .productshow_tab h4 {
  margin: 0;
  padding: 0 0 16px;
  border-bottom: 3px solid transparent;
  color: #79898d;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.single-post .product_show .productshow_tab h4.productshow_tab_active {
  border-bottom-color: var(--sfc-detail-accent);
  color: var(--sfc-detail-ink);
}

body.single-post .product_show .productshow_tabmain {
  max-width: none;
  margin: 0;
  padding: clamp(30px, 5vw, 66px) clamp(18px, 4vw, 58px);
  background: var(--sfc-detail-surface);
}

body.single-post .product_show .productshow_tab_main {
  max-width: 900px;
  color: #53666a;
  font-size: clamp(15px, 1.1vw, 17px);
  line-height: 1.85;
}

body.single-post .product_show .productshow_tab_main h2 {
  margin: 2.4em 0 .75em;
  color: var(--sfc-detail-ink);
  font-size: clamp(25px, 2.2vw, 36px);
  line-height: 1.18;
  letter-spacing: -.025em;
}

body.single-post .product_show .productshow_tab_main h2:first-child,
body.single-post .product_show .productshow_tab_main h2 + p {
  margin-top: 0;
}

body.single-post .product_show .productshow_tab_main h3 {
  margin: 1.8em 0 .5em;
  color: var(--sfc-detail-ink);
  font-size: clamp(18px, 1.5vw, 23px);
  line-height: 1.35;
}

body.single-post .product_show .productshow_tab_main ul,
body.single-post .product_show .productshow_tab_main ol {
  margin: 1.25em 0;
  padding-left: 1.3em;
}

body.single-post .product_show .productshow_tab_main li + li {
  margin-top: .6em;
}

body.single-post .product_show .productshow_tab_main table {
  display: block;
  width: 100%;
  overflow-x: auto;
  margin: 28px 0;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.45;
  white-space: nowrap;
}

body.single-post .product_show .productshow_tab_main th,
body.single-post .product_show .productshow_tab_main td {
  padding: 14px 16px;
  border: 1px solid var(--sfc-detail-line);
  text-align: left;
  vertical-align: middle;
}

body.single-post .product_show .productshow_tab_main th {
  background: var(--sfc-detail-ink);
  color: #fff;
  font-weight: 600;
}

body.single-post .product_show .productshow_tab_main tr:nth-child(even) td {
  background: #f5f8f8;
}

body.single-post .product_show .product_inquiry_form {
  margin: clamp(42px, 6vw, 84px) 0 0;
  padding: clamp(26px, 4vw, 54px);
  border: 0;
  border-radius: 0;
  background: var(--sfc-detail-ink);
  box-shadow: none;
}

body.single-post .product_show .product_inquiry_form h2 {
  margin: 0 0 24px;
  color: #fff;
  font-size: clamp(28px, 2.5vw, 42px);
  line-height: 1.1;
  letter-spacing: -.03em;
}

body.single-post .product_show .product_inquiry_form input,
body.single-post .product_show .product_inquiry_form textarea,
body.single-post .product_show .product_inquiry_form select {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 0;
  background: rgba(255, 255, 255, .98);
  color: var(--sfc-detail-ink);
}

body.single-post .product_show .product_inquiry_form input[type="submit"] {
  width: auto;
  min-height: 48px;
  padding: 12px 22px;
  border-color: #fff;
  background: #fff;
  color: var(--sfc-detail-ink);
  font-weight: 700;
}

@media (max-width: 1199px) {
  body.single-post .product_show .productlist_left {
    position: static;
  }

  body.single-post .product_show .product_show_main_left {
    padding-right: 0;
  }
}

@media (max-width: 767px) {
  body.single-post .product_show {
    padding: 34px 0 64px;
  }

  body.single-post .product_show .product_show_main {
    padding: 14px;
  }

  body.single-post .product_show .nickx-slider-for:not(:empty) {
    min-height: 0;
    padding: 12px;
  }

  body.single-post .product_show .nickx-slider-for img {
    max-height: none;
  }

  body.single-post .product_show .product_show_main_describe {
    padding: 16px 4px 4px;
  }

  body.single-post .product_show .product_show_main_describe h1 {
    max-width: none;
    font-size: clamp(30px, 9vw, 42px);
  }

  body.single-post .product_show .sfc-product-specs p {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  body.single-post .product_show .productshow_tab {
    gap: 20px;
    overflow-x: auto;
  }

  body.single-post .product_show .productshow_tabmain {
    padding: 30px 20px 38px;
  }

  body.single-post .product_show .productshow_tab_main table {
    margin-right: -2px;
    font-size: 13px;
  }

  body.single-post .product_show .product_show_main_button {
    display: grid;
  }
}
.solutions-page {
  --solutions-shell: min(1442px, calc(100vw - 48px));
  background: #fff;
  color: #111;
}
.solutions-page .solutions-shell {
  width: var(--solutions-shell);
  margin: 0 auto;
}
.solutions-page .solutions-hero > img {
  object-position: center center;
}
.solutions-page .solutions-island,
.solutions-page .solutions-primary {
  background: #fff;
}
.solutions-page .solutions-process,
.solutions-page .solutions-other,
.solutions-page .solutions-support,
.solutions-page .solutions-start {
  background: #f1f1f1;
}
.solutions-page .solutions-island {
  min-height: 1117px;
  padding: 65px 0 58px;
}
.solutions-page .solutions-process {
  min-height: 874px;
  padding: 61px 0 47px;
}
.solutions-page .solutions-primary {
  min-height: 1374px;
  padding: 73px 0 86px;
}
.solutions-page .solutions-other {
  min-height: 1068px;
  padding: 164px 0 0;
}
.solutions-page .solutions-support {
  min-height: 794px;
  padding: 77px 0 0;
}
.solutions-page .solutions-start {
  min-height: 750px;
  padding: 77px 0 0;
}
.solutions-page .solutions-island h2,
.solutions-page .solutions-process h2,
.solutions-page .solutions-primary > .solutions-shell > h2,
.solutions-page .solutions-other h2,
.solutions-page .solutions-support h2,
.solutions-page .solutions-start h2 {
  margin: 0;
  color: var(--case-blue);
  font-size: 48px;
  line-height: 1.12;
  font-weight: 800;
  letter-spacing: -1.1px;
  text-align: center;
}
.solutions-page .solutions-lead {
  max-width: 1150px;
  margin: 32px auto 0;
  color: #333;
  font-size: 16px;
  line-height: 1.55;
  text-align: center;
}
.solutions-page .solutions-island-visual {
  width: min(1171px, 92%);
  margin: 42px auto 0;
}
.solutions-page .solutions-island-visual img {
  display: block;
  width: 100%;
  height: auto;
}
.solutions-page .solutions-benefits {
  margin: 16px 0 0;
  color: #222;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 500;
  text-align: center;
}
.solutions-page .solutions-outline-button {
  width: 420px;
  min-height: 75px;
  margin: 42px auto 0;
  padding: 16px 28px;
  border: 1px solid var(--case-blue);
  border-radius: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--case-blue);
  background: #fff;
  font-size: 15px;
  line-height: 1.3;
  text-align: center;
  cursor: pointer;
  transition: color 0.36s ease 0.04s, background-color 0.36s ease 0.04s, transform 0.36s ease 0.04s, box-shadow 0.36s ease 0.04s;
}
.solutions-page .solutions-outline-button:hover,
.solutions-page .solutions-outline-button:focus-visible {
  color: #fff;
  background: var(--case-blue);
  transform: translateY(-3px);
  box-shadow: 0 12px 24px rgba(42, 44, 144, 0.16);
}
.solutions-page .solutions-process .solutions-lead {
  margin-top: 17px;
}
.solutions-page .solutions-stage-list {
  width: 1388px;
  margin: 29px auto 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(5, 256px);
  gap: 27px;
}
.solutions-page .solutions-stage-list article {
  position: relative;
  overflow: visible;
  height: 562px;
  padding: 26px 25px 30px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fff;
  text-align: center;
}
.solutions-page .solutions-stage-list article:not(:last-child)::after {
  content: '';
  position: absolute;
  z-index: 3;
  top: 244px;
  right: -48px;
  width: 54px;
  height: 46px;
  background: url('images/solutions/process-arrow.webp?v=2') center / contain no-repeat;
}
.solutions-page .solutions-stage-list .solutions-stage-visual {
  width: 218px;
  height: 223px;
  margin: 0 -6px;
  position: relative;
  display: block;
  overflow: hidden;
  background: transparent;
}
.solutions-page .solutions-stage-list .solutions-stage-visual .solutions-stage-photo {
  width: 188px;
  height: 188px;
  position: absolute;
  top: 13px;
  left: 15px;
  display: block;
  object-fit: contain;
  background: transparent;
}
.solutions-page .solutions-stage-list .solutions-stage-visual .solutions-stage-ring {
  width: 218px;
  height: 223px;
  position: absolute;
  inset: 0;
  display: block;
  pointer-events: none;
}
.solutions-page .solutions-stage-list article > span {
  width: 36px;
  height: 36px;
  margin-top: 1px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--case-blue);
  font-size: 14px;
  font-weight: 700;
}
.solutions-page .solutions-stage-list article:nth-child(2) > span,
.solutions-page .solutions-stage-list article:nth-child(4) > span {
  background: #2f9f45;
}
.solutions-page .solutions-stage-list h3 {
  min-height: 42px;
  margin: 20px 0 15px;
  color: var(--case-blue);
  font-size: 16px;
  line-height: 1.28;
  font-weight: 700;
}
.solutions-page .solutions-stage-list article:nth-child(2) h3,
.solutions-page .solutions-stage-list article:nth-child(4) h3 {
  color: #2f9f45;
}
.solutions-page .solutions-stage-list .solutions-stage-divider {
  width: 202px;
  height: 4px;
  margin: 0;
  display: block;
  border-top: 2px dashed var(--case-blue);
}
.solutions-page .solutions-stage-list article:nth-child(2) .solutions-stage-divider,
.solutions-page .solutions-stage-list article:nth-child(4) .solutions-stage-divider {
  border-color: #2f9f45;
}
.solutions-page .solutions-stage-list p {
  width: 172px;
  height: 64px;
  min-height: 0;
  margin: 12px 0 0;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  grid-template-rows: 31px 33px;
  column-gap: 8px;
  align-items: center;
  color: #222;
  font-size: 13px;
  line-height: 1.25;
  text-align: left;
}
.solutions-page .solutions-stage-list p .solutions-moisture-icon {
  width: 58px;
  height: 64px;
  grid-row: 1 / span 2;
  display: block;
}
.solutions-page .solutions-stage-list p b {
  align-self: end;
  display: block;
  font-size: 13px;
  font-weight: 500;
}
.solutions-page .solutions-stage-list p strong {
  align-self: start;
  display: block;
  margin-top: 1px;
  color: var(--case-blue);
  font-size: 24px;
  line-height: 1;
  font-weight: 800;
  white-space: nowrap;
}
.solutions-page .solutions-stage-list article:nth-child(2) p strong,
.solutions-page .solutions-stage-list article:nth-child(4) p strong {
  color: #2f9f45;
}
.solutions-page .solutions-stage-list a {
  width: 206px;
  height: 45px;
  margin-top: 30px;
  border-radius: 23px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--case-blue);
  font-size: 13px;
  cursor: pointer;
  transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease;
}
.solutions-page .solutions-stage-list a:hover,
.solutions-page .solutions-stage-list a:focus-visible {
  background: #181a70;
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(42, 44, 144, 0.18);
}
.solutions-page .solutions-stage-list article:nth-child(2) a,
.solutions-page .solutions-stage-list article:nth-child(4) a {
  background: #2f9f45;
}
.solutions-page .solutions-stage-list article:nth-child(2) a:hover,
.solutions-page .solutions-stage-list article:nth-child(4) a:hover,
.solutions-page .solutions-stage-list article:nth-child(2) a:focus-visible,
.solutions-page .solutions-stage-list article:nth-child(4) a:focus-visible {
  background: #197d2d;
}
.solutions-page .solutions-note {
  width: 1190px;
  min-height: 63px;
  margin: 23px auto 0;
  padding: 14px 28px;
  border: 1px solid #c6c6c6;
  border-radius: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  color: #777;
  background: #f9f9f9;
  font-size: 14px;
  line-height: 1.45;
  text-align: center;
}
.solutions-page .solutions-note img {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: block;
}
.solutions-page .solutions-primary > .solutions-shell > .solutions-lead {
  margin-top: 42px;
}
.solutions-page .solutions-feature-row {
  margin-top: 42px;
  display: grid;
  grid-template-columns: minmax(0, 612px) minmax(0, 1fr);
  gap: 41px;
  align-items: center;
}
.solutions-page .solutions-feature-row.reverse {
  margin-top: 48px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 612px);
}
.solutions-page .solutions-feature-row.reverse figure {
  order: 2;
}
.solutions-page .solutions-feature-row.reverse div {
  order: 1;
}
.solutions-page .solutions-feature-row figure {
  width: 100%;
  height: 407px;
  margin: 0;
  overflow: hidden;
  background: #eee;
}
.solutions-page .solutions-feature-row figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.solutions-page .solutions-feature-row div {
  min-width: 0;
}
.solutions-page .solutions-feature-row small {
  color: var(--case-blue);
  font-size: 15px;
  line-height: 1.4;
  font-weight: 700;
}
.solutions-page .solutions-feature-row h3 {
  max-width: 770px;
  margin: 27px 0 24px;
  font-size: 28px;
  line-height: 1.25;
  font-weight: 700;
}
.solutions-page .solutions-feature-row p {
  max-width: 770px;
  margin: 0;
  color: #666;
  font-size: 15px;
  line-height: 1.62;
}
.solutions-page .solutions-feature-row a {
  width: 257px;
  height: 61px;
  margin-top: 40px;
  border: 1px solid var(--case-blue);
  border-radius: 31px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--case-blue);
  background: #fff;
  font-size: 15px;
  cursor: pointer;
  transition: color 0.34s ease, background-color 0.34s ease, transform 0.34s ease, box-shadow 0.34s ease;
}
.solutions-page .solutions-feature-row a:hover,
.solutions-page .solutions-feature-row a:focus-visible {
  color: #fff;
  background: var(--case-blue);
  transform: translateY(-3px);
  box-shadow: 0 10px 22px rgba(42, 44, 144, 0.16);
}
.solutions-page .solutions-other .solutions-lead,
.solutions-page .solutions-support .solutions-lead {
  margin-top: 42px;
}
.solutions-page .solutions-product-grid {
  margin-top: 60px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 23px 22px;
}
.solutions-page .solutions-product-grid article {
  min-height: 335px;
  padding: 30px 30px 26px 24px;
  display: grid;
  grid-template-columns: 261px minmax(0, 1fr);
  gap: 23px;
  align-items: center;
  background: #fff;
  overflow: hidden;
  transition: transform 0.34s ease, box-shadow 0.34s ease;
}
.solutions-page .solutions-product-grid article:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 35px rgba(24, 28, 64, 0.08);
}
.solutions-page .solutions-product-grid img {
  display: block;
  width: 100%;
  height: 228px;
  object-fit: contain;
}
.solutions-page .solutions-product-grid span {
  color: var(--case-blue);
  font-size: 16px;
  font-weight: 700;
}
.solutions-page .solutions-product-grid h3 {
  margin: 25px 0 20px;
  color: var(--case-blue);
  font-size: 21px;
  line-height: 1.35;
  font-weight: 700;
}
.solutions-page .solutions-product-grid p {
  margin: 0;
  color: #666;
  font-size: 14px;
  line-height: 1.55;
}
.solutions-page .solutions-support-grid {
  margin-top: 48px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 22px;
}
.solutions-page .solutions-support-grid article {
  min-height: 227px;
  padding: 34px 42px 34px 60px;
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 28px;
  align-items: center;
  background: #fff;
}
.solutions-page .solutions-support-grid img {
  width: 138px;
  height: 112px;
  object-fit: contain;
}
.solutions-page .solutions-support-grid h3 {
  margin: 0 0 24px;
  color: var(--case-blue);
  font-size: 21px;
  line-height: 1.35;
  font-weight: 700;
}
.solutions-page .solutions-support-grid p {
  margin: 0;
  color: #666;
  font-size: 15px;
  line-height: 1.55;
}
.solutions-page .solutions-start .solutions-lead {
  margin-top: 38px;
}
.solutions-page .solutions-start-grid {
  margin-top: 57px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 21px;
}
.solutions-page .solutions-start-grid article {
  min-height: 357px;
  padding: 36px 31px 31px;
  display: flex;
  flex-direction: column;
  background: #fff;
  transition: transform 0.34s ease, box-shadow 0.34s ease;
}
.solutions-page .solutions-start-grid article:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 30px rgba(24, 28, 64, 0.08);
}
.solutions-page .solutions-start-grid span {
  color: var(--case-blue);
  font-size: 16px;
  font-weight: 700;
}
.solutions-page .solutions-start-grid h3 {
  min-height: 60px;
  margin: 32px 0 20px;
  color: var(--case-blue);
  font-size: 20px;
  line-height: 1.32;
  font-weight: 700;
}
.solutions-page .solutions-start-grid small {
  color: #777;
  font-size: 13px;
}
.solutions-page .solutions-start-grid p {
  margin: 24px 0 20px;
  color: var(--case-blue);
  font-size: 14px;
  line-height: 1.5;
}
.solutions-page .solutions-start-grid a {
  margin-top: auto;
  color: var(--case-blue);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
}
.solutions-page .solutions-start-grid a i {
  display: inline-block;
  margin-left: 12px;
  font-size: 18px;
  transition: transform 0.3s ease;
}
.solutions-page .solutions-start-grid a:hover i,
.solutions-page .solutions-start-grid a:focus-visible i {
  transform: translateX(6px);
}
.solutions-page .solutions-contact {
  height: 400px;
}
.solutions-page .solutions-contact > img {
  object-position: center 65%;
}
.solutions-page .solutions-footer {
  min-height: 600px;
  padding-top: 76px;
  background: #fff;
}
@media (max-width: 1500px) {
  .solutions-page {
    --solutions-shell: min(1240px, calc(100vw - 48px));
  }
  .solutions-page .solutions-island {
    min-height: 0;
  }
  .solutions-page .solutions-stage-list {
    width: 100%;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
  }
  .solutions-page .solutions-stage-list article {
    height: 520px;
    padding: 24px 8px;
  }
  .solutions-page .solutions-stage-list article:not(:last-child)::after {
    top: 215px;
    right: -42px;
    width: 47px;
    height: 38px;
  }
  .solutions-page .solutions-stage-list .solutions-stage-visual {
    transform: scale(0.84);
    transform-origin: top center;
    margin-bottom: -36px;
  }
  .solutions-page .solutions-stage-list h3 {
    margin-top: 16px;
  }
  .solutions-page .solutions-stage-list .solutions-stage-divider {
    width: calc(100% - 18px);
  }
  .solutions-page .solutions-stage-list p {
    transform: scale(0.88);
    transform-origin: top center;
    margin-bottom: -8px;
  }
  .solutions-page .solutions-stage-list a {
    width: calc(100% - 18px);
    margin-top: 18px;
  }
  .solutions-page .solutions-feature-row {
    grid-template-columns: minmax(0, 540px) minmax(0, 1fr);
  }
  .solutions-page .solutions-feature-row.reverse {
    grid-template-columns: minmax(0, 1fr) minmax(0, 540px);
  }
  .solutions-page .solutions-feature-row figure {
    height: 360px;
  }
  .solutions-page .solutions-product-grid article {
    grid-template-columns: 220px minmax(0, 1fr);
  }
  .solutions-page .solutions-support-grid article {
    padding-left: 38px;
    grid-template-columns: 138px minmax(0, 1fr);
  }
}
@media (max-width: 1100px) {
  .solutions-page {
    --solutions-shell: calc(100vw - 40px);
  }
  .solutions-page .solutions-island h2,
  .solutions-page .solutions-process h2,
  .solutions-page .solutions-primary > .solutions-shell > h2,
  .solutions-page .solutions-other h2,
  .solutions-page .solutions-support h2,
  .solutions-page .solutions-start h2 {
    font-size: 38px;
  }
  .solutions-page .solutions-lead {
    font-size: 15px;
  }
  .solutions-page .solutions-stage-list {
    overflow-x: auto;
    grid-template-columns: repeat(5, 220px);
    justify-content: start;
    padding-bottom: 34px;
  }
  .solutions-page .solutions-stage-list article:not(:last-child)::after {
    right: -42px;
  }
  .solutions-page .solutions-feature-row,
  .solutions-page .solutions-feature-row.reverse {
    grid-template-columns: 1fr 1fr;
    gap: 30px;
  }
  .solutions-page .solutions-feature-row figure,
  .solutions-page .solutions-feature-row.reverse figure {
    height: 330px;
  }
  .solutions-page .solutions-feature-row h3,
  .solutions-page .solutions-feature-row.reverse h3 {
    font-size: 23px;
  }
  .solutions-page .solutions-feature-row a,
  .solutions-page .solutions-feature-row.reverse a {
    margin-top: 28px;
  }
  .solutions-page .solutions-product-grid article {
    grid-template-columns: 180px minmax(0, 1fr);
    padding: 24px 22px;
  }
  .solutions-page .solutions-product-grid article img {
    height: 190px;
  }
  .solutions-page .solutions-support-grid article {
    padding: 30px 26px;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 22px;
  }
  .solutions-page .solutions-support-grid article img {
    width: 110px;
  }
}
@media (max-width: 800px) {
  .solutions-page {
    --solutions-shell: calc(100vw - 32px);
  }
  .solutions-page .solutions-island,
  .solutions-page .solutions-process,
  .solutions-page .solutions-primary,
  .solutions-page .solutions-other,
  .solutions-page .solutions-support,
  .solutions-page .solutions-start {
    min-height: 0;
    padding: 60px 0;
  }
  .solutions-page .solutions-island h2,
  .solutions-page .solutions-process h2,
  .solutions-page .solutions-primary > .solutions-shell > h2,
  .solutions-page .solutions-other h2,
  .solutions-page .solutions-support h2,
  .solutions-page .solutions-start h2 {
    font-size: 32px;
  }
  .solutions-page .solutions-lead {
    margin-top: 24px;
    font-size: 14px;
  }
  .solutions-page .solutions-island-visual {
    width: 100%;
    margin-top: 30px;
  }
  .solutions-page .solutions-benefits {
    font-size: 14px;
  }
  .solutions-page .solutions-outline-button {
    width: min(420px, 100%);
    margin-top: 32px;
  }
  .solutions-page .solutions-note {
    width: 100%;
    border-radius: 18px;
  }
  .solutions-page .solutions-feature-row,
  .solutions-page .solutions-feature-row.reverse {
    margin-top: 38px;
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .solutions-page .solutions-feature-row figure,
  .solutions-page .solutions-feature-row.reverse figure {
    order: 1;
    height: auto;
    aspect-ratio: 612 / 407;
  }
  .solutions-page .solutions-feature-row div,
  .solutions-page .solutions-feature-row.reverse div {
    order: 2;
  }
  .solutions-page .solutions-feature-row h3,
  .solutions-page .solutions-feature-row.reverse h3 {
    margin: 18px 0;
  }
  .solutions-page .solutions-product-grid {
    grid-template-columns: 1fr;
    margin-top: 40px;
  }
  .solutions-page .solutions-support-grid {
    grid-template-columns: 1fr;
  }
  .solutions-page .solutions-start-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 40px;
  }
  .solutions-page .solutions-contact {
    height: 390px;
  }
  .solutions-page .solutions-footer {
    padding-top: 58px;
  }
}
@media (max-width: 520px) {
  .solutions-page {
    --solutions-shell: calc(100vw - 28px);
  }
  .solutions-page .solutions-island h2,
  .solutions-page .solutions-process h2,
  .solutions-page .solutions-primary > .solutions-shell > h2,
  .solutions-page .solutions-other h2,
  .solutions-page .solutions-support h2,
  .solutions-page .solutions-start h2 {
    font-size: 28px;
  }
  .solutions-page .solutions-island-visual {
    margin-top: 24px;
    overflow: hidden;
  }
  .solutions-page .solutions-island-visual img {
    width: 118%;
    max-width: none;
    margin-left: -9%;
  }
  .solutions-page .solutions-stage-list {
    grid-template-columns: repeat(5, 196px);
  }
  .solutions-page .solutions-stage-list .solutions-stage-visual {
    transform: scale(0.78);
    margin-bottom: -48px;
  }
  .solutions-page .solutions-stage-list article {
    height: 495px;
  }
  .solutions-page .solutions-feature-row h3 {
    font-size: 21px;
  }
  .solutions-page .solutions-product-grid article {
    min-height: 0;
    grid-template-columns: 1fr;
    text-align: center;
  }
  .solutions-page .solutions-product-grid article img {
    height: 205px;
  }
  .solutions-page .solutions-product-grid article h3 {
    margin: 14px 0;
  }
  .solutions-page .solutions-support-grid article {
    min-height: 0;
    grid-template-columns: 80px minmax(0, 1fr);
    padding: 24px 20px;
  }
  .solutions-page .solutions-support-grid article img {
    width: 78px;
    height: 78px;
  }
  .solutions-page .solutions-support-grid article h3 {
    margin-bottom: 14px;
    font-size: 18px;
  }
  .solutions-page .solutions-support-grid article p {
    font-size: 13px;
  }
  .solutions-page .solutions-start-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .solutions-page .solutions-start-grid article {
    min-height: 300px;
  }
}
#superContainer {
  height: 100%;
  position: relative;
}
.section {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.slide {
  float: left;
}
.slide,
.slidesContainer {
  height: 100%;
  display: block;
}
.slides {
  height: 100%;
  overflow: hidden;
  position: relative;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.section.table,
.slide.table {
  display: table;
  width: 100%;
}
.tableCell {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%;
}
.slidesContainer {
  float: left;
  position: relative;
}
.controlArrow {
  position: absolute;
  top: 50%;
  cursor: pointer;
  width: 0;
  height: 0;
  border-style: solid;
  margin-top: -38px;
}
.controlArrow.prev {
  left: 15px;
  width: 0;
  border-width: 38.5px 34px 38.5px 0;
  border-color: transparent #fff transparent transparent;
}
.controlArrow.next {
  right: 15px;
  border-width: 38.5px 0 38.5px 34px;
  border-color: transparent transparent transparent #fff;
}
.scrollable {
  overflow: scroll;
}
.easing {
  -webkit-transition: all 0.7s ease-out;
  -moz-transition: all 0.7s ease-out;
  -o-transition: all 0.7s ease-out;
  transition: all 0.7s ease-out;
}
#fullPage-nav,
#fp-nav {
  position: fixed;
  z-index: 100;
  margin-top: -32px;
  top: 50%;
  opacity: 1;
}
#fullPage-nav.right {
  right: 17px;
}
#fullPage-nav.left,
#fp-nav.left {
  left: 17px;
}
.fullPage-slidesNav {
  position: absolute;
  z-index: 4;
  left: 50%;
  opacity: 1;
}
.fullPage-slidesNav.bottom {
  bottom: 17px;
}
.fullPage-slidesNav.top {
  top: 17px;
}
#fullPage-nav ul,
.fullPage-slidesNav ul {
  margin: 0;
  padding: 0;
}
#fullPage-nav li,
.fullPage-slidesNav li,
#fp-nav li {
  display: block;
  width: 14px;
  height: 13px;
  margin: 30px 0;
  position: relative;
}
.fullPage-slidesNav li {
  display: inline-block;
}
#fullPage-nav li a,
.fullPage-slidesNav li a,
#fp-nav li a {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
}
#fullPage-nav li .active span,
.fullPage-slidesNav .active span,
#fp-nav .active span {
  background: #25AFC5;
  opacity: 1;
}
#fullPage-nav span,
.fullPage-slidesNav span,
#fp-nav span {
  top: 2px;
  left: 2px;
  width: 8px;
  height: 8px;
  /* border: 1px solid #000; */
  background: #25b0c549;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  position: absolute;
  z-index: 1;
}
.fullPage-tooltip {
  position: absolute;
  color: #fff;
  font-size: 14px;
  font-family: arial, helvetica, sans-serif;
  top: -2px;
}
.fullPage-tooltip.right {
  right: 20px;
}
.fullPage-tooltip.left {
  left: 20px;
}
/**
 * Swiper 11.0.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 26, 2023
 */
@font-face {
  font-family: swiper-icons;
  src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}
:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-horizontal {
  touch-action: pan-y;
}
.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
  transform-style: preserve-3d;
}
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}
.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}
:root {
  --swiper-navigation-size: 44px;
}
.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size)/44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size)/2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}
.swiper-button-next svg,
.swiper-button-prev svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
}
.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg);
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-lock {
  display: none;
}
.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none!important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev';
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: 'next';
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 0.3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical > .swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical > .swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-lock {
  display: none;
}
.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}
.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}
.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical > .swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube {
  overflow: visible;
}
.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}
.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-flip {
  overflow: visible;
}
.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}
.swiper-cards {
  overflow: visible;
}
.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}
@font-face {
  font-family: "iconfont-icon";
  /* Project id 4050239 */
  src: url('vendor/icon/iconfont.eot?t=1739954498423');
  /* IE9 */
  src: url('vendor/icon/iconfont.eot?t=1739954498423#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAGNQAAsAAAAAtmgAAGL+AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHFQGYACZDgqCsQyB90gBNgIkA4UoC4JWAAQgBYUjB5E7G4mXNWPcbQzOAwoEVv7gUVEbxSwyK2v2IgXO/v8zko4xHJhjqKpVPxgKmUyvZXc7MeaCgtgnIbItSLg5AoLSTjBKn2vbaC0v2c7AG8zj6EOaF/rJDEOHZuwd5i6bTsfjrsdMh9XNkpsuPYJFunRV2ykaZhy8btP/Z/fXvTvC46xBabPgsLYFtg17aqOjJ88XF3u7e3fTXFGBR0cRhRB44olkEEhgnwhYK6vZwxAgSvPC9QMJmQHebf0DQZkyHaAoa4jKFDdbcCAqoBscgDO1IWqWWs7WaVObatv6abaW1e1sXPuu7OpqX3VddV3jXy7Z0qQFJ5EW7ABg9x1BB7xg4gvyNlI7ao8CxO0zGODhOZb/UiSiLRrkGu95NUbbgcUibSBrKqBIG25+Y+u2CzmRD4Hnv7/Y3Xve/tgCjcNMAmomwpQWon+5RiZTlwjzSBB4QOyZu9ZdpsoBaQDYzUJdoxZHZvR9ROq2eTcQ1mE0BnWh/ZEw9E7tm2kPR4WDATtu2RBYwHYRu0CCwoMkDex7u9xb9I/1K/0O2FaadHeNUojrJAVKAWXp4OP39m1a34GULf3481txZsxuv/1+Lf3EE0bYGozF2NYksE3993TgIizZgJFxqf85rZQ9WabWpyHLkjxfQA+ACOgAgCHVA9vtHYn5T1W9EhqpEnd4dWypfZnz3L0uh/Zw+/8DpPD/J0gClBQCkBSBlJ5FUnYI0HEI0u6TtyTbGdvK2kr3ACjZJqgMgPIQ7QzJzrK75I65TvOU13NfD8f2lp5uvRybWxcx41QehLoI0zHRkhEaIkFgc0wPX0VCpEtEQqLjiuhnv/nPgWWzYgMREeMKIsZ7f1VQusKiTCLt026gZ4aQ1e3jjthW5ulF/luBQavEsjmzBf6MzX4PXbQeY8gme2LULgMj78edUbDTXwJw8j6iWFJ+Xhyx5SDkjQvnklV+ba+yuSlK+WTJopqCytVbFXuD+lKBXnYqvNv3vn7zKGCApkIE5G16TvZusG+M/z1tW2Je8t3Xz9gNKwwcD2tZZvPEDFLW8dFozdEjU7nIEvCC9yBkdIw8RWapN1erDgM2G7LTXmMOOOSIKY+whEWpCtVotO4g1WGZPnsP2Cx3vPVTPz1y16rqGq7/+vbi2+/66n/mz3dWZl2e7HNPf/Ovx39vM2K3CyBXoRp1NzPzn3Pd85t4Qba8oa3vIsa8vqxm7taZv89sXzhddPLDwiMLo3jOmOcX94Io39DXvMW8M+99nzK61GvwzHj0/PX11Ra6u9SrZZZbYb1rG6yyzlyzjPTm8u1Tzk/1dY215hhlpYuzPbv15LgxxptgholGuLLA9w/DDdZfL4d11UVnnXTQRjs9LPb2wXSTTdFXNy210kITzVSpVluFSu0Vrk5SckyZbZo6oZZvDZU7apB6hrhws462BvrcWE/d9XGjvkWGOuPSOZ/6ebnE00YO2G+a3h43N8BZ853U0Tx1zfTu/ZeHNd3bYrP7L34cMdpYrW20yceDDtluh5122W2PvfbZqoE7p40zTGc1KCrd2lBdHfdTgIpHAsJzAeO1eOG6QLCaQLGQeOOu+GApgeGVwLGMILCcILGCoLCeoHFNfLGBYLCKYLGO4DCX4DGLEDCSEPFG/HBZ/HFbAnCKBOK8kDCVkPFVgrCGBGMtoWAOCcEoEoqVhIqLQsNsQsczYeCWMPFEWDhO2BhDOBhPuJhAeJhB+JhIBBhBwnBFhFhAwvFdIvBBIjGciDCYiENWicijUjhMZOhK5OhCotCZKNCJRKMDiUEbEot2JA49SDwWkwS8lUQ8ECWmExUmEzWmEA36Ei26ER1aEj1akSS0IAY0IUY0I8moIimoJqmoTdJQQUyoJOloT8woSAauSiYmkSyUiAXHiBVlxIZtJBdNSR5OkELUIkX4JjVoSGahnNThKKnHIDIX9ch8DCEtuCALcFMWog5pRVvSgYFkHT7LABqTzehJhtCd7EQfshc3ZAz1yQQWkQMYSg7hDDmCSzKFc+Q+Psmf6MfvSLz0OxpL+D2AuqcRxRrBsQNwbT88m4bUehNtjym15tTZANrtLB02n2V2kj7ryF4xjz8Coi5/2GImf7TuHW32nkX2hcX2kA6ryVa7xynbwlPbzAtx35+GvWiq7QfDdoT/xGj+8tlYtlhr3tlG/rFNfBIf/e21g0DsECtsO322g37byUrbxWrbzRrbw1rbyzrbxxOxlX+S14C7dodpcZp/QTGO/20bRrZbRtbZ74TTpsbLPz7F4pRuG7jB+FZ5fsX0aPlvhFY2+3LVKtRUUigOfS01tAOR1wV9CrEXbkzPOjbcFYGA3qk2UStCRKSAHngC7kRrItQ+bk0WUHV0RkI5VUU8JmhPhciRako5cmsOVrDvOEoSUE6GlpiTUS8DJVfB9NEKsdT3eIBzDKL0lSmQoyClgBlWe9SuPG23s9RaQbsrmTXEtN2wzCL+wzNumVjRDWMmTfx8oY+fp5NYbG2I/1nt48T5D+0MFLsVqK3Kyt3vwl7QcMpdJ26vHyfaqqJuIPrZ5/nec5HknviFMfAuxkjUe97HxAnp3TtrEfyW5845EA0H0FA62NjSctzNEncgXXWaUlZdSQmKDOXoy9T71DwSga7minlITvFYlZlxss1N06s0SQazaus0i7mXYyaxuXYRUEIdaxObSGwkAJMCNxfaRhBGnIJ6vr5HE7skkz/VeUaQDciGe/Npg15MdGnD2I1I2+dCxa5EmyH+E6lE0orFT5JtqKz7YJ9ljBRDWzHt7lu4DPwNcRgPoc8u/v1kD2oVw3whG2vHeMV6NqRJnMiIqCFqn5Ig2ztxSdqiTtOzRXfKFiIHdxboJdGKjTg8KhYGd3SJ7VaZpIpLNaO7dp3pRpMWcBfUPI/qmJ/JqXZu+2hyl94tVBXm2Ykz5eVS3Zr70PgbjbsZw7UQTj6eM5eNuVQGaOC71JUHz9ydOdidw2W0WkaHXTNCqoJpii5fvH5V7UCAg7y700bLtbEO0badCh6dghr5GIDJwxNdzlQhY7Ximu10Gz4qMSNvnNvvove/3c+34Zsfq8GccjlBjd1k4TyT8WV055NNpQk9MRsdBCzocVYnoV7MVymPoVQNM13XoGJ6lLwY2FFTaloUq3CPlyOqaqNkU9BXiWiWhu+40U3UyHHg/QOXSRSEZrFdiulgMYqoHqT4oh3CduGuIHmfoz7QbLzHSH2dawCQJpsM4KiTYmajQxT4xMB3OdJWLxvyi+aGjMtemNR+KPUS58PeLleAIG99lNVrEKk8yVDVq/8wzgNQtrQ4zG5R4QWNKrSVKrXRTDJkrVIkuTQpZW658SDFshlVrlUw5njZeU5Smjctb9RfTOtm+cqHBN2szTdGkoZeGS9MZAy9eLq5kLOM0op7NuVS1aVgrMO01JQ9qRumXg2W2WBYsm70+wY6X3ZE9ek441x/Hs3dcF+fhdPXDh2zjvoFAQlri96tMxKyxAmJl0/vguPbzDKlHbjEEAWs8z6HRmOyzDx7ctVJ8xq9YKTH6hejd3kCu7hb1UnVPTtldyCbO1ZVSemW+52M7NqjooSLhYkVN4dszmtRxJVz4dtcZBd28AqtOcvjhSTCN53pnZZvxz8SOLfcdunS82WoMUnLTO1dDZFqm0cfqSAXea6p1UPjYezL5p8pAQlBuOz4rpXgcWw4/XBdszYySaw8PRXbmDAxfIExiMkCFgAWb6PJ1VMNf/cYp1VYczfs9f9yyuz/pL3YTJYS4Qo/4ejnVDwep3vd/k8W8lxMhOqmOtfRSEBeEnXFglxsJ9qNQudOzouiymC958543B3bOnKIOZ6cbX8wPL5rJBFuvtsdXnp++uPWidY7y099CDOVWT8qKlNZld/b2KNzL8dkQ1jXfHIt4MnaN1t1HZHHtmH82z+GIQlOW2gDuef+c+3YfkMNVI/q/x3q/Zj8XYxxLyHX3uka45FPRAEP8AIxhMuGlT/dcoeaAw2n2/Ttnm9EsUJNaTNL6TDWp7rOMZQZpFcnn1gcWG/Y8BbitupH08PF6K4hKVU6CzIocHGiq9n+Tf5XDeIimMxu8CoigG/zZ2GmmYHtO43CEGwoxWtlNpyj6SVZZkzBZwpa5GuwyMFj7GwbW++h6lf1atgkd420C5uhAhWNfvd6lD12rMUXaJZTxCUvVkLprhzPTDSEUVRubqQ33j6Yt3uUafeKQklHHyl3UCkxR9evP04qp5SkVObVQ7UslRzjRGIj7IJIoJcYXWqodE6MpHSmla5kxx6wg/H4Q8VEggtCVtrQgKLKJUvJiYeJEIrVF1YmTs94jVLVzMqbRCjFVO5su1A0H9Pllp5XTCuGvjw2dXYpI5YGBr3U1MFVLqpRv9eJPGUpxIyREAJZqzSwbsrVWCSGzklpDCBNADRWmWUIUgcACQDQ6FHTUqQMAOIDgNQMAPQVrO901HQ6HCctU5Y9Pc1SdderMHmkVATwp7ZYya/tngCih6Bei+2UtXxo8bbnOrdxQ9rmijiz8Jt6ylIydx7rlTNrps0snVf8YRsufvjSy12WqXe9sP4cjQzkRoCaMpro4HqaF4Vbih0GUq1DnNad3I2k5wrHCGyQK5Y0nlJZ+RYhXYjdkiAogFqrAHh5iGu4LHnWskNBNNfV2d0PKUD83qco2mFzlsQlzSuvarY9j3hl19jlnbDgvgmgTmaVZDuqT16IGReb6aqMA5GwcEdc24zBU8+mo//c1/v+7N2qm3sPSCsdAjFvRTfXYc7WLDQQOd8O/la4KyK1SlEgVyLt3U2sJDMgl+X0PHLZICUnW/Lh9rkpHCnljmq/uOlkJ1+q5+qaPV1dOa70uvcyWxZIw/Eh3uymT0gicQXVl3AldSOnQQ3cJoAbXULwnHZJZQ1zDqT501uPSAc/9AYvkhf3ccHee1coeuBlVdY5SR6S+KmUot2Hq+dt1iXI030Xvsj6k8c0IPzHlPUfM6P1H5mrTocDEKFt4IoJTF2mYKgSRYF9H6Z0kGAWh8WpUnnMIiTDMt8QJWIcVzkmEhIuIeIP/ecBoqRFtRs4LmKOvRfrrJoRmeJ4GnKHwtpkR334H6Li7GT2CAHITdqhqGLC4TwojSmfocZQ8E5lPKFvCzlvKB/hdEU252Vh2Qn/vf9xhsoeS4DdZM1lJa8vb26dKYkrnx5ULtkvOCInTZkhwEQI5kLjZhWWx5qrqCxbSjMiChiTi/Qt36mQArjYBVOebkssuEM50ZSlRO4OjCQTyrb8bA2RS1c6G2d2a53LCphjWMFFIEkxS0xkQijiRGoMKhdzuVbD0Gb1KUo4VXKYA2+vyHgCnJnICAAUQ1n/9xRUTNL6FNQOybyZbRbWaKpbG/v9qCChJBRNlCUggkxSRHjZwtFHPVsQanwIKKziCp2Gr86UTWdLQVSlLWE3jt/BZCNTamZ0agmN6xWnZpj1IFVngDIm2xlt6Hc3WO3CnFN4Ox6BdUlpkNNdxepc2iipRK/cp8tUJwSrZ8jAijFBMBGlYgNn/pkw9lmUSl81vSOqGCSNLwBUP1BFtYomJa5sr5QtqSmt0i2Z9qG6KEpg7yip4aM9Oxyf/gUMkl/AVACXEJMiEcuu+5uAxYd39lGRGf+KXbwtCNhWkscq18haijHq7WDYQK8VA+O+ozt6dzl3kYES/VOBKPrQ/QdS3qaVQnZCSdRZUDN/Bs57dA6WLILzzyRXUdbCs+tOK9GXrREVXUcEEFzM28gdEmr/wSgmKhjGCDn7Zyq4BxnKpW++0hBHDIT/v60DkVuHvm5oqa01KFReIvAm+thEges7zqNqB8CdFpQQJVy3bqeQDPd40joeIWCAhLp1hOipbYRA4oeO6mhTw50nbdN4gVNZi7oEHS7yHCdPWCxsVoqdjWfGOmwqkWsAIXw6wUsNJXWjOS6Pr/0uB4WWs25vuGu9y9FODUmHF8jgAC+gMLM9PChcZdOhtSQdeHaO4W0wvN/tGO12iHDfYuOjeKiB1mVN4C26kSQAsUyna4FA1rR0cbMDfn3RoAPoPyq6URwL1wAs8NJ/Dxnq14ReoHCdkxq6teRTZR8lAUf5VmfQQM7LSrHPqABGNlKdAMICugoiQDivKKj0Iu6JQuwKSDOzhZxJNrtWNHs+6PFSbGs9gKiTupbWy4G3sF6pdMXJ1pAVqxMGm+wLRynQLUT8znGZWsAgOpLgmhw9b1df9W3NWHokNRX7PAyU6OMh6qk89W5iPDwAj2xNxf0eKDmpj9jj7AWCFYINyw6KfOE2QZBalQDO4pexOPov+MTEI6SvdrhAjVyNHhRoI7WhzwY//3oW/etOBFST0F/6VBsO1DfSF25GFG7lmmj4xrSJVhPRW4DOflVcKnJ0IDP7tg3GL269Td0ycu7H2nbbgOShRD1RRWPfCMyQcTf30vBecrFi7KC2+wJJ9gFyEC8d1gBdT4BZBEoqudlhAkK+kTTgUDk4bAzkhxCyn2iNg0Io+6+D8NX/XuGQlLyQf+nzLYx7+s3H+vI/9z1pnjSx1OKpt+kuCzk8n+DkRXO1qFzMD4yv7oLxNziYN7J6SsFz67IIcdBzncuhyX4PPZTlt5xDA/sbbswxKncajuVVUc3hbM+vYVPYYg6iQ78wAzE4CnW0HiQR0UfoOAJvYKLOOWEDWJK4Rv52G0LrrhYaSEwQEEljF1FNXNsxlKSRuY51jyhtrM2DXnFBNJdFguPT24NCDRmkMJulTxGqdDgAq0gBgwhXQRS065FXLisjAk5DRxqcqRzUiWGpKknB6taQQeRCGZuCoa6ixI0DICQBnNoDRBZMBu5p+KzBfyd2uLLtaekJjDpijOYcKl4wtkGcvW19g9evYgEM0fsowf5cLARj1NzemONR2RrlixUndF7MDwz96R8nxiXMa4Y1aBXw0HC+TATQb0MaaRIqraDSxuEZP9tQRE9oGigO/0I/FKTh/rRFgfe40aA7uM/+UQZ98GoUQwYgnCXbRg2qjq45XxQwjgJWWmR01mqy0DIMPV/0bR4pnAIgv8sUg04xtNfmkULhVA5XQ/CNSjqRrY2Clz2lJccS/ImmIzVWc588SJXcSz9tXOtON4EQT0Bjd4Sh1q1bssgsesHaEW3/Jbx8ge6IJSldpbp8nuCU1tY7JGSFryn6hJQIecLjlRSSgpBm19qz1YWcCjwv//1qGZcJpI2u+aTyZA33VhoCDmtdc7nfVS1B0fQ7zgrje2fjyM+gQkUNcOXElj/rMgVRqURGUQBcNWHaDCJnuGvCHDkqYX7JYRhgJIg4NnCJ5SrR2IZhRAATUYsnFUDU+ysICAnZYQNhPSy80sc2rtBMKQa1PDkfpxT+0yWItg9Y0kKVj5dcRiqZbSNq4FbBKGNJGRWUG8hpIaBsRalVgZiX52vneYh4BIOjPVPaA7wmmZFHvuINqEwtBji+jOUiMKJ9XrEjsPjipU6T6sZvZDBOYus8rpPIVQBLVbcDGQDxHKtr1jXRzyr2tn9U8+mUBXCO+qpaaYAODi/7XF7+c8E8jfElci+0ABCwJ/3ldeemxQxCMGhtK/ZLOfej/+5v+Gc+cfTiYKKbTnoxhBTQLiRHRA7WTM7SCzGlw7HIz46kQ7O4J7LlMHY41gu726q9vjUfk8ajTZn6WZmlkTEziOBKyJ084dwos+sMANldSpYgNpKnHS9WGbJgtHut2LJ6VNMT7PXY3j8g6oH8NvfGJcg4AzzZ/1u793IFl3n7KmX/AX098HvUd2WxWSjrdJ1tODKZyJHrXReqJveUoWpsgpx+eOJ8ZfWcpbIsuRED5ZtiU096Kegd2OOiPt4JOSeCNIlrzljiXziVQpVgg4YrGa6I+R8d67e/zuMULy0499ujP7ka0Vo3pkLp0D5zkvftPzKPrIYVM+lsfKPqZPMvk/dbYezbbnN9MKxsJd3zLSBJTpa4rh+S5b9jfFeFuj1pNN0e64GNTTR130SKgjuEo2ttaLGo3Ww9onYDnbV3uGvYcBWqfcGh8yEQYItJI6CJnJW7AH2WmVsSKpyrcL7CeQoX6EC/lJxHjSoUO6nsfL9cxL1snjypXNI3jZb1ehA4Vgq4FQO7VJ7huHwYKyMw7JRf6KA6iMC5FcDgJn7RlH1pXZCeLTFI/us5mFgeEhTjxvCg9eUWRgb2J6sh/KuMNBfQBbxMGv1ZRrSynwpyhCagPznWjFI5qrT0dKXRebkpuqfwSkFjVzGp2IYuuympEq9j8g1cIqWv5q3BAXNYGbLSBCUipAtZGr/eOQkYCCk06ajjaCsi3MCmptzusJPN5+qU7Z90ZLTZyhXtwhFc4JyYQyAgsbr29ZqoWDAeishFZdKrW8qjMp5kV0v9QrgqPZg2zA/KW37RdBoFMozg7tetBN2xg3zHgR64vH0Igd0ydivUDeQWKRQLmuntJOvDybnjcsHdp2rLfCSaz66sATkFF7IIDN/2DpmI6xjkc8o5FkxbwBH3WnZW51IyC3/DlzYYcb71VROhwmCM0HE3V4vhtG0nK8/ukUG9SYxSg+qOXw5Yzs/S633an25qgOOkSFJPO5bvlmTEejGaTUzv0zLTpnVOHepxunmvMaUGC3Eis9mbtjZrO+TARJJne4KerNy8uySjGJvrq56hDMWxxZCe16xUtFC8z/har4I9SOy9qwBD5FeG95inYmvfF0lxdh3RtNCa5M+ktJbZqWsjF0HGgZ3uxtfH56aaQI7CegNVyWCp0gHNt5i5A1OrsxPKR6ulzjMB3e3WgLE5p9AyWdk+dN+B7sedkBxoMEc5oZUtjx43hXGsNJ7WXd2gKu2vzaZOjL288d4NbF3b/9uuo8Vref19IpOt7Ch3RF41Ohv4KC9ZJ54+ap548+gJH8q1Oi1QFUh4EWdpRl809TvImNaEjfm7Id2NwhE11u7peHos8NaofuL4dxP+gTnnJuBfpPdcZ6+vQ3LXnoYzm+77i2E+2c05stcL4p4BQ9rwAiqAfGLBQTnP+ivlEjgyjA1OwwP4fGlBWDVr+P9zFIr6jRKeFMqNVzJlNGRJifXGtLEKT5K6PjSRL4+FCnOhGIttdxg8NxdXOawTM2HFEVu1+d3xsGceuSNPRoxz/Niqxonf7RdnStIjUzFh40Nc7G7i0c1OIZSiF8YuO+26hxgWTYeIgx9LtaUdvkrVz74H+xtZZ/xHWx6gnPYjQlsqthQxmprlluJRKvKLhVZ7nmzWnIrX5rO1yYBKps5qsa1MgKwwpXQ41nWenWjoaWUIZhlCZZSa915G58QwJdYtRT+1VPA5iYG3MBu3o66aP+Pa2IzuUfAC6NS9olpnen8ekOTpZCnjbmjy1lmJn1/oKnV1FZK1tMAYf1NKzMaYd7bD9jGnUv41UZ/Kmm2aIwd1D6WaIGF5D6r8KzkkOUEE1DJJ9mjAlGIq4KTAcWXRtwrg+r98b281KNNatn2DmkRnaz5XU5gx8mLzYS7OeUqFEEif0po/OZpiqkypXB2qFYzFKsy2C2O+LHtYLxJy+qFiI415Y18GAjLVNZqEVJteISPmJULEyqBEnbHg6sdCIqqMqbPCiO30dDSuZyrY08ao3Wsy+70qfbfewpsfrDQc4xlb1ABgrOEuLFTaZFL9c21D75pS0P+fjsQdy8G2tGlKB+tw2lkT814tRJzXm1LBYsT9bgDi0KhvtjDlGoDeImGN3tHe1GJMGuExItTK2B7Y69YhS6s/iLl/Nabheq6doXxmE5F5MtPV53QP+XbPsBMO3zuIdw408nI/SgZtYn533Uo9tKPnq88aRm+HnbIlDjVzGxuTHdvIVJtgN0td66nQyOSHQblklYJFZUfJXpfUIMbZMmBN+80iwMgzgPCNv/ysPRCZm9JfIY1gTtd+eyt7MUQe+RH28cnvefWObr5g6C9axsumXhecs+hh/z44eY3zJNLscCAGUV+GYVUWjKooNHxzy7W6wz5ufmtfDHYO5aCiGPYEHOY7TL3rm3+koNhqWN15qibfalpdPw10DW9hP4IqgTTbZpmd3wz1DOa+aIRjte6BreTFeEKVPORhnRfI34TGprUU+0LZ1DRQQTmVxBmt5WOfHte6+7SSpFq3axVjQfI4McnISP8E3oJ9T+ojzjPtw/e1okTvfaBrQJm5YmIeQ4rsT1oEWLBlO+gt0E0fyT6xzI+HjY9N65O8G8EPrIIJzApprYT4bkDinkzNn0Y3YJre5yLTTuQOf2dD5yNJw6wtpnXLG6WmZfdPnXDwUY5AZWKIFSpyDveaNFP0uGQWBYv9ctiS/zfg16J1TegA37ktZhk/W8ZQ/lt9675yS4UYYeqcTYL0UksWRy5rvmTJnWXokvViSBW8m1tzRdP6z8OM9gFKJygTt/CVPwvx0sXfcoZFqXJ2wKaNqP101Lg+pk9ZL7QDs6dvfsgL1chzKezLRivJOLmBA75U5VQwp+tpMUAqfWWHoADjJQWGU1djz3jjXIhet1+G59ajrDnWkZAmlxpHO5hIFwBpoU5qlkPdKKHONTAMX5QZN2cDNqJGvq5T69LhsbNblpmlbX9+F5iIqjYqVY2NYJKI6g24RWM4o0SO92sZ6R2wBpBzAKGWZMB2di4bZXIVURd3Kyty6K0cSW/TDiTX4eW0arKYRqDtWFC1rcC8xp5UG26n/kE5tIauJwpPt9mUitK8nJupaq/22m9FfHYzFnzSVNX5qln7yTn3K+ub/TBnCo9NhwPXlvLAbIxBFdNEASNQH7GbODcIn2N7f5K0FpLYSf+3BRcyl9n5N64kKeYSod2Cml2El4wYUj8N8EKTayDGYAlf1PsFiJjFFyfz/3j0nZ8gX19woKaUFZZtXbhgwrWGroIjhP3gzBkYXfcLKJ4jp70atBua5VZgRfoD+DrGVqulyjyolN6qBGwj9DuHdAjkOMUUCuXQBzivwZv40QutjNpED/g9P0SrdwlPFReJ5xGGfVeVV67hUNh9FQk7JCurtRX3KDw1+Q8105Zsyd3IaW8TlTSbAWtsGrquVnb68HAIoY0bOU6HoBIcgCR33pNmRn41RK433KEcV7vySaSZJHIyKZ7yaNSGcFGu0qU7iZprTznpUhIK8scAfmmXOcb/UiunTD/ifFAualRsBXhyFR7mg8fjhnCZsn99kCItDkcLF7ZCMXVtOFDm8Fe9hw4QCzamChfs6J8XFv8nLu2/KF0IgbnVqNYAe/E0HvtcCawUIQEJsR2uTRSsFzhGDh0a4JK+JBUbrrsZw0C/DHlDKCejQ7GpU+5nU5RREflzpd1zuzSjQQgWQFrD2xobXZeXZX7S7B4L5K5I3H0eCjK/kcaZeQKJ4br0VERP0MFRKOMVC3hB6CLkkgVhBPkM0SuPdqlYyi9pfOXhmfbgyptgxtSeA6KPhCXnQM0/pVh+NPVH3H6H9Gn9DHgZFiw/ZM7mLbpwHuvdO8WQkEC7lrnPqdEhWbY9umOfkKHW3DTYBFLEOq1i5AvRKr86lYFcLJTYDbXUv+MeE+5g4+tZcofy7HI8Yq3vMlUftLZHMv18JIpY5WpqCBxL9dcwJWlIO1/qslIEnpRayo027d2aH5GeL5gLUyfn9HrR6hMVuWSQUtSU1DJcQbHwcClJJh6+pzdzq7l6LhjrakRO1AgRWXNkxdpl8PQrqwTkmbsQnDYpgovtYxLJSbZuAwSF0GGBsCA8xsQtLGP0qzpTtygyuEZtpNCuzYHK8Kwdu7bz+XUfUIw/vZARwPiSnndcmPRLPrwQpz+L2SdcTSGPiwSAUpw01zKtib6gyyXiWTRRLC4fLY7ckcWX/G4qadlOpaxYThjaaOi8yax2cmjc7TeeVI54v/mXdB9KfCJ/WgNIks/YTbRrN6UxTeXqCbR7FD4WaxtZSGvdtY6v4cpoV0mlPAnh7u1qnrRxX4zpRDryorrEefJNJNxT14UL1WfL4yNGExK8MC1E4Xba6zy32u1DDbRHsk82SdPtCaAeMqOyI+M8Ghxe0qxd2ATSQE4zsq0htwwkI5422qWfx33hpjhhmd8jXzzsOMfk1ZkPdCtTJZoZGX3UkAFozfYJ7Sv7tQuXRt+5piEXsZzKGead8qn+c0Qbh7VVKu8sd/Y/5dF+ck2zUyP4t5gke/1VZL0+k7SeviJwYoeW7J7Bb50Snc76dxaKYJ4wubsPOnjCFs46bzBKctn0Lz0sT2niMq9dv1m1R45xWVC24ZzBZfnZqK5TlkCL1JQ6ysFdkrRaJKXdDZJ7TvzRU6+nxbua+4+NtIaewuS6Wg7StiBrInMIFTrbrUMsZWoGEkdBebjcfaFp1aR2sWC58yjhnUPSXs9GTz2HhtyVV5tJoQTiXh6FX3YVENAclbiX85W/m1Owq0sT+YuQZlpcV6A2CEJ7Bbsbgs819w/YPVD6Q7X6LyZ7OPUmZazuXhcRMgCF/T4OgM66r4OBdXlAqtMVjdvmorP90q+Hrfl5eCGMD+8K6BxL/IvZjmMkbhUdXGEOKKNP+8y8qG6jTqQTI7GAxjLcWeDCftsN6YP/cQJuSXzY4tZOJTUTBQPP0QzqyTB/NLERfsr/8vMXz3L314ibfT+VH7Oh7vl9z2hUt/jWIiL31KWa+TBlZN9IC07+b7tPt2sX3rwsbUM29Utx+tjBMZi1n2g16fMmmqqL8nyK3svmqAVn0uNkbyNXt5YMbba2nVtdS5YkZD6YTgkDGy6/GL/vfiXmlT5EP/SENfN3U4r7RnYl9p+e+O55Ni73avxzf1y/9CDdOzi21yyAped3nUm4Q/QV/VIP+qkvJZ9vd2B0T8fesb1/pLxg3HRVsr3pa8JEEr2W+ZM47tfe8A69YClTPb/HR4kP1pCCZUSuctssZOlS1q1hBOzca9bKQe6UqpYSfyrOZ02dJmm+zdnv5UOGq7PG0v5aeHjmXaHYXiXp5EHW8B1pz64AsCIt5FYnU97esZQwQ11jpGkgm3R6mHDGOE2r4zAW9FxMVwcPltrSPoKDCROJKZ2p91pP/WLyjPpRm5LYTgaazDiQduPiczO7n7UV5LIz7d5WuGi5hagYNa0W+HejQyP4PSjTYiWimR/FRPTRzPV+4qVOQ5BtIK5jvcsK7O72bmHV6dEO2AlMsobjoLff8/3Lbb1lRMUTAsR36JK8EyjjBX6lyL/vMWr/nb38JanDL7T0M21Lry9Ly8XtXpbevDXtfY43COVim01c3YHdy4UG/POU0IaFVAstu1hZzs/hZSeJkqXjACK87HMC5cpiWjbV0rDwOzFjJU/PW6lnM5dHahyjhfENBn6Y95atsaRtNNKe46RPM+d1LalK9fzcjOztvJmZo33Bz/eSaIu/NXbsqfTmG/kCQxhtrFFmzq6oUiuTmco4IAYUJZJlnAdlWVfouQbeaPeq5/B0AgPIcl6WIRKGpaYIhFD4a3gwdfKHqA31Y/uX7R8zzoZqA9F04zcPaK2Iab+7CMfetAT9foOQZxxLWidT2uTKw0/JT9cqVFaFEnj+luvm/sn1ANPwxl1cOc6D+9MVdBbUAyVRyGQbtBHpgdowZByJ8cegPUgPyoNsjHyTyPVwXnJiQx5r4EbxZOxLnBuMyEss6sZrnMz9ISJuDkwDbfCBoGIRnFUz5aOAsbEriIXSWGBmwnVR4jft37obQL5GGIcZue9U0aEVvobaU9KIeK32d2wQ0ZtMau/1/o8bPHwCo/9rhAD5+h+X5rt5s6/pgnYkR0YqNVZVMa5H+HR4U68zXlMRnUmSJWU3DQQ5gn7eBALiz37bYCYvlxw+UcVYTjZ7HiUmPlrjLiNLqk4ekpCXN5gRDC4D4X+YQyerJMuC7IfEXPGQuWE5WZJ/4vB0jsf8OefvLfRDh+juwQJdZBya9rkZhw8xZEv6oQH3qksKe1SUvU4gwnWiMCoxJP5a3LX4OOYGgCa3VMS7Y2PdCRUfEypjXe64s/djZbwrbgNiHxMqDAJEKZ/zaRV50myJOFuae02aF5FsMbFruVIikmw04Ko099JKkis9YPKVBPd+s6IivcF3YnDHjsHD3ga66iBULe5ap8ZwWHb6T3n+aqkhHqfl9a98YVFbn6/s5+G08Qbp6nz5n6flh4yajmta3EoSb7NVrdvHI61M1NihMR6SN8mqOqQ5dqT2lc+tasuLle2kSWOOtKNK1iQ7bNB02vYH8vbp1NbNnJ/qlrzZ3UjnqxvJPK5ez+WRu5lHNGEGm9xojjC7yTw9l6vnkxrVLTKDwNbeY7IWdSOJH6mBR7acLzWE8S/wdTyezgJw2CIKeTPBL/Yp9r1QsAkBExP0Eb6OP6wbJuvII/Qp6pTSfmQ+OuP7OGWevo3PGKjW6QPn8Ksjf5VxIpTTYXUu7k8q4by8Huntn35cp26RW4sf/KKGaCK6FToHF3UYUIheUKeOZmw2ctMglM7OXyBpXONzv6UncWOExUDV5CJvnaIxQuOlFoYUW+UL1Gt/JMtxH8KUd3av9Dw/l5oOYSynJ0FM34ZtaeBuuHgE/bllzd7baK/Mb1GPNBrTZCrLC73859wfxrLs/7mGwF5bXP8BZ2aUk8ogbRCN/pboILfJvu3+fTQdPUkYJXFstrTDjOF6zB4uxrxMBHf4ymGJjvc9nqRuqW32M5OOSSCncdDt/1eA54TH3xPKcU9RqxUinQ5Kf79H6WnhQgzGo3FrtQ0a1+Om4wuf7jl8OKDUqlXO9mxk7ujSHQ6s1cd6QjyFaWmjC26NjjbPx+YI1nxbP5duzcq1UeXlP1b9UoBqbuLjPf4z/g3SBu/Xa2fZLG28cPe1a1oBryc4AA2sN/r8Q9L56X9VeQ81RghT2Tk2qy5bRanguYrk1WiXaxltPndG+FfYX8KZsBzUPN/z6tWepwuPJ1y7Q/uVVRvJjgIBDP8q16AmyAgSqlZFdcxZnXHWDrIysaCQLn/V+f9FJykWGy+BAoKNJyQtq51bdavf9EqYRfigN1zk14AZJPXXTCXSA6SsD3BbP3aNjKZabmh4d4J/ns/u4jz/h6Pbt9+pR7T16y+9BGLrW3n7Tn+kqkAcL6HpUv628wSmqngEtZ/3n4Cg8SdkAju/X/u7p5OakQHg8dW0zSY08+NplwJHxK3yCnr031VaFsG/6mbFUZaor52qAiBR+IHgLltzgLeISghKDkohgErA3MqKweABQBb5ri1jWRhLofYnZIHWbq+uvMbHmiMX6C7DmWbfLboFkWbstp6/jm5fC0pxRllydfBlqrZFDpUMuLG9erKCBy4BwS+tOLwi2q5iVVFqc4xzYcWx4RU7myTqFBZALq3v7eqiC0Jb5tMnOuk5Avr8ltAJenn5QH5u8QOXS/pESyh9viCH3jkxnx7aIqB3dfXkFrDungS4R3n+uT2Q25ubD7xCdPxa3z/71rQL1wp4f42NemwNoePvGJW/JacGpiZX//aWvj/CaWsc281/E9RlByTnSpkfkQlGqjZUPacyhZpXKApL/h2pwr4rfcZQckJcg04K/bfV/sQQTGjd3LnC5Mvzs54xdz6E9psNCPp3/4ctd2TInknN3S32JA9YiV7b5XB0NtUDm8ZapzewtJ4ka3yPNvMYNiO8AOFHwvcwevCDbOpJxInt7ZmXVpbNxtERgTAEvdArKwzFCvv+nAxlFovNk1lx1VczJ8MsXnY6oq0NQb8etDDL5azzVcLMSbHZLEHJz30vZKGyBIVeNAQcjqD1NRYfEVY5YqVejUB5LLY8Pr4cFF/5IYHviVE64qWxEK2PFjJIisRKgcEeK6KvD3E4LLxhD6KtHZHq74N7AEUtQLQnRBS45x7Qe4bYCGe4ESYDiB/cDs8inludRPKhBLoFUktIM27yZmH4d9+NqXoyjmsOsUgF7kCKj5E8r5pqoKVYGkNcx1whf7DeYBvtIS56Od3lCcfkBPD4vAAjBb2bhMIF4lCk3WgKZU3jmWV7fFUsS8v6I3BXT2BjXliqICVFkBqWp/tyLN/eAspJ+GsNOv+jUUA5SCp8gwtLxV22yTfB3I+7jzEN2PvhNSI/cFpDot1IhyV//4QpMH7MJ/uQK1nDvGsZHhgeiSU9Yc/795ZRV8BmOAqHMnuCfQdBfg7PW3QRpp/fPtadWr910dj0L3BAacSmn+V4+c+bFqmcvTdJ/+9YurTj/6SbvU5VksgZuABTWopZEOg8YchgCgTMDAPdP+yr7m5gbN8TamIHFccuH4QZOOfvoS6TCNw35NPjowTZYXYw/AaEIc4hqJ7093Yz1Rxqp1LbqAiGEl5InlijYS1aCbr/xzUNa80EmW+kHx2XuUCGGWtGOqhK1SG1RrJkPosIZntPHPg8kXVO1vdxzbgeCTu94qd/NKRBHvCR/hHgDZKUn49cwcMddCUsTZQVAkUGKYvuaUKh5qGVPp1dDY3NhuhkQVAQPCRLlAZT0uEO/BUz9bbCWx4QZOZWRWpDR0fbDOYhtSXaH2j9FsHB9znw+y+kGJEO33KaeroFrxMli99z8dz3ARthgfCNIdlrUMTPGpQG8PLSQ3yF0GBovJeXDkx+UO+1HeH3WYOWKBug6CwyBgmBgOfuKinw24vofj6gpKRgQiNe1O8mMYM/04ov9rZOaz/dZmqZtz9psbfN4LJfoFZGD4CpPOcXuI3DXh1IubwgK9Kxu6TuPuyPk2AsgB/ATyC3Ukq3MqBqnjPMyVN1QMWIaeI0QgztFAdmEHyJDpLKu8xfOd5dK3mfB0QsXLNm+WVK4Go2Z1ug37lKDIDx/qMMZH5G2jundI++jRnUau/NxWjwop3ZyXR6m4adi8Do7djiF/l1DgnFMSwjhpIVQ96D2HNlEA1MVIafQ2f/GnFzaTBxKb5UDAF5aSBUF8TpNQfigl4bfAHVbOKka7H6uWYfXUUeKe+bCpPGf5Pa7/ky0NkKXCPdgwvHddN7cDhd0ryk+UqmdL8a+GX5L4B6v5QZuRSUDRafJ/4dqfGXRZq9A/WB3uZIqU9WZOlSAAuGMsDbxn0nzj+Eg8/uR5aZ1NUmlRO5/ywY/mjinO/4NpAXA5h5UZolyoiIyBBlfS/gkTMiskTfo8+FiBe+EswReBuMOveb/Lmt+BVl3+R1AC++XSKjCNrOWA5+8Ech7/ndQ6Jw6c1760no/tjLldEk+SJeQKk8aN9v8t/2yY3v2hqy3xTvLv8ub2qYqIIY89XOgIqvdlatle14YAgpRETtuH/c202BpZ1nWDq+LiDVVTOO0kUs2RUo4UuI07zp6/eYtSO1dRGs2q21xgpTkMQQdB3HFBskRryRzuginuBe4FApq8uYb2AYZp/gXNizgLTvFACAvTv9ho9zx+AR3FndjYDPbsyoj0vU3feNqBcP8Rn1SUonq8np89leE8PW+66HSVr+if+npbX6n4R/qiMYJfklNX2hfTUxSB9v5SHWIaW/D5KFKOyj9hUmI338lYeY30Wupo7Yj+HU9M8a7d9ef+nvutP1px/UbebV/cgAzzo9a3PoWN2sAfXRO/WQK7v+dKinf62/AaROrKdOUdeH0gR1KlRaZYJMQqwnFMmTfq/hU0CIlAT5GilxxxBksiUkEK214GKi6EUqb305s627qCGdA8jIyC4EWn8H0HQyHc1UY+t5Fwsl6+3lcbkxNqfYLXlXLikT70nG55Zn523KiNqx+rFxhzY8pT0pW2oUG2y8HMGVXIHRkx7dJ0HgZ6+UK/fHdG+bbdnuhSofI6DpaLheyN2rELt60D6Zfru0vFUekFNaKo62xuYAsoyFwa4omx1z4cmPLHdFUQhQhratDTjf5yxzEacJLouVchGmiS5y6UDsLC/rmdYbrYk18RUV8TWJXwUMNjiH/rrsBfqenJOULf4bugbXgA/AN+KiS78Vq2mpv+xpor6mmWn3qCLaNG1u08ZnAP59uOLfwSNSBWFp+cLUNGGBYAosw4RgtI44L0mvI+zxvwJPTaWVeIFgbW0yLOeUFbxyBrNMO2nMW5fyaIK3tbeVW4khcjZPEeJ7Zx0lx/JUz9vE3aR/GnY47JBQeOjwH0+TBeelK4P8XtZNgENDsyfV5CD2FgT69/31JODkWVogEJBArIF0gWG3Q/52KaTWN8IPnMAuSBEhIeBNQDHsBAwEGy03vNQlF7kV6ibuqSVxpFHYcRiobmF/Jf503srbtyBevJz5N/+N+Pf7pTnRAYf6O2aFBqRq0xt4O+SBSyGx3jdfH6yLWBtY3zwLtof5t+7m/O99wrdzVx+Qwf2I+VfplUrXqvipXlq6cuE5acJgLc38DPPvtD2yClIQG+GAVE0vOHvPHjFpsHudR/iq+RrLRAbCZl5tOgIBFRoEcaI1NW9osaZrX98Fj+LEMvmekXxpZJrvp0/oUCQEjfcF/hGvu7Bm7eDFixegEvnJGeiwffDVUbS+HzBaii7SfIAnQ7SYD77snOjPrqkCTl3Uzk1InoXqkjQ5rR2khayiQk4baVGm+1dWYV6qMFkgMIalHRAwTta0+IOxAmQt9MsiowY2buyF4Ug93ZtTXPcCARhbSwqQBe0FDanm88rz8T8fMzn+fKVMT/tK19BmaF1zTp0KTXgYag19mBA6e8vS6GycyoaLxutz03gLjgyDd9WlLxhYSc1mhi4gUm30eDODZKabI/8ePsfoqwhuXss+x+xfGtQ0ACTGGgwNngLL8swZIGp8usYhVk9KW6YWO4rV2rN4Z5b7ozigg656vM6euR9Fq//zTHOQ0e/HJPYTn1dNJJyFMRYoaGf9es6PW4D+IcY4R4ns8Z0gvPJ7hfCiwn7dTKB8ogXEkBLxV6jelx8YxtlKVI/vOfyrrzG9F/XjsxUEVFBDMpy5bP3Htd+r5AWS3FxJvuy2gHulubKCW3RLc3KlqLRUkiMviKxqjnPHlJXFuOPeAnpvbFmc+x0DYg0mplQT0FbOKWLnL1+ezy7iXAF0sG+Znc8puqKYppG8wcndpqjdKOnZ3VJa3xoXkXhXpbYCMdRIZMO7p56AmYDut0/IfvJRqBnW8Oyd/vHb44npZU/e9bzsMzaZo7qDVrjd3wR3KcxNRpVyVo1SNaoojBe4/Walp8/ydwsSChUSkcUi8lql+pxQfY98uZ4K5DVITACALEoPTwsLS4tIL/I+l3HmGxTwtQ0Ezgm9rWXy1JnhDoQ20NqQkhBfWRG/4CttaqX8vBTlfwXYTSXSlKhUYqGXMdILQQpwKs0JaUdyymPrKWGq/kt8RVRhYVStgL3UyYsK5bVF8qiikaW1td5OpNN78houpIuBlgCoq6j1DkWhXF6ocPwBIFIoP4f+Y2lZl2jPiEgPDzdFZEx20MGOZUSciQEmxJiqc73oJpX/eddT19U0vwcGbl9XWvbLtwN9gMzMjwp5I29qtmJ2ICZAHvgmoI5DAt/c+pCoENO10DrhRMz3BAABnvPnPUHzzp9rnE974+pVm1BvAt+gNgHKGeVk26SyHbidMzY21dvbpVzU3TN18xbwcBZhlDVKyMeP4hdSmr+dKiF9+EProTHdY8u+tJo6wih7lFCdUb1P++IY1v9q96GlKCBe/eJafk03ZY4qH5GTzPalaSusTpMzoySHq/VlW5KzvQGql5Kn5XK1vLKikE7KR8pGygsCrio7Q4rKeFytlrttLT2gXlsfQC/7WEfGd+I/4pfhXwD+eF62SOLtQXq8JR9JSeBMorJNuSVxcpLu24aSTLYDJSjfyy6owVCtXOikchKUUVWVMXnQG5AxCUAYCS2ZC8y06xu02oZlAg4vEzk6Wrqao2KzokGzGcTIKraasxl1YQ/ZBXUclDsp1Y0X54MFniqBhOFpCXyacBcenJ/eAr+I+B1xEd5izE+EHw+AfmnaNNvE0ijENGKpQ6XrRUwhHN8c8O/U6zcu+F1EL3x6wyP4ykEQV8Vmq/aXvx2L5nrXvon94RNLoFDPBDBjX1Srqk5IqFbVQgQM9vC1KgjyWn89Tc3+x85Wp0Xzy9PN5fxok4qtZJlfXutZKs6qtZy3xubiLD//jGw/ZXys0xUbF5ZBe001C+Ninc7YOCA+4d9W3ByqepHKwUj629YhOrH9M9GPvoHOAjHZSk4W1BfhAfUYWnlHCpaAfBi6Ok5VyfDVuWAgGg/PsGmtRj4vSTAmmFbJ/CwLa/dc1TfMOZ7cljjTtZCxkGumuC0Ztn3X4q/tS5ij/obYEa/jGazK2MIORNwllG8avjKs0hZUJrjj490JlZ8DOOKOP4f+vPz8mj0P/3wKo0dNDQp/zarx0WOmVmeshJZ7WQAcJgNHg2jAWjoChs+A1rC8V6sHMcHLgqvcNIQXC1QVPM+bh/PYYgyko4OkNNLgUZLwxilLSA1upDQG+2WD4LbOULT1gBpdAJxSe2g21IsOgkrqQdmhs4sQHno9QfUDLLQvNPx7tQ8uyoUGo2d7KYgIHUbLvg6BEor469fiRb517CJs6v/oVu5cJjED7J/B5DaD0/ft8lZp6FAYVAeVedNcEJgWhiAjYHQwEEdra44rfwFi5XHv9a47Y2OdceXvkceYJptMGhNXL8+3KblhgjK01QaxQgpxmeeaGi9fbnwbwOG3wjRzyWalzKPU2x3z9u51PrsoVpvYMeLPGwfevXM5Z06cPJCUZMu2WDKz8vJotEz0courjWT6bvXO4o2hs0n433YVRWG3OnqW4B18EAC6/qKVIb7897IfAu8KpgJB7Ns3jhUzi4FoQO035UelFccWzsN1d9tolx5wk5rnKs2vZoyyeT3zCu/oaj9M81kU81qaMf660chOu86YZtIN9u/MCaDxZByZRqZTcn0fDDxwaBl8pb9vyECIN0Or5Bdj+mixK4LBfz6vI24g2od80yBGiMnX8A9iLXEjMX0IY7oHDj73ub+YfjAQpnF0nZANPCo2m6ALQDVAB+t+M0HNxY8GZCfWmjW0VHm4juZH5geAgZDM7SD8rverxr/tAquBoRpQJJ0UtD0zJM0sFS4HuFvVxJJl99TqVz+W3A0/vhr+3rIS9OXAbVej1pWxp475Idy+sb5z11JkptoKzcqkkaVIgr8adSLt/7nyOqR3LsYBLpA/RPX4uBFLUYsQFV7eP56Y/O7XuUA7UeW7MSaJp1LGArnwcuZXXGPz+MMlpwCXHzo8QBj4qjz8sBZ2CnMShnyJfZlWgnwVcC/QUzxT4nHQlE/88Jnmch3A50TPAgAB44YAn5cGd8yDGOOOuyTG4YfLqElM03y+ni+KMheGK0Q5rFh1DzDpE2kKC08REtyTXMPDWb1+onROuC5TqDVzC+UuQsejJQYDP+xOqTg4b5od4fduF/fnNqXvWBHs6c5tlV1dB4sWYQIzwzVoI2abAaNFZ4YHYhYVHdwxChYzlhBM+FS/cjTtGtrQnbRu58gSfDo+lZhyUeLnDKKJkE4wE3EuTDuVSjEv6fNDWi7tGPL4ebas/482nzL/3lEa5+s0ZmIrDb8IFZbS9AWuq6HPaGa0dI28EUuuV6n1B4W8FEOYLSmMn5Iv4F+/wHfCfhBNWZ+wIWZpqDOH/tFBLQCUXm2AVSrumfKR5c3N5bCfYctvvrEcLo6EABLaccaHPx0v6S+cuH00Z3ih++AZHyyE0+BCKWIKfheihRRS+3UBXwNqA14HrINYIA5ZuwufIgRoAV/9HUq8DuFawOsCtUL/rwEBOuDR8nsH0lT1DqE2CsronZmuTuAcxpu5XpAS3kbixt+SUoBE9OpTV9vewTPLonWdOQXW5N6Kla/uL7v/SinGA7G4/lVFP1GPrS66Q6gU3/HoqPo4lriMIBqXUYJdwWeQWDeuDOfBIs8ENQRTCoR0nKJ01OVnzyz39HNL5Pqzv8uU2y5KpSAKIP0ho05M1F2KVsfuSjr1JfF09Ai2FA2kFj8TAKgsxLx5MxZY+t5eIEoZ8qypisoqJip1MpSfUYofCCyNRVfMEXPzez2ahhi4emuQTAvquXardwN68GgcQNDIvRY9QTRgZhB+Aj4yKJ7kwmFTOOvuXTbcW+fctdsJg0GmFXcSb9u1C8OUz4n6YoX2F1MU/yGkCw5frPgDWfsQyK5ssUUksoizpwLpqOAcesqYaiB6PLcpKyLyqSgzoik3O8WV+6WN+pza9iV3Xqxtd4ZkK3Kr5MaNxkAgsHHrVgLKaQBF2LZ1MwHgxWd+K5tTTI2Xapvdcc6YmA/qsdwxZc5Y96Pcf0WQyYMBK6k1eU6qs3Duj/YfJ1nlzABzuCDj+JKtItyPa3m//Y8Yx0Odq7m3bWsAo9sazel39EEJuLLMRf4kFmB964XPMjWXxztjPgzXElMe/x55GHDQHf+CAqcEd0QXwi7MNjo2/Gg4E34+VsjBjji6l+AcvPOf6+iLmaYCqlf6HMce96nSNRLa5/AY2kYvr42wUeworLeIHQM7gT0BSyebvMGplCQQNb2x0UQ10ybSqNh0amMj1UQz52ZT00GhpqamDJqJOq47g23LJaGJ4yK09xxs2eQcH18xmXHl77O92HVvM7oLMUpw97c/9MkTb72LGvKnl5BKExe8KyUfb4oI2mYvE11LLn2/ILGUlG6DDsvf3UqU92/44ZyZSgPrGP0Js+T97N4T6VM3JeRZ0UAjMEOb7VAUyeVFCscjAY9cJHcoHiHLenGZRZQZGZkpsvwYIEbOjLSIfiSmPM1HzO1fMbgGqmI4zKblGGBmpjxXMogjJsm9IjSkY/hcyRVk6U7MThYk8XhJguR9ATxyEi9ZsI9kyO2Tk0ogTZI3VQycHpdED89oxfUwexjRK634NUB6UPVsd8CSwKVMLGMKqW4+S0mEX8BfgCdiS8ILCeSm9n4rTN59MBMmI26tJfjsVp9Yy7e4Hjws3AuIM/sC0UPOrcmbFyNf+b9G7k/eNK+RbRcr3DKJDIkJYjMxRNQa6Rr6AzoMwmEkPjslpk4l2m0hzq2U78SMsjaU8X8QmaSD0oOA2RQQkLHkDPZR1srF0dsPhKY51OrN4z1FPQ8zeypXbdLLhkNvfVjY8eZ4z+72h02MGu6OrZe+JrGg9ZZXI9bQH0PqfJNAQpUHpA+F6xUZCn/B35n8kQsou/P/ioyFDyhSzstkrdTK1pIBKkHZXAlOOOPd774R4Tuq5V15tVgqf0dyymLK4+i7NhjLkrh3XutuauZA1sAu6jNJ4v+AT62Nzu1ZaSGKJLI2ODlrXnSJwuFQlEQ/K432zIhyxJTMywpODtJGJYVY0rb7rErMB5nD0gThKZEmUH4uL42pyzR7FlUtrurOMDN1vLRcUH6kKTwlTWAOK6BJcyWSnEoBpr0iRyLNkXEoepc+mC1n7CQr0VqcFq0iVzKoj+zAoe9qa0OEv8RfDYsLu1ojFKR0WfWmhIWl5AeIuHBHwQ6//LPx58Lig68uEHoMyIe5O/N/fidX464K44QJad7AHUDN9jdxLu6cMJ7CGVO5cwcgn71q+Z13ooWLvN3IBihGtajuxjKszjiV/fDRBsR6P+J/KxvUiPIhib+slQ7yehwfUgJH5VcYpzZSe4sYUF66nzXOf/Saf3zYrrqOyGgNIG17/+sx74UFxNVbjX4s6JzFwZkjufzMsEtWpSmXrT31LZO/ZoR5fSrBEuxGVLQiaRCYnClQI6Ys8c4gN+zpPia/wwsuH4vAMfd38aX6RfuZgtUTn2qiZyPqQgq1D5DqkTy+GnEQOTd0tq4wZBmTPzex7UY1PVmwdKwo6eFvkQlNzJjRvRybyWUf3raZHeSUWzUnIDw/XH1GGTkCDY/PYqtU3HTIhw11HR27mg7Q8ZCZ59LC+TyBxsiJPh2U9tNISdeuxvjI+A11QSPwuAY/PunI06CjQU+PkBb0ebCyatZh38Msu/BgHbvjhFpbFsHjX7DzfmZlVLjNvL+zwJ/gsWVphXG755cOBPtmGNmHDg1w5QYPHMtEns1nJoc+fzITCcSBKhM+N3rDtr53a3ZemuukxaKiAy3VaA3Jp84DuONKvzH+/Yl1J9ZjHXCkhwfwGhoP9sapV32ncSIELPX+R5PgOTt6ThX7+UAm3sKgPuQo5vy3O4q5gsnsHExfFdfEy7jn539jxHuvfUAIYFb/USfFJeKZV9ZZ7nTfVNtLtlNZ56E+3sy4YAi4ftKbiI/EM8e118xtmfqVus5PcijHB8FahjK2+kU+ivSGECKZHFA5c45oBFJ2JDQsQMxs/b9wwgwYafrQirkkowTaeaJtZYlBIWJSs9bH/XRiekYEFa9aAUThusmEkX7ZJ22ulhfT5Ok8Kv1u9aq1bs9rAbH2tXe2c2T1d7IjXUBDBZ+3XjfySdY/QiAjfP0wKAwEFIRPJOpynzmloqELjgts7fK4JYWFkhN2be24IT3aCeq+L/gpy/pH8EEIX3gI0niYeTCeFSTSQcjMb+MBo/BbgHk+vbXOPFXdGgbMfsc32KManpb4omLRJU8lRdk/A4xzwlqrEysSQvFfAzVIgXOM+MLq3juAvP2Dq6AwwFZ0KOXKpBmoSati4Sv+Beb++E1NoAz4dwU89qCyfzzdyjfw9HpeDzuTjsfT8w2jfAFL1hH+qGz1PJ6Ob3g/uatpLvG12PWLTfQTxzmerJ2tVs/umT1b0zNbM7vHcrZac0hiFYlsLpHVs1020WyXyLbXAIVDu0Si4UfrT50oyX5ojtHEmN+X5sibAE20QKpumrNK30jCo/3pge2adhg9YBKHxr2YOxvoP+VVS2ohSZUtFYFKejSEV5SiB3lW0dD0iA8Gbasbl6LnFsmiGd9UAL/ZQ3T19do47YGDF3iZHBc7kzd18IDOa04LuufgQTp99mwAAtzue9CZyK+Io3mshwnJ8Y+SH8UnJzxkXgjuVpTPM0MAygF9rGuWql4VsgsT4Y2c15+GLcvlr+YsmuPq8NNTDJS0ei8TfvFRaLwfoFW0O0uVgT+Y2+6bvHRsNbOgGZuMS8Wlrf3U1rDQmAqvc/oADkBefys7dW23c5QyHDl/TswIYWfBimR+YXlhVoRjZ4tdHTPXndbu38IqyglrwbTpq9vWxUzGrHtvbLWP4D14Iq6b0YMj4hsPtFg/8X2KzVgYpGHg+ijfxr+JAKN5PNsoIC5pmvroP/D/Fj811kSNj8VLxmve6/Dwaf6UNTSssdHZSf4rIOpc80Bfz67v7h61gqF7qeayd1NdSN/BU3d64fVv6EetJTZWV4TAaY8rQqaC0lGKhbJ7q9U3StFR1jtzrZTRWbsnM4DE1i9fpuWEFthsAuDL6E3+vb6+6TPkHUwD4fwbAulc1xerBz2Ic1VZRscN6D08+vnztLpQAquVxRM3ffly98vnUFPx8kIzGoxqmrVKh5XXMCt9wVBwRq+fM1iP0fdWaewr4+xx0Xsj3v7jUk9mjWpN5cL/Gvb+JZnnntcXMB2EHTtDPTOWWRiMffHUT1dmURAGPpQSANZLgO/B7xHYrHyroMQ23DrGtwnAe7xibXGVxCPT00XcJ4r9xhdk/sx1+jCfAezZc7OIwR+mW/Umy/Ojths2IHz1vn3Hn4f24gTw4RQZffHKfrEHEGcCutIJ1r2GF5oQX5HJ3K9Yiq1hmVgadjJEKxPB0Na2+czQmf/w4cZ1pf2J+DF1+8irgxL2o4tVgQ74BPduYhyc3jHyhEr/0O5KRRj6Oex2XXhfpuvPJxZYlNZnvQ+ExhgUwYCHfFURINcGWl4+cWX26cPr5f0cBRADHlGicWhv6udVnjvWg4ZEtlsXtr56FtkGevV8TVVXV+QbkAj277tXKW9L61dA5OSxQKwL24q14di9Tlw7xorjN1uxsi1bZgIIlIUtdCt2AzarsbmxwYo9jpU1Nrr+9CfNgLXNzZ4RSzN8I6IVsHKycsqpF1XT1OV6WnXx58c0c1A5OGiEAS0Qp0WmpIdlhJ0UMNjgtIYWMEaCGOWMoImkEcFVisNXhnvVKAqicgukRbK7AgZ7OhQFXjXhfCWnPPRHybOfk9OcDIiaZWJrU3RsU2D3RGawwSsXqswLrBPJ15mwLqoLawlUeZyDoXxOikFglTt2Cjm016mkmD1eSYF6/wiRKUPoaHtJbIrwNwZ6GTI8uxT0N9oZNfBac+XABCt/2bICdhHnkp2TRe9sytrif5AzXryuv+Z/4oPwTGbXiItlrHxu0eWvIR5XbEl0dGms8y/00SUlMa7Y12h+THSJQ2lptDMWiB6vm0edooIoUXGb0LtUcTlTm6w1wjTTV5nqWA/dCIDPMCjF3VgINpdkc56ccjrhuFwIuOdvppGP8Lxjd+5CUlBL2kUyMcil40Al0nICcqZHoDkBNTOE9EX9gxocCNmDAiDlqnaAaKrxi/k3tJgWRCS21vmp/ZbP8gM+l5XkMC3MjsUMKzP7PDOHYenosDByWOcFDHYhw8LMOc/MZlgVZZjehK45JdF2RZQ9uvjJDxz6yYs9KY72YRV2RckTRTFvn/tp9MngC2H+KJh5bVsguT3sQlDMCso9eohzCIYYTopRD/P4w+r45CAEYqh8HEdLhoiC27zfsdEP/PF3csmJ3hYHxA4KJLXDZL2YYiwhItNfDrXAgfQODA50BUO0Cy8gY4AvMvWxgdycJUs7li4JbeBox49SU/OGjg3N1j+pykxqjpLFUnLUG3VYllLJVrM3onqhGFu9kSlkKVUsNQdiryehMOhxyxXKFVI9hpqObSHgFPcp97lU1v2QkPssOh+zHhJi3gwMr8RjrnjJfAAUoiuEEV6i9Pa9Atn6CGbGI4/eDQlfvSILZ8ARpFadZPQwTqjVkm1QKO4zIwtnY+AYNmEFhSYDsslM13ffSeTJJT55EvApvnZBixnFWL87/e23OqxzA/7yixbTKRePnSxvrCVoKI32vQFGMOANmhtbGiPeuF7VinlevSzcUAqLufBYHnwXIMPi9u2p0DGz00JSQub5UBGBw6eqqDEczxHgYo2es5CnSomk2f4xkb1R3mMzNLUxk2fg6JMi99YwdXsq9t2YUyyxyrTLzVJTrrAg4raAwe6Um0+jHa5uKUhjp7IFKqEmPYWnWqjn1FwEjng4Cn6zgI2p7DR2wffmFidknx/hqHAGgNg65LrhW5HdhnqFXV5YUPVueWBvdTvQ/sBX4NquqM8zMw91r+s9pA1JdZgj0oXC9AjzGQFH0oVn6Mxymh1aUcv9QXiPGL9tvDeIBu8FgHetT6t/AybzQCBzpx8roTBaHGEZnLv9AEsyXGiClXKXkcJMk+QhAPeF5waWFF/t79f6YTPU/rLZmRfc0u9bxEP5wvC47Sy/5BB1sLLSbn4M6JUNdSla6H7y2TfvLq2e47lk/P83s2rNGYmRUmi7PRUQpSWMDwGyUaqSJQw3lsxgiczhMiBOCATCwD4+ARxZkyIq/7xejwM+PZ/xbxl8JfXjGkm9An/+3Kmh28rbQJyD8viPq6LFxipZnjg7R5InvZ4ny5YMrU9cl+VLBtv3VhoXi4T/4coV6Brwlw+/KBCawlJTw0zhx9OEBtul0FSojmw8BaaDGOA7jZHqAiBdmCpQkXATEEpoq8qX5bQxu8yvttLslCyZNTwlRp1iN0YUGVOi1YdJZg3Ootmt1TmxbdKlKtVMslqsCmIy1UF0stqugtR0VRBLnBkZmQUogakzZ6htQzMyMwNVdkxaK9sAab8Rj7H63r27Uhm+Voy/AV1W4FZWjLQO7KNZYmxeyh5IY6SYrPU2ipiydG4tbD1sFn2bPG9xZ2F0nWlKy8E9w23vH+7DPsUFOYNxC3G7dVkndoFxMhro9K4s7TH6Clywq6nY+rObU8jKW7o0j1XIuSRgsG+ZlccpvKSoXhV+bNnS3v6pI8eA0Zk2Jpuzns1mZrH82es5/qwFSviF+kffHif8BbhyAWG533q/5YQs/Ca+0SZ8W0Dvi8o22BQirE2Kn3Rctx55+AtdSqOjRISPRrSYgu22og4eRFnR88sZoM1pBTRqenCkRkUYsu4tAaezTi5ZthFIFQZbV2/sNhpBZ3P8G5TsrHbvZAiiQDHrSdFSjgblBRigQQitz0gvJhUDJyDUx5RUBvMfCr6anY/g1v13C3iZ6GsY3DvRu56yeDBR3zNIHOyprnZWDxqCDYNIfB/D91/T2dRkLSGyuZJE/aDB50AMPECLwuvq8PXa2a1Wb7y/Tvz9VfQA+urV3jNnOIhleyf2oj6h9+6lh3B6YeB5w/11qZmk0NRUbT0ufvVXGMCXINKo1rklMRWpJ8WUPItZwuGIKol5tvn+nGulpnE+fKjlBOtTy5vMvszK03TBsz/U1j44eqT+b99y37/rj3wZ/8z8DDmlfjQE/MQ5tPF18aKhpOUbZUNz5h8ynU1SuEDtimRaRkop3ScQd4r2+8Jf1VGrHhIOv7mkDPK73nEAv7BvAotO+v6iDy29pSWdlknPBxdkMMy05hba10zKyq+MKBwgjBIGCiMqwXlbNfObaWZGxpFjDkl3VDK4wMyfu3x5lMBckCLvLq/oViSDU7sUbneQmqIF1iq6gfihlcrE6upE5R3lvHpitfI3UPY/Sv8Jc1KxNez0FBVjSCxdz9NsuZytUrH4zapCxWKpOGr6Vk2tUlWr4gYkzQrJLaT8kKyu2/GLAf50mqX4OZFzFqkdUgPYukp85xaKyWLsYbBALJYlqhSCQXpAg4Y2wU81S3FwbflYK3243TwOafBaVZae9vpuuv55rIHlFe68FeZSHBiKgKVYWPmg3ByYqFt3xCofCdgg9VEtujv3NdOrATKuzIAQmGPlWjhuac1PgjbDIMhTPZ5QH55tC6+Lz+DoRf0xoAMDkWp6qgc/X8B29eFe/xGjs0cNcXHt3Lh5KTmbxEyJ186du4hvIt4DLnFJP9efBh1RRceX+XvXe/0dOysjmkzPBZJu0OZsne2NXS67hB0VYZ406hTArIWadX6M3P0J7rg4d/xE/NzYHZcgxUPelSiGhsQUE4q4epFcsZ9UD0Sp4jPpaRRdkKbcrQnWUdKYbFKUMIP2mpYhjJ4wU73nB2vcT6dB42K+smOW1yX+0ValCCJ0E7A/OicDPvWZZ5tJzJ89FCX2QGxY5Pjy0wsi+VnBa49RCIeIvjvK9hKeLWczFwT6VT8NyMarfW+uiFD+wy0A1vmigQu5xR1RKVnLtUs2GOIhD3aF5FdJ8TcelPqj3/SFqnWzPIkFmTgtXcs8RDv4bQqeYQYp0fEuVkNrjNUaLu7VORtVjSfGQFz19pZF6J8COX4v14aiB9BROHWgagAp9hgSlxmYAURiJ8nvQLI9f4ZgsyJPKiMZIyQ9eVjfz2cQ5wpP4K6SGeOXlmGwH6n2Z2IY45k8DDMSg3RSncwqtbJagywyreysqZxBOsNneasAqldbua7TX7EJ78U3WqsTK+PjK2tZmMqhvyJrKnm0bgL0Ax1gHAaf21fgQZlYu7LZWJDlm/XXRY3vQGVrCgd8NYB4+GKoTv8mCY0j49D67/VoGomGTnKAWR31BRAol6VWsjlBnOmSpeZCIcsKg6jT2NrcD52+AdEB1IaHPQc7vWMnmoYOGTApWCruCXpKyZdfd9HLdnRUMi1HSUctzMqOgpzK4bj+2D7heGVOWeoF+8kXoFnwTO/comyfSvibFyftF/J6KntS7hQiHvCyfLJhP1phZh+ShsFfHfUMm3mwB4gx48OiEB2fFnXAEcdDKfDni1p6MrK9Vyt9NsC58A0+Rl7kQwTiKzJ86DUSN3kq8ivS1vYasYtmIwEQhAPNgX5Rh8qCEN/xmwchsvAQGYRMHaY2GAnNUUM58iAk6QeGDXsRr5ERdxYjOaRRGwJCCFnIBgGnCuUQPwyVBXsKiBlp1bpCJvlWJi4Jx6yEX4BPtot+ICj9X/v7+f/lryT8IN47Cf+5luGTVYdkW4jt9GQdAm9NsGwt41AnRAlxQv0gLg6GfevPbXvaWvk3b7StgU/9kOOT3/W9yrZJCko9AGWVsWvJF32Y6GJ5YVGU9exUHUkTuHDfPtrY2NNncZIudbbCEdXKlPv/pAVSu122cHkHblwgW7FQxku/GKnNQikgOBYp9nhmLLDAYzoGUBcWM3OYJTdsPeJzhGe+MXMqnFPAUh5gPsvKsI4aKq6LKpIXFMjtUfcE/K7IC6KKfo+yo0nba4vP7dnllkSDWPTdo4PBGsrgrFl6jCRYgjHU1w5S7l0bBICYq/dDQ6MTMzOXLZtdDUCvVcgevJX9/RaYSdXSSd3AuHCdKIzKYJ6PM8SdN7De/b3EE5yq9jj3xA6ID7o4gnDjpUp1KU31tphb/FZUeFqtevktM8L1pAjGdy+TpwtFYIfySaq0S6o/n68TI4qyr+92rb+jBmcYAIUByFCD76x37T4FVvsBBgVg8AOrT+12Dwa5BeJAi6FgBIqZVLdKq6hsgqje0A1vVNcYlQrtqlYDEwUD1C8nusKdng71gsGYogpVD+Tfeojofvl9Uf3zgSE9qgoRDemDXr1mYnmix8u7nnY97QA6SaJ8lk7HyhN/wVqxeXQzX/B/rUPg3g3RPl5YiVl5Ol0+K4rNnithJ1Psex2/m0T2IyIwVIo8mMR2RmE7V3/dJyeeh5Tv8v6w65RtDr3Ad/nYIkvmgLoTiNA0rcsTBfKqd/rt6p8Ym1i5e+WCyoa5pRZgAlCvWEVY/D1pbWBgzvuYhJjKojaD6tn3ERaZnjMPpxGSG8k5truHlTWE0HdEKnm8hxncHB8VNJfSZBj30uLTvRw0fBXKbyr+/y9uaxgc04VjqnV2o6lVyzRw8mcBlogUXunRixqIAS+CQLc4NgqXNCmDmOEmYc/OOEhbDl3th4kmd3gYN5ndJgHz6Lq/sq3+vnQvm6ruXBUrNgC/ejHHUF8ksHGVhlgt1RZqsWFgBIDK8K0ris5XSIqkxdA6SInEKs7MFFslJRBzdYG8l+zCPHnBbflw0syqt3CEysvzOBfKPF5KsFHU46zsiE4uzowcrNlljsw8K3fh6ekRmREK/+l5c6VMrUDLlM6bN910PYZeYKaz9p0d1gYctorJLN5kjF5cUdIb/g1yoTZ3Nn2p//IWcI4CToAb2GtyK6B4W7Lm+bJHwW/CQhLClNHQVmfoI1NoQqjpUai9+dfOjE5A3rZg+/aZsBndbu8rfw+Goh3rLRL4vcuvha+tgz7qBYK1joHu7kFHsl+tCAtS+wxaXwuB1n9nrMf8NYNbR+Lw5B+c3XeFXADIF8OggEw6LSFA/rC+30XaBuTVGTnoMn0gy70zZ/9/tw5QNpT5TqatabVn5nnr9ZEnkBk/QQBm0LVIbfOHKtJBppq2uM+hjKs3acOU+mdkjS5jsR/zQkYgLwbk5Y+angwI/DR9xnkq+Hbyx9mgH/qV2mTUTbYAqvQDVvd6DtTDfiLKAJAHntxYds66Q89+ZwW0+tNjZN51O19jWO3h8rdz5qfPOSXRNZwLms47Iyl93xVUXDuavukHfJeOdoYywFT6CtS/vqhKTRwE0i6DJlnXZzHabncVAJlWhzzAuJcyDU0HXJTWdNp5mnn7vEIsVQM5BxE4Z/eqqKdM5nHzzdy8YeNATxMAA+A3Mkr0HY3zMX4QIgyl6Z4RdPyVcmWnZyGQ97f/s8PkATJtK4bL8aRPEW4adFBU+ndDWCJOt73Vjm+cSkyx9+i8ev9HUi57B7llIZ5qFUy7g5HtQ2MOZLEKtYF0mKC1mA2xBFPwDZ6scjA5dFp6k8469mxs6k7VjeftyGNOsHvUG71J/ORIzHkFxCbrz3ZQutdhjj7rT4dgVXvgq/Rx2+g4mQEBv/7bqwfi5cTqZbeCk7/dkb0+K94f93wC8eGybxQyR1/vV9kBJtZJRAWmvv23VvAFMF+1hGha5U8BvgpOhlhP//d1mWuvUl+oqIdcCa2ONi2+UJ/7xhWgICTS6UsXaBq1iG32Aqf5nepvAN/6q9gcEuntfpPbddR+WKJe9JEpXzvUQWUbOChjxzXnuww9ErKoSyNR6rCfJKvWLTSEFNoDLJQ+yqSeVBmyQl8ewpUP1AEQLZz2+8hPfY/TD5mIRWRTdaij9vMts5rHAOqqP4VcR2M//i8j2+fS/8w0N+7aSAgAv/u4KPRPVLWGt4QTpSi18H+KyKs7gMV5/rfW7w0+AXAc5tf/T3YDv6r/LcOGquEfWVC+VYKHu9v8EwUz/zGyfybpzMeJQlcov2bE67/h1Th6UvBha9oB0LDvz8F/jnLa1b3QFm7KSYo6DDc5uKmi/cFDHboxS/3gg1dqMeHgjTrMPninl9zbPtNIxyqjEMMB7tahgwtaOnVwibr8hstE9Y9xOdTPHFxB04LEV/KYIuLgmixF43bXouvBKLYsImTsdu28I8Oh55ApUeN3/gda8RDfl39q/Adjoqvv9P5atOhXDBjTdUh3ts653/WRx90v421D73k3Rb5Bk/cu5+nD1VWPPe8Njyc/RoSM3U47n09MhkM/dGbDavr9+wda8RBVVlF44n8wJnrP7mh716rMrzSor7DE5nRnaxnL/e6YjDzehF8MyOj3ad6ZxMkbNFjdcxrJ6YMrMlSvSvf5CmOPTGuyK92Nf4ATiKTY9C/Untbh8HH5cXgC0c8/IJBEDgqmhIRSaV8g+b+byWJzuDy+IEwYHhEpEkukMnmUIjomNi4+IVEJgBCMoBhOkBTNsBwviJKsqJpumJbtuJ4fhFGcpFlelFXdtF0/jNO8rNt+nNf9vN8PwQiK4QRJ0QzL8YIokcrkCqVKrdHq9AajyWyx2uwOp8vt8frST1VZIHRClScIR1J6O0XuxGRlIGMhMJ8nCZuZ5Ybxmln0uWFbRDYD5q0Xa8FiXA8x38/MPikHsTtAxIs4+XpjMGbqKS03lylD1GsyHNStcMZNat6mA2Tj1KvVyAFn1YL92ojIYcSoEmRKPZhMyjg+KcEq/X2mIt4RHtJnBx4hNCMaB4FM48i6xnDIEVJuOuxBfF5NHmbVk/cXBcy/lxxPEwWLO/V9NWVLX3rrYco8qclxwMsjBTmWCUJHEDYQIx9UTL8lrx/uPfZ5U9fYXhmKxuPGjtPiMFgkuWepIjOEFtgCrwsnzWjL2EcGizTVb29MzLareVkfdVtN4DiCvz+ztATB0t4KA9RBKBNLEq7vd8KzmNyEFQieNkeCWFq9TY7nZ/qv0/qih3YrsSlYmaOUnZADrqvFCU/Um6tssIs4wLfq4tkvv1ulZ6tYcoEjkNcby3KQDkhf62pj8XAemh6CHaSRxtrGj9XiOFjbcWVFNnC0SdhauFVLZ/3KOC6yWNntvw5y+n6aevG+bDmV7XlZzSxZWnz5uAeDLfNAb+N1vfIUBuwo6O0vnGVbL3hOIa2T2EXszu6G8oB0jINLNWwfuvsdy0wZFoFgHXAFKi2kt8WqfaHVha8zWN40ffrPZWpjGCyOBAtQSQQ9NtTnP//2Z1EQA4UyObK5UOGQHkfrlYUWGYd1dZMe5FqWuDn13RKEgg3ev8TVIjwOls+ChseoKrAWaljmZZEcLo5I66uKF1A5r9cPs2rV1TogPcyb4obA4fKCw3j0R0b4IFYgtHTbALLWnZDle11BL+XC42aWaBZhN3Y2/PQVxkStgeU892N4WuHqNRfhS59ZEkERYOBDBdZI88u8RXh2ucibJUfnPRxfRCiesJoBEysXZS/Cqx7DI1tfpAzxMuCDq2wQZ6wBe9nOHKyToPY/4U5SCOHSYHK0Pi+hDE/zg4/hnw180JPcRGWe1m0V37t3exhYbZObo4RbEoeLcPdX9TYNDJQ16VO+5oRbWIogGMfBpl3b9DQ9ZK1yL0vouogpXTge8fKUp+/1EJxQu7haK3rLjHam64tMQ+bhcX+tTRjThc1MqDvnZuvVwUFOME26umWt0zBPONgGi3YXqhwZLDT8CcvqIjmWGQvLwSbauHerWj7+It4/BpUQonEtxOYm3LOOv//tWIRfgsVgJZQ2GXNFIWWwEcby/z4gVA0SqSqjR2Go6kOcVhOFjBFTLvOB8n3A+pPc7Ww7YAfBdrQ4qmqe3h/skRH2M4R0AgA=') format('woff2'), url('vendor/icon/iconfont.woff?t=1739954498423') format('woff'), url('vendor/icon/iconfont.ttf?t=1739954498423') format('truetype'), url('vendor/icon/iconfont.svg?t=1739954498423#iconfont-icon') format('svg');
}
.iconfont-icon {
  font-family: "iconfont-icon" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-tuandui:before {
  content: "\e650";
}
.icon-lianxi-1:before {
  content: "\e653";
}
.icon-product-cate:before {
  content: "\e655";
}
.icon-lianxi:before {
  content: "\e66e";
}
.icon-sun:before {
  content: "\e64d";
}
.icon-youjiantou1:before {
  content: "\e64e";
}
.icon-cog:before {
  content: "\e64a";
}
.icon-rocket:before {
  content: "\e64b";
}
.icon-luggage-cart:before {
  content: "\f03d";
}
.icon-tools-hardware:before {
  content: "\e884";
}
.icon-cog1:before {
  content: "\e65d";
}
.icon-certificate:before {
  content: "\e64c";
}
.icon-star1:before {
  content: "\e67e";
}
.icon-icon-quote:before {
  content: "\e817";
}
.icon-stopwatch-4:before {
  content: "\e674";
}
.icon-money-bag:before {
  content: "\e6af";
}
.icon-customer-satisfaction-rating-star-reviews:before {
  content: "\ec4a";
}
.icon-woman_mechanic_high_contrast_default:before {
  content: "\e66d";
}
.icon-play-fill:before {
  content: "\e71d";
}
.icon-cart:before {
  content: "\e698";
}
.icon-shoppingcart1:before {
  content: "\e648";
}
.icon--shopping-cart:before {
  content: "\e659";
}
.icon-laptop-phone:before {
  content: "\e649";
}
.icon-xinxi:before {
  content: "\e763";
}
.icon-sandian:before {
  content: "\e647";
}
.icon-arrow-right:before {
  content: "\e645";
}
.icon-arrow-left:before {
  content: "\e646";
}
.icon-24gf-circle:before {
  content: "\ea9f";
}
.icon-gmpzhengshu:before {
  content: "\e63a";
}
.icon-jianyanbaogao:before {
  content: "\e67f";
}
.icon-chanyelian:before {
  content: "\e63b";
}
.icon-cece_icon_cropping_32x32_normal:before {
  content: "\e64f";
}
.icon-youbianjiantou:before {
  content: "\e639";
}
.icon-caidan:before {
  content: "\e790";
}
.icon-sousuo2:before {
  content: "\e638";
}
.icon-duoyuyanguanli:before {
  content: "\e637";
}
.icon-duoyuyanguanli-copy:before {
  content: "\ef57";
}
.icon-xiajiantou2:before {
  content: "\e636";
}
.icon-shangjiantou:before {
  content: "\e635";
}
.icon-xiajiantou1:before {
  content: "\e644";
}
.icon-fabu:before {
  content: "\e6a0";
}
.icon-xiaochengxu:before {
  content: "\e63c";
}
.icon-duihao2:before {
  content: "\e69e";
}
.icon-zhuxiao1:before {
  content: "\e633";
}
.icon-zhucedenglu:before {
  content: "\e734";
}
.icon-duihao1:before {
  content: "\e6a7";
}
.icon-denglu:before {
  content: "\e643";
}
.icon-zhuxiao:before {
  content: "\e6eb";
}
.icon-log-out:before {
  content: "\e632";
}
.icon-email1:before {
  content: "\e770";
}
.icon-gouwudai101:before {
  content: "\e684";
}
.icon-gouwudai:before {
  content: "\e671";
}
.icon-yk_fangkuai_fill:before {
  content: "\e631";
}
.icon--zhongdianguanlichangsuoggaq-zdgl:before {
  content: "\e67b";
}
.icon-chuanzhen:before {
  content: "\e6b3";
}
.icon-WhatsAppfull:before {
  content: "\ef56";
}
.icon-bofang3:before {
  content: "\e630";
}
.icon-youtube3:before {
  content: "\e62b";
}
.icon-facebookfacebook52:before {
  content: "\e613";
}
.icon-linkedin1:before {
  content: "\e61e";
}
.icon-Facebookblue:before {
  content: "\e9fd";
}
.icon-ins:before {
  content: "\e626";
}
.icon-youtubered:before {
  content: "\ea07";
}
.icon-vk:before {
  content: "\ed01";
}
.icon-weixin1:before {
  content: "\e627";
}
.icon-dingwei:before {
  content: "\e628";
}
.icon-douyinzhanghao:before {
  content: "\e62a";
}
.icon-a-shang7:before {
  content: "\e652";
}
.icon-fangzi:before {
  content: "\e641";
}
.icon-fangzi222:before {
  content: "\e642";
}
.icon-fangzi1:before {
  content: "\e619";
}
.icon-V:before {
  content: "\e729";
}
.icon-youce:before {
  content: "\e640";
}
.icon-xiazai:before {
  content: "\e629";
}
.icon-xiazai1:before {
  content: "\e856";
}
.icon-xiazai2:before {
  content: "\e612";
}
.icon-EPS:before {
  content: "\e621";
}
.icon-linkin:before {
  content: "\e61d";
}
.icon-shijian:before {
  content: "\e611";
}
.icon-shijian1:before {
  content: "\e7ac";
}
.icon-shijian2:before {
  content: "\e784";
}
.icon-gouwuche2:before {
  content: "\e62d";
}
.icon-gouwuche:before {
  content: "\e605";
}
.icon-tubiao_biaoqian:before {
  content: "\e6b2";
}
.icon-tubiao:before {
  content: "\e63d";
}
.icon-tubiao-zuobiao:before {
  content: "\e70d";
}
.icon-tubiao1:before {
  content: "\e607";
}
.icon-tubiao-:before {
  content: "\e609";
}
.icon-tubiao-1:before {
  content: "\e60a";
}
.icon-tubiao2:before {
  content: "\e60b";
}
.icon-tubiao3:before {
  content: "\e61f";
}
.icon-shezhi:before {
  content: "\e60f";
}
.icon-tubiao4:before {
  content: "\e604";
}
.icon-tubiao31:before {
  content: "\e61b";
}
.icon-tubiao5:before {
  content: "\e61c";
}
.icon-tubiao_biaoqian1:before {
  content: "\e610";
}
.icon-tubiao41:before {
  content: "\e60c";
}
.icon-tubiao6:before {
  content: "\e60e";
}
.icon-jiahao:before {
  content: "\eaf3";
}
.icon-jianhao:before {
  content: "\eaf5";
}
.icon-cuowuguanbiquxiao:before {
  content: "\e8e7";
}
.icon-duigouxiao:before {
  content: "\e8bd";
}
.icon-duigou:before {
  content: "\ebe6";
}
.icon-cuowu:before {
  content: "\e656";
}
.icon-jiantou_zuoshang_o:before {
  content: "\eb8e";
}
.icon-jiantou_xiangshang_o:before {
  content: "\eb90";
}
.icon-jiantou_xiangxia_o:before {
  content: "\eb91";
}
.icon-jiantou_xiangzuo_o:before {
  content: "\eb92";
}
.icon-jiantou_youshang_o:before {
  content: "\eb94";
}
.icon-jiantou_xiangyou_o:before {
  content: "\eb95";
}
.icon-jiantou_youxia_o:before {
  content: "\eb96";
}
.icon-jiantou_zuoxia_o:before {
  content: "\eb97";
}
.icon-zuanshi:before {
  content: "\e728";
}
.icon-fax:before {
  content: "\e727";
}
.icon-jiantou_liebiaoxiangyou:before {
  content: "\eb03";
}
.icon-jiantou_liebiaoxiangzuo:before {
  content: "\eb04";
}
.icon-fenxiang1:before {
  content: "\e634";
}
.icon-star:before {
  content: "\e9a1";
}
.icon-email:before {
  content: "\e670";
}
.icon-youxiang1:before {
  content: "\e654";
}
.icon-kefu:before {
  content: "\e625";
}
.icon-yonghuguanli:before {
  content: "\e65a";
}
.icon-yonghudangan:before {
  content: "\e78c";
}
.icon-ceshi:before {
  content: "\e617";
}
.icon-ceshi-copy:before {
  content: "\ecdd";
}
.icon-youshangjiantou:before {
  content: "\e6b5";
}
.icon-arrow-right-top:before {
  content: "\e781";
}
.icon-xiajiantou:before {
  content: "\e6cc";
}
.icon-xialakongjian:before {
  content: "\e618";
}
.icon-xunqiuhezuo:before {
  content: "\e67c";
}
.icon-sousuo1:before {
  content: "\e620";
}
.icon-sanjiaoright:before {
  content: "\e6b7";
}
.icon-hezuohuobantianchong:before {
  content: "\e615";
}
.icon-arrow_right_fat:before {
  content: "\e62c";
}
.icon-sousuo3:before {
  content: "\e651";
}
.icon-address:before {
  content: "\e60d";
}
.icon-home:before {
  content: "\e603";
}
.icon-home1:before {
  content: "\e6ac";
}
.icon-fanhuidingbu1:before {
  content: "\e67d";
}
.icon-fanhuidingbu:before {
  content: "\e623";
}
.icon-17:before {
  content: "\e616";
}
.icon-tiktok:before {
  content: "\ecdc";
}
.icon-icon-person-hezuo2:before {
  content: "\e606";
}
.icon-bofang2:before {
  content: "\e8a3";
}
.icon-whatsapp1:before {
  content: "\e8ea";
}
.icon-whatsapp:before {
  content: "\e63f";
}
.icon-skype-fill:before {
  content: "\e883";
}
.icon-weixin:before {
  content: "\e600";
}
.icon-fenxiang:before {
  content: "\e739";
}
.icon-bofang:before {
  content: "\e624";
}
.icon-bofang1:before {
  content: "\e717";
}
.icon-shouye:before {
  content: "\e622";
}
.icon-gongsi:before {
  content: "\e601";
}
.icon-mailboxFull:before {
  content: "\e948";
}
.icon-a-searchbar_search:before {
  content: "\e70b";
}
.icon-jiantou-right:before {
  content: "\e608";
}
.icon-zuojiantou:before {
  content: "\e602";
}
.icon-duihao:before {
  content: "\e614";
}
.icon-sanjiao:before {
  content: "\e63e";
}
.icon-instagram:before {
  content: "\e87f";
}
.icon-Youtube:before {
  content: "\e880";
}
.icon-linkedin:before {
  content: "\e62f";
}
.icon-telegram:before {
  content: "\eaf9";
}
.icon-facebook:before {
  content: "\e6e0";
}
.icon-pinterest:before {
  content: "\e697";
}
.icon-twitter:before {
  content: "\e882";
}
.icon-youjiantou:before {
  content: "\e61a";
}
.icon-daohangdizhi:before {
  content: "\e65e";
}
.icon-youxiang:before {
  content: "\e62e";
}
.icon-24gf-telephone:before {
  content: "\e96c";
}
/* *******************************************************
 * filename : animate.css
 * description : 서브페이지 컨텐츠 CSS
 * date : 2022-07-26
******************************************************** */
/* Basic */
@media screen {
  html:not(.no-js) [data-scroll] {
    transition: var(--transition-custom2);
    pointer-events: none;
    will-change: transform;
    will-change: opacity;
  }
  html:not(.no-js) [data-scroll].animated {
    pointer-events: auto;
  }
  html:not(.no-js) [data-scroll^="fade"][data-scroll^="fade"] {
    opacity: 0;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
  }
  html:not(.no-js) [data-scroll^="fade"][data-scroll^="fade"].animated {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
  html:not(.no-js) [data-scroll="fade-up"] {
    -webkit-transform: translate3d(0, 30px, 0);
    transform: translate3d(0, 30px, 0);
  }
  html:not(.no-js) [data-scroll="fade-down"] {
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  html:not(.no-js) [data-scroll="fade-right"] {
    -webkit-transform: translate3d(-30px, 0, 0);
    transform: translate3d(-30px, 0, 0);
  }
  html:not(.no-js) [data-scroll="fade-left"] {
    -webkit-transform: translate3d(30px, 0, 0);
    transform: translate3d(30px, 0, 0);
  }
}
/* Custom */
[data-scroll][data-scroll][data-scroll-duration="100"],
body[data-scroll-duration="100"] [data-scroll] {
  transition-duration: 0.1s;
}
[data-scroll][data-scroll][data-scroll-delay="100"],
body[data-scroll-delay="100"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="100"].animated,
body[data-scroll-delay="100"] [data-scroll].animated {
  transition-delay: 0.1s;
}
[data-scroll][data-scroll][data-scroll-duration="150"],
body[data-scroll-duration="150"] [data-scroll] {
  transition-duration: 0.15s;
}
[data-scroll][data-scroll][data-scroll-delay="150"],
body[data-scroll-delay="150"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="150"].animated,
body[data-scroll-delay="150"] [data-scroll].animated {
  transition-delay: 0.15s;
}
[data-scroll][data-scroll][data-scroll-duration="200"],
body[data-scroll-duration="200"] [data-scroll] {
  transition-duration: 0.2s;
}
[data-scroll][data-scroll][data-scroll-delay="200"],
body[data-scroll-delay="200"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="200"].animated,
body[data-scroll-delay="200"] [data-scroll].animated {
  transition-delay: 0.2s;
}
[data-scroll][data-scroll][data-scroll-duration="250"],
body[data-scroll-duration="250"] [data-scroll] {
  transition-duration: 0.25s;
}
[data-scroll][data-scroll][data-scroll-delay="250"],
body[data-scroll-delay="250"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="250"].animated,
body[data-scroll-delay="250"] [data-scroll].animated {
  transition-delay: 0.25s;
}
[data-scroll][data-scroll][data-scroll-duration="300"],
body[data-scroll-duration="300"] [data-scroll] {
  transition-duration: 0.3s;
}
[data-scroll][data-scroll][data-scroll-delay="300"],
body[data-scroll-delay="300"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="300"].animated,
body[data-scroll-delay="300"] [data-scroll].animated {
  transition-delay: 0.3s;
}
[data-scroll][data-scroll][data-scroll-duration="350"],
body[data-scroll-duration="350"] [data-scroll] {
  transition-duration: 0.35s;
}
[data-scroll][data-scroll][data-scroll-delay="350"],
body[data-scroll-delay="350"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="350"].animated,
body[data-scroll-delay="350"] [data-scroll].animated {
  transition-delay: 0.35s;
}
[data-scroll][data-scroll][data-scroll-duration="400"],
body[data-scroll-duration="400"] [data-scroll] {
  transition-duration: 0.4s;
}
[data-scroll][data-scroll][data-scroll-delay="400"],
body[data-scroll-delay="400"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="400"].animated,
body[data-scroll-delay="400"] [data-scroll].animated {
  transition-delay: 0.4s;
}
[data-scroll][data-scroll][data-scroll-duration="450"],
body[data-scroll-duration="450"] [data-scroll] {
  transition-duration: 0.45s;
}
[data-scroll][data-scroll][data-scroll-delay="450"],
body[data-scroll-delay="450"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="450"].animated,
body[data-scroll-delay="450"] [data-scroll].animated {
  transition-delay: 0.45s;
}
[data-scroll][data-scroll][data-scroll-duration="500"],
body[data-scroll-duration="500"] [data-scroll] {
  transition-duration: 0.5s;
}
[data-scroll][data-scroll][data-scroll-delay="500"],
body[data-scroll-delay="500"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="500"].animated,
body[data-scroll-delay="500"] [data-scroll].animated {
  transition-delay: 0.5s;
}
[data-scroll][data-scroll][data-scroll-duration="550"],
body[data-scroll-duration="550"] [data-scroll] {
  transition-duration: 0.55s;
}
[data-scroll][data-scroll][data-scroll-delay="550"],
body[data-scroll-delay="550"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="550"].animated,
body[data-scroll-delay="550"] [data-scroll].animated {
  transition-delay: 0.55s;
}
[data-scroll][data-scroll][data-scroll-duration="600"],
body[data-scroll-duration="600"] [data-scroll] {
  transition-duration: 0.6s;
}
[data-scroll][data-scroll][data-scroll-delay="600"],
body[data-scroll-delay="600"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="600"].animated,
body[data-scroll-delay="600"] [data-scroll].animated {
  transition-delay: 0.6s;
}
[data-scroll][data-scroll][data-scroll-duration="650"],
body[data-scroll-duration="650"] [data-scroll] {
  transition-duration: 0.65s;
}
[data-scroll][data-scroll][data-scroll-delay="650"],
body[data-scroll-delay="650"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="650"].animated,
body[data-scroll-delay="650"] [data-scroll].animated {
  transition-delay: 0.65s;
}
[data-scroll][data-scroll][data-scroll-duration="700"],
body[data-scroll-duration="700"] [data-scroll] {
  transition-duration: 0.7s;
}
[data-scroll][data-scroll][data-scroll-delay="700"],
body[data-scroll-delay="700"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="700"].animated,
body[data-scroll-delay="700"] [data-scroll].animated {
  transition-delay: 0.7s;
}
[data-scroll][data-scroll][data-scroll-duration="750"],
body[data-scroll-duration="750"] [data-scroll] {
  transition-duration: 0.75s;
}
[data-scroll][data-scroll][data-scroll-delay="750"],
body[data-scroll-delay="750"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="750"].animated,
body[data-scroll-delay="750"] [data-scroll].animated {
  transition-delay: 0.75s;
}
[data-scroll][data-scroll][data-scroll-duration="800"],
body[data-scroll-duration="800"] [data-scroll] {
  transition-duration: 0.8s;
}
[data-scroll][data-scroll][data-scroll-delay="800"],
body[data-scroll-delay="800"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="800"].animated,
body[data-scroll-delay="800"] [data-scroll].animated {
  transition-delay: 0.8s;
}
[data-scroll][data-scroll][data-scroll-duration="850"],
body[data-scroll-duration="850"] [data-scroll] {
  transition-duration: 0.85s;
}
[data-scroll][data-scroll][data-scroll-delay="850"],
body[data-scroll-delay="850"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="850"].animated,
body[data-scroll-delay="850"] [data-scroll].animated {
  transition-delay: 0.85s;
}
[data-scroll][data-scroll][data-scroll-duration="900"],
body[data-scroll-duration="900"] [data-scroll] {
  transition-duration: 0.9s;
}
[data-scroll][data-scroll][data-scroll-delay="900"],
body[data-scroll-delay="900"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="900"].animated,
body[data-scroll-delay="900"] [data-scroll].animated {
  transition-delay: 0.9s;
}
[data-scroll][data-scroll][data-scroll-duration="950"],
body[data-scroll-duration="950"] [data-scroll] {
  transition-duration: 0.95s;
}
[data-scroll][data-scroll][data-scroll-delay="950"],
body[data-scroll-delay="950"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="950"].animated,
body[data-scroll-delay="950"] [data-scroll].animated {
  transition-delay: 0.95s;
}
[data-scroll][data-scroll][data-scroll-duration="1000"],
body[data-scroll-duration="1000"] [data-scroll] {
  transition-duration: 1s;
}
[data-scroll][data-scroll][data-scroll-delay="1000"],
body[data-scroll-delay="1000"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1000"].animated,
body[data-scroll-delay="1000"] [data-scroll].animated {
  transition-delay: 1s;
}
[data-scroll][data-scroll][data-scroll-duration="1100"],
body[data-scroll-duration="1100"] [data-scroll] {
  transition-duration: 1.1s;
}
[data-scroll][data-scroll][data-scroll-delay="1100"],
body[data-scroll-delay="1100"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1100"].animated,
body[data-scroll-delay="1100"] [data-scroll].animated {
  transition-delay: 1.1s;
}
[data-scroll][data-scroll][data-scroll-duration="1200"],
body[data-scroll-duration="1200"] [data-scroll] {
  transition-duration: 1.2s;
}
[data-scroll][data-scroll][data-scroll-delay="1200"],
body[data-scroll-delay="1200"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1200"].animated,
body[data-scroll-delay="1200"] [data-scroll].animated {
  transition-delay: 1.2s;
}
[data-scroll][data-scroll][data-scroll-duration="1300"],
body[data-scroll-duration="1300"] [data-scroll] {
  transition-duration: 1.3s;
}
[data-scroll][data-scroll][data-scroll-delay="1300"],
body[data-scroll-delay="1300"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1300"].animated,
body[data-scroll-delay="1300"] [data-scroll].animated {
  transition-delay: 1.3s;
}
[data-scroll][data-scroll][data-scroll-duration="1400"],
body[data-scroll-duration="1400"] [data-scroll] {
  transition-duration: 1.4s;
}
[data-scroll][data-scroll][data-scroll-delay="1400"],
body[data-scroll-delay="1400"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1400"].animated,
body[data-scroll-delay="1400"] [data-scroll].animated {
  transition-delay: 1.4s;
}
[data-scroll][data-scroll][data-scroll-duration="1500"],
body[data-scroll-duration="1500"] [data-scroll] {
  transition-duration: 1.5s;
}
[data-scroll][data-scroll][data-scroll-delay="1500"],
body[data-scroll-delay="1500"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1500"].animated,
body[data-scroll-delay="1500"] [data-scroll].animated {
  transition-delay: 1.5s;
}
[data-scroll][data-scroll][data-scroll-duration="1600"],
body[data-scroll-duration="1600"] [data-scroll] {
  transition-duration: 1.6s;
}
[data-scroll][data-scroll][data-scroll-delay="1600"],
body[data-scroll-delay="1600"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1600"].animated,
body[data-scroll-delay="1600"] [data-scroll].animated {
  transition-delay: 1.6s;
}
[data-scroll][data-scroll][data-scroll-duration="1700"],
body[data-scroll-duration="1700"] [data-scroll] {
  transition-duration: 1.7s;
}
[data-scroll][data-scroll][data-scroll-delay="1700"],
body[data-scroll-delay="1700"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1700"].animated,
body[data-scroll-delay="1700"] [data-scroll].animated {
  transition-delay: 1.7s;
}
[data-scroll][data-scroll][data-scroll-duration="1800"],
body[data-scroll-duration="1800"] [data-scroll] {
  transition-duration: 1.8s;
}
[data-scroll][data-scroll][data-scroll-delay="1800"],
body[data-scroll-delay="1800"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1800"].animated,
body[data-scroll-delay="1800"] [data-scroll].animated {
  transition-delay: 1.8s;
}
[data-scroll][data-scroll][data-scroll-duration="1900"],
body[data-scroll-duration="1900"] [data-scroll] {
  transition-duration: 1.9s;
}
[data-scroll][data-scroll][data-scroll-delay="1900"],
body[data-scroll-delay="1900"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="1900"].animated,
body[data-scroll-delay="1900"] [data-scroll].animated {
  transition-delay: 1.9s;
}
[data-scroll][data-scroll][data-scroll-duration="2000"],
body[data-scroll-duration="2000"] [data-scroll] {
  transition-duration: 2s;
}
[data-scroll][data-scroll][data-scroll-delay="2000"],
body[data-scroll-delay="2000"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="2000"].animated,
body[data-scroll-delay="2000"] [data-scroll].animated {
  transition-delay: 2s;
}
[data-scroll][data-scroll][data-scroll-duration="3000"],
body[data-scroll-duration="3000"] [data-scroll] {
  transition-duration: 3s;
}
[data-scroll][data-scroll][data-scroll-delay="3000"],
body[data-scroll-delay="3000"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="3000"].animated,
body[data-scroll-delay="3000"] [data-scroll].animated {
  transition-delay: 3s;
}
[data-scroll][data-scroll][data-scroll-duration="4000"],
body[data-scroll-duration="4000"] [data-scroll] {
  transition-duration: 3s;
}
[data-scroll][data-scroll][data-scroll-delay="4000"],
body[data-scroll-delay="4000"] [data-scroll] {
  transition-delay: 0s;
}
[data-scroll][data-scroll][data-scroll-delay="4000"].animated,
body[data-scroll-delay="4000"] [data-scroll].animated {
  transition-delay: 3s;
}
[data-scroll][data-scroll][data-scroll-easing="linear"],
body[data-scroll-easing="linear"] [data-scroll] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}
[data-scroll][data-scroll][data-scroll-easing="ease"],
body[data-scroll-easing="ease"] [data-scroll] {
  transition-timing-function: ease;
}
[data-scroll][data-scroll][data-scroll-easing="ease-in"],
body[data-scroll-easing="ease-in"] [data-scroll] {
  transition-timing-function: ease-in;
}
[data-scroll][data-scroll][data-scroll-easing="ease-out"],
body[data-scroll-easing="ease-out"] [data-scroll] {
  transition-timing-function: ease-out;
}
[data-scroll][data-scroll][data-scroll-easing="ease-in-out"],
body[data-scroll-easing="ease-in-out"] [data-scroll] {
  transition-timing-function: ease-in-out;
}
:root {
  --blue: #3038a0;
  --bright-blue: #0b31ff;
  --ink: #080808;
  --muted: #6d6d6d;
  --edge: clamp(90px, 12.5vw, 240px);
  --content: min(1440px, 75vw);
}
@font-face {
  font-family: "MiSans";
  src: url("vendor/fonts/misans/MiSans-Regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "MiSans";
  src: url("vendor/fonts/misans/MiSans-Medium.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "MiSans";
  src: url("vendor/fonts/misans/MiSans-Semibold.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "MiSans";
  src: url("vendor/fonts/misans/MiSans-Bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "MiSans";
  src: url("vendor/fonts/misans/MiSans-Heavy.woff2") format("woff2");
  font-style: normal;
  font-weight: 900;
  font-display: swap;
}
@font-face {
  font-family: "MiSans Demibold";
  src: url("vendor/fonts/misans/MiSans-Demibold.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
* {
  box-sizing: border-box;
}
html,
body {
  margin: 0;
  color: var(--ink);
  font-family: "MiSans", Arial, sans-serif;
  font-weight: 400;
}
body {
  overflow-x: hidden;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}
button {
  font-family: inherit;
}
button,
a[href] {
  cursor: pointer;
}
.header nav a,
.language,
button,
.more-label,
.outline-link,
.support-contact,
.partner-cta {
  font-weight: 500;
}
.product-card h3 {
  font-family: "MiSans Demibold", "MiSans", sans-serif;
  font-weight: 600;
}
.web-search {
  position: fixed;
  z-index: 100001;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.68);
  transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}
.web-search.search--open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0s;
}
.search-panel {
  position: relative;
  width: min(70vw, 1180px);
  min-height: 240px;
  padding: 62px clamp(42px, 6vw, 92px) 48px;
  display: flex;
  align-items: center;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.22);
  transform: translateY(-30%) scaleY(0);
  transform-origin: center top;
  transition: transform 0.32s ease;
}
.search--open .search-panel {
  transform: none;
}
.head-search {
  width: 100%;
}
.search-ipt {
  width: 100%;
  padding: 15px 0;
  border: 0;
  border-bottom: 1px solid #222;
  border-radius: 0;
  outline: 0;
  color: #222;
  background: transparent;
  font: 700 clamp(34px, 3.13vw, 60px)/1.15 "MiSans", Arial, sans-serif;
  appearance: none;
  transform: scaleX(0);
  transform-origin: left center;
  opacity: 0;
  transition: transform 0.4s ease 0.32s, opacity 0.3s ease 0.32s;
}
.search--open .search-ipt {
  transform: scaleX(1);
  opacity: 1;
}
.search-ipt::placeholder {
  color: #555;
  opacity: 1;
}
.search-ipt::-webkit-search-cancel-button {
  appearance: none;
}
.search-btn {
  display: none;
}
.search-attr {
  display: block;
  margin-top: 14px;
  color: #555;
  font-size: 16px;
  text-align: right;
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.5s ease 0.38s, transform 0.5s ease 0.38s;
}
.search--open .search-attr {
  opacity: 1;
  transform: none;
}
.btn--search-close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #ccc url("vendor/search/search_btn_close.png") center / auto 35% no-repeat;
  cursor: pointer;
  opacity: 0;
  transition: background-color 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
}
.search--open .btn--search-close {
  opacity: 1;
}
.btn--search-close:hover,
.btn--search-close:focus-visible {
  background-color: var(--blue);
  transform: rotate(90deg);
}
body.search-open {
  overflow: hidden !important;
}
@media (max-width: 900px) {
  .web-search {
    padding: 18px;
  }
  .search-panel {
    width: 100%;
    min-height: 190px;
    padding: 56px 24px 34px;
  }
  .search-ipt {
    font-size: clamp(28px, 8vw, 42px);
  }
  .search-attr {
    font-size: 13px;
    text-align: left;
  }
}
.language-switcher {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 10px;
}
.language-switcher .flag {
  flex: 0 0 clamp(56px, 3.125vw, 64px);
}
.language-switcher .language {
  flex: none;
  min-width: 104px;
  justify-content: flex-start;
}
.language-chevron {
  width: 15px;
  height: 8px;
  display: block;
  object-fit: contain;
  filter: brightness(0);
  transition: filter 0.2s ease;
}
.wow.animated {
  animation-duration: 0.58s;
  animation-delay: var(--wow-delay, 0s);
  animation-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  animation-fill-mode: both;
}
.wow.fadeIn.animated {
  animation-name: wowFadeIn;
}
.wow.fadeInUp.animated {
  animation-name: wowFadeInUp;
}
.wow.fadeInLeft.animated {
  animation-name: wowFadeInLeft;
}
.wow.fadeInRight.animated {
  animation-name: wowFadeInRight;
}
@keyframes wowFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes wowFadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes wowFadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-22px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes wowFadeInRight {
  from {
    opacity: 0;
    transform: translate3d(22px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .wow.animated {
    animation: none !important;
  }
}
.inner {
  width: var(--content);
  margin: 0 auto;
}
.screen {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 720px;
  overflow: hidden;
  background: #fff;
}
.home-page {
  /* Shared header */
  /* Reusable CTAs */
  /* 01 — Hero */
  /* 02 — Integrated solution */
  /* 03 — Industries */
  /* 04 — Products */
  /* 05 — About */
  /* 06 — Numbers */
  /* 07 — Service and support */
  /* 08 — News */
  /* 09 — Partners */
  /* 10 — Footer */
  /* fullPage side navigation */
}
.home-page .header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  padding: 0 var(--edge);
  display: flex;
  align-items: center;
  gap: 12px;
  color: #080808;
  background: transparent;
}
.home-page .header nav {
  display: flex;
  align-items: center;
  gap: 30px;
}
.home-page .header nav a {
  white-space: nowrap;
  font-family: "MiSans", Arial, sans-serif;
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0;
}
.home-page .header nav a.active {
  color: #3038a0;
}
.home-page .brand {
  flex: 0 0 162px;
  height: 86px;
  margin-right: auto;
  display: grid;
  align-items: center;
}
.home-page .logo {
  position: static;
  grid-area: 1 / 1;
  width: 162px;
  height: auto;
  transition: opacity 0.2s ease;
}
.home-page .logo--white {
  opacity: 0;
  filter: brightness(0) invert(1);
}
.home-page .search {
  flex: 0 0 29px;
  width: 29px;
  height: 29px;
  margin-left: 2px;
  padding: 0;
  border: 0;
  color: currentColor;
  background: transparent;
  font-size: 28px;
  line-height: 29px;
}
.home-page .flag {
  flex: 0 0 clamp(56px, 3.125vw, 64px);
  width: clamp(56px, 3.125vw, 64px);
  height: auto;
  aspect-ratio: 64 / 41;
  object-fit: cover;
}
.home-page .language {
  flex: 0 0 110px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  white-space: nowrap;
  font-family: "MiSans", Arial, sans-serif;
  font-size: 22px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0;
}
.home-page .header--hero {
  color: #fff;
}
.home-page .header--hero .logo--blue {
  opacity: 0;
}
.home-page .header--hero .logo--white {
  opacity: 1;
}
.home-page .header--hero .language-chevron {
  filter: brightness(0) invert(1);
}
.home-page .header--hero nav a.active {
  color: var(--blue);
}
.home-page .more-action {
  display: flex;
  align-items: center;
  gap: 14px;
}
.home-page .more-label,
.home-page .more-icon,
.home-page .outline-link,
.home-page .product-card > a {
  border: 1px solid currentColor;
  color: #080808;
}
.home-page .more-label {
  min-width: 190px;
  height: 58px;
  padding: 0 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 32px;
  font-size: 20px;
}
.home-page .more-icon {
  width: 58px;
  height: 58px;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  display: inline-flex;
  font-size: 22px;
}
.home-page .more-action--light .more-label,
.home-page .more-action--light .more-icon {
  color: #fff;
}
.home-page .outline-link {
  min-width: 220px;
  height: 58px;
  padding: 0 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  border-radius: 32px;
  color: var(--blue);
  font-size: 18px;
}
.home-page .outline-link i {
  font-size: 18px;
}
.home-page .more-label,
.home-page .more-icon,
.home-page .outline-link,
.home-page .product-card > a,
.home-page .support-contact,
.home-page .partner-cta,
.home-page .hero-controls button,
.home-page .search,
.home-page .header nav a,
.home-page .footer-grid a,
.home-page .footer-social i,
.home-page .social a {
  transition: color 0.38s ease 0.04s, background-color 0.38s ease 0.04s, border-color 0.38s ease 0.04s, box-shadow 0.38s ease 0.04s, transform 0.38s ease 0.04s, opacity 0.38s ease 0.04s;
}
@media (hover: hover) {
  .home-page .more-label:hover,
  .home-page .more-label:focus-visible,
  .home-page .more-icon:hover,
  .home-page .more-icon:focus-visible,
  .home-page .outline-link:hover,
  .home-page .outline-link:focus-visible,
  .home-page .product-card > a:hover,
  .home-page .product-card > a:focus-visible,
  .home-page .support-contact:hover,
  .home-page .support-contact:focus-visible,
  .home-page .partner-cta:hover,
  .home-page .partner-cta:focus-visible {
    color: #fff;
    border-color: var(--blue);
    background: var(--blue);
    box-shadow: 0 12px 28px rgba(47, 53, 159, 0.2);
    transform: translateY(-3px);
  }
  .home-page .more-icon:hover,
  .home-page .more-icon:focus-visible {
    transform: translate(3px, -3px);
  }
  .home-page .more-action--light .more-label:hover,
  .home-page .more-action--light .more-label:focus-visible,
  .home-page .more-action--light .more-icon:hover,
  .home-page .more-action--light .more-icon:focus-visible {
    color: var(--blue);
    border-color: #fff;
    background: #fff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
  }
  .home-page .hero-controls button:hover,
  .home-page .hero-controls button:focus-visible {
    color: var(--blue);
    border-color: #fff;
    background: #fff;
    transform: translateY(-3px);
  }
  .home-page .header nav a:hover,
  .home-page .header nav a:focus-visible,
  .home-page .search:hover,
  .home-page .search:focus-visible,
  .home-page .footer-grid a:hover,
  .home-page .footer-grid a:focus-visible {
    color: var(--blue);
  }
  .home-page .search:hover,
  .home-page .search:focus-visible {
    transform: scale(1.1);
  }
  .home-page .social a:hover,
  .home-page .social a:focus-visible,
  .home-page .footer-social i:hover {
    color: var(--blue);
    transform: translateY(-3px);
  }
}
.home-page .hero {
  background: #153d24;
  isolation: isolate;
}
.home-page .hero-swiper,
.home-page .hero-swiper .swiper-wrapper,
.home-page .hero-slide {
  width: 100%;
  height: 100%;
}
.home-page .hero-slide {
  position: relative;
  overflow: hidden;
}
.home-page .hero-slide > img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 48%;
  filter: saturate(0.96) contrast(1.03);
}
.home-page .hero::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: url("assets/ui/hero-overlay.png") center / 100% 100% no-repeat;
  opacity: 0.62;
}
.home-page .hero-copy {
  position: absolute;
  z-index: 2;
  top: 40.5%;
  left: var(--edge);
  color: #fff;
}
.home-page .hero h1,
.home-page .hero h2 {
  margin: 0 0 47px;
  font-size: clamp(46px, 3.38vw, 65px);
  line-height: 1.08;
  letter-spacing: -1.9px;
  font-weight: 700;
}
.home-page .social {
  position: absolute;
  z-index: 3;
  left: var(--edge);
  bottom: 12.7%;
  display: flex;
  align-items: center;
  gap: 17px;
  max-width: calc(100vw - (var(--edge) * 2));
  color: #fff;
}
.home-page .social a {
  display: inline-flex;
  flex: 0 0 38px;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  color: #fff;
  font-size: 23px;
  line-height: 1;
}
.home-page .social a:hover,
.home-page .social a:focus-visible {
  color: #fff;
  background: transparent;
  outline: 2px solid #fff;
  outline-offset: 3px;
}
.home-page .hero-controls {
  position: absolute;
  z-index: 3;
  right: var(--edge);
  bottom: 10.3%;
  display: flex;
  align-items: center;
  gap: 13px;
  color: #fff;
}
.home-page .hero-controls button,
.home-page .carousel-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1.4px solid currentColor;
  border-radius: 50%;
  color: inherit;
  background: transparent;
}
.home-page .hero-controls button {
  width: 58px;
  height: 58px;
  font-size: 21px;
}
.home-page .hero-controls b {
  margin-left: 13px;
  font-size: 28px;
  line-height: 1;
}
.home-page .hero-controls span {
  font-size: 28px;
  line-height: 1;
}
.home-page .solution {
  isolation: isolate;
  background: linear-gradient(108deg, #fff 0%, #fff 27%, #f8fcff 49%, #d7edff 100%);
}
.home-page .solution::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0 auto 0 0;
  width: clamp(340px, 29vw, 595px);
  pointer-events: none;
  background: #fff;
}
.home-page .solution-image {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 1.5%;
  width: 82%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: right center;
}
.home-page .solution-copy {
  position: absolute;
  z-index: 2;
  top: 34%;
  left: var(--edge);
}
.home-page .solution-copy h2 {
  margin: 0;
  font-size: 58px;
  line-height: 1.08;
  letter-spacing: -1.8px;
}
.home-page .solution-copy h2 strong {
  color: var(--blue);
}
.home-page .solution-copy p {
  margin: 38px 0 45px;
  color: var(--muted);
  font-size: 21px;
  line-height: 1.45;
}
.home-page .solution-copy .more-label {
  min-width: 145px;
  height: 45px;
  font-size: 16px;
}
.home-page .solution-copy .more-icon {
  width: 45px;
  height: 45px;
  font-size: 17px;
}
.home-page .solution-steps {
  position: absolute;
  z-index: 2;
  left: var(--edge);
  right: var(--edge);
  bottom: 6.2%;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(42px, 6.7vw, 130px);
}
.home-page .solution-step {
  position: relative;
  min-width: 0;
  padding: 0 0 25px;
  border-bottom: 2px solid #111;
  color: #111;
  transition: color 0.35s ease, border-color 0.35s ease, transform 0.35s ease;
}
.home-page .solution-step span,
.home-page .solution-step small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.home-page .solution-step span {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 600;
}
.home-page .solution-step small {
  color: #666;
  font-size: 14px;
  transition: color 0.35s ease;
}
.home-page .solution-step::after {
  content: "↗";
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0;
  transform: translate(-8px, 8px);
  transition: opacity 0.35s ease, transform 0.35s ease;
}
.home-page .solution-step:first-child,
.home-page .solution-step:hover,
.home-page .solution-step:focus-visible {
  color: var(--blue);
  border-color: var(--blue);
  transform: translateY(-3px);
}
.home-page .solution-step:hover small,
.home-page .solution-step:focus-visible small {
  color: var(--blue);
}
.home-page .solution-step:hover::after,
.home-page .solution-step:focus-visible::after {
  opacity: 1;
  transform: none;
}
.home-page .industries {
  background: #13262c;
}
.home-page .industry-grid {
  display: flex;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.home-page .industry-grid article {
  position: relative;
  flex: 1 1 20%;
  min-width: 0;
  overflow: hidden;
  color: #fff;
  cursor: pointer;
  transition: flex-basis 0.8s ease-in-out, flex-grow 0.8s ease-in-out;
  outline: none;
}
.home-page .industry-grid article.active,
.home-page .industry-grid article:hover {
  flex-basis: 42.85%;
  flex-grow: 3;
}
.home-page .industry-grid article > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.home-page .industry-grid article::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  transition: background 0.8s ease-in-out;
}
.home-page .industry-grid .active::after,
.home-page .industry-grid article:hover::after {
  background: rgba(0, 0, 0, 0.18);
}
.home-page .industry-caption {
  position: absolute;
  z-index: 1;
  left: 30px;
  right: 25px;
  bottom: 37%;
  text-align: center;
}
.home-page .industry-caption h3 {
  margin: 0 0 42px; 
  font-size: 27px;
  line-height: 1;
}
.home-page .industry-caption p {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
}
.home-page .industry-feature {
  position: absolute;
  z-index: 1;
  top: 18.8%;
  left: 92px;
  color: #fff;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.38);
}
.home-page .industry-feature {
  opacity: 0;
  visibility: hidden;
  transform: translateX(24px);
  transition: opacity 0.3s ease 0.12s, transform 0.45s ease 0.08s, visibility 0s linear 0.45s;
}
.home-page .industry-grid article.active .industry-feature,
.home-page .industry-grid article:hover .industry-feature {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition-delay: 0.18s, 0.12s, 0s;
}
.home-page .industry-grid article.active .industry-caption,
.home-page .industry-grid article:hover .industry-caption {
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
}
.home-page .industry-caption {
  transition: opacity 0.25s ease, transform 0.35s ease, visibility 0s linear 0.35s;
}
.home-page .industry-feature h2 {
  margin: 0 0 28px;
  font-size: 45px;
  line-height: 1;
}
.home-page .industry-feature p {
  margin: 0 0 34px;
  color: rgba(255, 255, 255, 0.9);
  font-size: 18px;
  line-height: 1.25;
}
.home-page .industry-feature .more-action {
  color: #fff;
}
.home-page .industry-feature .more-label,
.home-page .industry-feature .more-icon {
  color: #fff;
  border-color: #fff;
  transition: color 0.4s ease 0.06s, background-color 0.4s ease 0.06s, border-color 0.4s ease 0.06s, transform 0.4s ease;
}
.home-page .industry-feature .more-label:hover,
.home-page .industry-feature .more-label:focus-visible,
.home-page .industry-feature .more-icon:hover,
.home-page .industry-feature .more-icon:focus-visible {
  color: #111;
  background: #fff;
  text-shadow: none;
}
.home-page .industry-feature .more-icon:hover,
.home-page .industry-feature .more-icon:focus-visible {
  transform: translate(2px, -2px);
}
.home-page .industry-feature .more-label {
  min-width: 146px;
  height: 45px;
  font-size: 16px;
}
.home-page .industry-feature .more-icon {
  width: 45px;
  height: 45px;
  font-size: 17px;
}
.home-page .products-head {
  position: absolute;
  top: 23%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.home-page .products-head h2,
.home-page .news-content > h2,
.home-page .support-content > h2,
.home-page .partners-content > h2 {
  margin: 0;
  font-size: clamp(48px, 5.87vh, 68px);
  line-height: 1;
  letter-spacing: -1.6px;
}
.home-page .products-head strong,
.home-page .support-content strong,
.home-page .news-content > h2 strong,
.home-page .partners-content strong {
  color: var(--blue);
}
.home-page .products-stage {
  position: absolute;
  top: 35.85%;
  left: 0;
  width: 100%;
}
.home-page .product-swiper {
  width: var(--content);
  overflow: visible;
  clip-path: inset(-60px 0 -60px 0);
}
.home-page .product-swiper .swiper-wrapper {
  align-items: stretch;
}
.home-page .product-card {
  height: clamp(420px, 47.6vh, 565px);
  padding: clamp(22px, 2.6vh, 31px) clamp(26px, 1.55vw, 38px) clamp(30px, 3.48vh, 41px);
  text-align: center;
  background: #fff;
  transition: box-shadow 0.28s ease;
}
.home-page .product-card:hover,
.home-page .product-card:focus-within {
  z-index: 2;
  box-shadow: 0 22px 38px rgba(0, 0, 0, 0.16);
}
.home-page .product-card img {
  width: 100%;
  height: clamp(240px, 27.2vh, 323px);
  display: block;
  object-fit: contain;
}
.home-page .product-card h3 {
  min-height: clamp(47px, 5.1vh, 61px);
  margin: clamp(4px, 0.55vh, 7px) 0 clamp(25px, 2.95vh, 35px);
  font-size: clamp(16px, 1.74vh, 20px);
  line-height: 1.2;
}
.home-page .product-card > a {
  min-width: clamp(164px, 9.2vw, 200px);
  height: clamp(41px, 4.46vh, 53px);
  padding: 0 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 28px;
  color: var(--blue);
  font-size: clamp(16px, 1.74vh, 20px);
}
.home-page .product-progress {
  position: absolute;
  top: auto !important;
  bottom: clamp(-76px, -6.74vh, -62px) !important;
  left: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: #ccc !important;
}
.home-page .product-progress .swiper-pagination-progressbar-fill {
  background: var(--blue);
}
.home-page .carousel-circle {
  position: absolute;
  z-index: 6;
  width: clamp(76px, 8.48vh, 101px);
  height: clamp(76px, 8.48vh, 101px);
  color: var(--blue);
  background: transparent;
  font-size: clamp(24px, 2.6vh, 31px);
  cursor: pointer;
  transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease, transform 0.4s ease, box-shadow 0.4s ease;
}
.home-page .carousel-circle:hover,
.home-page .carousel-circle:focus-visible {
  color: #fff;
  border-color: var(--blue);
  background: var(--blue);
  box-shadow: 0 12px 28px rgba(47, 53, 159, 0.2);
}
.home-page .product-prev:hover,
.home-page .product-prev:focus-visible {
  transform: translateX(-5px);
}
.home-page .product-next:hover,
.home-page .product-next:focus-visible {
  color: #fff;
  transform: translateX(5px);
}
.home-page .carousel-circle.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
  box-shadow: none;
  transform: none;
}
.home-page .product-prev {
  left: max(3.5vw, calc((100vw - var(--content)) / 2 - 110px));
  top: 34.5%;
}
.home-page .product-next {
  right: max(3.5vw, calc((100vw - var(--content)) / 2 - 110px));
  top: 34.5%;
  color: #111;
}
.home-page .about {
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-page .about-layout {
  position: relative;
  width: var(--content);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 47.2%) minmax(0, 49.2%);
  gap: 3.6%;
  align-items: center;
}
.home-page .about-copy em {
  display: block;
  color: var(--blue);
  font-size: clamp(25px, 2.82vh, 34px);
  line-height: 1;
  font-style: normal;
  font-weight: 700;
}
.home-page .about-copy h2 {
  margin: clamp(22px, 2.5vh, 30px) 0 clamp(32px, 3.65vh, 44px);
  color: var(--blue);
  font-size: clamp(50px, 5.63vh, 68px);
  line-height: 1;
  letter-spacing: -1.4px;
}
.home-page .about-copy h3 {
  margin: 0;
  font-size: clamp(25px, 2.82vh, 34px);
  line-height: 1.22;
}
.home-page .about-copy p {
  max-width: none;
  margin: clamp(28px, 3.23vh, 39px) 0 clamp(36px, 4.07vh, 49px);
  color: var(--muted);
  font-size: clamp(15px, 1.67vh, 20px);
  line-height: 1.48;
}
.home-page .about-copy .more-label {
  min-width: clamp(180px, 19.8vh, 238px);
  height: clamp(54px, 6.05vh, 72px);
  font-size: clamp(18px, 2.08vh, 25px);
}
.home-page .about-copy .more-icon {
  width: clamp(54px, 6.05vh, 72px);
  height: clamp(54px, 6.05vh, 72px);
  font-size: clamp(20px, 2.3vh, 28px);
}
.home-page .about-image {
  width: 100%;
  height: clamp(430px, 46.6vh, 560px);
  margin: 0;
  display: block;
  object-fit: cover;
}
.home-page .numbers {
  color: #fff;
  background: #020b29;
}
.home-page .numbers-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.home-page .numbers-content {
  position: absolute;
  z-index: 1;
  top: 26.3%;
  left: 0;
  width: 100%;
  text-align: center;
}
.home-page .numbers-content h2 {
  margin: 0;
  font-size: 54px;
  line-height: 1;
}
.home-page .numbers-content > p {
  margin: 49px 0 0;
  font-size: 16px;
}
.home-page .metrics {
  width: 1435px;
  max-width: 75vw;
  margin: 124px auto 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  text-align: left;
}
.home-page .metrics > div {
  position: relative;
  min-height: 94px;
  padding-left: 84px;
}
.home-page .metrics > div:first-child {
  padding-left: 34px;
}
.home-page .metrics > div + div::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 82px;
  background: #fff;
}
.home-page .metrics b {
  display: inline-block;
  font-size: 62px;
  line-height: 0.9;
}
.home-page .metrics .metric-counter {
  margin: 0;
  font: inherit;
  font-weight: inherit;
}
.home-page .metrics .metric-unit {
  margin-left: 10px;
  font-size: 18px;
  font-weight: 700;
}
.home-page .metrics small {
  display: block;
  margin-top: 16px;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 700;
}
.home-page .support {
  background: #f2f2f2;
}
.home-page .support-content {
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
}
.home-page .support-stage {
  position: relative;
  margin-top: clamp(48px, 5.21vh, 63px);
}
.home-page .support-swiper {
  overflow: hidden;
}
.home-page .support-card {
  height: clamp(465px, 50.49vh, 600px);
  padding: clamp(76px, 8.25vh, 98px) clamp(40px, 2.08vw, 52px) clamp(45px, 4.89vh, 58px);
  background: #fff;
}
.home-page .support-card b {
  color: var(--blue);
  font-size: clamp(30px, 3.26vh, 39px);
}
.home-page .support-card h3 {
  margin: clamp(42px, 4.56vh, 54px) 0 clamp(31px, 3.37vh, 40px);
  color: var(--blue);
  font-size: clamp(21px, 2.28vh, 27px);
  line-height: 1.35;
}
.home-page .support-card p {
  margin: 0;
  color: var(--muted);
  font-size: clamp(16px, 1.74vh, 21px);
  line-height: 1.52;
}
.home-page .support-prev {
  left: -112px;
  top: clamp(201px, 21.82vh, 259px);
}
.home-page .support-next {
  right: -112px;
  top: clamp(201px, 21.82vh, 259px);
  color: #111;
}
.home-page .support-contact,
.home-page .partner-cta {
  height: clamp(68px, 7.38vh, 88px);
  padding: 0 clamp(45px, 4.89vh, 58px);
  border: 2px solid var(--blue);
  border-radius: 48px;
  color: var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(19px, 2.06vh, 25px);
  font-weight: 700;
}
.home-page .support-contact {
  width: clamp(340px, 36.92vh, 438px);
  margin: clamp(40px, 4.34vh, 52px) auto 0;
}
.home-page .news-content {
  position: absolute;
  top: 21%;
  left: 50%;
  transform: translateX(-50%);
}
.home-page .news-content > h2 strong {
  color: var(--blue);
}
.home-page .news-grid {
  margin-top: clamp(69px, 7.53vh, 89px);
  display: grid;
  grid-template-columns: minmax(0, 49.2%) minmax(0, 42.4%);
  gap: 8.4%;
}
.home-page .news-feature h3 {
  margin: 0 0 clamp(34px, 3.71vh, 44px);
  font-size: clamp(27px, 2.95vh, 35px);
  line-height: 1.35;
}
.home-page .news-image {
  position: relative;
}
.home-page .news-image img {
  width: 100%;
  height: auto;
  aspect-ratio: 708 / 405;
  display: block;
  object-fit: cover;
}
.home-page .news-image time {
  position: absolute;
  top: clamp(31px, 3.38vh, 40px);
  left: 3px;
  font-size: clamp(16px, 1.75vh, 21px);
}
.home-page .news-list {
  border-top: 1px solid #aaa;
}
.home-page .news-list article {
  position: relative;
  min-height: clamp(168px, 18.34vh, 218px);
  padding: clamp(30px, 3.27vh, 39px) clamp(95px, 10.37vh, 123px) clamp(28px, 3.06vh, 36px) clamp(40px, 4.37vh, 52px);
  border-bottom: 1px solid #aaa;
  display: flex;
}
.home-page .news-list article > i {
  position: absolute;
  top: clamp(36px, 3.93vh, 47px);
  left: 2px;
  width: clamp(8px, 0.87vh, 10px);
  height: clamp(8px, 0.87vh, 10px);
  border-radius: 50%;
  background: #999;
}
.home-page .news-list h3 {
  margin: 0;
  font-size: clamp(16px, 1.75vh, 21px);
  line-height: 1.35;
  font-weight: 500;
}
.home-page .news-list p {
  margin: clamp(18px, 1.97vh, 23px) 0 0;
  color: #777;
  font-size: clamp(16px, 1.75vh, 21px);
  line-height: 1.35;
}
.home-page .news-list time {
  position: absolute;
  top: clamp(31px, 3.38vh, 40px);
  right: 0;
  color: #777;
  font-size: clamp(14px, 1.53vh, 18px);
}
.home-page .partners-content {
  position: absolute;
  top: 19%;
  left: 50%;
  transform: translateX(-50%);
}
.home-page .partner-grid {
  margin-top: 70px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: clamp(50px, 6.2vw, 116px);
  row-gap: clamp(26px, 6.2vh, 116px);
  align-items: center;
}
.home-page .partner-grid > div {
  height: 78px;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-page .partner-grid img {
  width: auto;
  height: auto;
  max-width: min(100%, 210px);
  max-height: 72px;
  display: block;
  object-fit: contain;
}
.home-page .partner-grid img[src*="nestle"] {
  max-width: 172px;
  max-height: 76px;
}
.home-page .partner-cta {
  width: 420px;
  margin: 42px auto 0;
}
.home-page .footer {
  min-height: 700px;
}
.home-page .footer-grid {
  position: absolute;
  top: 11.6%;
  left: 50%;
  transform: translateX(-50%);
  display: grid;
  /* Keep the homepage footer fluid like the shared inner-page footer. This
     prevents the fixed desktop tracks from colliding on mid-sized screens. */
  grid-template-columns: 1.52fr 1.05fr .72fr .72fr 1.45fr;
  justify-content: space-between;
  gap: 40px;
}
.home-page .footer-brand > img {
  width: 162px;
  display: block;
}
.home-page .footer h3 {
  margin: 22px 0 21px;
  font-size: 24px;
}
.home-page .footer-brand h3 {
  margin-top: 150px;
}
.home-page .footer-grid > div:not(.footer-brand) h3 {
  margin-top: 24px;
}
.home-page .footer-grid a {
  display: block;
  margin-bottom: 24px;
  font-size: 18px;
}
.home-page .footer-grid a.active {
  color: var(--blue);
}
.home-page .footer-social {
  display: flex;
  gap: 22px;
}
.home-page .footer-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0;
  border-radius: 50%;
  color: #fff;
  background: #111;
  font-size: 18px;
  line-height: 1;
  transition: background-color .3s ease, transform .3s ease;
}
@media (hover: hover) {
  .home-page .footer-social a:hover,
  .home-page .footer-social a:focus-visible {
    color: #fff;
    background: var(--case-blue, var(--blue));
    transform: translateY(-3px);
  }
}
.home-page .contact p {
  margin: 0 0 24px;
  display: flex;
  align-items: flex-start;
  gap: 7px;
  font-size: 18px;
  white-space: normal;
  overflow-wrap: anywhere;
}
.home-page .contact p a {
  display: inline;
  margin: 0;
  color: inherit;
  font-size: inherit;
}
.home-page .contact p i {
  flex: 0 0 24px;
  width: 24px;
  margin-top: 3px;
}
.home-page .footer-contact-value {
  min-width: 0;
  overflow-wrap: anywhere;
}
.home-page .copyright {
  position: absolute;
  top: 68.4%;
  left: 50%;
  width: var(--content);
  transform: translateX(-50%);
  padding-top: 36px;
  border-top: 1px solid #222;
  font-size: 18px;
}
.home-page #side_menu {
  position: fixed;
  z-index: 110;
  top: 50%;
  right: 3.7%;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  transform: translateY(-50%);
  list-style: none;
}
.home-page #side_menu button {
  width: 24px;
  height: 24px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.home-page #side_menu button:focus {
  outline: none;
}
.home-page #side_menu button::before {
  content: "";
  width: 8px;
  height: 8px;
  display: block;
  background: #050505;
}
.home-page #side_menu .active button::before {
  background: var(--blue);
}
.home-page .header--hero ~ #side_menu button::before {
  background: #fff;
}
.home-page .header--hero ~ #side_menu .active button::before {
  background: var(--blue);
}
/* Scale the original 1440px composition proportionally on wide desktop screens. */
@media (min-width: 1921px) {
  .home-page {
    --edge: 12.5vw;
    --content: min(1920px, 75vw);
  }
  .home-page :root {
    --edge: 12.5vw;
    --content: min(1920px, 75vw);
  }
  .home-page .about-layout {
    transform: none;
  }
}
@media (min-width: 1501px) and (max-width: 1920px) {
  .home-page .about-layout {
    grid-template-columns: minmax(0, 47.2%) minmax(0, 49.2%);
    gap: 3.6%;
  }
  .home-page .about-image {
    width: 100%;
  }
}
@media (max-width: 1500px) {
  .home-page :root {
    --edge: 7vw;
    --content: 86vw;
  }
  .home-page .header nav {
    gap: 15px;
  }
  .home-page .header nav a,
  .home-page .language {
    font-size: 14px;
  }
  .home-page .about-layout {
    grid-template-columns: 48% 48%;
    gap: 4%;
  }
  .home-page .about-image {
    width: 100%;
  }
  .home-page .metrics {
    max-width: 86vw;
  }
  .home-page .news-grid {
    grid-template-columns: 50% 43%;
    gap: 7%;
  }
  .home-page .news-image img {
    width: 100%;
  }
  .home-page .news-content {
    top: 18%;
  }
  .home-page .news-content > h2 {
    font-size: clamp(42px, 3.73vw, 54px);
  }
  .home-page .news-grid {
    margin-top: clamp(48px, 4.75vw, 69px);
  }
  .home-page .news-feature h3 {
    margin-bottom: clamp(24px, 2.35vw, 34px);
    font-size: clamp(21px, 1.86vw, 27px);
  }
  .home-page .news-list article {
    min-height: clamp(138px, 11.6vw, 168px);
    padding: clamp(22px, 2.07vw, 30px) clamp(72px, 6.56vw, 95px) clamp(20px, 1.93vw, 28px) clamp(30px, 2.76vw, 40px);
  }
  .home-page .news-list article > i {
    top: clamp(27px, 2.49vw, 36px);
    width: 8px;
    height: 8px;
  }
  .home-page .news-list h3,
  .home-page .news-list p {
    font-size: clamp(14px, 1.1vw, 16px);
  }
  .home-page .news-list p {
    margin-top: clamp(13px, 1.24vw, 18px);
  }
  .home-page .news-list time {
    top: clamp(23px, 2.14vw, 31px);
    font-size: clamp(12px, 0.97vw, 14px);
  }
  .home-page .solution-steps {
    gap: 5%;
  }
  .home-page .solution-steps span {
    font-size: 15px;
  }
  .home-page .support-prev {
    left: -6vw;
  }
  .home-page .support-next {
    right: -6vw;
  }
  .home-page .footer-grid {
    grid-template-columns: 23% 22% 14% 14% 23%;
    gap: 1%;
  }
}
@media (max-width: 1100px) {
  .home-page .header nav {
    display: none;
  }
  .home-page .about-copy h2,
  .home-page .products-head h2,
  .home-page .news-content > h2,
  .home-page .support-content > h2,
  .home-page .partners-content > h2 {
    font-size: 42px;
  }
  .home-page .about-copy h3 {
    font-size: 21px;
  }
  .home-page .about-copy p {
    font-size: 14px;
  }
  .home-page .industry-feature {
    left: 45px;
  }
  .home-page .industry-caption h3 {
    font-size: 19px;
  }
  .home-page .solution-copy h2 {
    font-size: 45px;
  }
  .home-page .support-card {
    padding: 60px 28px 36px;
  }
  .home-page .support-card h3 {
    font-size: 18px;
  }
}
@media (max-width: 900px) {
  .home-page :root {
    --edge: 7vw;
    --content: 86vw;
  }
  .home-page body {
    overflow-y: auto !important;
  }
  .home-page html.fp-enabled,
  .home-page html.fp-enabled body {
    overflow: visible !important;
    height: auto !important;
  }
  .home-page #fullpage {
    transform: none !important;
    transition: none !important;
  }
  .home-page #fullpage > .section {
    transform: none !important;
  }
  .home-page .header {
    height: 72px;
    padding: 0 7vw;
    background: #fff;
    color: #111;
  }
  .home-page .header--hero {
    color: #111;
  }
  .home-page .header--hero .logo--blue {
    opacity: 1;
  }
  .home-page .header--hero .logo--white {
    opacity: 0;
  }
  .home-page .brand {
    flex-basis: 118px;
    height: 65px;
  }
  .home-page .logo {
    width: 118px;
  }
  .home-page .header .language-switcher,
  .home-page .header .search,
  .home-page #side_menu {
    display: none;
  }
  .home-page .screen {
    height: auto !important;
    min-height: 0;
    overflow: hidden;
  }
  .home-page .hero {
    height: 680px !important;
  }
  .home-page .hero-slide {
    display: flex;
    align-items: center;
    padding: 72px 0 0;
  }
  .home-page .hero-slide > img {
    position: absolute;
    inset: 0;
  }
  .home-page .hero-copy {
    position: relative;
    top: auto;
    left: auto;
    margin-left: 7vw;
  }
  .home-page .hero h1,
  .home-page .hero h2 {
    font-size: 38px;
  }
  .home-page .hero-controls {
    right: 7vw;
    bottom: 7%;
  }
  .home-page .hero-controls b,
  .home-page .hero-controls span {
    font-size: 20px;
  }
  .home-page .social {
    left: 7vw;
    bottom: 8%;
  }
  .home-page .more-label {
    min-width: 145px;
    height: 48px;
    font-size: 16px;
  }
  .home-page .more-icon {
    width: 48px;
    height: 48px;
  }
  .home-page .about {
    padding: clamp(76px, 10vw, 110px) 7vw clamp(64px, 8vw, 80px);
  }
  .home-page .about {
    display: block;
  }
  .home-page .about-layout {
    position: static;
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  .home-page .about-copy em {
    font-size: 20px;
  }
  .home-page .about-copy h2 {
    margin: 18px 0 24px;
    font-size: 39px;
  }
  .home-page .about-copy h3 {
    font-size: 20px;
  }
  .home-page .about-copy p {
    font-size: 15px;
  }
  .home-page .about-image {
    order: -1;
    height: 280px;
    margin: 0 0 36px;
  }
  .home-page .numbers {
    height: 680px !important;
  }
  .home-page .numbers {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .home-page .numbers-content {
    position: relative;
    top: auto;
    left: auto;
    padding: 0 7vw;
    transform: translateY(-2vh);
  }
  .home-page .numbers-content h2 {
    font-size: 38px;
  }
  .home-page .numbers-content > p {
    margin-top: 28px;
    line-height: 1.5;
  }
  .home-page .metrics {
    width: 100%;
    max-width: none;
    margin-top: 70px;
    grid-template-columns: 1fr 1fr;
    gap: 35px 10px;
  }
  .home-page .metrics > div,
  .home-page .metrics > div:first-child {
    padding-left: 0;
  }
  .home-page .metrics > div + div::before {
    display: none;
  }
  .home-page .metrics b {
    font-size: 40px;
  }
  .home-page .metrics small {
    font-size: 14px;
  }
  .home-page .industry-grid {
    display: block;
  }
  .home-page .industry-grid article {
    height: 300px;
    transition: height 0.5s ease;
  }
  .home-page .industry-grid article.active,
  .home-page .industry-grid article:hover {
    height: 520px;
  }
  .home-page .industry-feature {
    top: 24%;
    left: 7vw;
  }
  .home-page .industry-caption {
    bottom: 20%;
  }
  .home-page .solution::before {
    display: none;
  }
  .home-page .products,
  .home-page .news,
  .home-page .support,
  .home-page .partners {
    padding: 110px 0 90px;
  }
  .home-page .products-head,
  .home-page .news-content,
  .home-page .support-content,
  .home-page .partners-content {
    position: static;
    transform: none;
  }
  .home-page .products-head h2,
  .home-page .news-content > h2,
  .home-page .support-content > h2,
  .home-page .partners-content > h2 {
    font-size: 39px;
  }
  .home-page .outline-link {
    min-width: 145px;
    height: 46px;
    padding: 0 20px;
    font-size: 15px;
  }
  .home-page .products-stage,
  .home-page .projects-stage {
    position: relative;
    top: auto;
    margin-top: 45px;
  }
  .home-page .product-swiper {
    width: auto;
    margin-left: 7vw;
    overflow: hidden;
  }
  .home-page .product-card {
    height: 420px;
  }
  .home-page .carousel-circle,
  .home-page .product-progress {
    display: none;
  }
  .home-page .solution {
    height: 650px !important;
    display: grid;
    align-items: center;
  }
  .home-page .solution-image {
    position: static;
    grid-area: 1 / 1;
    justify-self: center;
    width: 116%;
    height: 578px;
    object-fit: contain;
    opacity: 0.46;
    transform: translateX(8%);
  }
  .home-page .solution-copy {
    position: relative;
    z-index: 2;
    grid-area: 1 / 1;
    top: auto;
    right: auto;
    left: auto;
    margin: 0 7vw;
  }
  .home-page .solution-copy h2 {
    font-size: 38px;
  }
  .home-page .solution-copy p {
    font-size: 17px;
  }
  .home-page .solution-steps {
    display: none;
  }
  .home-page .support-content,
  .home-page .partners-content {
    width: var(--content);
  }
  .home-page .support-stage {
    margin-top: 40px;
  }
  .home-page .support-swiper .swiper-wrapper {
    align-items: stretch;
  }
  .home-page .support-card {
    height: auto;
    min-height: 460px;
    padding: 48px 28px 32px;
  }
  .home-page .support-card h3 {
    margin: 28px 0 22px;
  }
  .home-page .support-contact {
    max-width: 100%;
  }
  .home-page .partner-grid {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 36px;
    column-gap: 28px;
    row-gap: 22px;
  }
  .home-page .partner-grid > div {
    height: 76px;
  }
  .home-page .partner-grid img {
    width: auto;
    height: auto;
    max-width: 88%;
    max-height: 62px;
  }
  .home-page .partner-grid img[src*="nestle"] {
    max-width: 148px;
    max-height: 66px;
  }
  .home-page .partner-cta {
    width: 100%;
    max-width: 420px;
  }
  .home-page .news-content {
    width: var(--content);
  }
  .home-page .news-grid {
    grid-template-columns: 1fr;
    gap: 45px;
  }
  .home-page .news-feature h3 {
    font-size: 21px;
  }
  .home-page .news-list article {
    padding-right: 80px;
  }
  .home-page .footer {
    padding: 90px 0 55px;
  }
  .home-page .footer-grid {
    position: static;
    transform: none;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
  }
  .home-page .footer-brand {
    grid-column: 1 / -1;
  }
  .home-page .footer-brand h3 {
    margin-top: 45px;
  }
  .home-page .footer-grid .contact {
    grid-column: 1 / -1;
  }
  .home-page .footer-grid a,
  .home-page .contact p {
    font-size: 15px;
  }
  .home-page .copyright {
    position: static;
    width: var(--content);
    margin: 50px auto 0;
    transform: none;
    font-size: 14px;
  }
}
@media (max-width: 560px) {
  .home-page .hero h1,
  .home-page .hero h2 {
    font-size: 31px;
    letter-spacing: -0.8px;
  }
  .home-page .hero-controls button {
    width: 45px;
    height: 45px;
  }
  .home-page .social {
    gap: 10px;
    bottom: 12%;
  }
  .home-page .social a {
    flex-basis: 32px;
    width: 32px;
    height: 32px;
    font-size: 19px;
  }
  .home-page .products-head {
    align-items: flex-start;
    gap: 20px;
  }
  .home-page .outline-link {
    min-width: 124px;
  }
  .home-page .news-image img {
    height: 250px;
  }
  .home-page .news-list h3,
  .home-page .news-list p {
    font-size: 13px;
  }
  .home-page .footer-grid {
    grid-template-columns: 1fr;
  }
  .home-page .footer-brand,
  .home-page .footer-grid .contact {
    grid-column: auto;
  }
}
.history-page {
  --blue: #3038a0;
  --ink: #111;
  --muted: #707070;
  --shell: min(1600px, 94vw);
  --transition-custom2: all 0.8s ease-in-out;
  margin: 0;
  color: var(--ink);
  background: #fff;
  font-family: "MiSans", Arial, sans-serif;
}
.history-page * {
  box-sizing: border-box;
}
.history-page a {
  color: inherit;
  text-decoration: none;
}
.history-page button {
  font: inherit;
}
.history-page .history-shell {
  width: var(--shell);
  margin: 0 auto;
}
.history-page .history-header {
  position: relative;
  z-index: 20;
  width: var(--shell);
  height: 100px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 20px;
}
.history-page .history-header nav {
  display: flex;
  align-items: center;
  gap: 29px;
}
.history-page .history-header nav a {
  white-space: nowrap;
  font-family: "MiSans", Arial, sans-serif;
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0;
}
.history-page .history-header nav a.active {
  color: #3038a0;
}
.history-page .history-brand {
  width: 160px;
  margin-right: auto;
}
.history-page .history-brand img {
  display: block;
  width: 160px;
}
.history-page .history-search {
  width: 28px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 26px;
}
.history-page .history-flag {
  width: clamp(56px, 3.125vw, 64px);
  height: auto;
  aspect-ratio: 64/41;
  object-fit: cover;
}
.history-page .history-language {
  min-width: 110px;
  padding: 0;
  border: 0;
  display: flex;
  align-items: center;
  gap: 5px;
  background: none;
  font-family: "MiSans", Arial, sans-serif;
  font-size: 22px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0;
}
.history-page .history-menu,
.history-page .history-mobile-nav {
  display: none;
}
.history-page .history-header nav a,
.history-page .history-search,
.history-page .history-language,
.history-page .history-footer a,
.history-page .history-top {
  transition: color 0.38s ease 0.04s, background-color 0.38s ease 0.04s, border-color 0.38s ease 0.04s, box-shadow 0.38s ease 0.04s, transform 0.38s ease 0.04s;
}
@media (hover: hover) {
  .history-page .history-header nav a:hover,
  .history-page .history-header nav a:focus-visible,
  .history-page .history-search:hover,
  .history-page .history-search:focus-visible,
  .history-page .history-language:hover,
  .history-page .history-language:focus-visible,
  .history-page .history-footer a:hover,
  .history-page .history-footer a:focus-visible {
    color: var(--blue);
  }
  .history-page .history-search:hover,
  .history-page .history-search:focus-visible {
    transform: scale(1.1);
  }
  .history-page .history-top:hover,
  .history-page .history-top:focus-visible {
    color: #fff;
    border-color: var(--blue);
    background: var(--blue);
    box-shadow: 0 12px 28px rgba(47, 53, 159, 0.2);
    transform: translateY(-3px);
  }
}
.history-page .history-title {
  padding-top: 138px;
  padding-bottom: 49px;
}
.history-page .history-title h1 {
  margin: 0;
  font-size: 76px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -3px;
  text-align: center;
}
.history-page .history-hero {
  position: relative;
  width: 100%;
  height: 226px;
  overflow: hidden;
  color: #fff;
}
.history-page .history-hero img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 56%;
}
.history-page .history-hero-shade {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.58);
}
.history-page .history-hero p {
  position: relative;
  z-index: 1;
  width: var(--shell);
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 28px;
  line-height: 1.35;
}
.history-page .history-timeline {
  width: var(--shell);
  margin: 0 auto;
  padding: 136px 0 160px;
}
.history-page .history-era {
  position: relative;
  display: grid;
  grid-template-columns: 32.5% 67.5%;
  align-items: start;
  margin: 0;
}
.history-page .era-label {
  padding-top: 1px;
  color: #555;
}
.history-page .era-label strong,
.history-page .era-label span {
  display: block;
  font-size: 66px;
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -3px;
}
.history-page .era-label span {
  margin-top: 8px;
  font-size: 45px;
}
.history-page .history-year {
  display: grid;
  grid-template-columns: 23.5% 76.5%;
  min-height: 520px;
  padding: 18px 0 108px;
  border-top: 3px solid #555;
}
.history-page .history-era:first-child .history-year {
  min-height: 854px;
}
.history-page .history-year:last-child {
  padding-bottom: 0;
}
.history-page .history-year h2 {
  margin: 0;
  font-size: 44px;
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -2px;
}
.history-page .history-year ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.history-page .history-year li {
  min-height: 69px;
  padding: 4px 0 20px;
  border-bottom: 1px dotted #ddd;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.5;
}
.history-page .history-year li + li {
  padding-top: 20px;
}
.history-page .history-footer {
  padding: 115px 0 70px;
  border-top: 1px solid #e5e5e5;
}
.history-page .history-footer-inner {
  width: var(--shell);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 240px 1fr auto;
  align-items: center;
  gap: 34px;
}
.history-page .history-footer img {
  width: 162px;
}
.history-page .history-footer p,
.history-page .history-footer span {
  color: #777;
  font-size: 15px;
}
.history-page .history-footer a {
  color: var(--blue);
  font-weight: 700;
}
.history-page .history-top {
  position: fixed;
  z-index: 30;
  right: 30px;
  bottom: 30px;
  width: 52px;
  height: 52px;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  border-color: #e2e2e2;
  background: rgba(255, 255, 255, 0.94);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: 0.25s ease;
}
.history-page .history-top.show {
  opacity: 1;
  visibility: visible;
}
.history-page .history-top i {
  font-size: 21px;
}
@media (max-width: 1500px) {
  :root {
    --shell: calc(100vw - 60px);
  }
  .history-header nav {
    gap: 16px;
  }
  .history-header nav a,
  .history-language {
    font-size: 14px;
  }
  .history-title h1 {
    font-size: 66px;
  }
  .era-label strong {
    font-size: 60px;
  }
}
@media (max-width: 1000px) {
  :root {
    --shell: calc(100vw - 36px);
  }
  .history-header {
    position: relative;
    width: 100%;
    height: 76px;
    padding: 0 18px;
  }
  .history-brand,
  .history-brand img {
    width: 122px;
  }
  .history-header nav,
  .history-search,
  .history-header .language-switcher {
    display: none;
  }
  .history-menu {
    margin-left: auto;
    width: 38px;
    height: 38px;
    padding: 8px 4px;
    border: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    background: none;
  }
  .history-menu span {
    width: 100%;
    height: 2px;
    background: #111;
    transition: 0.25s ease;
  }
  .history-menu[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .history-menu[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }
  .history-menu[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  .history-mobile-nav {
    position: fixed;
    z-index: 18;
    top: 76px;
    left: 0;
    right: 0;
    padding: 24px 18px 34px;
    display: grid;
    gap: 18px;
    background: #fff;
    box-shadow: 0 18px 30px rgba(0, 0, 0, 0.1);
    transform: translateY(-125%);
    transition: transform 0.3s ease;
  }
  .history-mobile-nav.open {
    transform: none;
  }
  .history-mobile-nav a {
    font-size: 20px;
    font-weight: 700;
  }
  .history-mobile-nav a.active {
    color: var(--blue);
  }
  .history-title {
    padding: 75px 0 30px;
  }
  .history-title h1 {
    font-size: 42px;
    line-height: 1.15;
    letter-spacing: -1px;
  }
  .history-hero {
    height: 194px;
  }
  .history-hero p {
    width: 100%;
    padding: 0 36px;
    font-size: 23px;
    line-height: 1.45;
    text-align: center;
    justify-content: center;
  }
  .history-timeline {
    padding: 70px 0 100px;
  }
  .history-era {
    display: block;
    margin-bottom: 88px;
  }
  .era-label {
    margin-bottom: 25px;
  }
  .era-label strong,
  .era-label span {
    display: inline;
    font-size: 38px;
    letter-spacing: -1.5px;
  }
  .era-label span {
    margin: 0;
  }
  .history-year,
  .history-era:first-child .history-year {
    display: block;
    min-height: 0;
    padding: 17px 0 58px;
  }
  .history-year h2 {
    margin-bottom: 37px;
    font-size: 32px;
    letter-spacing: -1px;
  }
  .history-year li {
    min-height: 55px;
    padding-bottom: 17px;
    font-size: 15px;
  }
  .history-year li + li {
    padding-top: 17px;
  }
  .history-footer {
    padding: 65px 0;
  }
  .history-footer-inner {
    grid-template-columns: 1fr;
  }
  .history-footer p {
    margin: 0;
  }
  .history-top {
    right: 16px;
    bottom: 16px;
    width: 46px;
    height: 46px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  [data-scroll] {
    opacity: 1!important;
    transform: none!important;
    transition: none !important;
  }
  .history-mobile-nav,
  .history-menu span,
  .history-top {
    transition: none;
  }
}
@media (min-width: 901px) and (max-width: 1500px) {
  .home-page .news-content {
    top: 18%;
  }
  .home-page .news-content > h2 {
    font-size: clamp(42px, 3.73vw, 54px);
  }
  .home-page .news-grid {
    margin-top: clamp(48px, 4.75vw, 69px);
    grid-template-columns: 50% 43%;
    gap: 7%;
  }
  .home-page .news-feature h3 {
    margin-bottom: clamp(24px, 2.35vw, 34px);
    font-size: clamp(21px, 1.86vw, 27px);
  }
  .home-page .news-image img {
    width: 100%;
    height: auto;
    aspect-ratio: 708 / 405;
  }
  .home-page .news-list article {
    height: clamp(138px, 11.6vw, 168px);
    min-height: 0;
    padding: clamp(22px, 2.07vw, 30px) 0 clamp(20px, 1.93vw, 28px) clamp(30px, 2.76vw, 40px);
    overflow: hidden;
  }
  .home-page .news-list article > i {
    top: clamp(27px, 2.49vw, 36px);
    width: 8px;
    height: 8px;
  }
  .home-page .news-list h3,
  .home-page .news-list p {
    font-size: clamp(13px, 1.03vw, 15px);
    line-height: 1.28;
  }
  .home-page .news-list h3 {
    padding-right: clamp(78px, 6.2vw, 90px);
  }
  .home-page .news-list p {
    padding-right: 12px;
  }
  .home-page .news-list p {
    margin-top: clamp(13px, 1.24vw, 18px);
  }
  .home-page .news-list time {
    top: clamp(23px, 2.14vw, 31px);
    font-size: clamp(12px, 0.97vw, 14px);
  }
}
@media (min-width: 901px) {
  .home-page .products,
  .home-page .about,
  .home-page .support,
  .home-page .news,
  .home-page .partners,
  .home-page .footer {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .home-page .products-head,
  .home-page .products-stage,
  .home-page .about-layout,
  .home-page .support-content,
  .home-page .news-content,
  .home-page .partners-content,
  .home-page .footer-grid,
  .home-page .copyright {
    position: static;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    transform: none;
  }
  .home-page .products-head {
    margin: 0 auto;
  }
  .home-page .products-stage {
    position: relative;
    width: 100%;
    margin-top: clamp(48px, 5.2vh, 64px);
  }
  .home-page .about-layout {
    margin: 0 auto;
  }
  .home-page .hero-slide {
    display: flex;
    align-items: center;
    padding-bottom: 4vh;
  }
  .home-page .hero-slide > img {
    position: absolute;
    inset: 0;
  }
  .home-page .hero-copy {
    position: relative;
    top: auto;
    left: auto;
    margin-left: var(--edge);
  }
  .home-page .solution {
    display: grid;
    grid-template-columns: minmax(0, 39%) minmax(0, 61%);
    align-items: center;
  }
  .home-page .solution-image {
    position: static;
    grid-column: 1 / 3;
    grid-row: 1;
    justify-self: end;
    width: 82%;
    height: 100%;
  }
  .home-page .solution-copy {
    position: relative;
    z-index: 2;
    grid-column: 1;
    grid-row: 1;
    top: auto;
    left: auto;
    margin-left: var(--edge);
  }
  .home-page .industry-grid article {
    display: grid;
    place-items: center;
  }
  .home-page .industry-caption {
    position: relative;
    grid-area: 1 / 1;
    left: auto;
    right: auto;
    bottom: auto;
    width: calc(100% - 50px);
  }
  .home-page .numbers {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .home-page .numbers-content {
    position: relative;
    top: auto;
    left: auto;
    transform: translateY(-4vh);
  }
  .home-page .support-content,
  .home-page .news-content,
  .home-page .partners-content {
    width: var(--content);
    margin: 0 auto;
  }
  .home-page .footer-grid {
    margin: 0 auto;
  }
  .home-page .copyright {
    margin: clamp(54px, 6vh, 72px) auto 0;
  }
}
.project-cases-page {
  --case-blue: #3038a0;
  --case-shell: min(1444px, calc(100vw - 48px));
  margin: 0;
  color: #101010;
  background: #fff;
  font-family: "MiSans", Arial, sans-serif;
}
.project-cases-page * {
  box-sizing: border-box;
}
.project-cases-page a {
  color: inherit;
  text-decoration: none;
}
.project-cases-page button {
  font: inherit;
}
.project-cases-page .case-header {
  position: absolute;
  z-index: 30;
  top: 0;
  left: 50%;
  width: var(--case-shell);
  height: 102px;
  display: flex;
  align-items: center;
  gap: 20px;
  color: #fff;
  transform: translateX(-50%);
}
.project-cases-page .case-header .history-brand {
  width: 162px;
  margin-right: auto;
  flex: 0 0 162px;
}
.project-cases-page .case-header .history-brand img {
  display: block;
  width: 100%;
  filter: brightness(0) invert(1);
}
.project-cases-page .case-header nav {
  display: flex;
  align-items: center;
  gap: clamp(18px, 1.55vw, 30px);
}
.project-cases-page .case-header nav a {
  position: relative;
  white-space: nowrap;
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
  transition: color 0.3s ease;
}
.project-cases-page .case-header nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -9px;
  height: 2px;
  background: #fff;
  transition: right 0.3s ease;
}
.project-cases-page .case-header nav a.active::after,
.project-cases-page .case-header nav a:hover::after,
.project-cases-page .case-header nav a:focus-visible::after {
  right: 0;
}
.project-cases-page .case-header .history-search {
  width: 28px;
  padding: 0;
  border: 0;
  flex: 0 0 28px;
  color: #fff;
  background: none;
  font-size: 26px;
  cursor: pointer;
  transition: transform 0.3s ease;
}
.project-cases-page .case-header .history-search:hover,
.project-cases-page .case-header .history-search:focus-visible {
  transform: scale(1.1);
}
.project-cases-page .case-header .language-switcher {
  display: flex;
  align-items: center;
  gap: 10px;
}
.project-cases-page .case-header .history-flag {
  width: 64px;
  height: 41px;
  object-fit: cover;
}
.project-cases-page .case-header .history-language {
  min-width: 96px;
  display: flex;
  align-items: center;
  gap: 5px;
  color: #fff;
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
}
.project-cases-page .case-header .language-chevron {
  filter: brightness(0) invert(1);
}
.project-cases-page .case-header .history-menu {
  display: none;
}
.project-cases-page .history-mobile-nav {
  display: none;
}
.project-cases-page .case-hero {
  height: 600px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: #fff;
}
.project-cases-page .case-hero > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.project-cases-page .case-hero h1 {
  position: absolute;
  margin: 15px 0 0;
  font-size: 56px;
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: -1.8px;
  text-align: center;
}
.project-cases-page .case-breadcrumb {
  width: var(--case-shell);
  height: 82px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #1e1e1e;
  font-size: 18px;
  line-height: 1;
}
.project-cases-page .case-breadcrumb a {
  color: #777;
  transition: color 0.3s ease;
}
.project-cases-page .case-breadcrumb a:hover,
.project-cases-page .case-breadcrumb a:focus-visible {
  color: var(--case-blue);
}
.project-cases-page .case-tabs {
  height: 78px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: clamp(100px, 12vw, 230px);
  border-bottom: 1px solid #d8d8d8;
}
.project-cases-page .case-tabs a {
  position: relative;
  min-width: 283px;
  height: 78px;
  padding: 0 20px 30px;
  color: #111;
  background: transparent;
  font-size: 22px;
  line-height: 1;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  transition: color 0.32s ease;
}
.project-cases-page .case-tabs a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 4px;
  background: var(--case-blue);
  transform: scaleX(0);
  transition: transform 0.32s ease;
}
.project-cases-page .case-tabs a.active {
  color: var(--case-blue);
}
.project-cases-page .case-tabs a.active::after,
.project-cases-page .case-tabs a:hover::after,
.project-cases-page .case-tabs a:focus-visible::after {
  transform: scaleX(1);
}
.project-cases-page .case-catalog {
  padding: 77px 0;
  background: #f4f4f4;
}
.project-cases-page .case-catalog .case-shell {
  width: var(--case-shell);
  margin: 0 auto;
}
.project-cases-page .case-catalog h2 {
  margin: 0;
  font-size: 54px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -1.7px;
}
.project-cases-page .case-catalog h2 strong {
  color: var(--case-blue);
  font-weight: inherit;
}
.project-cases-page .case-catalog .case-intro {
  max-width: 1160px;
  margin: 28px 0 48px;
  color: #111;
  font-size: 18px;
  line-height: 1.65;
  font-weight: 400;
}
.project-cases-page .case-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.project-cases-page .case-grid.is-changing .case-card {
  opacity: 0;
  transform: translateY(14px);
}
.project-cases-page .case-card {
  min-width: 0;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.07);
  transition: opacity 0.28s ease, transform 0.35s ease, box-shadow 0.35s ease;
}
.project-cases-page .case-card > a {
  display: block;
  aspect-ratio: 467 / 315;
  overflow: hidden;
}
.project-cases-page .case-card > a img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.65s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.project-cases-page .case-card > div {
  min-height: 244px;
  padding: 37px 32px 34px;
}
.project-cases-page .case-card h3 {
  margin: 0;
  max-width: 360px;
  font-size: 18px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.35px;
}
.project-cases-page .case-card h3 a {
  transition: color 0.3s ease;
}
.project-cases-page .case-card p {
  max-width: 355px;
  margin: 29px 0 0;
  color: #777;
  font-size: 16px;
  line-height: 1.55;
  font-weight: 400;
}
.project-cases-page .case-card:hover,
.project-cases-page .case-card:focus-within {
  transform: translateY(-5px);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.12);
}
.project-cases-page .case-card:hover img,
.project-cases-page .case-card:focus-within img {
  transform: scale(1.035);
}
.project-cases-page .case-card:hover h3 a,
.project-cases-page .case-card:focus-within h3 a {
  color: var(--case-blue);
}
.project-cases-page .case-pagination {
  margin-top: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
}
.project-cases-page .case-pagination button,
.project-cases-page .case-pagination span {
  width: 38px;
  height: 38px;
  border: 1px solid #aaa;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #555;
  background: transparent;
  font-size: 16px;
  line-height: 1;
}
.project-cases-page .case-pagination button {
  cursor: pointer;
  transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease, transform 0.3s ease;
}
.project-cases-page .case-pagination button.active,
.project-cases-page .case-pagination button:hover,
.project-cases-page .case-pagination button:focus-visible {
  color: #fff;
  border-color: var(--case-blue);
  background: var(--case-blue);
  transform: translateY(-2px);
}
.project-cases-page .case-pagination span {
  border-color: #aaa;
}
.project-cases-page .case-contact {
  height: 400px;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: 100%;
  place-items: center;
  overflow: hidden;
  color: #fff;
  background: #06122f;
}
.project-cases-page .case-contact > img {
  grid-area: 1 / 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.project-cases-page .case-contact .case-contact-copy {
  z-index: 1;
  grid-area: 1 / 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.project-cases-page .case-contact .case-contact-copy span {
  font-size: 18px;
  line-height: 1;
  font-weight: 700;
}
.project-cases-page .case-contact .case-contact-copy h2 {
  margin: 52px 0 37px;
  font-size: 49px;
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -1.3px;
}
.project-cases-page .case-contact .case-contact-copy p {
  margin: 0;
  font-size: 17px;
  line-height: 1.5;
}
.project-cases-page .case-contact .case-contact-copy a {
  width: 245px;
  height: 61px;
  margin-top: 46px;
  border: 2px solid #fff;
  border-radius: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 600;
  transition: color 0.35s ease, background-color 0.35s ease, transform 0.35s ease;
}
.project-cases-page .case-contact .case-contact-copy a:hover,
.project-cases-page .case-contact .case-contact-copy a:focus-visible {
  color: #06122f;
  background: #fff;
  transform: translateY(-3px);
}
.project-cases-page .case-footer {
  padding: 74px 0;
  background: #f4f4f4;
}
.project-cases-page .case-footer-grid {
  width: var(--case-shell);
  margin: 0 auto;
  display: grid;
  /* The product menu has the longest labels. Use a small amount of the
     brand column's spare width so only this column gains room. */
  grid-template-columns: 1.52fr 1.05fr .72fr .72fr 1.45fr;
  gap: 48px;
}
.project-cases-page .case-footer-grid h3 {
  margin: 0 0 33px;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 800;
}
.project-cases-page .case-footer-grid > div:not(.case-footer-brand) > a {
  width: fit-content;
  margin: 0 0 22px;
  display: block;
  color: #222;
  font-size: 16px;
  transition: color 0.3s ease, transform 0.3s ease;
}
.project-cases-page .case-footer-grid > div:not(.case-footer-brand) > a.active {
  color: var(--case-blue);
}
.project-cases-page .case-footer-grid > div:not(.case-footer-brand) > a:hover,
.project-cases-page .case-footer-grid > div:not(.case-footer-brand) > a:focus-visible {
  color: var(--case-blue);
  transform: translateX(3px);
}
.project-cases-page .case-footer-brand img {
  display: block;
  width: 162px;
}
.project-cases-page .case-footer-brand h3 {
  margin-top: 142px;
}
.project-cases-page .case-social {
  display: flex;
  gap: 22px;
}
.project-cases-page .case-social a {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #111;
  font-size: 18px;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.project-cases-page .case-social a:hover,
.project-cases-page .case-social a:focus-visible {
  background: var(--case-blue);
  transform: translateY(-3px);
}
.project-cases-page .case-footer-contact h3 {
  margin-bottom: 35px;
}
.project-cases-page .case-footer-contact p {
  margin: 0 0 23px;
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 16px;
}
.project-cases-page .case-footer-contact i {
  width: 20px;
  color: #111;
  font-size: 18px;
}
.project-cases-page .case-copyright {
  width: var(--case-shell);
  margin: 137px auto 0;
  padding-top: 30px;
  border-top: 1px solid #8f8f8f;
  font-size: 15px;
  line-height: 1.5;
}
.project-cases-page .history-top {
  position: fixed;
  z-index: 40;
  right: 30px;
  bottom: 30px;
  width: 52px;
  height: 52px;
  border: 1px solid #ddd;
  border-radius: 50%;
  color: #222;
  background: rgba(255, 255, 255, 0.95);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease;
}
.project-cases-page .history-top.show {
  opacity: 1;
  visibility: visible;
}
.project-cases-page .history-top:hover,
.project-cases-page .history-top:focus-visible {
  color: #fff;
  border-color: var(--case-blue);
  background: var(--case-blue);
  transform: translateY(-3px);
}
@media (max-width: 1500px) {
  .project-cases-page {
    --case-shell: min(1240px, calc(100vw - 48px));
  }
  .project-cases-page .case-header {
    gap: 14px;
  }
  .project-cases-page .case-header nav {
    gap: 15px;
  }
  .project-cases-page .case-header nav a {
    font-size: 14px;
  }
  .project-cases-page .case-header .history-language {
    min-width: 78px;
    font-size: 14px;
  }
  .project-cases-page .case-header .history-flag {
    width: 56px;
    height: auto;
  }
  .project-cases-page .case-catalog {
    padding-top: 100px;
  }
  .project-cases-page .case-card > div {
    padding: 30px 26px;
  }
  .project-cases-page .case-card h3 {
    font-size: 18px;
  }
  .project-cases-page .case-card p {
    margin-top: 28px;
    font-size: 14px;
  }
  .project-cases-page .case-footer-grid {
    gap: 30px;
  }
}
@media (max-width: 1000px) {
  .project-cases-page {
    --case-shell: calc(100vw - 36px);
  }
  .project-cases-page .case-header {
    position: absolute;
    width: 100%;
    height: 76px;
    padding: 0 18px;
    transform: translateX(-50%);
  }
  .project-cases-page .case-header .history-brand {
    width: 122px;
    flex-basis: 122px;
  }
  .project-cases-page .case-header .history-brand img {
    width: 122px;
  }
  .project-cases-page .case-header nav,
  .project-cases-page .case-header .history-search,
  .project-cases-page .case-header .language-switcher {
    display: none;
  }
  .project-cases-page .case-header .history-menu {
    width: 38px;
    height: 38px;
    margin-left: auto;
    padding: 8px 4px;
    border: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    background: none;
  }
  .project-cases-page .case-header .history-menu span {
    width: 100%;
    height: 2px;
    background: #fff;
    transition: 0.25s ease;
  }
  .project-cases-page .case-header .history-menu[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .project-cases-page .case-header .history-menu[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }
  .project-cases-page .case-header .history-menu[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  .project-cases-page .history-mobile-nav {
    position: fixed;
    z-index: 28;
    top: 76px;
    left: 0;
    right: 0;
    padding: 24px 18px 34px;
    display: grid;
    gap: 18px;
    background: #fff;
    box-shadow: 0 18px 30px rgba(0, 0, 0, 0.1);
    transform: translateY(-125%);
    transition: transform 0.3s ease;
  }
  .project-cases-page .history-mobile-nav.open {
    transform: none;
  }
  .project-cases-page .history-mobile-nav a {
    color: #111;
    font-size: 18px;
    font-weight: 700;
  }
  .project-cases-page .history-mobile-nav a.active {
    color: var(--case-blue);
  }
  .project-cases-page .case-hero {
    height: 440px;
  }
  .project-cases-page .case-hero h1 {
    margin-top: 20px;
    padding: 0 20px;
    font-size: 42px;
  }
  .project-cases-page .case-breadcrumb {
    height: 70px;
    font-size: 15px;
  }
  .project-cases-page .case-tabs {
    gap: 20px;
  }
  .project-cases-page .case-tabs a {
    min-width: min(44vw, 260px);
    padding-left: 8px;
    padding-right: 8px;
    font-size: 17px;
  }
  .project-cases-page .case-catalog {
    padding: 76px 0 90px;
  }
  .project-cases-page .case-catalog h2 {
    font-size: 43px;
  }
  .project-cases-page .case-catalog .case-intro {
    margin: 40px 0 48px;
    font-size: 16px;
  }
  .project-cases-page .case-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .project-cases-page .case-card > div {
    min-height: 220px;
  }
  .project-cases-page .case-contact {
    height: 370px;
  }
  .project-cases-page .case-contact .case-contact-copy h2 {
    margin: 38px 0 28px;
    font-size: 38px;
  }
  .project-cases-page .case-contact .case-contact-copy a {
    margin-top: 36px;
  }
  .project-cases-page .case-footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .project-cases-page .case-footer-grid .case-footer-brand {
    grid-column: 1 / -1;
  }
  .project-cases-page .case-footer-grid .case-footer-brand h3 {
    margin-top: 52px;
  }
  .project-cases-page .case-footer-grid .case-footer-contact {
    grid-column: 1 / -1;
  }
}
@media (min-width: 1001px) {
  .project-cases-page .case-header {
    position: sticky;
    top: 0;
    left: auto;
    margin: 0 auto -102px;
    transform: none;
    isolation: isolate;
    transition: filter 0.3s ease;
  }
  .project-cases-page .case-header::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: calc((100vw - var(--case-shell)) / -2);
    bottom: 0;
    left: calc((100vw - var(--case-shell)) / -2);
    background: rgba(5, 25, 64, 0);
    box-shadow: 0 0 0 rgba(5, 25, 64, 0);
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
  }
  .project-cases-page .case-header.is-sticky::before {
    background: rgba(5, 25, 64, 0.97);
    box-shadow: 0 7px 22px rgba(5, 25, 64, 0.18);
  }
  .history-page .history-header {
    position: sticky;
    top: 0;
    z-index: 30;
    background: rgba(255, 255, 255, 0);
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
  }
  .history-page .history-header.is-sticky {
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 7px 22px rgba(0, 0, 0, 0.08);
  }
}
.contact-page {
  --contact-blue: #3038a0;
  --contact-shell: min(1444px, calc(100vw - 48px));
  color: #111;
  background: #fff;
}
.contact-page .contact-hero > img {
  object-position: center 50%;
}
.contact-page .contact-shell {
  width: var(--contact-shell);
  margin: 0 auto;
}
.contact-page .contact-intro {
  padding: 118px 0 102px;
  text-align: center;
}
.contact-page .contact-intro .contact-shell {
  max-width: 900px;
}
.contact-page .contact-intro span {
  color: var(--contact-blue);
  font-size: 18px;
  font-weight: 700;
}
.contact-page .contact-intro h2 {
  margin: 20px 0 25px;
  font-size: clamp(48px, 4.2vw, 76px);
  line-height: 1.08;
  letter-spacing: -2px;
}
.contact-page .contact-intro h2 em {
  color: var(--contact-blue);
  font-style: normal;
}
.contact-page .contact-intro p {
  max-width: 660px;
  margin: 0 auto;
  color: #656565;
  font-size: 18px;
  line-height: 1.7;
}
.contact-page .contact-details {
  padding: 0 0 140px;
}
.contact-page .contact-details-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.contact-page .contact-details article {
  min-height: 244px;
  padding: 36px 30px 30px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: #f4f4f4;
  border-top: 3px solid var(--contact-blue);
  transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
}
.contact-page .contact-details article > i {
  margin-bottom: 27px;
  color: var(--contact-blue);
  font-size: 34px;
  line-height: 1;
}
.contact-page .contact-details article small {
  margin-bottom: 14px;
  color: #777;
  font-size: 14px;
}
.contact-page .contact-details article a {
  color: #171717;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 700;
  word-break: break-word;
  transition: color 0.3s ease;
}
.contact-page .contact-details article p {
  margin: 11px 0 0;
  color: #6a6a6a;
  font-size: 14px;
  line-height: 1.45;
}
.contact-page .contact-message {
  padding: 130px 0;
  background: #f1f1f1;
}
.contact-page .contact-message-grid {
  display: grid;
  grid-template-columns: 0.88fr 1.12fr;
  gap: clamp(54px, 8vw, 140px);
  align-items: center;
}
.contact-page .contact-form-copy span {
  color: var(--contact-blue);
  font-size: 18px;
  font-weight: 700;
}
.contact-page .contact-form-copy h2 {
  margin: 20px 0 26px;
  font-size: clamp(44px, 4.1vw, 68px);
  line-height: 1.06;
  letter-spacing: -2px;
}
.contact-page .contact-form-copy p {
  max-width: 470px;
  margin: 0;
  color: #666;
  font-size: 17px;
  line-height: 1.7;
}
.contact-page .contact-map-link {
  width: fit-content;
  margin-top: 38px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--contact-blue);
  font-size: 16px;
  font-weight: 700;
  border-bottom: 1px solid currentColor;
  padding-bottom: 8px;
  transition: color 0.3s ease, transform 0.3s ease;
}
.contact-page .contact-form {
  padding: clamp(32px, 4vw, 62px);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px 20px;
  background: #fff;
  box-shadow: 0 18px 38px rgba(14, 20, 66, 0.08);
}
.contact-page .contact-form--cf7 {
  display: block;
}
.contact-page .contact-form--cf7 .wpcf7,
.contact-page .contact-form--cf7 .wpcf7-form {
  width: 100%;
}
.contact-page .contact-form--cf7 #refer {
  display: none !important;
}
.contact-page .contact-form--cf7 .wpcf7-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 25px 20px;
}
.contact-page .contact-form.contact-form--cf7 label {
  display: block;
}
.contact-page .contact-form--cf7 label:nth-of-type(3) {
  grid-column: 1 / -1;
}
.contact-page .contact-form--cf7 label > input:not([type="submit"]),
.contact-page .contact-form--cf7 label > textarea {
  display: block;
  margin-top: 10px;
}
.contact-page .contact-form label {
  display: grid;
  gap: 10px;
  color: #222;
  font-size: 15px;
  font-weight: 700;
}
.contact-page .contact-form input,
.contact-page .contact-form textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid #c8c8c8;
  border-radius: 0;
  padding: 8px 0 12px;
  outline: 0;
  color: #111;
  background: transparent;
  font: 400 16px/1.45 "MiSans", Arial, sans-serif;
  transition: border-color 0.25s ease;
}
.contact-page .contact-form input:focus,
.contact-page .contact-form textarea:focus {
  border-color: var(--contact-blue);
}
.contact-page .contact-form textarea {
  min-height: 118px;
  resize: vertical;
}
.contact-page .contact-form .contact-form-wide,
.contact-page .contact-form .contact-form-bottom {
  grid-column: 1 / -1;
}
.contact-page .contact-form .contact-form-bottom {
  min-height: 52px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
}
.contact-page .contact-form .contact-form-required {
  display: inline-block;
  margin-left: 4px;
  color: #c02735;
}
.contact-page .contact-form button,
.contact-page .contact-form input[type="submit"] {
  min-width: 218px;
  height: 54px;
  border: 1px solid var(--contact-blue);
  border-radius: 27px;
  color: #fff;
  background: var(--contact-blue);
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
}
.contact-page .contact-form input[type="submit"] {
  width: auto;
  margin-left: auto;
}
.contact-page .contact-form button span {
  margin-left: 12px;
  font-size: 20px;
}
.contact-page .contact-form-status {
  min-height: 22px;
  margin: 0;
  color: #21873a;
  font-size: 14px;
  line-height: 1.45;
}
.contact-page .contact-form .wpcf7-not-valid-tip {
  margin-top: -4px;
  color: #b42318;
  font-size: 13px;
  line-height: 1.35;
}
.contact-page .contact-form .wpcf7-response-output {
  grid-column: 1 / -1;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #c8c8c8;
  color: #333;
  font-size: 14px;
  line-height: 1.45;
}
.contact-page .contact-qr {
  padding: 125px 0;
}
.contact-page .contact-qr .contact-shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 70px;
}
.contact-page .contact-qr span {
  color: var(--contact-blue);
  font-size: 18px;
  font-weight: 700;
}
.contact-page .contact-qr h2 {
  margin: 20px 0 24px;
  font-size: clamp(42px, 3.8vw, 64px);
  line-height: 1.08;
  letter-spacing: -2px;
}
.contact-page .contact-qr p {
  margin: 0;
  color: #666;
  font-size: 17px;
  line-height: 1.65;
}
.contact-page .contact-qr-list {
  display: flex;
  gap: 22px;
}
.contact-page .contact-qr-list figure {
  width: 190px;
  margin: 0;
  padding: 18px 18px 14px;
  border: 1px solid #e2e2e2;
  background: #fff;
  text-align: center;
}
.contact-page .contact-qr-list img {
  display: block;
  width: 100%;
  height: 154px;
  object-fit: contain;
}
.contact-page .contact-qr-list figcaption {
  margin-top: 12px;
  color: var(--contact-blue);
  font-size: 16px;
  font-weight: 700;
}
.contact-page .contact-qr-trigger {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: transparent;
  cursor: zoom-in;
}
.contact-page .contact-qr-trigger img {
  transition: transform 0.35s ease;
}
.contact-page .contact-qr-trigger .contact-qr-zoom {
  position: absolute;
  right: 9px;
  bottom: 9px;
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--contact-blue);
  font-size: 23px;
  line-height: 1;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.contact-page .contact-qr-dialog {
  width: min(92vw, 720px);
  max-width: none;
  max-height: 90vh;
  padding: 0;
  border: 0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
}
.contact-page .contact-qr-dialog::backdrop {
  background: rgba(5, 10, 33, 0.72);
  backdrop-filter: blur(4px);
}
.contact-page .contact-qr-dialog-inner {
  position: relative;
  display: grid;
  max-height: 90vh;
  place-items: center;
  padding: clamp(26px, 4vw, 42px);
}
.contact-page .contact-qr-dialog img {
  display: block;
  max-width: min(100%, 540px);
  max-height: calc(90vh - 116px);
  object-fit: contain;
}
.contact-page .contact-qr-dialog p {
  margin: 18px 0 0;
  color: var(--contact-blue);
  font-size: 18px;
  font-weight: 700;
}
.contact-page .contact-qr-dialog-close {
  position: absolute;
  top: 10px;
  right: 12px;
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: var(--contact-blue);
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.25s ease, transform 0.25s ease;
}
.contact-page .contact-footer .case-footer-brand h3 {
  margin-top: 80px;
}
@media (hover: hover) {
  .contact-page .contact-details article:hover {
    background: #fff;
    box-shadow: 0 16px 30px rgba(13, 20, 66, 0.1);
    transform: translateY(-5px);
  }
  .contact-page .contact-details article a:hover,
  .contact-page .contact-map-link:hover {
    color: var(--contact-blue);
  }
  .contact-page .contact-map-link:hover {
    transform: translateX(4px);
  }
  .contact-page .contact-form button:hover,
  .contact-page .contact-form input[type="submit"]:hover {
    color: var(--contact-blue);
    background: #fff;
    box-shadow: 0 10px 24px rgba(47, 53, 159, 0.16);
    transform: translateY(-3px);
  }
  .contact-page .contact-qr-trigger:hover img {
    transform: scale(1.045);
  }
  .contact-page .contact-qr-trigger:hover .contact-qr-zoom {
    opacity: 1;
    transform: translateY(0);
  }
  .contact-page .contact-qr-dialog-close:hover {
    background: #15195f;
    transform: rotate(90deg);
  }
}
@media (max-width: 1000px) {
  .contact-page {
    --contact-shell: calc(100vw - 36px);
  }
  .contact-page .contact-intro {
    padding: 86px 0 70px;
  }
  .contact-page .contact-details {
    padding-bottom: 86px;
  }
  .contact-page .contact-details-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .contact-page .contact-message {
    padding: 84px 0;
  }
  .contact-page .contact-message-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
  .contact-page .contact-qr {
    padding: 88px 0;
  }
  .contact-page .contact-qr .contact-shell {
    gap: 44px;
  }
}
@media (max-width: 620px) {
  .contact-page {
    --contact-shell: calc(100vw - 30px);
  }
  .contact-page .contact-intro {
    padding: 68px 0 50px;
  }
  .contact-page .contact-intro h2 {
    font-size: 43px;
    letter-spacing: -1px;
  }
  .contact-page .contact-intro p {
    font-size: 16px;
  }
  .contact-page .contact-details {
    padding-bottom: 64px;
  }
  .contact-page .contact-details-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .contact-page .contact-details article {
    min-height: 190px;
    padding: 28px 24px;
  }
  .contact-page .contact-details article > i {
    margin-bottom: 19px;
  }
  .contact-page .contact-message {
    padding: 64px 0;
  }
  .contact-page .contact-form-copy h2 {
    font-size: 43px;
    letter-spacing: -1px;
  }
  .contact-page .contact-form {
    padding: 30px 22px;
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .contact-page .contact-form--cf7 .wpcf7-form {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .contact-page .contact-form input[type="submit"] {
    width: 100%;
    margin-left: 0;
  }
  .contact-page .contact-form .contact-form-wide,
  .contact-page .contact-form .contact-form-bottom {
    grid-column: auto;
  }
  .contact-page .contact-form .contact-form-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
  .contact-page .contact-form button {
    width: 100%;
  }
  .contact-page .contact-qr {
    padding: 70px 0;
  }
  .contact-page .contact-qr .contact-shell {
    display: block;
  }
  .contact-page .contact-qr h2 {
    font-size: 42px;
    letter-spacing: -1px;
  }
  .contact-page .contact-qr-list {
    margin-top: 35px;
    gap: 12px;
  }
  .contact-page .contact-qr-list figure {
    width: calc(50% - 6px);
    padding: 12px;
  }
  .contact-page .contact-qr-list img {
    height: 128px;
  }
}
@media (max-width: 620px) {
  .project-cases-page {
    --case-shell: calc(100vw - 30px);
  }
  .project-cases-page .case-hero {
    height: 330px;
  }
  .project-cases-page .case-hero > img {
    object-position: 52% center;
  }
  .project-cases-page .case-hero h1 {
    font-size: 34px;
    letter-spacing: -0.8px;
  }
  .project-cases-page .case-breadcrumb {
    height: 62px;
    gap: 8px;
    font-size: 13px;
  }
  .project-cases-page .case-tabs {
    height: 68px;
    gap: 0;
    align-items: stretch;
  }
  .project-cases-page .case-tabs a {
    width: 50%;
    min-width: 0;
    height: 68px;
    padding: 0 6px 22px;
    font-size: 14px;
    line-height: 1.25;
  }
  .project-cases-page .case-catalog {
    padding: 58px 0 72px;
  }
  .project-cases-page .case-catalog h2 {
    font-size: 36px;
    letter-spacing: -1px;
  }
  .project-cases-page .case-catalog .case-intro {
    margin: 30px 0 38px;
    font-size: 15px;
    line-height: 1.6;
  }
  .project-cases-page .case-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .project-cases-page .case-card > div {
    min-height: 0;
    padding: 28px 24px 30px;
  }
  .project-cases-page .case-card h3 {
    font-size: 19px;
  }
  .project-cases-page .case-card p {
    margin-top: 24px;
    font-size: 14px;
  }
  .project-cases-page .case-pagination {
    margin-top: 48px;
    gap: 8px;
  }
  .project-cases-page .case-pagination button,
  .project-cases-page .case-pagination span {
    width: 34px;
    height: 34px;
    font-size: 14px;
  }
  .project-cases-page .case-contact {
    height: 390px;
  }
  .project-cases-page .case-contact .case-contact-copy {
    width: calc(100% - 30px);
  }
  .project-cases-page .case-contact .case-contact-copy span {
    font-size: 16px;
  }
  .project-cases-page .case-contact .case-contact-copy h2 {
    margin: 32px 0 24px;
    font-size: 31px;
  }
  .project-cases-page .case-contact .case-contact-copy p {
    max-width: 330px;
    font-size: 14px;
  }
  .project-cases-page .case-contact .case-contact-copy a {
    width: 220px;
    height: 54px;
    margin-top: 34px;
    font-size: 16px;
  }
  .project-cases-page .case-footer {
    padding: 58px 0 36px;
  }
  .project-cases-page .case-footer-grid {
    grid-template-columns: 1fr;
    gap: 42px;
  }
  .project-cases-page .case-footer-grid > div,
  .project-cases-page .case-footer-grid .case-footer-brand,
  .project-cases-page .case-footer-grid .case-footer-contact {
    grid-column: auto;
  }
  .project-cases-page .case-footer-grid h3 {
    margin-bottom: 22px;
  }
  .project-cases-page .case-footer-brand h3 {
    margin-top: 48px;
  }
  .project-cases-page .case-copyright {
    margin-top: 50px;
    padding-top: 24px;
    font-size: 13px;
  }
  .project-cases-page .history-top {
    right: 16px;
    bottom: 16px;
    width: 46px;
    height: 46px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .project-cases-page *,
  .project-cases-page *::before,
  .project-cases-page *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
.about-us-page {
  --about-shell: min(1442px, calc(100vw - 48px));
  background: #fff;
}
.about-us-page .about-shell {
  width: var(--about-shell);
  margin: 0 auto;
}
.about-us-page .about-hero > img {
  object-position: center center;
}
.about-us-page .about-company {
  height: 960px;
  background: #fff;
}
.about-us-page .about-company-main {
  padding-top: 62px;
  display: grid;
  grid-template-columns: 588px minmax(0, 1fr);
  gap: 47px;
  align-items: start;
}
.about-us-page .about-company-main figure {
  width: 588px;
  height: 678px;
  margin: 0;
  overflow: hidden;
}
.about-us-page .about-company-main figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about-us-page .about-company-copy {
  padding-top: 18px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.about-us-page .about-company-copy h2 {
  margin: 0 0 34px;
  font-size: 46px;
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -1.6px;
}
.about-us-page .about-company-copy p {
  margin: 0 0 25px;
  color: #6f6f6f;
  font-size: 17px;
  line-height: 1.62;
  font-weight: 400;
}
.about-us-page .about-stats {
  margin-top: 67px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: start;
}
.about-us-page .about-stats > div {
  position: relative;
  min-height: 119px;
  padding-left: 8px;
}
.about-us-page .about-stats strong {
  color: var(--case-blue);
  font-size: 54px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -1px;
}
.about-us-page .about-stats em {
  margin-left: 4px;
  color: var(--case-blue);
  font-size: 16px;
  line-height: 1;
  font-style: normal;
  font-weight: 800;
}
.about-us-page .about-stats small {
  margin-top: 22px;
  display: block;
  color: #505050;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 600;
}
.about-us-page .about-business {
  height: 800px;
  overflow: hidden;
  background: #fff;
}
.about-us-page .about-business h2 {
  margin: 0;
  padding-top: 59px;
  text-align: center;
  font-size: 54px;
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -1.4px;
}
.about-us-page .about-business h2 strong {
  color: var(--case-blue);
}
.about-us-page .about-business > .about-shell > p {
  margin: 32px 0 0;
  text-align: center;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 400;
}
.about-us-page .about-business-stage {
  position: relative;
  margin-top: 43px;
}
.about-us-page .about-business-swiper {
  width: 100%;
  height: 485px;
}
.about-us-page .about-business-card {
  position: relative;
  height: 485px;
  overflow: hidden;
  color: #fff;
  background: #152333;
  cursor: pointer;
}
.about-us-page .about-business-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.52);
  transition: background-color 0.42s ease;
}
.about-us-page .about-business-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.about-us-page .about-business-card span {
  position: absolute;
  z-index: 1;
  left: 28px;
  right: 28px;
  top: 50%;
  font-size: 23px;
  line-height: 1.22;
  font-weight: 800;
  text-align: center;
  transform: translateY(-50%);
}
.about-us-page .about-business-card:hover::after,
.about-us-page .about-business-card:focus-visible::after {
  background: rgba(0, 0, 0, 0.28);
}
.about-us-page .about-business-card:hover img,
.about-us-page .about-business-card:focus-visible img {
  transform: scale(1.035);
}
.about-us-page .about-business-prev,
.about-us-page .about-business-next {
  position: absolute;
  z-index: 3;
  top: 50%;
  width: 81px;
  height: 81px;
  border: 2px solid currentColor;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  font-size: 30px;
  cursor: pointer;
  transform: translateY(-50%);
  transition: color 0.35s ease, background-color 0.35s ease, transform 0.35s ease;
}
.about-us-page .about-business-prev:hover,
.about-us-page .about-business-next:hover,
.about-us-page .about-business-prev:focus-visible,
.about-us-page .about-business-next:focus-visible {
  color: #fff;
  background: var(--case-blue);
  transform: translateY(-50%) scale(1.05);
}
.about-us-page .about-business-prev {
  left: -111px;
  color: var(--case-blue);
}
.about-us-page .about-business-next {
  right: -111px;
  color: #111;
}
.about-us-page .about-business-progress {
  position: relative;
  width: 100%;
  height: 4px;
  margin-top: 67px;
  overflow: hidden;
  background: #ddd;
}
.about-us-page .about-business-progress .swiper-pagination-progressbar-fill {
  background: var(--case-blue);
}
.about-us-page .about-advantages { 
  overflow: hidden;
  background: #fff;
}
.about-us-page .about-advantages h2 {
  margin: 0;
  padding-top: 82px;
  text-align: center;
  font-size: 54px;
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -1.3px;
}
.about-us-page .about-advantages h2 strong {
  color: var(--case-blue);
}
.about-us-page .about-advantages-intro {
  max-width: 1260px;
  margin: 35px auto 0;
  text-align: center;
  font-size: 16px;
  line-height: 1.55;
}
.about-us-page .about-advantages-grid {
  margin-top: 78px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 72px;
  row-gap: 75px;
}
.about-us-page .about-advantages-grid article {
  min-width: 0;
  text-align: center;
}
.about-us-page .about-advantages-grid img {
  width: 108px;
  height: 114px;
  object-fit: contain;
}
.about-us-page .about-advantages-grid h3 {
  margin: 24px 0 16px;
  font-size: 22px;
  line-height: 1.15;
  font-weight: 800;
}
.about-us-page .about-advantages-grid p {
  max-width: 424px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 1.48;
  font-weight: 500;
}
.about-us-page .about-partners { 
  padding-top: 60px;
  padding-bottom: 80px;
  overflow: hidden;
  background: #fff;
}
.about-us-page .about-partners h2 {
  margin: 0;
  padding-top: 53px;
  text-align: center;
  font-size: 54px;
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -1px;
}
.about-us-page .about-partners h2 strong {
  color: var(--case-blue);
}
.about-us-page .about-partner-grid {
  margin-top: 41px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 47px 22px;
}
.about-us-page .about-partner-grid > div {
  height: 114px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.about-us-page .about-partner-grid img {
  display: block;
  object-fit: contain;
  transition: transform 0.35s ease;
}
.about-us-page .about-partner-grid > div:nth-child(1) img {
  width: 222px;
  height: 116px;
}
.about-us-page .about-partner-grid > div:nth-child(2) img {
  width: 255px;
  height: 116px;
}
.about-us-page .about-partner-grid > div:nth-child(3) img {
  width: 235px;
  height: 116px;
}
.about-us-page .about-partner-grid > div:nth-child(4) img {
  width: 240px;
  height: 116px;
}
.about-us-page .about-partner-grid > div:nth-child(5) img,
.about-us-page .about-partner-grid > div:nth-child(9) img {
  width: 222px;
  height: 135px;
}
.about-us-page .about-partner-grid > div:nth-child(6) img,
.about-us-page .about-partner-grid > div:nth-child(10) img {
  width: 325px;
  height: 135px;
}
.about-us-page .about-partner-grid > div:nth-child(7) img,
.about-us-page .about-partner-grid > div:nth-child(11) img {
  width: 240px;
  height: 135px;
}
.about-us-page .about-partner-grid > div:nth-child(8) img,
.about-us-page .about-partner-grid > div:nth-child(12) img {
  width: 274px;
  height: 175px;
}
.about-us-page .about-partner-grid > div:hover img {
  transform: scale(1.05);
}
.about-us-page .about-contact-gap {
  height: 50px;
}
.about-us-page .about-contact {
  height: 399px;
}
.about-us-page .about-contact .case-contact-copy a {
  /* color: transparent;
   */
  color: #fff;
  border-color: #fff;
  /* background: #fff;
   */
}
.about-us-page .about-contact .case-contact-copy a:hover,
.about-us-page .about-contact .case-contact-copy a:focus-visible {
  color: #000;
  background: #fff;
  transform: translateY(-2px);
}
.about-us-page .about-footer {
  height: 749px;
  padding-top: 74px;
  padding-bottom: 0;
  background: #fff;
}
.about-us-page .about-footer .case-copyright {
  margin-top: 137px;
}
@media (max-width: 1500px) {
  .about-us-page {
    --about-shell: min(1240px, calc(100vw - 48px));
  }
  .about-us-page .about-company-main {
    grid-template-columns: 500px minmax(0, 1fr);
    gap: 42px;
  }
  .about-us-page .about-company-main figure {
    width: 500px;
  }
  .about-us-page .about-company-copy h2 {
    font-size: 45px;
  }
  .about-us-page .about-company-copy p {
    font-size: 15px;
    line-height: 1.55;
  }
  .about-us-page .about-stats strong {
    font-size: 48px;
  }
  .about-us-page .about-stats small {
    font-size: 15px;
  }
  .about-us-page .about-business-prev {
    left: -54px;
  }
  .about-us-page .about-business-next {
    right: -54px;
  }
  .about-us-page .about-business-prev,
  .about-us-page .about-business-next {
    width: 64px;
    height: 64px;
  }
  .about-us-page .about-business-card span {
    font-size: 20px;
  }
  .about-us-page .about-advantages-grid {
    column-gap: 40px;
  }
  .about-us-page .about-advantages-grid h3 {
    font-size: 19px;
  }
  .about-us-page .about-advantages-grid p {
    font-size: 13px;
  }
}
@media (max-width: 1000px) {
  .about-us-page {
    --about-shell: calc(100vw - 36px);
  }
  .about-us-page .about-company,
  .about-us-page .about-business,
  .about-us-page .about-advantages,
  .about-us-page .about-partners,
  .about-us-page .about-footer {
    height: auto;
  }
  .about-us-page .about-company {
    padding: 56px 0 72px;
  }
  .about-us-page .about-company-main {
    padding-top: 0;
    grid-template-columns: 1fr;
    gap: 42px;
  }
  .about-us-page .about-company-main figure {
    width: 100%;
    height: auto;
    aspect-ratio: 588 / 678;
  }
  .about-us-page .about-company-copy {
    padding: 0;
  }
  .about-us-page .about-company-copy h2 {
    font-size: clamp(37px, 6vw, 50px);
  }
  .about-us-page .about-company-copy p {
    font-size: 16px;
  }
  .about-us-page .about-stats {
    margin-top: 48px;
    grid-template-columns: repeat(2, 1fr);
    gap: 38px 24px;
  }
  .about-us-page .about-stats > div {
    min-height: 95px;
  }
  .about-us-page .about-business {
    padding: 0 0 82px;
  }
  .about-us-page .about-business h2 {
    padding-top: 70px;
    font-size: 43px;
  }
  .about-us-page .about-business > .about-shell > p {
    line-height: 1.6;
  }
  .about-us-page .about-business-stage {
    margin-top: 40px;
    padding: 0 52px;
  }
  .about-us-page .about-business-swiper {
    height: 430px;
  }
  .about-us-page .about-business-card {
    height: 430px;
  }
  .about-us-page .about-business-prev {
    left: 0;
  }
  .about-us-page .about-business-next {
    right: 0;
  }
  .about-us-page .about-business-progress {
    width: calc(100% - 104px);
    margin: 42px auto 0;
  }
  .about-us-page .about-advantages {
    padding-bottom: 80px;
  }
  .about-us-page .about-advantages h2 {
    padding-top: 70px;
    font-size: 43px;
  }
  .about-us-page .about-advantages-intro {
    font-size: 15px;
  }
  .about-us-page .about-advantages-grid {
    margin-top: 60px;
    grid-template-columns: repeat(2, 1fr);
    gap: 58px 34px;
  }
  .about-us-page .about-advantages-grid h3 {
    font-size: 20px;
  }
  .about-us-page .about-advantages-grid p {
    font-size: 14px;
  }
  .about-us-page .about-partners {
    padding-bottom: 70px;
  }
  .about-us-page .about-partners h2 {
    padding-top: 64px;
    font-size: 43px;
  }
  .about-us-page .about-partner-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 28px 18px;
  }
  .about-us-page .about-contact-gap {
    height: 28px;
  }
  .about-us-page .about-contact {
    height: 370px;
  }
  .about-us-page .about-footer {
    padding: 64px 0 48px;
  }
}
@media (max-width: 620px) {
  .about-us-page {
    --about-shell: calc(100vw - 30px);
  }
  .about-us-page .about-company {
    padding: 44px 0 58px;
  }
  .about-us-page .about-company-main {
    gap: 34px;
  }
  .about-us-page .about-company-main figure {
    max-height: 520px;
  }
  .about-us-page .about-company-copy h2 {
    margin-bottom: 28px;
    font-size: 34px;
    letter-spacing: -0.8px;
  }
  .about-us-page .about-company-copy p {
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.62;
  }
  .about-us-page .about-stats {
    grid-template-columns: 1fr 1fr;
    gap: 30px 16px;
  }
  .about-us-page .about-stats strong {
    font-size: 42px;
  }
  .about-us-page .about-stats small {
    margin-top: 14px;
    font-size: 13px;
  }
  .about-us-page .about-business {
    padding-bottom: 64px;
  }
  .about-us-page .about-business h2 {
    padding-top: 54px;
    font-size: 35px;
  }
  .about-us-page .about-business > .about-shell > p {
    margin-top: 24px;
    font-size: 14px;
  }
  .about-us-page .about-business-stage {
    padding: 0;
  }
  .about-us-page .about-business-swiper,
  .about-us-page .about-business-card {
    height: 420px;
  }
  .about-us-page .about-business-prev,
  .about-us-page .about-business-next {
    top: auto;
    bottom: -76px;
    width: 52px;
    height: 52px;
    font-size: 22px;
    transform: none;
  }
  .about-us-page .about-business-prev:hover,
  .about-us-page .about-business-next:hover,
  .about-us-page .about-business-prev:focus-visible,
  .about-us-page .about-business-next:focus-visible {
    transform: scale(1.04);
  }
  .about-us-page .about-business-prev {
    left: 0;
  }
  .about-us-page .about-business-next {
    right: 0;
  }
  .about-us-page .about-business-progress {
    width: calc(100% - 130px);
    margin-top: 48px;
  }
  .about-us-page .about-advantages {
    padding-bottom: 66px;
  }
  .about-us-page .about-advantages h2 {
    padding-top: 56px;
    font-size: 35px;
  }
  .about-us-page .about-advantages-intro {
    margin-top: 26px;
    font-size: 14px;
  }
  .about-us-page .about-advantages-grid {
    margin-top: 50px;
    grid-template-columns: 1fr;
    gap: 48px;
  }
  .about-us-page .about-advantages-grid img {
    width: 94px;
    height: 100px;
  }
  .about-us-page .about-advantages-grid h3 {
    margin-top: 18px;
  }
  .about-us-page .about-advantages-grid p {
    max-width: 390px;
  }
  .about-us-page .about-partners {
    padding-bottom: 54px;
  }
  .about-us-page .about-partners h2 {
    padding-top: 52px;
    font-size: 35px;
  }
  .about-us-page .about-partner-grid {
    margin-top: 34px;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px 12px;
  }
  .about-us-page .about-partner-grid > div {
    height: 86px;
  }
  .about-us-page .about-partner-grid img {
    width: auto !important;
    height: auto !important;
    max-width: 88%;
    max-height: 62px;
  }
  .about-us-page .about-contact-gap {
    height: 18px;
  }
  .about-us-page .about-contact {
    height: 390px;
  }
  .about-us-page .about-footer {
    padding: 58px 0 36px;
  }
}
.product-center-page {
  --product-shell: min(1442px, calc(100vw - 48px));
  background: #fff;
}
.product-center-page .product-center-shell {
  width: var(--product-shell);
  margin: 0 auto;
}
.product-center-page .product-center-hero > img {
  object-position: center center;
}
.product-center-page .product-center-catalog {
  padding: 60px 0 80px;
  overflow: hidden;
  background: #fff;
}
.product-center-page .product-center-catalog h2 {
  margin: 0;
  color: var(--case-blue);
  font-size: 48px;
  line-height: 1.12;
  font-weight: 800;
  letter-spacing: -1.1px;
}
.product-center-page .product-center-intro {
  max-width: 1065px;
  margin: 28px 0 0;
  font-size: 16px;
  line-height: 1.55;
  font-weight: 400;
}
.product-center-page .product-center-layout {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 344px minmax(0, 1fr);
  gap: 21px;
  align-items: start;
}
.product-center-page .product-categories { 
  padding: 40px 31px 30px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.05);
}
.product-center-page .product-categories h3 {
  margin: 0 0 18px;
  padding-bottom: 18px;
  border-bottom: 2px solid var(--case-blue);
  color: var(--case-blue);
  font-size: 20px;
  line-height: 1.1;
  font-weight: 800;
}
.product-center-page .product-category-heading {
  min-height: 48px;
  padding: 10px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  color: #111;
  font-size: 16px;
  line-height: 1.18;
  font-weight: 600;
  transition: color 0.3s ease, background-color 0.3s ease;
}
.product-center-page .product-category-link {
  flex: 1 1 auto;
  color: inherit;
}
.product-center-page .product-category-link:hover,
.product-center-page .product-category-link:focus-visible {
  color: var(--case-blue);
}
.product-center-page .product-category-heading button {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
}
.product-center-page .product-category-heading button i {
  width: 20px;
  height: 20px;
  border: 1px solid currentColor;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}
.product-center-page .product-category-item.active {
  margin: 1px -31px 0;
}
.product-center-page .product-category-item.active > .product-category-heading {
  min-height: 76px;
  padding: 14px 31px;
  color: #fff;
  background: var(--case-blue);
}
.product-center-page .product-category-item.active .product-category-link:hover,
.product-center-page .product-category-item.active .product-category-link:focus-visible {
  color: #fff;
  text-decoration: underline;
}
.product-center-page .product-category-children {
  display: none;
  padding: 14px 22px 0;
}
.product-center-page .product-category-children a {
  margin-bottom: 17px;
  display: block;
  color: #666;
  font-size: 15px;
  line-height: 1.24;
  transition: color 0.3s ease, transform 0.3s ease;
}
.product-center-page .product-category-children a.active,
.product-center-page .product-category-children a:hover,
.product-center-page .product-category-children a:focus-visible {
  color: var(--case-blue);
  transform: translateX(2px);
}
.product-center-page .product-category-item.active .product-category-children {
  display: block;
}
.product-center-page .product-center-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 19px 21px;
}
.product-center-page .product-center-card {
  min-height: 442px;
  height: auto;
  padding: 0 19px 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: #fff;
  transition: box-shadow 0.35s ease, transform 0.35s ease;
}
.product-center-page .product-center-card img {
  width: 306px;
  max-width: 100%;
  height: 305px;
  display: block;
  object-fit: contain;
}
.product-center-page .product-center-card h3 {
  margin: 18px 0 16px;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 700;
  overflow-wrap: anywhere;
  transition: color 0.3s ease;
}
.product-center-page .product-center-card > a {
  min-width: 166px;
  height: 44px;
  margin-top: auto;
  padding: 0 24px;
  border: 1px solid var(--case-blue);
  border-radius: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--case-blue);
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
  cursor: pointer;
  transition: color 0.35s ease, background-color 0.35s ease, transform 0.35s ease;
}
.product-center-page .product-center-card.active,
.product-center-page .product-center-card:hover,
.product-center-page .product-center-card:focus-within {
  z-index: 1;
  box-shadow: 0 18px 32px rgba(0, 0, 0, 0.13);
}
.product-center-page .product-center-card.active h3,
.product-center-page .product-center-card:hover h3,
.product-center-page .product-center-card:focus-within h3 {
  color: var(--case-blue);
}
.product-center-page .product-center-card.active > a,
.product-center-page .product-center-card:hover > a,
.product-center-page .product-center-card:focus-within > a {
  color: #fff;
  background: var(--case-blue);
  transform: translateY(-2px);
}
.product-center-page .product-center-pagination {
  margin: 45px 0 0 660px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.product-center-page .product-center-pagination a,
.product-center-page .product-center-pagination span {
  width: 44px;
  height: 44px;
  border: 1px solid #aaa;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #444;
  background: #fff;
  font-size: 17px;
  line-height: 1;
  transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease, transform 0.3s ease;
}
.product-center-page .product-center-pagination span {
  letter-spacing: 2px;
}
.product-center-page .product-center-pagination a {
  cursor: pointer;
}
.product-center-page .product-center-pagination i {
  font-size: 14px;
}
.product-center-page .product-center-pagination i + i {
  margin-left: -8px;
}
.product-center-page .product-center-pagination a.active,
.product-center-page .product-center-pagination a:hover,
.product-center-page .product-center-pagination a:focus-visible {
  color: #fff;
  border-color: var(--case-blue);
  background: var(--case-blue);
  transform: translateY(-2px);
}
.product-center-page .product-center-contact {
  height: 400px;
}
.product-center-page .product-center-footer {
  height: 624px;
  padding-top: 80px;
  padding-bottom: 0;
  background: #fff;
}
.product-center-page .product-center-footer .case-copyright {
  margin-top: 137px;
}
@media (max-width: 1500px) {
  .product-center-page {
    --product-shell: min(1240px, calc(100vw - 48px));
  }
  .product-center-page .product-center-catalog {
    height: auto;
    padding-bottom: 72px;
  }
  .product-center-page .product-center-layout {
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 18px;
  }
  .product-center-page .product-categories {
    padding-left: 24px;
    padding-right: 24px;
  }
  .product-center-page .product-category-item.active {
    margin-left: -24px;
    margin-right: -24px;
  }
  .product-center-page .product-category-item.active > .product-category-heading {
    padding-left: 24px;
    padding-right: 24px;
  }
  .product-center-page .product-center-grid {
    gap: 18px;
  }
  .product-center-page .product-center-card {
    min-height: 426px;
    height: auto;
  }
  .product-center-page .product-center-card img {
    height: 280px;
  }
  .product-center-page .product-center-card h3 {
    font-size: 15px;
  }
  .product-center-page .product-center-pagination {
    margin-left: 0;
    justify-content: center;
  }
}
@media (max-width: 1000px) {
  .product-center-page {
    --product-shell: calc(100vw - 36px);
  }
  .product-center-page .product-center-catalog {
    padding: 54px 0 70px;
  }
  .product-center-page .product-center-catalog h2 {
    font-size: 43px;
  }
  .product-center-page .product-center-intro {
    margin-top: 24px;
    font-size: 15px;
  }
  .product-center-page .product-center-layout {
    margin-top: 38px;
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .product-center-page .product-categories {
    min-height: 0;
  }
  .product-center-page .product-center-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .product-center-page .product-center-card {
    min-height: 426px;
    height: auto;
  }
  .product-center-page .product-center-card img {
    height: 285px;
  }
  .product-center-page .product-center-pagination {
    margin-top: 44px;
    flex-wrap: wrap;
  }
  .product-center-page .product-center-footer {
    height: auto;
    padding: 64px 0 48px;
  }
}
@media (max-width: 620px) {
  .product-center-page {
    --product-shell: calc(100vw - 30px);
  }
  .product-center-page .product-center-catalog {
    padding: 44px 0 58px;
  }
  .product-center-page .product-center-catalog h2 {
    font-size: 36px;
  }
  .product-center-page .product-center-intro {
    font-size: 14px;
    line-height: 1.6;
  }
  .product-center-page .product-categories {
    padding: 28px 20px;
  }
  .product-center-page .product-categories h3 {
    font-size: 19px;
  }
  .product-center-page .product-category-heading {
    font-size: 14px;
  }
  .product-center-page .product-category-item.active {
    margin-left: -20px;
    margin-right: -20px;
  }
  .product-center-page .product-category-item.active > .product-category-heading {
    padding-left: 20px;
    padding-right: 20px;
  }
  .product-center-page .product-category-children {
    padding-left: 12px;
    padding-right: 12px;
  }
  .product-center-page .product-category-children a {
    font-size: 13px;
  }
  .product-center-page .product-center-grid {
    grid-template-columns: 1fr;
  }
  .product-center-page .product-center-card {
    min-height: 426px;
    height: auto;
  }
  .product-center-page .product-center-card img {
    width: 310px;
    height: 288px;
  }
  .product-center-page .product-center-card h3 {
    font-size: 16px;
  }
  .product-center-page .product-center-pagination {
    gap: 6px;
  }
  .product-center-page .product-center-pagination a,
  .product-center-page .product-center-pagination span {
    width: 34px;
    height: 34px;
    font-size: 14px;
  }
  .product-center-page .product-center-contact {
    height: 390px;
  }
  .product-center-page .product-center-footer {
    padding: 58px 0 36px;
  }
}
.technical-center-page {
  --technical-shell: min(1444px, calc(100vw - 48px));
}
.technical-center-page .technical-center-hero > img {
  object-position: center center;
}
.technical-center-page .technical-center-tabs {
  height: 78px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: min(136px, 7.08vw);
  border-bottom: 1px solid #d7d7d7;
}
.technical-center-page .technical-center-tabs a {
  position: relative;
  width: min(484px, 25.21vw);
  height: 78px;
  padding: 0 20px 30px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  color: #111;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: color 0.32s ease;
}
.technical-center-page .technical-center-tabs a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 4px;
  background: var(--case-blue);
  transform: scaleX(0);
  transition: transform 0.32s ease;
}
.technical-center-page .technical-center-tabs a.active {
  color: var(--case-blue);
}
.technical-center-page .technical-center-tabs a.active::after,
.technical-center-page .technical-center-tabs a:hover::after,
.technical-center-page .technical-center-tabs a:focus-visible::after {
  transform: scaleX(1);
}
.technical-center-page .technical-center-news { 
  padding: 95px 0 126px;
  background: #fff;
}
.technical-center-page .technical-feature,
.technical-center-page .technical-news-list,
.technical-center-page .technical-pagination {
  width: var(--technical-shell);
  margin-left: auto;
  margin-right: auto;
}
.technical-center-page .technical-feature {
  min-height: 527px;
  display: grid;
  grid-template-columns: minmax(0, 685px) minmax(0, 1fr);
  align-items: start;
  border-bottom: 1px solid #333;
}
.technical-center-page .technical-feature-copy {
  padding: 38px 34px 0 0;
}
.technical-center-page .technical-feature-copy time {
  display: block;
  color: #555;
  font-size: 16px;
  line-height: 1;
  font-weight: 400;
}
.technical-center-page .technical-feature-copy h2 {
  max-width: 660px;
  margin: 58px 0 26px;
  color: var(--case-blue);
  font-size: 20px;
  line-height: 1.5;
  font-weight: 700;
}
.technical-center-page .technical-feature-copy p {
  max-width: 685px;
  margin: 0;
  color: #6f6f6f;
  font-size: 15px;
  line-height: 1.63;
  font-weight: 400;
}
.technical-center-page .technical-feature figure {
  width: 100%;
  height: 469px;
  margin: 0;
  overflow: hidden;
}
.technical-center-page .technical-feature figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.technical-center-page .technical-more {
  width: 168px;
  height: 50px;
  border: 1px solid var(--case-blue);
  border-radius: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--case-blue);
  background: #fff;
  font-size: 15px;
  line-height: 1;
  font-weight: 400;
  cursor: pointer;
  transition: color 0.36s ease 0.04s, background-color 0.36s ease 0.04s, transform 0.36s ease 0.04s, box-shadow 0.36s ease 0.04s;
}
.technical-center-page .technical-more:hover,
.technical-center-page .technical-more:focus-visible {
  color: #fff;
  background: var(--case-blue);
  transform: translateY(-3px);
  box-shadow: 0 10px 22px rgba(42, 44, 144, 0.16);
}
.technical-center-page .technical-feature-copy .technical-more {
  margin-top: 60px;
}
.technical-center-page .technical-news-list {
  margin-top: 47px;
}
.technical-center-page .technical-news-row {
  min-height: 303px;
  margin-bottom: 48px;
  padding-bottom: 47px;
  border-bottom: 1px solid #ddd;
  display: grid;
  grid-template-columns: 94px minmax(0, 1fr);
  gap: 50px;
}
.technical-center-page .technical-news-row:last-child {
  margin-bottom: 0;
}
.technical-center-page .technical-date strong {
  display: block;
  color: var(--case-blue);
  font-size: 48px;
  line-height: 0.92;
  font-weight: 800;
  letter-spacing: -1px;
}
.technical-center-page .technical-date time {
  display: block;
  margin-top: 15px;
  color: #333;
  font-size: 16px;
  line-height: 1;
  font-weight: 400;
}
.technical-center-page .technical-news-copy h2 {
  margin: -2px 0 25px;
  font-size: 20px;
  line-height: 1.5;
  font-weight: 700;
}
.technical-center-page .technical-news-copy p {
  margin: 0;
  color: #707070;
  font-size: 15px;
  line-height: 1.55;
  font-weight: 400;
}
.technical-center-page .technical-news-copy .technical-more {
  margin-top: 31px;
}
.technical-center-page .technical-pagination {
  margin-top: 67px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.technical-center-page .technical-pagination a,
.technical-center-page .technical-pagination span {
  width: 44px;
  height: 44px;
  border: 1px solid #aaa;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #444;
  background: #fff;
  font-size: 17px;
  line-height: 1;
  transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease, transform 0.3s ease;
}
.technical-center-page .technical-pagination span {
  letter-spacing: 2px;
}
.technical-center-page .technical-pagination a {
  cursor: pointer;
}
.technical-center-page .technical-pagination a.active,
.technical-center-page .technical-pagination a:hover,
.technical-center-page .technical-pagination a:focus-visible {
  color: #fff;
  border-color: var(--case-blue);
  background: var(--case-blue);
  transform: translateY(-2px);
}
.technical-center-page .technical-center-contact {
  height: 399px;
}
.technical-center-page .technical-center-footer {
  height: 679px;
  padding-top: 76px;
  padding-bottom: 0;
  background: #fff;
}
@media (max-width: 1500px) {
  .technical-center-page {
    --technical-shell: min(1240px, calc(100vw - 48px));
  }
  .technical-center-page .technical-center-header .history-brand {
    width: 130px;
    flex-basis: 130px;
  }
  .technical-center-page .technical-center-news {
    min-height: 0;
    padding-bottom: 96px;
  }
  .technical-center-page .technical-feature {
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  }
  .technical-center-page .technical-feature-copy {
    padding-right: 30px;
  }
  .technical-center-page .technical-feature-copy h2 {
    margin-top: 46px;
  }
  .technical-center-page .technical-feature-copy p {
    font-size: 14px;
  }
  .technical-center-page .technical-feature-copy .technical-more {
    margin-top: 42px;
  }
  .technical-center-page .technical-news-row {
    min-height: 0;
  }
  .technical-center-page .technical-news-copy p {
    font-size: 14px;
  }
}
@media (max-width: 1000px) {
  .technical-center-page {
    --technical-shell: calc(100vw - 36px);
  }
  .technical-center-page .technical-center-tabs {
    gap: 24px;
  }
  .technical-center-page .technical-center-tabs a {
    width: min(44vw, 420px);
    padding-left: 8px;
    padding-right: 8px;
    font-size: 16px;
  }
  .technical-center-page .technical-center-news {
    padding: 72px 0 86px;
  }
  .technical-center-page .technical-feature {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 38px;
    padding-bottom: 54px;
  }
  .technical-center-page .technical-feature-copy {
    padding: 0;
  }
  .technical-center-page .technical-feature-copy h2 {
    max-width: 760px;
    margin-top: 32px;
  }
  .technical-center-page .technical-feature-copy p {
    max-width: 760px;
  }
  .technical-center-page .technical-feature-copy .technical-more {
    margin-top: 34px;
  }
  .technical-center-page .technical-feature figure {
    width: 100%;
    height: auto;
    aspect-ratio: 833 / 469;
  }
  .technical-center-page .technical-news-row {
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 28px;
    margin-bottom: 40px;
    padding-bottom: 40px;
  }
  .technical-center-page .technical-date strong {
    font-size: 42px;
  }
  .technical-center-page .technical-news-copy h2 {
    font-size: 18px;
  }
  .technical-center-page .technical-news-copy p {
    font-size: 14px;
  }
  .technical-center-page .technical-center-footer {
    height: auto;
    padding: 64px 0 48px;
  }
}
@media (max-width: 620px) {
  .technical-center-page {
    --technical-shell: calc(100vw - 30px);
  }
  .technical-center-page .technical-center-tabs {
    height: 74px;
    gap: 0;
    align-items: stretch;
  }
  .technical-center-page .technical-center-tabs a {
    width: 50%;
    height: 74px;
    padding: 0 8px 20px;
    font-size: 13px;
    line-height: 1.25;
  }
  .technical-center-page .technical-center-news {
    padding: 52px 0 68px;
  }
  .technical-center-page .technical-feature {
    gap: 30px;
    padding-bottom: 42px;
  }
  .technical-center-page .technical-feature-copy time {
    font-size: 14px;
  }
  .technical-center-page .technical-feature-copy h2 {
    margin: 25px 0 20px;
    font-size: 18px;
    line-height: 1.45;
  }
  .technical-center-page .technical-feature-copy p {
    font-size: 14px;
  }
  .technical-center-page .technical-feature-copy .technical-more {
    margin-top: 28px;
  }
  .technical-center-page .technical-more {
    width: 154px;
    height: 46px;
    font-size: 14px;
  }
  .technical-center-page .technical-news-list {
    margin-top: 40px;
  }
  .technical-center-page .technical-news-row {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 34px;
    padding-bottom: 34px;
  }
  .technical-center-page .technical-date {
    display: flex;
    align-items: baseline;
    gap: 14px;
  }
  .technical-center-page .technical-date strong {
    font-size: 38px;
  }
  .technical-center-page .technical-date time {
    margin-top: 0;
    font-size: 14px;
  }
  .technical-center-page .technical-news-copy h2 {
    margin: 0 0 19px;
    font-size: 17px;
    line-height: 1.45;
  }
  .technical-center-page .technical-news-copy p {
    font-size: 13px;
    line-height: 1.6;
  }
  .technical-center-page .technical-news-copy .technical-more {
    margin-top: 25px;
  }
  .technical-center-page .technical-pagination {
    margin-top: 46px;
    gap: 5px;
    flex-wrap: wrap;
  }
  .technical-center-page .technical-pagination a,
  .technical-center-page .technical-pagination span {
    width: 34px;
    height: 34px;
    font-size: 14px;
  }
  .technical-center-page .technical-center-contact {
    height: 390px;
  }
  .technical-center-page .technical-center-footer {
    padding: 58px 0 36px;
  }
}

/* Final isolated overrides for the news-detail layout. */
.single-news .newshow.newshow {
  max-width: none;
  padding: clamp(30px, 5vw, 70px);
  border: 1px solid #dce6e8;
  background: #fff;
  box-shadow: 0 18px 44px rgba(18,55,69,.07);
}
.single-news .newshow .newshow_title {
  max-width: 940px;
  margin: 0 auto;
  padding-bottom: clamp(24px, 3vw, 42px);
  border-bottom: 1px solid #dce6e8;
}
.single-news .newshow .newshow_title h1 {
  max-width: 980px;
  margin: 0;
  font-size: clamp(32px, 4vw, 58px);
  line-height: 1.12;
  letter-spacing: -.035em;
}
.single-news .newshow .newshow_title p { margin: 18px 0 0; color: #718286; font-size: 14px; }
.single-news .newshow .newshow_main {
  max-width: 940px;
  margin: clamp(28px, 4vw, 54px) auto 0;
  color: #455c62;
  font-size: clamp(16px, 1.15vw, 18px);
  line-height: 1.82;
}
.single-news .newshow .newshow_main h2,
.single-news .newshow .newshow_main h3 { margin: 2em 0 .7em; color: #18383d; }
.single-news .newshow .newshow_main h2 { font-size: clamp(25px, 2.4vw, 38px); line-height: 1.2; }
.single-news .newshow .newshow_main h3 { font-size: clamp(19px, 1.7vw, 25px); line-height: 1.35; }
.single-news .newshow .newshow_main p { margin: 0 0 1.3em; }
.single-news .newshow .newshow_main ul,
.single-news .newshow .newshow_main ol { margin: 1.3em 0; padding-left: 1.35em; }
.single-news .newshow .newshow_main li + li { margin-top: .55em; }
.single-news .newshow .newshow_main a { color: #087987; text-decoration-thickness: 1px; text-underline-offset: .16em; }
.single-news .newshow .newshow_main blockquote { margin: 2em 0; padding: 18px 24px; border-left: 3px solid #087987; background: #f3f7f7; color: #18383d; }
.single-news .newshow .newshow_main table { display: block; width: 100%; overflow-x: auto; margin: 28px 0; border-collapse: collapse; white-space: nowrap; }
.single-news .newshow .newshow_main th,
.single-news .newshow .newshow_main td { padding: 13px 15px; border: 1px solid #dce6e8; text-align: left; vertical-align: middle; }
.single-news .newshow .newshow_main th { background: #18383d; color: #fff; font-weight: 600; }
.single-news .newshow .newshow_main tr:nth-child(even) td { background: #f5f8f8; }
.single-news .newshow .newshow_main img { margin: 28px 0; background: #f3f7f7; }
.single-news .newshow .fanye { max-width: 940px; margin: clamp(38px, 5vw, 68px) auto 0; padding-top: 24px; border-top: 1px solid #dce6e8; }
.single-news .newshow .page_ctrl_box { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.single-news .newshow .page_ctrl_box a { color: #18383d; font-size: 14px; text-decoration: none; }
.single-news .newshow .page_ctrl_box a:hover { color: #087987; }
.single-news .newsinfo { margin-top: 0; padding: 26px; border: 1px solid #dce6e8; background: #fff; }
.single-news .newsinfotit { margin-bottom: 18px; color: #18383d; font-size: 20px; font-weight: 700; }

@media (max-width: 1199px) {
  .single-news .newsinfo { margin-top: 28px; }
}

@media (max-width: 600px) {
  .single-news .newshow.newshow { padding: 28px 20px; }
  .single-news .newshow .newshow_title h1 { font-size: 32px; }
  .single-news .newshow .newshow_main { font-size: 16px; }
  .single-news .newshow .newshow_main blockquote { padding: 16px 18px; }
  .single-news .newshow .page_ctrl_box { flex-wrap: wrap; }
}

/* Shared Rank Math breadcrumbs rendered by breadcrumbs.php. */
body .bannercontent {
  position: relative;
  width: 100vw;
  max-width: none;
  height: 400px !important;
  margin-left: calc(50% - 50vw);
  overflow: hidden;
  background: #18383d;
}
body .bannercontent > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  max-width: none;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
}
body .bannercontent > .bannercontentcover { inset: 0; }
.bread_crumb_main {
  padding: 17px 0;
  border-top: 1px solid #e2eaeb;
  border-bottom: 1px solid #e2eaeb;
  background: #fff;
}
.bread_crumb_main > .container {
  box-sizing: border-box;
  width: min(75vw, 1920px);
  max-width: 1920px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 0;
  padding-left: 0;
}
.bread_crumb_main .rank-math-breadcrumb p {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  color: #75878b;
  font-size: 13px;
  line-height: 1.45;
}
.bread_crumb_main .rank-math-breadcrumb a {
  color: #52666a;
  text-decoration: none;
  transition: color .2s ease;
}
.bread_crumb_main .rank-math-breadcrumb a:hover,
.bread_crumb_main .rank-math-breadcrumb a:focus-visible { color: #087987; }
.bread_crumb_main .rank-math-breadcrumb .separator { color: #a6b4b7; }
.bread_crumb_main .rank-math-breadcrumb .last {
  min-width: 0;
  overflow: hidden;
  color: #18383d;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 600px) {
  .bread_crumb_main { padding: 14px 0; }
  .bread_crumb_main > .container { width: calc(100% - 32px); }
  .bread_crumb_main .rank-math-breadcrumb p { gap: 7px; font-size: 12px; }
  .bread_crumb_main .rank-math-breadcrumb .last { max-width: 42vw; }
}

/* Latest-news sidebar in the existing single-news template. */
.single-news .container > .row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  gap: clamp(28px, 4vw, 64px);
  align-items: start;
}
.single-news .container > .row > [class*="col-"] {
  width: auto;
  max-width: none;
  padding: 0;
}
.single-news .newsinfo {
  align-self: start;
  margin-top: clamp(250px, 16vw, 380px);
  padding: 0;
  border: 0;
  background: transparent;
}
.single-news .newsinfotit {
  margin: 0;
  padding-bottom: 14px;
  border-bottom: 2px solid #18383d;
  color: #18383d;
  font-size: 20px;
  font-weight: 700;
}
.single-news .product_static_hot { display: grid; gap: 16px; margin-top: 18px; }
.single-news .product_static_hot .newsbox {
  width: auto;
  margin: 0;
  border: 1px solid #dce6e8;
  border-radius: 0;
  background: #fff;
  overflow: hidden;
}
.single-news .product_static_hot .newsbox:hover { background: #fff; }
.single-news .product_static_hot .newsboxflex {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  margin: 0;
}
.single-news .product_static_hot .newsboxflex > [class*="col-"] {
  width: auto;
  max-width: none;
  padding: 0;
}
.single-news .product_static_hot .newsboximg {
  display: block;
  padding-top: 0;
  aspect-ratio: 1 / 1;
  background: #edf3f2;
  overflow: hidden;
}
.single-news .product_static_hot .newsboximg img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  position: static;
  object-fit: cover;
  transition: transform .25s ease;
}
.single-news .product_static_hot .newsbox:hover .newsboximg img { transform: scale(1.04); }
.single-news .product_static_hot .newsboxtxt { padding: 12px 14px 12px 0; }
.single-news .product_static_hot .newsboxtxt h3 {
  margin: 0;
  color: #18383d;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.42;
  overflow-wrap: anywhere;
}
.single-news .product_static_hot .newsboxtxt a { color: inherit; text-decoration: none; }
.single-news .product_static_hot .newsbox:hover .newsboxtxt h3 { color: #087987; 

    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 1199px) {
  .single-news .container > .row { grid-template-columns: 1fr; }
  .single-news .newsinfo { margin-top: 0; }
  .single-news .product_static_hot { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}

@media (max-width: 600px) {
  .single-news .product_static_hot { grid-template-columns: 1fr; }
}

/* One reusable Contact Form 7 appearance for product and news inquiries. */
.sfc-inquiry-form .wpcf7-form { display: grid; gap: 18px; }
.sfc-inquiry-form .wpcf7-form > div { display: grid; gap: 18px; }
.sfc-inquiry-form .list { margin: 0; }
.sfc-inquiry-form .list h6 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}
.sfc-inquiry-form .list h6 span { color: #1ab1c0; }
.sfc-inquiry-form .list p,
.sfc-inquiry-form .wpcf7-form > p { margin: 0; }
.sfc-inquiry-form .list input:not([type="submit"]),
.sfc-inquiry-form .list textarea,
.sfc-inquiry-form .list select {
  display: block;
  width: 100%;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 0;
  background: #fff;
  color: #18383d;
  font: inherit;
  line-height: 1.45;
}
.sfc-inquiry-form .list textarea { resize: vertical; }
.sfc-inquiry-form .list input::placeholder,
.sfc-inquiry-form .list textarea::placeholder { color: #748185; opacity: 1; }
.sfc-inquiry-form .list input:focus,
.sfc-inquiry-form .list textarea:focus,
.sfc-inquiry-form .list select:focus { border-color: #1ab1c0; outline: 3px solid rgba(26,177,192,.22); outline-offset: 0; }
.sfc-inquiry-form #refer { display: none !important; }
.sfc-inquiry-form .wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 25px;
  border: 1px solid #0f94a5;
  border-radius: 0;
  background: #0f94a5;
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: background-color .2s ease, border-color .2s ease;
}
.sfc-inquiry-form .wpcf7-submit:hover { border-color: #1ab1c0; background: #1ab1c0; }
.sfc-inquiry-form .wpcf7-not-valid-tip { display: block; margin-top: 7px; color: #ffd1d1; font-size: 13px; }
.sfc-inquiry-form .wpcf7-response-output { margin: 0; color: #fff; }

/* The live CF7 form uses plain paragraphs and labels rather than the legacy .list markup. */
.sfc-inquiry-form .wpcf7-form > p,
.sfc-inquiry-form .wpcf7-form label {
  display: block;
  margin: 0;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}
.sfc-inquiry-form .wpcf7-form .wpcf7-form-control-wrap {
  display: block;
  margin-top: 8px;
}
.sfc-inquiry-form .wpcf7-form input:not([type="submit"]),
.sfc-inquiry-form .wpcf7-form textarea,
.sfc-inquiry-form .wpcf7-form select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 0;
  background: #fff;
  color: #18383d;
  font: inherit;
  font-weight: 400;
  line-height: 1.45;
}
.sfc-inquiry-form .wpcf7-form textarea { min-height: 132px; resize: vertical;height: 5vw; }
.sfc-inquiry-form .wpcf7-form input:focus,
.sfc-inquiry-form .wpcf7-form textarea:focus,
.sfc-inquiry-form .wpcf7-form select:focus {
  border-color: #1ab1c0;
  outline: 3px solid rgba(26,177,192,.22);
  outline-offset: 0;
}
.sfc-inquiry-form .wpcf7-form input::placeholder,
.sfc-inquiry-form .wpcf7-form textarea::placeholder { color: #748185; opacity: 1; }
.sfc-inquiry-form .wpcf7-form input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 11px 24px;
  border: 1px solid #fff;
  border-radius: 0;
  background: #fff;
  color: #18383d;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.sfc-inquiry-form .wpcf7-form input[type="submit"]:hover,
.sfc-inquiry-form .wpcf7-form input[type="submit"]:focus-visible {
  border-color: #1ab1c0;
  background: #1ab1c0;
  color: #fff;
}

.single-news .newshow .sfc-news-category {
  display: inline-flex;
  margin-top: 18px;
  padding: 7px 11px;
  border: 1px solid #b9d3d6;
  color: #087987;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
}
.single-news .newshow a.sfc-news-category:hover { border-color: #087987; background: #087987; color: #fff; }
.single-news .sfc-news-inquiry {
  display: grid;
  grid-template-columns: minmax(220px, .75fr) minmax(300px, 1.25fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: start;
  margin: clamp(38px, 5vw, 70px) 0 0;
  padding: clamp(28px, 5vw, 64px);
  background: #18383d;
  color: rgba(255,255,255,.8);
}
.single-news .sfc-news-inquiry__eyebrow { margin: 0 0 14px; color: #1ab1c0; font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.single-news .sfc-news-inquiry h2 { margin: 0 0 16px; color: #fff; font-size: clamp(27px, 3vw, 43px); line-height: 1.12; }
.single-news .sfc-news-inquiry__intro > p:last-child { margin: 0; line-height: 1.75; }

@media (max-width: 900px) {
  .single-news .sfc-news-inquiry { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .sfc-inquiry-form .wpcf7-submit { width: 100%; }
  .single-news .sfc-news-inquiry { padding: 30px 20px; }
}

/* Current single-news structure: header, readable article column and a separate related-news sidebar. */
.single-news .sfc-news-detail { padding: clamp(34px, 5vw, 78px) 0 clamp(52px, 7vw, 104px); background: #fff; }
.single-news .sfc-news-detail__shell { box-sizing: border-box; width: min(75vw, 1920px); margin: 0 auto; }
.single-news .sfc-news-detail__header { max-width: 900px; margin: 0 0 clamp(34px, 5vw, 64px); padding: 0 0 clamp(26px, 3.6vw, 42px); border-bottom: 1px solid #dce6e8; }
.single-news .sfc-news-detail__header h1 { max-width: none; margin: 0; color: #18383d; font-size: clamp(34px, 4.25vw, 62px); font-weight: 700; line-height: 1.1; letter-spacing: -.04em; overflow-wrap: anywhere; }
.single-news .sfc-news-detail .sfc-news-category { display: inline-flex; margin-top: 20px; padding: 7px 11px; border: 1px solid #a8cbd0; color: #087987; font-size: 13px; font-weight: 700; line-height: 1.2; text-decoration: none; transition: color .2s ease, border-color .2s ease, background-color .2s ease; }
.single-news .sfc-news-detail a.sfc-news-category:hover { border-color: #087987; background: #087987; color: #fff; }
.single-news .sfc-news-detail__date { margin: 16px 0 0; color: #718286; font-size: 14px; font-weight: 600; }
.single-news .sfc-news-detail__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 330px); gap: clamp(32px, 3vw, 52px); align-items: start; }
.single-news .sfc-news-detail__main { min-width: 0; }
.single-news .sfc-news-detail__article { padding: 0; }
.single-news .sfc-news-detail__content { max-width: none; margin: 0; color: #455c62; font-size: clamp(16px, 1.15vw, 18px); line-height: 1.82; }
.single-news .sfc-news-detail__content > *:first-child { margin-top: 0; }
.single-news .sfc-news-detail__content h2 { margin: 2em 0 .65em; color: #18383d; font-size: clamp(25px, 2.4vw, 38px); line-height: 1.2; }
.single-news .sfc-news-detail__content h3 { margin: 1.7em 0 .55em; color: #18383d; font-size: clamp(19px, 1.7vw, 25px); line-height: 1.35; }
.single-news .sfc-news-detail__content p { margin: 0 0 1.25em; }
.single-news .sfc-news-detail__content img { display: block; max-width: 100%; height: auto; margin: 28px 0; }
.single-news .sfc-news-detail__sidebar { position: sticky; top: 120px; margin: 0; padding: 0; border: 0; background: transparent; }
.single-news .sfc-news-detail__sidebar .newsinfotit { margin: 0; padding-bottom: 14px; border-bottom: 2px solid #18383d; color: #18383d; font-size: 20px; font-weight: 700; }
.single-news .sfc-news-detail__sidebar .product_static_hot { display: grid; gap: 16px; margin-top: 18px; }
.single-news .sfc-news-detail__sidebar .newsbox { width: auto; margin: 0; border: 1px solid #dce6e8; background: #fff; overflow: hidden; }
.single-news .sfc-news-detail__sidebar .newsboxflex { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: center; margin: 0; padding: 0 8px;}
.single-news .sfc-news-detail__sidebar .newsboxflex > [class*="col-"] { width: auto; max-width: none; padding: 0; }
.single-news .sfc-news-detail__sidebar .newsboximg { display: block; aspect-ratio: 1; overflow: hidden; background: #edf3f2; }
.single-news .sfc-news-detail__sidebar .newsboximg img { display: block; width: 100%; height: 100%; object-fit: cover; }
.single-news .sfc-news-detail__sidebar .newsboxtxt { padding: 12px 14px 12px 0; }
.single-news .sfc-news-detail__sidebar .newsboxtxt h3 { margin: 0; overflow: hidden; color: #18383d; font-size: 14px; line-height: 1.42; text-overflow: ellipsis; white-space: nowrap; }
.single-news .sfc-news-detail__sidebar .newsboxtxt a { display: block; min-width: 0; overflow: hidden; }
.single-news .sfc-news-detail__sidebar .newsboxtxt a { color: inherit; text-decoration: none; }
.single-news .sfc-news-detail .sfc-news-inquiry { margin: clamp(46px, 7vw, 88px) 0 0; }
.single-news .sfc-news-detail__pagination { max-width: none; margin: clamp(34px, 5vw, 62px) 0 0; padding-top: 24px; border-top: 1px solid #dce6e8; }
.single-news .sfc-news-detail__pagination .page_ctrl_box { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.single-news .sfc-news-detail__pagination .page_ctrl_box > a,
.single-news .sfc-news-detail__pagination .page_ctrl_box > span { color: #18383d; font-size: 14px; font-weight: 600; text-decoration: none; }
.single-news .sfc-news-detail__pagination .page_ctrl_box > a:hover { color: #087987; }
.single-news .sfc-news-detail__pagination .is-disabled { color: #9ba9ac; }

@media (max-width: 991px) {
  .single-news .sfc-news-detail__layout { grid-template-columns: 1fr; }
  .single-news .sfc-news-detail__sidebar { position: static; }
  .single-news .sfc-news-detail__sidebar .product_static_hot { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}

@media (max-width: 600px) {
  .single-news .sfc-news-detail__shell { width: calc(100% - 32px); }
  .single-news .sfc-news-detail__header h1 { font-size: 34px; }
  .single-news .sfc-news-detail__sidebar .product_static_hot { grid-template-columns: 1fr; }
  .single-news .sfc-news-detail__pagination .page_ctrl_box { flex-wrap: wrap; }
}

/* Editorial project-case composition for single news pages. */
.single-news .sfc-news-detail {
  padding: clamp(42px, 6vw, 96px) 0 clamp(64px, 8vw, 120px);
  background: linear-gradient(180deg, #f4f8f8 0, #fff 460px);
}
.single-news .sfc-news-detail__shell { max-width: 1920px; }
.single-news .sfc-news-detail__header {
  max-width: none;
  margin-bottom: clamp(38px, 5vw, 72px);
  padding-bottom: clamp(28px, 4vw, 48px);
}
.single-news .sfc-news-detail__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 21px;
}
.single-news .sfc-news-detail .sfc-news-category {
  margin: 0;
  border-color: #83c9d0;
  background: #eaf6f7;
  letter-spacing: .02em;
}
.single-news .sfc-news-detail__date {
  margin: 0;
  padding-left: 14px;
  border-left: 1px solid #b9cacc;
  letter-spacing: .04em;
}
.single-news .sfc-news-detail__header h1 {
  max-width: none;
  font-size: clamp(36px, 4.45vw, 68px);
  line-height: 1.04;
}
.single-news .sfc-news-detail__layout {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
  justify-content: start;
  gap: clamp(32px, 3vw, 52px);
}
.single-news .sfc-news-detail__summary {
  max-width: none;
  margin: 0 0 34px;
  padding-left: 22px;
  border-left: 3px solid #0f94a5;
  color: #294c52;
  font-size: clamp(18px, 1.5vw, 22px);
  font-weight: 500;
  line-height: 1.62;
}
.single-news .sfc-news-detail__summary p:last-child { margin-bottom: 0; }
.single-news .sfc-news-detail__cover {
  width: 100%;
  max-width: 100%;
  margin: 0 0 clamp(28px, 4vw, 48px);
  overflow: hidden;
  background: #f3f7f7;
}
.single-news .sfc-news-detail__cover img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0;
  object-fit: contain;
}
.single-news .sfc-case-overview {
  max-width: none;
  margin: 0 0 clamp(40px, 5vw, 66px);
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid #d5e4e5;
  border-top: 4px solid #087987;
  background: #fff;
  box-shadow: 0 16px 38px rgba(18, 55, 69, .07);
}
.single-news .sfc-case-overview__heading { display: flex; align-items: baseline; gap: 14px; margin-bottom: 25px; }
.single-news .sfc-case-overview__heading span { color: #0f94a5; font-size: 12px; font-weight: 800; letter-spacing: .14em; }
.single-news .sfc-case-overview h2 { margin: 0; color: #18383d; font-size: clamp(22px, 2vw, 29px); line-height: 1.2; }
.single-news .sfc-case-overview dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 0; }
.single-news .sfc-case-overview dl > div { min-width: 0; padding-right: 16px; border-right: 1px solid #dce6e8; }
.single-news .sfc-case-overview dl > div:last-child { padding-right: 0; border-right: 0; }
.single-news .sfc-case-overview dt { margin: 0 0 8px; color: #74878a; font-size: 12px; font-weight: 700; letter-spacing: .03em; }
.single-news .sfc-case-overview dd { margin: 0; color: #18383d; font-size: 16px; font-weight: 700; line-height: 1.45; overflow-wrap: anywhere; }
.single-news .sfc-news-detail__content { max-width: none; font-size: clamp(16px, 1.15vw, 18px); }
.single-news .sfc-news-detail__content > p:first-child { color: #334f55; font-size: 1.08em; }
.single-news .sfc-news-detail__content h2 { margin-top: 2.25em; }
.single-news .sfc-news-detail__content img,
.single-news .sfc-case-gallery img { width: 100%; margin: clamp(26px, 3.5vw, 42px) 0; cursor: zoom-in; object-fit: cover; }
.single-news .sfc-news-detail__content figure { max-width: 100%; margin: clamp(26px, 3.5vw, 42px) 0; }
.single-news .sfc-news-detail__content figure img { margin: 0; }
.single-news .sfc-news-detail__content figcaption { margin-top: 10px; color: #718286; font-size: 13px; line-height: 1.5; }
.single-news .sfc-case-details { max-width: none; margin: clamp(44px, 6vw, 80px) 0 0; padding: 0; border: 0; background: transparent; }
.single-news .sfc-case-details section { padding: clamp(25px, 3vw, 36px); border: 1px solid #dce6e8; background: #f5f9f9; }
.single-news .sfc-case-details section + section { margin-top: 18px; padding-top: clamp(25px, 3vw, 36px); border-top: 1px solid #dce6e8; }
.single-news .sfc-case-details section h2 { margin: 0 0 13px; font-size: clamp(22px, 2.1vw, 30px); }
.single-news .sfc-case-details section p:last-child { margin-bottom: 0; }
.single-news .sfc-case-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 0; }
.single-news .sfc-case-gallery img { aspect-ratio: 4 / 3; margin: 0; }
.single-news .sfc-news-detail__sidebar { top: 108px; padding-top: 6px; }
.single-news .sfc-news-detail__sidebar .newsinfotit { display: flex; align-items: center; justify-content: space-between; padding-bottom: 16px; }
.single-news .sfc-news-detail__sidebar .newsinfotit::after { content: ''; width: 44px; height: 3px; background: #0f94a5; }
.single-news .sfc-news-detail__sidebar .newsbox { border-color: #d5e4e5; box-shadow: 0 8px 20px rgba(18, 55, 69, .04); transition: transform .2s ease, box-shadow .2s ease; }
.single-news .sfc-news-detail__sidebar .newsbox:hover { transform: translateY(-3px); box-shadow: 0 14px 27px rgba(18, 55, 69, .10); }
.single-news .sfc-news-detail__sidebar .newsboximg { aspect-ratio: 4 / 3; }
.single-news .sfc-news-detail .sfc-news-inquiry { margin-top: clamp(58px, 8vw, 108px); }
.single-news .sfc-news-detail__pagination { max-width: none; }

/* The inquiry sits in the narrow news sidebar, so it must not inherit the two-column wide-page form layout. */
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry {
  display: block;
  min-width: 0;
  margin-top: 32px;
  padding: 28px 22px 30px;
}
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry__intro { margin-bottom: 24px; }
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry h2 {
  font-size: clamp(26px, 2vw, 34px);
  overflow-wrap: anywhere;
}
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .sfc-inquiry-form,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form {
  min-width: 0;
  width: 100%;
}
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form {
  gap: 14px;
}
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form input:not([type="submit"]),
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form textarea,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form select {
  max-width: 100%;
}
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form textarea {
  height: 96px;
  min-height: 96px;
  max-height: 120px;
}
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form input[type="submit"] { width: 100%; }

@media (max-width: 991px) {
  .single-news .sfc-news-detail__layout { grid-template-columns: 1fr; }
  .single-news .sfc-news-detail__content,
  .single-news .sfc-case-details,
  .single-news .sfc-news-detail__pagination { max-width: 880px; }
  .single-news .sfc-news-detail__sidebar { padding-top: 0; }
}
@media (max-width: 640px) {
  .single-news .sfc-news-detail__meta { gap: 10px; margin-bottom: 17px; }
  .single-news .sfc-news-detail__date { padding-left: 10px; font-size: 12px; }
  .single-news .sfc-news-detail__header h1 { font-size: clamp(31px, 10vw, 42px); }
  .single-news .sfc-case-overview { padding: 22px 20px; }
  .single-news .sfc-case-overview__heading { display: block; margin-bottom: 21px; }
  .single-news .sfc-case-overview__heading span { display: block; margin-bottom: 7px; }
  .single-news .sfc-case-overview dl { grid-template-columns: 1fr; gap: 14px; }
  .single-news .sfc-case-overview dl > div { padding: 0 0 14px; border-right: 0; border-bottom: 1px solid #dce6e8; }
  .single-news .sfc-case-overview dl > div:last-child { padding-bottom: 0; border-bottom: 0; }
  .single-news .sfc-case-gallery { grid-template-columns: 1fr; }
  .single-news .sfc-news-detail__summary { padding-left: 16px; font-size: 18px; }
}

/* Product-detail decision page: product evidence first, then specification and conversion. */
.sfc-product-detail {
  padding-top: clamp(38px, 5vw, 74px);
  background: linear-gradient(180deg, #f2f7f7 0, #fff 640px);
}
.sfc-product-detail__container { width: min(calc(100% - 80px), 1400px); }
.sfc-product-detail__layout {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 310px);
  gap: clamp(38px, 5vw, 76px);
}
.sfc-product-detail__sidebar { top: 104px; gap: 40px; }
.sfc-product-detail__side-section h2 { padding-bottom: 14px; border-bottom: 2px solid var(--sfc-pd-ink); }
.sfc-product-detail__side-card {
  grid-template-columns: 96px minmax(0, 1fr);
  border-color: #d5e4e5;
  box-shadow: 0 8px 20px rgba(18, 55, 69, .04);
}
.sfc-product-detail__side-card img { width: 96px; aspect-ratio: 4 / 3; }
.sfc-product-detail__side-card:hover { box-shadow: 0 14px 28px rgba(18, 55, 69, .10); }
.sfc-product-detail__hero {
  gap: clamp(26px, 4vw, 62px);
  padding: clamp(22px, 4vw, 56px);
  border-top: 4px solid var(--sfc-pd-accent);
  box-shadow: 0 18px 42px rgba(18, 55, 69, .07);
}
.sfc-product-detail__media { align-self: start; padding: clamp(10px, 1.3vw, 18px); background: #f5f9f9; }
.sfc-product-detail__carousel-slide { min-height: clamp(280px, 31vw, 455px); }
.sfc-product-detail__carousel-slide img { max-height: clamp(280px, 29vw, 420px); }
.sfc-product-detail__summary { padding: clamp(4px, 1vw, 18px) 0; }
.sfc-product-detail__eyebrow { margin-bottom: 15px; }
.sfc-product-detail h1 { font-size: clamp(20px, 3.55vw, 40px); line-height: 1.06; }
.sfc-product-detail__intro { margin-top: 23px; color: #3e5b60; }
.sfc-product-detail__facts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  border: 0;
}
.sfc-product-detail__facts div {
  display: block;
  min-width: 0;
  padding: 16px 18px;
  border: 1px solid var(--sfc-pd-line);
  border-top: 3px solid #8dcbd1;
  background: #f5f9f9;
}
.sfc-product-detail__facts dt { margin-bottom: 7px; color: #657d81; font-size: 12px; letter-spacing: .03em; }
.sfc-product-detail__facts dd { color: var(--sfc-pd-ink); font-size: 16px; font-weight: 700; }
.sfc-product-detail__actions { margin-top: 30px; }
.sfc-product-detail__button { min-width: 0; padding-inline: 24px; }
.sfc-product-detail__section-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0 24px;
  margin-top: 26px;
  padding: 16px 0;
  border-top: 1px solid var(--sfc-pd-line);
  border-bottom: 1px solid var(--sfc-pd-line);
}
.sfc-product-detail__section-nav a { color: #455f63; font-size: 14px; font-weight: 700; line-height: 2; text-decoration: none; }
.sfc-product-detail__section-nav a:hover,
.sfc-product-detail__section-nav a:focus-visible { color: var(--sfc-pd-accent); text-decoration: underline; text-underline-offset: 4px; }
.sfc-product-detail__content { margin-top: clamp(38px, 5vw, 72px); padding: clamp(30px, 5vw, 72px); box-shadow: 0 12px 32px rgba(18, 55, 69, .045); }
.sfc-product-detail__section-label { margin-bottom: 23px; }
.sfc-product-detail__prose { color: #455c62; }
.sfc-product-detail__prose > p:first-child { color: #334f55; font-size: 1.08em; }
.sfc-product-detail__prose img { width: 100%; margin: clamp(28px, 4vw, 48px) 0; object-fit: cover; }
.sfc-product-detail__prose .sfc-product-source-images img { width: auto; }
.sfc-product-detail__features { margin-top: clamp(52px, 7vw, 88px); }
.sfc-product-detail__feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.sfc-product-detail__feature-grid > :last-child:nth-child(odd) { grid-column: 1 / -1; }
.sfc-product-detail__feature { padding: 26px; border-top-width: 4px; }
.sfc-product-detail__related { margin-top: clamp(56px, 7vw, 94px); }
.sfc-product-detail__related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.sfc-product-detail__related-card { border: 1px solid #d5e4e5; }
.sfc-product-detail__related-card span { padding: 18px 20px 20px; }
.sfc-product-detail__inquiry--bottom { margin-top: clamp(62px, 8vw, 110px); }

/* The wide product inquiry keeps its introduction concise and gives the form most of the usable width. */
.sfc-product-detail__inquiry--bottom {
  grid-template-columns: minmax(190px, .48fr) minmax(0, 1.52fr);
  gap: clamp(24px, 3vw, 44px);
}

@media (max-width: 1100px) {
  .sfc-product-detail__layout { grid-template-columns: 1fr; }
  .sfc-product-detail__sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .sfc-product-detail__container { width: calc(100% - 36px); }
  .sfc-product-detail__hero { grid-template-columns: 1fr; }
  .sfc-product-detail__sidebar { grid-template-columns: 1fr; }
  .sfc-product-detail__facts { grid-template-columns: 1fr; }
}

/* History page: shares the solution-detail banner and breadcrumb treatment. */
.sfc-history {
  --sfc-history-blue: #3038a0;
  --sfc-history-ink: #17213f;
  background: #fff;
  color: var(--sfc-history-ink);
}

.sfc-history__banner .sfc-solution-detail__banner-overlay h1 {
  max-width: min(920px, 100%);
  margin: 0;
  color: #fff;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -.035em;
  text-shadow: 0 2px 12px rgba(8, 27, 41, .28);
}

.sfc-history__timeline {
  padding: clamp(104px, 10vw, 176px) 0 clamp(128px, 12vw, 204px);
  background: #fff;
}

.sfc-history__container {
  width: min(1440px, calc(100% - 64px));
  margin: 0 auto;
}

.sfc-history__layout {
  display: grid;
  grid-template-columns: 208px minmax(0, 1fr);
  gap: clamp(64px, 9vw, 160px);
  align-items: start;
}

.sfc-history__index {
  position: sticky;
  top: 124px;
  padding: 30px 0;
  border-top: 3px solid var(--sfc-history-blue);
  border-bottom: 1px solid #d7dfed;
}

.sfc-history__index ol {
  display: grid;
  gap: 22px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sfc-history__index li {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.2;
}

.sfc-history__index a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  color: #72809a;
  text-decoration: none;
  transition: color .18s ease, transform .18s ease;
}

.sfc-history__index a:hover,
.sfc-history__index a:focus-visible,
.sfc-history__index a[aria-current="true"] {
  color: var(--sfc-history-blue);
}

.sfc-history__index a:hover {
  transform: translateX(4px);
}

.sfc-history__index a:focus-visible {
  outline: 2px solid var(--sfc-history-blue);
  outline-offset: 5px;
  border-radius: 2px;
}

.sfc-history__periods {
  display: grid;
  gap: clamp(92px, 10vw, 172px);
}

.sfc-history__period {
  scroll-margin-top: 146px;
  border-top: 3px solid var(--sfc-history-blue);
  padding-top: 36px;
}

.sfc-history__period > header p {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
  margin: 0;
  color: var(--sfc-history-blue);
  font-size: clamp(44px, 5.6vw, 82px);
  font-weight: 800;
  line-height: .86;
  letter-spacing: -.075em;
}

.sfc-history__period > header span:last-child {
  color: #d7dfed;
}

.sfc-history__list {
  --sfc-history-year-column: 124px;
  --sfc-history-marker-column: 44px;
  --sfc-history-line-offset: 146px;
  position: relative;
  display: grid;
  gap: 0;
  margin: 62px 0 0;
  padding: 0;
  list-style: none;
}

.sfc-history__list::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--sfc-history-line-offset);
  width: 1px;
  content: '';
  background: #ced7e8;
}

.sfc-history__item {
  position: relative;
  display: grid;
  grid-template-columns: var(--sfc-history-year-column) var(--sfc-history-marker-column) minmax(0, 1fr);
  min-height: 148px;
  padding: 0 0 42px;
}

.sfc-history__item::after {
  z-index: 1;
  grid-column: 2;
  align-self: start;
  width: 13px;
  height: 13px;
  margin: 0 auto;
  margin-top: 9px;
  border: 2px solid var(--sfc-history-blue);
  border-radius: 50%;
  content: '';
  background: #fff;
  box-shadow: 0 0 0 5px #fff;
}

.sfc-history__item article {
  grid-column: 3;
  padding: 0 0 34px;
  border-bottom: 1px solid #dfe5ef;
}

.sfc-history__item time {
  grid-column: 1;
  align-self: start;
  padding-top: 1px;
  color: var(--sfc-history-blue);
  font-size: clamp(25px, 2vw, 32px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.045em;
}

.sfc-history__item h2 {
  max-width: 820px;
  margin: 0;
  color: var(--sfc-history-ink);
  font-size: clamp(20px, 1.55vw, 27px);
  font-weight: 700;
  line-height: 1.24;
}

@media (max-width: 760px) {
  .sfc-history__banner .sfc-solution-detail__banner-overlay h1 {
    font-size: clamp(31px, 9vw, 42px);
  }

  .sfc-history__container {
    width: calc(100% - 36px);
  }

  .sfc-history__layout {
    display: block;
  }

  .sfc-history__index {
    display: none;
  }

  .sfc-history__list::before {
    left: var(--sfc-history-line-offset);
  }

  .sfc-history__periods {
    gap: 82px;
  }

  .sfc-history__period {
    scroll-margin-top: 96px;
    padding-top: 25px;
  }

  .sfc-history__period > header p {
    font-size: clamp(38px, 12vw, 54px);
  }

  .sfc-history__list {
    --sfc-history-year-column: 76px;
    --sfc-history-marker-column: 28px;
    --sfc-history-line-offset: 90px;
    margin-top: 38px;
  }

  .sfc-history__item {
    grid-template-columns: var(--sfc-history-year-column) var(--sfc-history-marker-column) minmax(0, 1fr);
    min-height: 0;
    padding-bottom: 36px;
  }

  .sfc-history__item::after {
    grid-column: 2;
    width: 13px;
    height: 13px;
    margin-top: 7px;
  }

  .sfc-history__item article {
    grid-column: 3;
    padding-bottom: 30px;
  }

  .sfc-history__item time {
    font-size: 22px;
  }

  .sfc-history__item h2 {
    font-size: 18px;
    line-height: 1.34;
  }
}
@media (max-width: 600px) {
  .sfc-product-detail__hero { padding: 18px; }
  .sfc-product-detail__section-nav { gap: 0 18px; }
  .sfc-product-detail__content { padding: 30px 20px 42px; }
  .sfc-product-detail__feature-grid,
  .sfc-product-detail__related-grid { grid-template-columns: 1fr; }
  .sfc-product-detail__feature-grid > :last-child:nth-child(odd) { grid-column: auto; }
}

/* Compact inquiry form used only in the product and news detail sidebars. */
.sfc-product-detail__sidebar .sfc-product-detail__inquiry h2,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry h2 {
  margin-bottom: 10px;
  font-size: clamp(22px, 1.55vw, 26px);
  line-height: 1.12;
}
.sfc-product-detail__sidebar .sfc-product-detail__inquiry p,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry__intro > p:last-child {
  font-size: 13px;
  line-height: 1.55;
}
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form {
  gap: 11px;
}
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form > p,
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form label,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form > p,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form label {
  font-size: 12px;
  line-height: 1.35;
}
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form .wpcf7-form-control-wrap,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form .wpcf7-form-control-wrap {
  margin-top: 6px;
}
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form input:not([type="submit"]),
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form select,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form input:not([type="submit"]),
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form select {
  box-sizing: border-box;
  height: 44px;
  min-height: 44px;
  padding: 9px 12px;
  font-size: 13px;
}
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form textarea,
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form textarea {
  box-sizing: border-box;
  height: 88px;
  min-height: 88px;
  max-height: 88px;
  padding: 9px 12px;
  font-size: 13px;
  line-height: 1.45;
  resize: none;
}
.sfc-product-detail__sidebar .sfc-product-detail__form .wpcf7-form input[type="submit"],
.single-news .sfc-news-detail__sidebar .sfc-news-inquiry .wpcf7-form input[type="submit"] {
  min-height: 44px;
  padding: 9px 16px;
  font-size: 13px;
}

/* Footer contact numbers are maintained as individual ACF repeater rows. */
.case-footer .case-footer-contact .case-footer-phone {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 11px;
}
.case-footer .case-footer-contact .case-footer-phone i {
  flex: 0 0 20px;
}
.case-footer .case-footer-contact .case-footer-phone a {
  min-width: 0;
  white-space: nowrap;
}

.home-page .contact .footer-phone-item {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.home-page .contact .footer-phone-item a {
  min-width: 0;
  white-space: nowrap;
}

/* Four solution-detail templates share a compact, source-led industrial layout. */
.sfc-solution-detail {
  --sfc-solution-blue: #0c4998;
  --sfc-solution-cyan: #10a7aa;
  --sfc-solution-ink: #113861;
  --sfc-solution-muted: #edf6fb;
  --sfc-solution-line: #d4e4ee;
  color: #35516a;
  background: #fff;
}
.sfc-solution-detail__container { width: min(1240px, calc(100% - 64px)); margin: 0 auto; }
.sfc-solution-detail__hero { overflow: hidden; border-bottom: 1px solid #e6eff5; background: linear-gradient(120deg, #fff 0%, #fff 50%, #ebf7ff 100%); }
.sfc-solution-detail__hero-grid { display: grid; grid-template-columns: minmax(0, .88fr) minmax(420px, 1.12fr); align-items: center; min-height: 520px; gap: clamp(35px, 6vw, 95px); padding: 78px 0 60px; }
.sfc-solution-detail__hero-copy { position: relative; z-index: 1; }
.sfc-solution-detail__eyebrow,
.sfc-solution-detail__section-heading > p,
.sfc-solution-detail__decision > div > p { margin: 0 0 14px; color: var(--sfc-solution-cyan); font-size: 12px; font-weight: 800; letter-spacing: .1em; line-height: 1.35; }
.sfc-solution-detail h1,
.sfc-solution-detail h2,
.sfc-solution-detail h3 { color: var(--sfc-solution-ink); }
.sfc-solution-detail h1 { max-width: 670px; margin: 0; font-size: clamp(36px, 4.25vw, 65px); line-height: 1.08; letter-spacing: -.045em; }
.sfc-solution-detail__lead { max-width: 630px; margin: 28px 0 34px; font-size: clamp(17px, 1.35vw, 20px); line-height: 1.7; }
.sfc-solution-detail__primary-action,
.sfc-solution-detail__decision > a { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 52px; padding: 0 25px; border: 1px solid var(--sfc-solution-blue); border-radius: 2px; background: var(--sfc-solution-blue); color: #fff; font-size: 14px; font-weight: 800; text-decoration: none; transition: background .2s ease, color .2s ease, transform .2s ease; }
.sfc-solution-detail__primary-action span,
.sfc-solution-detail__decision > a span { font-size: 20px; font-weight: 400; line-height: 1; }
.sfc-solution-detail__primary-action:hover,
.sfc-solution-detail__primary-action:focus-visible,
.sfc-solution-detail__decision > a:hover,
.sfc-solution-detail__decision > a:focus-visible { background: #fff; color: var(--sfc-solution-blue); transform: translateY(-2px); }
.sfc-solution-detail__hero-media { position: relative; min-height: 405px; margin: 0; padding: 32px 18px 0; }
.sfc-solution-detail__hero-media::before { position: absolute; inset: 0 0 48px 14%; content: ''; background: #dff3ff; }
.sfc-solution-detail__hero-media img { position: relative; display: block; width: 100%; height: 365px; object-fit: contain; filter: drop-shadow(0 20px 26px rgba(17, 63, 108, .14)); }
.sfc-solution-detail__hero-media figcaption { position: relative; width: min(100%, 500px); margin: -16px auto 0; padding: 18px 22px; border-radius: 4px; background: #fff; box-shadow: 0 10px 26px rgba(19, 68, 112, .11); color: var(--sfc-solution-blue); font-size: 16px; font-weight: 800; }
.sfc-solution-detail__hero-media figcaption span { display: block; margin-top: 7px; color: #5d7486; font-size: 12px; font-weight: 500; line-height: 1.55; }
.sfc-solution-detail__subnav { position: sticky; z-index: 5; top: 0; border-bottom: 1px solid var(--sfc-solution-line); background: rgba(255,255,255,.96); backdrop-filter: blur(10px); }
.sfc-solution-detail__subnav .sfc-solution-detail__container { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sfc-solution-detail__subnav a { min-height: 64px; display: flex; align-items: center; justify-content: center; border-bottom: 3px solid transparent; color: #547081; font-size: 14px; font-weight: 800; text-align: center; text-decoration: none; transition: color .2s ease, border-color .2s ease, background .2s ease; }
.sfc-solution-detail__subnav a:hover,
.sfc-solution-detail__subnav a:focus-visible,
.sfc-solution-detail__subnav a[aria-current="page"] { border-bottom-color: var(--sfc-solution-cyan); background: #f4fbfd; color: var(--sfc-solution-blue); }
.sfc-solution-detail__section { padding: clamp(68px, 8vw, 120px) 0; }
.sfc-solution-detail__section--muted { background: var(--sfc-solution-muted); }
.sfc-solution-detail__section-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .68fr); column-gap: 64px; align-items: end; margin-bottom: clamp(32px, 5vw, 58px); }
.sfc-solution-detail__section-heading > p { grid-column: 1 / -1; }
.sfc-solution-detail__section-heading h2 { margin: 0; font-size: clamp(29px, 3.2vw, 47px); line-height: 1.13; letter-spacing: -.04em; }
.sfc-solution-detail__section-heading > span { display: block; padding-bottom: 3px; color: #698092; font-size: 15px; line-height: 1.65; }
.sfc-solution-detail__case-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.sfc-solution-detail__case-grid article { min-height: 215px; padding: 28px 24px; border: 1px solid #dce9ef; border-radius: 9px; background: #fff; box-shadow: 0 10px 25px rgba(32, 83, 119, .045); }
.sfc-solution-detail__case-grid span { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; min-height: 30px; border-radius: 7px; background: #e2f8f7; color: var(--sfc-solution-cyan); font-size: 13px; font-weight: 800; }
.sfc-solution-detail__case-grid h3 { margin: 22px 0 12px; font-size: 19px; line-height: 1.25; }
.sfc-solution-detail__case-grid p { margin: 0; color: #667d8d; font-size: 14px; line-height: 1.6; }
.sfc-solution-detail__flow { display: grid; grid-template-columns: minmax(0, 1fr) 88px minmax(0, 1fr); align-items: center; width: 100%; margin: 0; }
.sfc-solution-detail__flow figure { margin: 0; overflow: hidden; border-radius: 9px; background: #f2f7f9; }
.sfc-solution-detail__flow figure img { display: block; width: 100%; height: 325px; object-fit: cover; }
.sfc-solution-detail__flow figure figcaption { min-height: 116px; padding: 19px 20px; background: var(--sfc-solution-blue); color: #fff; }
.sfc-solution-detail__flow figure strong,
.sfc-solution-detail__flow figure span { display: block; }
.sfc-solution-detail__flow figure strong { font-size: 17px; line-height: 1.25; }
.sfc-solution-detail__flow figure span { margin-top: 7px; font-size: 13px; line-height: 1.45; opacity: .86; }
.sfc-solution-detail__flow-arrow { color: var(--sfc-solution-cyan); font-size: 48px; font-weight: 400; text-align: center; }
.sfc-solution-detail__method-note { width: 100%; margin: 28px 0 0; padding: 18px 22px; border-left: 4px solid var(--sfc-solution-cyan); background: #e5f7f5; color: #247176; font-size: 14px; line-height: 1.65; }
.sfc-solution-detail__product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.sfc-solution-detail__product-grid article { overflow: hidden; border: 1px solid #d8e6ed; background: #fff; box-shadow: 0 10px 24px rgba(19, 67, 103, .04); transition: box-shadow .2s ease, transform .2s ease; }
.sfc-solution-detail__product-grid article:hover { box-shadow: 0 19px 36px rgba(19, 67, 103, .12); transform: translateY(-4px); }
.sfc-solution-detail__product-image { display: flex; align-items: center; justify-content: center; height: 225px; padding: 20px; background: #f7fafb; }
.sfc-solution-detail__product-image img { display: block; max-width: 100%; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.sfc-solution-detail__product-grid article > div { padding: 23px 22px 25px; }
.sfc-solution-detail__product-grid h3 { min-height: 3.9em; margin: 0; font-size: 18px; line-height: 1.3; }
.sfc-solution-detail__product-grid h3 a { color: inherit; text-decoration: none; }
.sfc-solution-detail__text-link { display: inline-flex; gap: 8px; margin-top: 21px; color: var(--sfc-solution-blue); font-size: 13px; font-weight: 800; text-decoration: none; }
.sfc-solution-detail__text-link:hover,
.sfc-solution-detail__text-link:focus-visible { color: var(--sfc-solution-cyan); }
.sfc-solution-detail__decision { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: clamp(36px, 5vw, 62px); border-radius: 12px; background: #0d4895; color: #d8effe; }
.sfc-solution-detail__decision > div { max-width: 760px; }
.sfc-solution-detail__decision h2 { margin: 0; color: #fff; font-size: clamp(28px, 3vw, 43px); line-height: 1.14; letter-spacing: -.035em; }
.sfc-solution-detail__decision > div > p:last-child { margin: 17px 0 0; font-size: 16px; line-height: 1.65; }
.sfc-solution-detail__decision > a { flex: 0 0 auto; border-color: #50d4d6; background: transparent; }
.sfc-solution-detail__decision > a:hover,
.sfc-solution-detail__decision > a:focus-visible { border-color: #fff; background: #fff; color: var(--sfc-solution-blue); }
.sfc-solution-detail__page-links { display: flex; justify-content: space-between; gap: 25px; margin-top: 36px; }
.sfc-solution-detail__page-links a { color: var(--sfc-solution-blue); font-size: 14px; font-weight: 800; text-decoration: none; }
.sfc-solution-detail__page-links a:hover,
.sfc-solution-detail__page-links a:focus-visible { color: var(--sfc-solution-cyan); text-decoration: underline; text-underline-offset: 5px; }

/* Shared primary navigation: WordPress menu children become stable dropdowns. */
.sfc-primary-nav {
  position: relative;
}
.sfc-primary-nav__item {
  position: relative;
  min-height: 52px;
  display: inline-flex;
  align-items: center;
}
.sfc-primary-nav__item.has-children > a {
  padding-right: 14px;
}
.sfc-primary-nav__caret {
  position: absolute;
  right: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  transition: transform .18s ease;
  pointer-events: none;
}
.sfc-primary-nav__submenu {
  position: absolute;
  z-index: 120;
  top: calc(100% - 1px);
  left: -16px;
  width: max-content;
  min-width: 220px;
  max-width: min(340px, calc(100vw - 36px));
  padding: 9px;
  border: 1px solid #dfe4f0;
  border-radius: 10px;
  display: grid;
  gap: 2px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(24, 33, 61, .12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(5px);
  transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s;
  pointer-events: none;
}
.sfc-primary-nav__submenu a,
.home-page .header .sfc-primary-nav__submenu a,
.project-cases-page .case-header .sfc-primary-nav__submenu a {
  min-height: 39px;
  padding: 10px 12px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  color: #263354;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  white-space: normal;
  text-decoration: none;
}
.project-cases-page .case-header .sfc-primary-nav__submenu a::after {
  display: none;
}
.sfc-primary-nav__item:hover .sfc-primary-nav__submenu,
.sfc-primary-nav__item:focus-within .sfc-primary-nav__submenu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
  pointer-events: auto;
}
.sfc-primary-nav__item:hover .sfc-primary-nav__caret,
.sfc-primary-nav__item:focus-within .sfc-primary-nav__caret {
  transform: translateY(3px) rotate(225deg);
}
.sfc-primary-nav__submenu a:hover,
.sfc-primary-nav__submenu a:focus-visible,
.sfc-primary-nav__submenu a.active {
  background: #f0f3fb;
  color: var(--blue, #3038a0);
  outline: none;
}
.sfc-mobile-menu-toggle,
.sfc-mobile-nav {
  display: none;
}

@media (max-width: 1100px) {
  .home-page .header .sfc-primary-nav,
  .project-cases-page .case-header .sfc-primary-nav {
    display: none;
  }
  .sfc-mobile-menu-toggle,
  .project-cases-page .case-header .history-menu {
    width: 38px;
    height: 38px;
    margin-left: auto;
    padding: 0;
    border: 0;
    display: flex;
    flex: 0 0 38px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: transparent;
    color: currentColor;
  }
  .sfc-mobile-menu-toggle span,
  .project-cases-page .case-header .history-menu span {
    width: 25px;
    height: 2px;
    display: block;
    background: currentColor;
    transition: transform .2s ease, opacity .2s ease;
  }
  .sfc-mobile-menu-toggle[aria-expanded="true"] span:nth-child(1),
  .project-cases-page .case-header .history-menu[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .sfc-mobile-menu-toggle[aria-expanded="true"] span:nth-child(2),
  .project-cases-page .case-header .history-menu[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }
  .sfc-mobile-menu-toggle[aria-expanded="true"] span:nth-child(3),
  .project-cases-page .case-header .history-menu[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  .sfc-mobile-nav {
    position: fixed;
    z-index: 110;
    top: 72px;
    right: 0;
    left: 0;
    max-height: calc(100dvh - 72px);
    overflow-y: auto;
    padding: 14px 18px 28px;
    display: grid;
    gap: 2px;
    background: #fff;
    box-shadow: 0 14px 28px rgba(24, 33, 61, .14);
    transform: translateY(-115%);
    visibility: hidden;
    transition: transform .25s ease, visibility 0s linear .25s;
  }
  .sfc-mobile-nav.open {
    transform: translateY(0);
    visibility: visible;
    transition-delay: 0s;
  }
  .sfc-mobile-nav__primary {
    min-height: 50px;
    border-bottom: 1px solid #e5e8f0;
    display: flex;
    align-items: center;
  }
  .sfc-mobile-nav__primary > a {
    flex: 1 1 auto;
    padding: 14px 4px;
    color: #18213d;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none;
  }
  .sfc-mobile-nav a.active {
    color: var(--blue, #3038a0);
  }
  .sfc-mobile-nav__toggle {
    width: 42px;
    height: 42px;
    border: 0;
    display: grid;
    place-items: center;
    background: transparent;
    color: var(--blue, #3038a0);
  }
  .sfc-mobile-nav__toggle span {
    width: 9px;
    height: 9px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translate(-2px, -2px);
    transition: transform .18s ease;
  }
  .sfc-mobile-nav__item.is-open .sfc-mobile-nav__toggle span {
    transform: rotate(225deg) translate(-2px, -2px);
  }
  .sfc-mobile-nav__submenu {
    padding: 5px 0 10px 14px;
    border-bottom: 1px solid #e5e8f0;
  }
  .sfc-mobile-nav__submenu a {
    min-height: 42px;
    padding: 10px 8px;
    display: flex;
    align-items: center;
    color: #586177;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
  }
  .sfc-mobile-menu-toggle:focus-visible,
  .sfc-mobile-nav__toggle:focus-visible,
  .sfc-mobile-nav a:focus-visible {
    outline: 2px solid var(--blue, #3038a0);
    outline-offset: 2px;
  }
  .project-cases-page .case-header .history-menu { color: #fff; }
  .project-cases-page .sfc-mobile-nav { top: 76px; max-height: calc(100dvh - 76px); }
}
@media (max-width: 1100px) {
  .sfc-solution-detail__hero-grid { grid-template-columns: minmax(0, 1fr) minmax(370px, .9fr); gap: 32px; }
  .sfc-solution-detail__case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sfc-solution-detail__product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .sfc-solution-detail__container { width: calc(100% - 36px); }
  .sfc-solution-detail__hero-grid { grid-template-columns: 1fr; min-height: 0; padding: 56px 0 44px; }
  .sfc-solution-detail__hero-media { min-height: 0; padding: 18px 0 0; }
  .sfc-solution-detail__hero-media::before { inset: 0 0 35px 7%; }
  .sfc-solution-detail__hero-media img { height: 275px; }
  .sfc-solution-detail__hero-media figcaption { font-size: 14px; }
  .sfc-solution-detail__subnav { position: static; overflow-x: auto; }
  .sfc-solution-detail__subnav .sfc-solution-detail__container { width: 100%; min-width: 650px; }
  .sfc-solution-detail__subnav a { min-height: 56px; padding: 0 13px; font-size: 12px; }
  .sfc-solution-detail__section { padding: 58px 0; }
  .sfc-solution-detail__section-heading { display: block; margin-bottom: 29px; }
  .sfc-solution-detail__section-heading > span { margin-top: 17px; }
  .sfc-solution-detail__case-grid,
  .sfc-solution-detail__product-grid { grid-template-columns: 1fr; }
  .sfc-solution-detail__case-grid article { min-height: 0; padding: 23px 21px; }
  .sfc-solution-detail__case-grid h3 { margin-top: 17px; }
  .sfc-solution-detail__flow { grid-template-columns: 1fr; gap: 18px; }
  .sfc-solution-detail__flow-arrow { transform: rotate(90deg); font-size: 42px; }
  .sfc-solution-detail__flow figure img { height: 255px; }
  .sfc-solution-detail__product-image { height: 245px; }
  .sfc-solution-detail__product-grid h3 { min-height: auto; }
  .sfc-solution-detail__decision { display: block; padding: 34px 25px; }
  .sfc-solution-detail__decision > a { width: 100%; margin-top: 28px; }
  .sfc-solution-detail__page-links { display: grid; grid-template-columns: 1fr; margin-top: 28px; }
}

/* Solution detail pages: align the four child solutions with the SFC solution-page system. */
.sfc-solution-detail {
  --sfc-solution-blue: var(--case-blue, #3038a0);
  --sfc-solution-cyan: #187ec4;
  --sfc-solution-ink: #18213d;
  --sfc-solution-muted: #f4f6fb;
  --sfc-solution-line: #dce1ef;
  color: #4b5264;
}

.sfc-solution-detail__container {
  width: min(1280px, calc(100% - 64px));
}

.sfc-solution-detail__hero {
  border-bottom-color: #e2e5ee;
  background: #fff;
}

.sfc-solution-detail__hero-grid {
  grid-template-columns: minmax(0, .92fr) minmax(460px, 1.08fr);
  min-height: 0;
  gap: clamp(38px, 6vw, 92px);
  padding: clamp(64px, 7vw, 112px) 0 clamp(58px, 6vw, 88px);
}

.sfc-solution-detail__eyebrow,
.sfc-solution-detail__section-heading > p,
.sfc-solution-detail__decision > div > p {
  color: var(--sfc-solution-blue);
  font-size: 11px;
  letter-spacing: .12em;
}

.sfc-solution-detail h1 {
  max-width: 660px;
  font-size: clamp(37px, 4.15vw, 60px);
  line-height: 1.1;
  letter-spacing: -.04em;
}

.sfc-solution-detail__lead {
  max-width: 590px;
  margin: 26px 0 34px;
  color: #5c6374;
  font-size: clamp(16px, 1.25vw, 19px);
  line-height: 1.65;
}

.sfc-solution-detail__primary-action,
.sfc-solution-detail__decision > a {
  min-height: 54px;
  padding: 0 28px;
  border-color: var(--sfc-solution-blue);
  border-radius: 999px;
  background: var(--sfc-solution-blue);
  box-shadow: 0 10px 22px rgba(48, 56, 160, .15);
}

.sfc-solution-detail__primary-action:hover,
.sfc-solution-detail__primary-action:focus-visible,
.sfc-solution-detail__decision > a:hover,
.sfc-solution-detail__decision > a:focus-visible {
  border-color: var(--sfc-solution-blue);
  background: #fff;
  color: var(--sfc-solution-blue);
  box-shadow: 0 14px 26px rgba(48, 56, 160, .18);
}

.sfc-solution-detail__hero-media {
  min-height: 420px;
  padding: 26px 26px 0;
}

.sfc-solution-detail__hero-media::before {
  inset: 18px 0 72px 12%;
  border-radius: 22px 22px 0 0;
  background: #edf1fb;
}

.sfc-solution-detail__hero-media img {
  height: 380px;
  filter: drop-shadow(0 22px 28px rgba(35, 40, 94, .15));
}

.sfc-solution-detail__hero-media figcaption {
  width: min(100%, 520px);
  margin: -10px auto 0;
  padding: 18px 22px;
  border: 1px solid #e0e5f0;
  border-radius: 12px;
  box-shadow: 0 14px 30px rgba(24, 33, 61, .08);
  color: var(--sfc-solution-blue);
}

.sfc-solution-detail__subnav {
  border-bottom-color: #dfe3ed;
  background: rgba(255, 255, 255, .98);
}

.sfc-solution-detail__subnav a {
  min-height: 68px;
  color: #555d72;
}

.sfc-solution-detail__subnav a:hover,
.sfc-solution-detail__subnav a:focus-visible,
.sfc-solution-detail__subnav a[aria-current="page"] {
  border-bottom-color: var(--sfc-solution-blue);
  background: #f2f4fb;
  color: var(--sfc-solution-blue);
}

.sfc-solution-detail__section {
  padding: clamp(64px, 7vw, 106px) 0;
}

.sfc-solution-detail__section-heading {
  display: block;
  max-width: 860px;
  margin-bottom: clamp(30px, 4vw, 48px);
}

.sfc-solution-detail__section-heading h2 {
  max-width: 820px;
  font-size: clamp(30px, 3.1vw, 46px);
}

.sfc-solution-detail__section-heading > span {
  max-width: 720px;
  margin-top: 18px;
  color: #656d7e;
}

.sfc-solution-detail__case-grid {
  gap: 18px;
}

.sfc-solution-detail__case-grid article {
  min-height: 228px;
  padding: 27px 25px 30px;
  border: 1px solid #e1e4ed;
  border-top: 3px solid var(--sfc-solution-blue);
  border-radius: 10px;
  box-shadow: none;
  transition: transform .2s ease, box-shadow .2s ease;
}

.sfc-solution-detail__case-grid article:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(24, 33, 61, .08);
}

.sfc-solution-detail__case-grid span {
  min-width: auto;
  min-height: auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--sfc-solution-blue);
  font-size: 13px;
}

.sfc-solution-detail__case-grid h3 {
  margin: 20px 0 12px;
  font-size: 18px;
}

.sfc-solution-detail__case-grid p {
  color: #626b7d;
}

.sfc-solution-detail__flow {
  grid-template-columns: minmax(0, 1fr) 92px minmax(0, 1fr);
  max-width: none;
}

.sfc-solution-detail__flow figure {
  border: 1px solid #e0e4ed;
  border-radius: 12px;
  background: #fff;
}

.sfc-solution-detail__flow figure img {
  height: 330px;
  padding: 0;
  background: #f5f6fa;
  object-fit: cover;
  object-position: center;
}

.sfc-solution-detail__flow figure figcaption {
  min-height: 108px;
  padding: 20px 22px;
  background: #fff;
  color: var(--sfc-solution-ink);
}

.sfc-solution-detail__flow figure span {
  color: #656d7e;
  opacity: 1;
}

.sfc-solution-detail__flow-arrow {
  width: 46px;
  height: 46px;
  margin: 0 auto;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--sfc-solution-blue);
  color: #fff;
  font-size: 28px;
}

.sfc-solution-detail__method-note {
  max-width: none;
  padding: 18px 22px;
  border-left-color: var(--sfc-solution-blue);
  background: #f0f3fb;
  color: #505a72;
}

.sfc-solution-detail__product-grid {
  gap: 22px;
}

.sfc-solution-detail__product-grid article {
  border-color: #e1e4ed;
  border-radius: 10px;
  box-shadow: none;
}

.sfc-solution-detail__product-grid article:hover {
  box-shadow: 0 16px 30px rgba(24, 33, 61, .09);
}

.sfc-solution-detail__product-image {
  height: 235px;
  padding: 26px;
  background: #f7f8fc;
}

.sfc-solution-detail__product-grid article > div {
  padding: 23px 24px 27px;
}

.sfc-solution-detail__product-grid h3 {
  color: var(--sfc-solution-ink);
}

.sfc-solution-detail__text-link {
  color: var(--sfc-solution-blue);
}

.sfc-solution-detail__decision {
  padding: clamp(38px, 5vw, 64px);
  border-radius: 14px;
  background: var(--sfc-solution-blue);
}

.sfc-solution-detail__decision > a {
  border-color: #fff;
  box-shadow: none;
}

.sfc-solution-detail__decision > a:hover,
.sfc-solution-detail__decision > a:focus-visible {
  border-color: #fff;
  box-shadow: none;
}

.sfc-solution-detail__page-links {
  margin-top: 32px;
  padding-top: 25px;
  border-top: 1px solid #e1e4ed;
}

.sfc-solution-detail__page-links a {
  max-width: 48%;
  color: var(--sfc-solution-blue);
}

@media (max-width: 1100px) {
  .sfc-solution-detail__hero-grid { grid-template-columns: minmax(0, 1fr) minmax(390px, .92fr); }
  .sfc-solution-detail__case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sfc-solution-detail__product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .sfc-solution-detail__container { width: calc(100% - 36px); }
  .sfc-solution-detail__hero-grid { grid-template-columns: 1fr; gap: 32px; padding: 52px 0 50px; }
  .sfc-solution-detail h1 { font-size: clamp(34px, 10vw, 46px); }
  .sfc-solution-detail__hero-media { min-height: 0; padding: 12px 0 0; }
  .sfc-solution-detail__hero-media::before { inset: 12px 0 60px 5%; border-radius: 14px 14px 0 0; }
  .sfc-solution-detail__hero-media img { height: 280px; }
  .sfc-solution-detail__hero-media figcaption { margin-top: -6px; padding: 16px 17px; }
  .sfc-solution-detail__subnav { position: static; }
  .sfc-solution-detail__subnav .sfc-solution-detail__container { min-width: 640px; }
  .sfc-solution-detail__subnav a { min-height: 58px; }
  .sfc-solution-detail__section { padding: 56px 0; }
  .sfc-solution-detail__case-grid,
  .sfc-solution-detail__product-grid { grid-template-columns: 1fr; }
  .sfc-solution-detail__case-grid article { min-height: 0; }
  .sfc-solution-detail__flow { grid-template-columns: 1fr; gap: 17px; }
  .sfc-solution-detail__flow-arrow { transform: rotate(90deg); }
  .sfc-solution-detail__flow figure img { height: 260px; padding: 0; }
  .sfc-solution-detail__product-image { height: 250px; }
  .sfc-solution-detail__decision { padding: 34px 24px; }
  .sfc-solution-detail__page-links a { max-width: none; }
}

/* Final sizing and action refinements for the solution-detail desktop layout. */
.sfc-solution-detail__container {
  width: min(1440px, calc(100% - 64px));
}

/* Certificates page: scoped to the standalone certificates template only. */
.sfc-certificates { background: #fff; color: #505a72; }
.sfc-certificates__banner h1 { max-width: min(920px, 100%); margin: 0; color: #fff; font-size: clamp(38px, 4vw, 58px); font-weight: 800; line-height: 1.12; letter-spacing: -.035em; text-shadow: 0 2px 12px rgba(8, 27, 41, .28); }
.sfc-certificates__section { padding: clamp(68px, 8vw, 112px) 0; }
.sfc-certificates__section--muted { background: #f4f7fb; }
.sfc-certificates__heading { margin-bottom: clamp(30px, 4vw, 46px); }
.sfc-certificates__heading p { margin: 0 0 13px; color: var(--sfc-solution-blue); font-size: 12px; font-weight: 800; letter-spacing: .1em; line-height: 1.35; }
.sfc-certificates__heading h2 { margin: 0; color: var(--sfc-solution-ink); font-size: clamp(30px, 3vw, 46px); line-height: 1.15; letter-spacing: -.035em; }
.sfc-certificates__carousel { position: relative; }
.sfc-certificates__swiper { overflow: hidden; padding: 2px; }
.sfc-certificates__swiper .swiper-slide { height: auto; }
.sfc-certificates__card { display: grid; grid-template-rows: minmax(0, 1fr) auto; width: 100%; height: 100%; min-height: 506px; padding: 0; overflow: hidden; border: 1px solid #dfe5ee; border-radius: 10px; background: #fff; color: var(--sfc-solution-ink); cursor: pointer; text-align: left; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.sfc-certificates__card:hover { border-color: #aec5dc; box-shadow: 0 16px 30px rgba(24, 51, 87, .1); transform: translateY(-3px); }
.sfc-certificates__card:focus-visible,
.sfc-certificates__prev:focus-visible,
.sfc-certificates__next:focus-visible,
.sfc-certificates__dialog-close:focus-visible { outline: 3px solid rgba(48, 56, 160, .32); outline-offset: 3px; }
.sfc-certificates__image { display: grid; min-height: 424px; padding: 24px; place-items: center; background: #f7f8fb; }
.sfc-certificates__image img { display: block; width: 100%; height: 376px; object-fit: contain; }
.sfc-certificates__card-title { min-height: 80px; padding: 18px 20px 20px; font-size: 15px; font-weight: 700; line-height: 1.42; }
.sfc-certificates__controls { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 28px; }
.sfc-certificates__prev,
.sfc-certificates__next { display: grid; width: 42px; height: 42px; padding: 0; place-items: center; border: 1px solid var(--sfc-solution-blue); border-radius: 50%; background: #fff; color: var(--sfc-solution-blue); cursor: pointer; font-size: 22px; line-height: 1; transition: background .2s ease, color .2s ease, opacity .2s ease; }
.sfc-certificates__prev:hover,
.sfc-certificates__next:hover { background: var(--sfc-solution-blue); color: #fff; }
.sfc-certificates__prev[disabled],
.sfc-certificates__next[disabled] { cursor: default; opacity: .35; }
.sfc-certificates__pagination { display: flex; justify-content: center; gap: 8px; min-width: 84px; }
.sfc-certificates__pagination .swiper-pagination-bullet { width: 7px; height: 7px; margin: 0; background: #a7b5c4; opacity: 1; }
.sfc-certificates__pagination .swiper-pagination-bullet-active {
  background: #3038a0;
  box-shadow: 0 0 0 3px rgba(48, 56, 160, .18);
}
.sfc-certificates__dialog { position: fixed; z-index: 100; inset: 0; display: grid; padding: 28px; place-items: center; }
.sfc-certificates__dialog[hidden] { display: none; }
.sfc-certificates__dialog-backdrop { position: absolute; inset: 0; background: rgba(8, 24, 42, .78); }
.sfc-certificates__dialog-panel { position: relative; z-index: 1; display: grid; max-width: min(880px, 100%); max-height: 100%; gap: 13px; padding: 22px; overflow: auto; border-radius: 10px; background: #fff; }
.sfc-certificates__dialog-panel img { display: block; max-width: 100%; max-height: calc(100vh - 150px); margin: 0 auto; object-fit: contain; }
.sfc-certificates__dialog-panel p { margin: 0; color: var(--sfc-solution-ink); font-size: 14px; font-weight: 700; text-align: center; }
.sfc-certificates__dialog-close { position: absolute; top: 8px; right: 8px; display: grid; width: 36px; height: 36px; padding: 0; place-items: center; border: 0; border-radius: 50%; background: var(--sfc-solution-blue); color: #fff; cursor: pointer; font-size: 25px; line-height: 1; }

@media (max-width: 760px) {
  .sfc-certificates__section { padding: 56px 0; }
  .sfc-certificates__image { min-height: 380px; padding: 18px; }
  .sfc-certificates__image img { height: 342px; }
  .sfc-certificates__card { min-height: 458px; }
  .sfc-certificates__card-title { min-height: 76px; padding: 17px 18px; font-size: 14px; }
  .sfc-certificates__dialog { padding: 16px; }
  .sfc-certificates__dialog-panel { padding: 16px; }
  .sfc-certificates__dialog-panel img { max-height: calc(100vh - 110px); }
}

.sfc-solution-detail__banner {
  position: relative;
  height: 400px;
  overflow: hidden;
  background: #183c4a;
}

.sfc-solution-detail__banner::after {
  position: absolute;
  inset: 0;
  content: '';
  background: rgba(8, 27, 41, .28);
}

.sfc-solution-detail__banner img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.sfc-solution-detail__banner-overlay {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 30px;
  text-align: center;
}

.sfc-solution-detail__banner-overlay p {
  max-width: min(920px, 100%);
  margin: 0;
  color: #fff;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -.035em;
  text-shadow: 0 2px 12px rgba(8, 27, 41, .28);
}

.sfc-solution-detail__breadcrumbs {
  border-bottom: 1px solid #e4e7ee;
  background: #fff;
}

.sfc-solution-detail__breadcrumbs .sfc-solution-detail__container {
  min-height: 74px;
  display: flex;
  align-items: center;
  gap: 10px;
  overflow: hidden;
  color: #6d7483;
  font-size: 14px;
  line-height: 1.4;
  white-space: nowrap;
}

.sfc-solution-detail__breadcrumbs a {
  color: #6d7483;
  text-decoration: none;
}

.sfc-solution-detail__breadcrumbs a:hover,
.sfc-solution-detail__breadcrumbs a:focus-visible {
  color: var(--sfc-solution-blue);
  text-decoration: underline;
  text-underline-offset: 4px;
}

.sfc-solution-detail__breadcrumbs [aria-current="page"] {
  min-width: 0;
  overflow: hidden;
  color: var(--sfc-solution-ink);
  font-weight: 700;
  text-overflow: ellipsis;
}

.sfc-solution-detail__hero-grid {
  grid-template-columns: minmax(0, .94fr) minmax(520px, 1.06fr);
  gap: clamp(46px, 6vw, 108px);
  padding: clamp(60px, 6vw, 88px) 0 clamp(54px, 5vw, 76px);
}

.sfc-solution-detail h1 {
  max-width: 620px;
  font-size: clamp(34px, 3.4vw, 52px);
  line-height: 1.12;
  letter-spacing: -.032em;
}

.sfc-solution-detail__lead {
  max-width: 560px;
  margin: 23px 0 30px;
  font-size: clamp(16px, 1.12vw, 18px);
}

.sfc-solution-detail__primary-action,
.sfc-solution-detail__decision > a {
  min-height: 48px;
  padding: 0 23px;
  border: 1px solid var(--sfc-solution-blue);
  border-radius: 6px;
  background: var(--sfc-solution-blue);
  box-shadow: none;
  color: #fff !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-shadow: none;
  white-space: nowrap;
}

.sfc-solution-detail__primary-action:hover,
.sfc-solution-detail__primary-action:focus-visible {
  border-color: var(--sfc-solution-blue);
  background: #fff;
  color: var(--sfc-solution-blue) !important;
  box-shadow: 0 8px 18px rgba(48, 56, 160, .12);
}

.sfc-solution-detail__primary-action:focus-visible,
.sfc-solution-detail__decision > a:focus-visible,
.sfc-solution-detail__subnav a:focus-visible,
.sfc-solution-detail__breadcrumbs a:focus-visible,
.sfc-solution-detail__page-links a:focus-visible,
.sfc-solution-detail__text-link:focus-visible {
  outline: 3px solid rgba(48, 56, 160, .28);
  outline-offset: 3px;
}

.sfc-solution-detail__decision > a {
  border-color: #fff;
  background: #fff;
  color: var(--sfc-solution-blue) !important;
}

.sfc-solution-detail__decision > a:hover,
.sfc-solution-detail__decision > a:focus-visible {
  border-color: #fff;
  background: transparent;
  color: #fff !important;
  box-shadow: none;
}

.sfc-solution-detail__hero-media {
  min-height: 390px;
}

.sfc-solution-detail__hero-media img {
  height: 350px;
}

.sfc-solution-detail__hero-media figcaption {
  width: min(100%, 560px);
  margin-top: -4px;
}

.sfc-solution-detail__subnav .sfc-solution-detail__container {
  width: min(1440px, calc(100% - 64px));
}

.sfc-solution-detail__case-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sfc-solution-detail__product-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1280px) {
  .sfc-solution-detail__container,
  .sfc-solution-detail__subnav .sfc-solution-detail__container { width: min(1180px, calc(100% - 56px)); }
  .sfc-solution-detail__hero-grid { grid-template-columns: minmax(0, 1fr) minmax(440px, .95fr); gap: 42px; }
}

@media (max-width: 1024px) {
  .sfc-solution-detail__hero-grid { grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr); gap: 30px; }
  .sfc-solution-detail__hero-media { padding-right: 0; }
  .sfc-solution-detail__case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sfc-solution-detail__product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .sfc-solution-detail__container { width: calc(100% - 36px); }
  .sfc-solution-detail__banner { height: 240px; }
  .sfc-solution-detail__banner-overlay { padding: 24px 18px; }
  .sfc-solution-detail__banner-overlay p { font-size: clamp(31px, 9vw, 42px); }
  .sfc-solution-detail__breadcrumbs .sfc-solution-detail__container { min-height: 62px; gap: 8px; font-size: 12px; }
  .sfc-solution-detail__hero-grid { grid-template-columns: 1fr; gap: 30px; padding: 50px 0 52px; }
  .sfc-solution-detail h1 { max-width: 100%; font-size: clamp(32px, 9.3vw, 44px); }
  .sfc-solution-detail__primary-action,
  .sfc-solution-detail__decision > a { min-height: 50px; padding: 0 20px; }
  .sfc-solution-detail__hero-media { min-height: 0; }
  .sfc-solution-detail__hero-media img { height: 270px; }
  .sfc-solution-detail__subnav .sfc-solution-detail__container { width: 100%; min-width: 640px; }
  .sfc-solution-detail__case-grid,
  .sfc-solution-detail__product-grid { grid-template-columns: 1fr; }
}

/* Shared process diagram for the four solution-detail hero sections. */
.sfc-solution-detail__hero-media--process {
  min-height: 0;
  padding: 0;
}

.sfc-solution-detail__hero-media--process::before {
  display: none;
}

.sfc-solution-detail__process-visual {
  position: relative;
  isolation: isolate;
  width: min(100%, 620px);
  margin: 0 auto;
}

.sfc-solution-detail__process-visual > img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: none;
}

@media (max-width: 760px) {
  .sfc-solution-detail__process-visual {
    width: min(100%, 520px);
  }
}
