﻿.page-template-page-solutions,
.page-template-page-products,
.page-template-page-support,
.page-template-page-cases,
.page-template-page-about,
.page-template-page-contact {
  background: linear-gradient(90deg, rgba(4, 20, 44, 0.98) 0%, rgba(7, 36, 77, 0.96) 46%, rgba(16, 67, 149, 0.88) 100%);
}


.inner-page {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  background: #f3f7fc;
  box-sizing: border-box;
}

.inner-page * {
  box-sizing: border-box;
}

.inner-hero {
  position: relative;
  width: 100%;
  background:
    radial-gradient(circle at 72% 40%, rgba(34, 160, 255, 0.18) 0%, rgba(34, 160, 255, 0) 42%),
    linear-gradient(90deg, rgba(4, 20, 44, 0.98) 0%, rgba(7, 36, 77, 0.96) 46%, rgba(16, 67, 149, 0.88) 100%);
  padding: 92px clamp(16px, 4vw, 56px) 70px;
  color: #ffffff;
  overflow: hidden;
}

.inner-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 64px 64px;
  opacity: 0.16;
  pointer-events: none;
}

.inner-hero-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}

.inner-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  font-size: 14px;
  line-height: 1.4;
  color: rgba(210, 232, 255, 0.72);
}

.inner-breadcrumb a {
  color: rgba(210, 232, 255, 0.82);
  text-decoration: none;
}

.inner-hero h1 {
  margin: 0 0 18px;
  font-size: clamp(36px, 4vw, 58px);
  line-height: 1.1;
  font-weight: 900;
  color: #ffffff;
  letter-spacing: -1px;
}

.inner-hero p {
  margin: 0;
  max-width: 760px;
  font-size: 17px;
  line-height: 1.75;
  color: rgba(225, 239, 255, 0.86);
}

.inner-content {
  width: 100%;
  padding: 56px clamp(16px, 4vw, 56px);
}

.inner-content-inner {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}

.inner-block {
  width: 100%;
  margin: 0 0 54px;
}

.inner-block:last-child {
  margin-bottom: 0;
}

.inner-section-title {
  margin: 0 0 30px;
  font-size: clamp(26px, 2.4vw, 36px);
  line-height: 1.2;
  font-weight: 900;
  color: #082f5f;
  text-align: center;
}

.inner-card-grid {
  display: grid;
  gap: 22px;
}

.inner-card-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.inner-card-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.inner-card-grid--5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.inner-card {
  min-width: 0;
  background: #ffffff;
  border: 1px solid #dbe7f3;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(17, 60, 110, 0.08);
  padding: 26px;
}

.inner-card h3 {
  margin: 0 0 12px;
  font-size: 21px;
  line-height: 1.25;
  font-weight: 900;
  color: #082f5f;
}

.inner-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: #526f8d;
}

.inner-step-list,
.inner-filter-list,
.inner-stat-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
}

.inner-step-list span,
.inner-filter-list span,
.inner-stat-grid div {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 76px;
  padding: 16px;
  border: 1px solid #dbe7f3;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(17, 60, 110, 0.08);
  color: #082f5f;
  font-size: 18px;
  font-weight: 900;
  text-align: center;
}

.inner-stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.inner-stat-grid div {
  flex-direction: column;
  gap: 6px;
}

.inner-stat-grid strong {
  color: #126dff;
  font-size: 40px;
  line-height: 1;
  font-weight: 900;
}

.inner-stat-grid span {
  color: #526f8d;
  font-size: 14px;
  font-weight: 700;
}

.inner-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 54px;
  padding: 30px 34px;
  border-radius: 14px;
  background: linear-gradient(90deg, #06182f 0%, #0c3d86 100%);
  color: #ffffff;
}

.inner-cta h2 {
  margin: 0;
  font-size: clamp(24px, 2.2vw, 34px);
  line-height: 1.2;
  font-weight: 900;
}

.inner-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 154px;
  height: 46px;
  padding: 0 22px;
  border: 1px solid #2aaeff;
  border-radius: 6px;
  background: linear-gradient(180deg, #34c4ff 0%, #1f9fff 100%);
  color: #ffffff;
  font-size: 15px;
  font-weight: 900;
  text-decoration: none;
}

.inner-btn--ghost {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.5);
}

.page-editor-content {
  margin-top: 42px;
  padding: 28px;
  border-radius: 14px;
  background: #ffffff;
  border: 1px solid #dbe7f3;
  color: #526f8d;
}

.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.6fr);
  gap: 22px;
}

.inner-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.inner-form-grid span,
.inner-map-placeholder,
.inner-qr-placeholder {
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 0 16px;
  border: 1px dashed #bad2eb;
  border-radius: 8px;
  color: #526f8d;
  background: #f7fbff;
}

.inner-form-grid .full {
  grid-column: 1 / -1;
  min-height: 120px;
  align-items: flex-start;
  padding-top: 14px;
}

.inner-map-placeholder {
  justify-content: center;
  min-height: 260px;
  font-weight: 900;
}

.inner-qr-placeholder {
  justify-content: center;
  width: 150px;
  height: 150px;
  margin-top: 18px;
  font-size: 24px;
  font-weight: 900;
}

@media (max-width: 1200px) {
  .inner-card-grid--4,
  .inner-card-grid--5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .inner-step-list,
  .inner-filter-list,
  .inner-stat-grid,
  .inner-card-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contact-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .inner-hero {
    padding: 72px 16px 52px;
  }

  .inner-content {
    padding: 38px 16px;
  }

  .inner-card-grid,
  .inner-card-grid--3,
  .inner-card-grid--4,
  .inner-card-grid--5,
  .inner-step-list,
  .inner-filter-list,
  .inner-stat-grid {
    grid-template-columns: 1fr;
  }

  .inner-card {
    padding: 22px;
  }

  .inner-cta {
    align-items: flex-start;
    flex-direction: column;
    padding: 26px 22px;
  }

  .inner-form-grid {
    grid-template-columns: 1fr;
  }
}

.about-hero-desc{margin:0;color:rgba(226,240,255,.9);font-size:16px;line-height:1.6}.about-intro-eyebrow{margin:0 0 10px;color:#0c60d3;font-size:14px;font-weight:800;letter-spacing:.08em}.about-page--without-hero .about-intro-section{padding-top:72px}
/* Contact page phase 1 */
.contact-page {
  width: 100%;
  overflow: hidden;
  background: #eef4fb;
}

.contact-hero {
  position: relative;
  width: 100%;
  height: 315px;
  overflow: hidden;
  background: #06182f;
}

.contact-hero-bg {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 16, 36, 0.92) 0%, rgba(5, 28, 61, 0.76) 42%, rgba(5, 28, 61, 0.30) 100%),
    radial-gradient(circle at 76% 46%, rgba(34, 160, 255, 0.22) 0%, rgba(34, 160, 255, 0) 44%),
    url("../images/contact/contact-hero.jpg") center center / cover no-repeat,
    linear-gradient(90deg, #031024 0%, #06234d 54%, #0b3f88 100%);
  z-index: 1;
}

.contact-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
  background-size: 58px 58px;
  opacity: 0.25;
}

.contact-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 68% 48%, rgba(0, 140, 255, 0.18) 0%, rgba(0, 140, 255, 0) 45%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.28) 100%);
  z-index: 2;
}

.contact-hero-inner {
  position: relative;
  z-index: 3;
  width: 100%;
  max-width: 1500px;
  height: 100%;
  margin: 0 auto;
  padding: 0 72px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #ffffff;
}

.contact-hero h1 {
  margin: 0 0 12px;
  font-size: 58px;
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: 1px;
  color: #ffffff;
}

.contact-hero-en {
  margin: 0 0 30px;
  font-size: 21px;
  line-height: 1.2;
  color: rgba(255, 255, 255, 0.92);
  font-weight: 500;
}

.contact-hero-desc {
  margin: 0;
  font-size: 19px;
  line-height: 1.5;
  color: rgba(235, 246, 255, 0.92);
  letter-spacing: 1px;
}

.contact-main-section {
  position: relative;
  z-index: 5;
  width: 100%;
  padding: 0 34px 34px;
  box-sizing: border-box;
  background: #eef4fb;
}

.contact-panel {
  width: 100%;
  max-width: 1500px;
  margin: -58px auto 0;
  padding: 44px 52px 42px;
  box-sizing: border-box;
  background: #ffffff;
  border: 1px solid rgba(205, 220, 237, 0.95);
  border-radius: 12px;
  box-shadow: 0 18px 46px rgba(23, 63, 110, 0.14);
}

.contact-grid {
  display: grid;
  grid-template-columns: 0.92fr 1.08fr;
  gap: 54px;
  align-items: start;
}

.contact-page .section-heading {
  margin: 0 0 24px;
}

.contact-page .section-heading h2 {
  position: relative;
  margin: 0;
  padding-bottom: 12px;
  font-size: 28px;
  line-height: 1.2;
  font-weight: 900;
  color: #082f5f;
  letter-spacing: 0.2px;
}

.contact-page .section-heading h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 48px;
  height: 3px;
  border-radius: 99px;
  background: #116bff;
}

.contact-info-list {
  display: grid;
  gap: 12px;
}

.contact-info-card {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 18px;
  align-items: center;
  min-height: 108px;
  padding: 20px 24px;
  box-sizing: border-box;
  background: #ffffff;
  border: 1px solid #dce7f2;
  border-radius: 8px;
  box-shadow: 0 8px 22px rgba(18, 63, 112, 0.05);
}

.contact-icon {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #0d6bff 0%, #06479f 100%);
  color: #ffffff;
  font-size: 24px;
  font-weight: 800;
}

.contact-icon svg {
  width: 28px;
  height: 28px;
  display: block;
}

.contact-info-text span {
  display: block;
  margin-bottom: 6px;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 800;
  color: #163a63;
}

.contact-info-text strong {
  display: block;
  margin-bottom: 4px;
  font-size: 21px;
  line-height: 1.25;
  font-weight: 900;
  color: #0a55d8;
}

.contact-info-text p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #667f9d;
}

.contact-demand-form {
  display: grid;
  gap: 18px;
}

.form-row {
  position: relative;
  display: grid;
  gap: 8px;
}

.form-row label {
  font-size: 14px;
  line-height: 1.2;
  font-weight: 800;
  color: #1c3f65;
}

.form-row input,
.form-row select,
.form-row textarea {
  width: 100%;
  min-height: 44px;
  padding: 0 16px;
  box-sizing: border-box;
  border: 1px solid #d3dfeb;
  border-radius: 5px;
  background: #ffffff;
  color: #17385f;
  font-size: 14px;
  outline: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.form-row textarea {
  min-height: 168px;
  padding: 14px 16px;
  resize: vertical;
  line-height: 1.7;
}

.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus {
  border-color: #116bff;
  box-shadow: 0 0 0 3px rgba(17, 107, 255, 0.12);
}

.form-count {
  position: absolute;
  right: 12px;
  bottom: 10px;
  font-size: 12px;
  color: #8a9bb0;
}

.privacy-check {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
  font-size: 13px;
  line-height: 1.4;
  color: #667f9d;
}

.privacy-check input {
  width: 14px;
  height: 14px;
}

.privacy-check span {
  color: #667f9d;
}

.contact-submit-btn {
  width: 100%;
  height: 52px;
  border: none;
  border-radius: 7px;
  background: linear-gradient(90deg, #0d6bff 0%, #0055df 100%);
  color: #ffffff;
  font-size: 16px;
  line-height: 1;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(0, 89, 230, 0.22);
}

@media (max-width: 1024px) {
  .contact-panel {
    padding: 34px 28px;
  }

  .contact-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}

@media (max-width: 768px) {
  .contact-hero {
    height: 260px;
  }

  .contact-hero h1 {
    font-size: 40px;
  }

  .contact-hero-en {
    font-size: 18px;
    margin-bottom: 18px;
  }

  .contact-hero-desc {
    font-size: 16px;
  }

  .contact-main-section {
    padding: 0 14px 28px;
  }

  .contact-panel {
    margin-top: -36px;
    padding: 28px 18px;
    border-radius: 10px;
  }

  .contact-info-card {
    grid-template-columns: 56px 1fr;
    gap: 14px;
    padding: 18px;
  }

  .contact-icon {
    width: 50px;
    height: 50px;
  }

  .contact-info-text strong {
    font-size: 18px;
  }
}
/* Contact page phase 2 */
.contact-info-card-qr {
  grid-template-columns: 72px 1fr 74px;
}

.contact-icon-blue {
  background: linear-gradient(180deg, #0d6bff 0%, #06479f 100%);
}

.contact-icon-green {
  background: linear-gradient(180deg, #28c95f 0%, #089341 100%);
}

.contact-icon-linkedin {
  background: linear-gradient(180deg, #0a8bdc 0%, #005c9b 100%);
}

.contact-qr {
  width: 66px;
  height: 66px;
  border-radius: 4px;
  overflow: hidden;
  background:
    linear-gradient(90deg, #5d7187 10px, transparent 10px) 8px 8px / 22px 22px,
    linear-gradient(#5d7187 10px, transparent 10px) 8px 8px / 22px 22px,
    radial-gradient(circle at 15px 15px, #5d7187 0 5px, transparent 6px),
    radial-gradient(circle at 51px 15px, #5d7187 0 5px, transparent 6px),
    radial-gradient(circle at 15px 51px, #5d7187 0 5px, transparent 6px),
    #ffffff;
  border: 1px solid #d6e1ec;
}

/* About page */
.about-page { width: 100%; overflow: hidden; background: #f8fbff; color: #17365f; }
.about-page *, .about-page *::before, .about-page *::after { box-sizing: border-box; }
.about-container { width: 100%; max-width: 1500px; margin: 0 auto; }
.about-hero { position: relative; width: 100%; height: 420px; overflow: hidden; background: #06172d; }
.about-hero-bg, .about-hero-overlay { position: absolute; inset: 0; }
.about-hero-bg { z-index: 1; background: url('../images/about/about-hero.jpg') center center / cover no-repeat; }
.about-hero-overlay { z-index: 2; background: linear-gradient(90deg, rgba(2,13,30,.94) 0%, rgba(4,25,52,.78) 43%, rgba(3,20,43,.16) 100%); }
.about-hero-inner { position: relative; z-index: 3; width: 100%; max-width: 1500px; height: 100%; margin: 0 auto; padding: 135px clamp(24px, 5vw, 72px) 26px; display: flex; flex-direction: column; justify-content: space-between; color: #fff; }
.about-hero-content h1 { margin: 0 0 10px; font-size: 52px; line-height: 1.08; font-weight: 900; color: #fff; }
.about-hero-en { margin: 0; font-size: 22px; line-height: 1.2; color: rgba(255,255,255,.94); }
.about-breadcrumb { display: flex; gap: 8px; align-items: center; font-size: 14px; color: rgba(231,241,255,.8); }
.about-breadcrumb a { color: rgba(231,241,255,.9); text-decoration: none; }
.about-intro-section { padding: 56px 34px 32px; background: #fff; }
.about-intro-grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); align-items: center; gap: 54px; }
.about-intro-copy h2 { margin: 0 0 24px; font-size: 28px; line-height: 1.32; font-weight: 900; color: #0b3271; }
.about-intro-copy > p { margin: 0 0 11px; font-size: 15px; line-height: 1.9; color: #536983; }
.about-intro-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 27px; }
.about-intro-feature { display: flex; gap: 11px; align-items: center; min-width: 0; }
.about-mini-icon { flex: 0 0 48px; width: 48px; height: 48px; border: 1px solid #b9cceb; border-radius: 50%; display: grid; place-items: center; color: #1653b3; }
.about-mini-icon svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.about-intro-feature strong, .about-intro-feature em { display: block; white-space: nowrap; font-style: normal; }
.about-intro-feature strong { margin-bottom: 4px; font-size: 14px; color: #173b72; font-weight: 900; }
.about-intro-feature em { font-size: 13px; color: #687e99; }
.about-hero-brand-plate { position: absolute; right: clamp(24px, 5vw, 72px); top: 126px; max-width: min(360px, 34vw); padding: 14px 18px; border: 1px solid rgba(156,205,255,.28); border-radius: 7px; background: rgba(5,25,53,.62); box-shadow: 0 10px 28px rgba(0,0,0,.18); color: #fff; backdrop-filter: blur(3px); }
.about-hero-brand-plate strong, .about-hero-brand-plate span { display: block; }
.about-hero-brand-plate strong { font-size: 20px; line-height: 1.35; font-weight: 900; letter-spacing: 1px; }
.about-hero-brand-plate span { margin-top: 5px; font-size: 10px; line-height: 1.35; color: rgba(220,237,255,.82); letter-spacing: .25px; }
.about-intro-image { position: relative; overflow: hidden; border-radius: 7px; box-shadow: 0 12px 30px rgba(23,59,108,.12); }
.about-intro-image img { display: block; width: 100%; aspect-ratio: 1.75 / 1; object-fit: cover; object-position: center; image-rendering: auto; }
.about-office-brand-plate { position: absolute; top: 13%; right: 5%; max-width: 42%; padding: 12px 14px; border: 1px solid rgba(149,192,237,.42); border-radius: 5px; background: rgba(255,255,255,.78); box-shadow: 0 7px 18px rgba(12,49,92,.14); color: #0b3878; text-align: left; backdrop-filter: blur(2px); }
.about-office-brand-plate strong, .about-office-brand-plate span { display: block; }
.about-office-brand-plate strong { font-size: clamp(13px, 1.25vw, 19px); line-height: 1.35; font-weight: 900; letter-spacing: .5px; }
.about-office-brand-plate span { margin-top: 4px; font-size: clamp(7px, .62vw, 10px); line-height: 1.3; color: #496889; white-space: nowrap; }
.about-stats-section { padding: 0 24px 26px; background: #fff; }
.about-stats-panel { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); min-height: 102px; padding: 16px 18px; border: 1px solid #dbe5ef; border-radius: 11px; background: #fff; box-shadow: 0 10px 30px rgba(24,64,110,.05); }
.about-stat-item { position: relative; min-width: 0; padding: 0 18px; display: grid; grid-template-columns: 54px 1fr; grid-template-rows: 40px 22px; column-gap: 14px; align-items: center; }
.about-stat-item::after { content: ''; position: absolute; top: 9px; right: 0; width: 1px; height: 52px; background: #dce6f1; }
.about-stat-item:last-child::after { display: none; }
.about-stat-icon { grid-row: 1 / span 2; width: 54px; height: 54px; border: 1px solid #d7e4f2; border-radius: 16px; display: grid; place-items: center; color: #0c46a4; }
.about-stat-icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.about-stat-item strong { font-size: 29px; line-height: 1; color: #123e91; font-weight: 900; white-space: nowrap; }
.about-stat-item > span:last-child { font-size: 13px; color: #61748c; white-space: nowrap; }
.about-mission-section { padding: 18px 34px 42px; background: #f8fbff; }
.about-section-heading { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 28px; }
.about-section-heading h2 { margin: 0; font-size: 27px; line-height: 1.2; font-weight: 900; color: #0a2e6b; }
.about-section-heading i { width: 5px; height: 5px; flex: 0 0 5px; border-radius: 50%; background: #1158c7; }
.heading-line { width: 48px; height: 1px; background: linear-gradient(90deg, transparent, #9cb4d1); }
.heading-line-right { background: linear-gradient(90deg, #9cb4d1, transparent); }
.about-mission-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.about-mission-card { min-height: 154px; padding: 22px 20px 19px; border: 1px solid #dce6f0; border-radius: 11px; background: #fff; text-align: center; box-shadow: 0 9px 26px rgba(24,64,110,.045); }
.about-mission-icon { width: 44px; height: 44px; margin: 0 auto 8px; color: #0f49a7; }
.about-mission-icon svg { width: 44px; height: 44px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.about-mission-card h3 { margin: 0 0 8px; font-size: 18px; line-height: 1.2; font-weight: 900; color: #10449c; }
.about-mission-card p { margin: 0; font-size: 12px; line-height: 1.65; color: #586f89; }
.about-history-section { padding: 18px 34px 36px; background: #fff; }
.about-history-timeline { position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 22px; padding-top: 4px; }
.about-history-timeline::before { content: ''; position: absolute; left: 4.5%; right: 4.5%; top: 48px; height: 1px; background: #93afd6; }
.about-history-item { position: relative; z-index: 1; text-align: center; }
.history-year { display: block; margin-bottom: 11px; font-size: 18px; line-height: 1; font-weight: 900; color: #15459e; }
.history-dot { display: block; width: 9px; height: 9px; margin: 0 auto 12px; border: 2px solid #fff; border-radius: 50%; background: #0e5ed0; box-shadow: 0 0 0 1px #0e5ed0; }
.about-history-item h3 { margin: 0 0 6px; font-size: 13px; line-height: 1.2; font-weight: 900; color: #315072; }
.about-history-item p { min-height: 42px; margin: 0 0 11px; font-size: 11px; line-height: 1.55; color: #61758e; }
.about-history-item img { display: block; width: 100%; aspect-ratio: 1.4 / 1; border-radius: 6px; object-fit: cover; object-position: center; box-shadow: 0 8px 22px rgba(18,51,91,.12); }
.about-advantages-section { padding: 0 24px 26px; background: #fff; }
.about-advantages-panel { padding: 20px 14px 16px; border: 1px solid #dbe5ef; border-radius: 10px; background: #fff; box-shadow: 0 10px 30px rgba(24,64,110,.05); }
.about-advantages-panel .about-section-heading { margin-bottom: 16px; }
.about-advantages-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
.about-advantage-card { min-height: 100px; padding: 15px 14px; display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 12px; align-items: start; border: 1px solid #dce6f0; border-radius: 10px; background: #fff; }
.about-advantage-icon { width: 44px; height: 44px; color: #10479e; }
.about-advantage-icon svg { width: 44px; height: 44px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.about-advantage-card h3 { margin: 0 0 6px; font-size: 15px; line-height: 1.25; font-weight: 900; color: #0b3f8f; }
.about-advantage-card ul { margin: 0; padding-left: 14px; }
.about-advantage-card li { margin-bottom: 2px; font-size: 11px; line-height: 1.45; color: #546a82; }
.about-cooperation-cta { position: relative; min-height: 174px; overflow: hidden; background: #061833; }
.about-cooperation-bg { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,18,41,.98) 0%, rgba(4,31,70,.92) 45%, rgba(3,31,73,.30) 100%), url('../images/about/about-cta-bg.jpg') right center / cover no-repeat; }
.about-cooperation-inner { position: relative; z-index: 1; width: 100%; max-width: 1500px; min-height: 174px; margin: 0 auto; padding: 26px clamp(24px, 5vw, 72px); display: flex; align-items: center; }
.about-cooperation-copy h2 { margin: 0 0 8px; font-size: 28px; line-height: 1.2; font-weight: 900; color: #fff; }
.about-cooperation-copy p { margin: 0 0 18px; font-size: 14px; color: rgba(224,239,255,.86); }
.about-cooperation-actions { display: flex; gap: 14px; }
.about-cta-primary, .about-cta-secondary { min-width: 112px; height: 38px; padding: 0 18px; border-radius: 4px; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-size: 13px; font-weight: 900; }
.about-cta-primary { background: #0a66e8; color: #fff; }
.about-cta-secondary { border: 1px solid rgba(255,255,255,.62); background: rgba(255,255,255,.04); color: #fff; }
@media (max-width: 1100px) { .about-intro-grid { grid-template-columns: 1fr; gap: 28px; } .about-stats-panel { grid-template-columns: repeat(3, minmax(0,1fr)); } .about-stat-item:nth-child(3)::after { display: none; } .about-mission-grid, .about-advantages-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } .about-history-timeline { grid-template-columns: repeat(3, minmax(0,1fr)); row-gap: 34px; } .about-history-timeline::before { display: none; } }
@media (max-width: 768px) { .about-hero { height: 330px; } .about-hero-inner { padding: 126px 20px 20px; } .about-hero-content h1 { font-size: 44px; } .about-hero-en { font-size: 20px; } .about-hero-brand-plate { top: 196px; right: 20px; max-width: 210px; padding: 9px 11px; } .about-hero-brand-plate strong { font-size: 13px; } .about-hero-brand-plate span { display: none; } .about-intro-section, .about-mission-section, .about-history-section { padding-left: 14px; padding-right: 14px; } .about-stats-section, .about-advantages-section { padding-left: 14px; padding-right: 14px; } .about-intro-features { grid-template-columns: 1fr; } .about-stats-panel, .about-mission-grid, .about-advantages-grid, .about-history-timeline { grid-template-columns: 1fr; } .about-stats-panel { gap: 8px; padding: 14px; } .about-stat-item { padding: 10px 8px; } .about-stat-item::after { display: none; } .about-section-heading { gap: 10px; } .about-section-heading h2 { font-size: 25px; text-align: center; } .heading-line { width: 28px; } .about-history-item p { min-height: auto; } .about-history-item img { max-width: 260px; margin: 0 auto; } .about-office-brand-plate { top: 8%; right: 4%; max-width: 52%; padding: 8px 9px; } .about-office-brand-plate strong { font-size: 13px; } .about-office-brand-plate span { display: none; } .about-advantage-card { grid-template-columns: 54px minmax(0,1fr); } .about-advantage-icon, .about-advantage-icon svg { width: 48px; height: 48px; } .about-cooperation-inner { min-height: 248px; padding: 32px 20px; } .about-cooperation-copy h2 { font-size: 26px; } .about-cooperation-actions { flex-direction: column; width: 100%; } .about-cta-primary, .about-cta-secondary { width: 100%; } }

@media (max-width: 768px) {
  .about-page,
  .about-page .about-intro-grid,
  .about-page .about-intro-copy {
    min-width: 0;
    max-width: 100%;
  }

  .about-page {
    overflow-x: hidden;
  }

  .about-page .about-intro-copy h2,
  .about-page .about-intro-copy > p {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
  }
}

/* Industry cases page */
.cases-page { width: 100%; overflow: hidden; background: #f5f8fc; color: #183b67; }
.cases-page *, .cases-page *::before, .cases-page *::after { box-sizing: border-box; }
.cases-container { width: 100%; max-width: 1500px; margin: 0 auto; }
.cases-hero { position: relative; width: 100%; height: 470px; overflow: hidden; background: #06172d; }
.cases-hero-bg, .cases-hero-overlay { position: absolute; inset: 0; }
.cases-hero-bg { z-index: 1; background: url('../images/cases/cases-hero.jpg') center center / cover no-repeat; }
.cases-hero-overlay { z-index: 2; background: linear-gradient(90deg, rgba(2,14,32,.95) 0%, rgba(3,24,52,.80) 38%, rgba(3,28,67,.20) 100%), linear-gradient(180deg, rgba(0,0,0,.14), rgba(0,0,0,.32)); }
.cases-hero-inner { position: relative; z-index: 3; width: 100%; max-width: 1500px; height: 100%; margin: 0 auto; padding: 0 clamp(24px, 5vw, 72px); }
.cases-breadcrumb { position: absolute; top: 120px; left: clamp(24px, 5vw, 72px); display: flex; gap: 8px; align-items: center; color: rgba(255,255,255,.75); font-size: 14px; }
.cases-breadcrumb a { color: rgba(255,255,255,.84); text-decoration: none; }
.cases-hero-content { position: absolute; top: 50%; left: clamp(24px, 5vw, 72px); width: min(610px, 48vw); color: #fff; transform: translateY(-32%); }
.cases-hero h1 { margin: 0 0 12px; font-size: clamp(50px, 4.6vw, 70px); line-height: 1.05; font-weight: 900; letter-spacing: 1px; }
.cases-hero-en { margin: 0 0 22px; font-size: 25px; line-height: 1.3; color: rgba(255,255,255,.94); }
.cases-hero-desc { margin: 0; max-width: 600px; font-size: 17px; line-height: 1.9; color: rgba(226,239,255,.88); }
.cases-filter-section { width: 100%; padding: 28px 34px 18px; background: #f5f8fc; }
.cases-filter-bar { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); overflow: hidden; border: 1px solid #dbe5ef; border-radius: 8px; background: #fff; box-shadow: 0 10px 28px rgba(23,67,118,.08); }
.case-filter-btn { min-height: 72px; padding: 0 18px; border: 0; border-right: 1px solid #e2eaf3; background: #fff; color: #183b67; display: flex; align-items: center; justify-content: center; gap: 11px; font-size: 15px; font-weight: 800; cursor: pointer; }
.case-filter-btn:last-child { border-right: 0; }
.case-filter-btn.is-active { background: linear-gradient(90deg, #0d6bff, #135cdd); color: #fff; }
.case-filter-icon, .case-filter-icon svg { width: 23px; height: 23px; flex: 0 0 23px; }
.case-filter-icon svg, .case-category-icon svg, .cases-consult-icon svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cases-featured-section { width: 100%; padding: 16px 34px 54px; background: #f5f8fc; }
.cases-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.case-card { overflow: hidden; border: 1px solid #dbe5ef; border-radius: 10px; background: #fff; box-shadow: 0 12px 30px rgba(23,67,118,.09); transition: transform .18s ease, box-shadow .18s ease; }
.case-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(23,67,118,.14); }
.case-card-image { width: 100%; overflow: hidden; background: #dce8f5; }
.case-card-image img { display: block; width: 100%; aspect-ratio: 1.48 / 1; object-fit: cover; object-position: center; }
.case-card-body { min-height: 300px; padding: 22px 22px 20px; display: flex; flex-direction: column; }
.case-category { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; font-size: 14px; line-height: 1; font-weight: 800; color: #204d88; }
.case-category-icon, .case-category-icon svg { width: 20px; height: 20px; flex: 0 0 20px; }
.case-demo-badge { margin-left: auto; padding: 4px 7px; border: 1px solid #b9d6f2; border-radius: 999px; color: #126dcb; background: #f2f8ff; font-size: 11px; line-height: 1; font-weight: 700; white-space: nowrap; }
.case-card h2 { margin: 0 0 13px; font-size: 23px; line-height: 1.35; font-weight: 900; color: #0a2f68; }
.case-card p { min-height: 76px; margin: 0 0 20px; font-size: 14px; line-height: 1.8; color: #596f89; }
.case-tags { margin-top: auto; display: flex; flex-wrap: wrap; gap: 9px; }
.case-tags span { min-height: 30px; padding: 0 12px; display: inline-flex; align-items: center; border-radius: 5px; background: #edf5ff; color: #1260be; font-size: 13px; font-weight: 800; }
.cases-more-section { width: 100%; padding: 0 34px 58px; background: #f5f8fc; }
.cases-more-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.cases-more-heading h2 { position: relative; margin: 0; padding-left: 16px; color: #0a2f68; font-size: 26px; line-height: 1.2; font-weight: 900; }
.cases-more-heading h2::before { content: ''; position: absolute; top: 2px; left: 0; width: 4px; height: 28px; border-radius: 99px; background: #116bff; }
.cases-more-heading > a { color: #5f7390; font-size: 14px; text-decoration: none; }
.cases-more-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.more-case-card { display: grid; grid-template-columns: 138px minmax(0,1fr); gap: 20px; min-height: 172px; padding: 16px; border: 1px solid #dbe5ef; border-radius: 10px; background: #fff; box-shadow: 0 10px 26px rgba(23,67,118,.07); }
.more-case-card img { width: 138px; height: 140px; border-radius: 7px; object-fit: cover; object-position: center; }
.more-case-content p { margin: 0 0 12px; font-size: 13px; line-height: 1.7; color: #536a84; }
.more-case-content strong { display: block; margin-bottom: 4px; font-size: 15px; color: #173c71; }
.more-case-content > span { display: block; margin-bottom: 12px; font-size: 13px; color: #71839a; }
.more-case-content a { color: #0d6bff; font-size: 13px; font-weight: 800; text-decoration: none; }
.cases-consult-cta { position: relative; width: 100%; min-height: 235px; overflow: hidden; background: #06172f; }
.cases-consult-bg { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,20,47,.98), rgba(5,38,84,.94) 50%, rgba(5,52,112,.68)), url('../images/cases/cases-hero.jpg') right center / cover no-repeat; }
.cases-consult-inner { position: relative; z-index: 1; width: 100%; max-width: 1500px; min-height: 235px; margin: 0 auto; padding: 34px clamp(24px,5vw,72px); display: grid; grid-template-columns: .88fr 1.12fr; gap: 54px; align-items: center; }
.cases-consult-copy h2 { margin: 0 0 12px; color: #fff; font-size: 36px; line-height: 1.2; font-weight: 900; }
.cases-consult-copy p { margin: 0 0 24px; color: rgba(224,239,255,.84); font-size: 15px; line-height: 1.75; }
.cases-consult-btn { min-width: 174px; height: 46px; padding: 0 22px; border-radius: 5px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; background: #0d6bff; color: #fff; text-decoration: none; font-size: 15px; font-weight: 900; }
.cases-consult-features { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.cases-consult-feature { text-align: center; color: #fff; }
.cases-consult-icon { width: 64px; height: 64px; margin: 0 auto 12px; border: 1px solid rgba(102,177,255,.46); border-radius: 50%; display: grid; place-items: center; background: rgba(5,56,126,.46); }
.cases-consult-icon svg { width: 31px; height: 31px; stroke: #fff; }
.cases-consult-feature strong { display: block; margin-bottom: 5px; font-size: 15px; }
.cases-consult-feature span { display: block; font-size: 12px; line-height: 1.5; color: rgba(214,233,255,.74); }
@media (max-width: 1100px) { .cases-filter-bar { grid-template-columns: repeat(3,minmax(0,1fr)); } .case-filter-btn:nth-child(3n) { border-right: 0; } .cases-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .cases-more-grid { grid-template-columns: 1fr; } .cases-consult-inner { grid-template-columns: 1fr; } }
@media (max-width: 768px) { .cases-hero { height: 390px; } .cases-hero-content { top: 53%; left: 20px; width: calc(100% - 40px); transform: translateY(-22%); } .cases-breadcrumb { top: 128px; left: 20px; } .cases-hero h1 { font-size: 44px; } .cases-hero-en { margin-bottom: 16px; font-size: 21px; } .cases-hero-desc { font-size: 14px; line-height: 1.75; } .cases-filter-section, .cases-featured-section, .cases-more-section { padding-left: 14px; padding-right: 14px; } .cases-filter-bar { grid-template-columns: repeat(2,minmax(0,1fr)); } .case-filter-btn { min-height: 62px; padding: 8px; font-size: 13px; } .case-filter-btn:nth-child(3n) { border-right: 1px solid #e2eaf3; } .case-filter-btn:nth-child(2n) { border-right: 0; } .cases-grid { grid-template-columns: 1fr; } .case-card p { min-height: auto; } .case-card-body { min-height: 0; } .more-case-card { grid-template-columns: 104px minmax(0,1fr); gap: 14px; } .more-case-card img { width: 104px; height: 132px; } .cases-consult-inner { padding: 34px 20px; } .cases-consult-copy h2 { font-size: 28px; } .cases-consult-features { grid-template-columns: repeat(2,minmax(0,1fr)); row-gap: 26px; } }

/* Service support page */
.support-page { width: 100%; overflow: hidden; background: #f4f7fb; color: #102e62; }
.support-page *, .support-page *::before, .support-page *::after { box-sizing: border-box; }
.support-container { width: 100%; max-width: 1500px; margin: 0 auto; }
.support-hero { position: relative; width: 100%; height: 430px; overflow: hidden; background: #06172f; }
.support-hero-bg,.support-hero-overlay { position:absolute; inset:0; }.support-hero-bg{z-index:1;background:url('../images/support/support-hero.jpg') center/cover no-repeat}.support-hero-overlay{z-index:2;background:linear-gradient(90deg,rgba(2,15,34,.96),rgba(3,30,68,.83) 42%,rgba(3,38,85,.14)),linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.32))}
.support-hero-inner{position:relative;z-index:3;width:100%;max-width:1500px;height:100%;margin:0 auto;padding:0 clamp(24px,5vw,72px)}.support-hero-copy{position:absolute;left:clamp(24px,5vw,72px);top:50%;width:min(620px,48vw);transform:translateY(-36%);color:#fff}.support-hero h1{margin:0 0 8px;font-size:clamp(50px,4.7vw,72px);line-height:1.05;font-weight:900;letter-spacing:1px}.support-hero-en{margin:0 0 28px;font-size:20px;line-height:1.3;letter-spacing:2px;color:rgba(210,226,247,.66)}.support-hero-desc{margin:0 0 28px;font-size:20px;line-height:1.8;font-weight:700;color:rgba(245,250,255,.94)}.support-hero-badges{display:flex;flex-wrap:wrap;gap:14px}.support-hero-badge{min-height:48px;padding:0 18px;border:1px solid rgba(91,171,255,.18);border-radius:6px;display:inline-flex;align-items:center;gap:10px;background:rgba(13,78,155,.5);color:#fff;font-size:14px;font-weight:800;backdrop-filter:blur(5px)}.support-hero-badge i,.support-hero-badge svg{width:23px;height:23px;display:block}.support-page svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.support-tabs-section{width:100%;padding:14px 34px 0;background:#fff;border-bottom:1px solid #dde6ef;box-shadow:0 8px 20px rgba(20,58,102,.06)}.support-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;border:1px solid #e0e8f1;border-bottom:0;border-radius:8px 8px 0 0;background:#fff}.support-tab{position:relative;min-height:78px;padding:0 20px;border:0;border-right:1px solid #e4ebf3;background:#fff;color:#183b67;display:flex;align-items:center;justify-content:center;gap:14px;font-size:16px;font-weight:900;cursor:pointer}.support-tab:last-child{border-right:0}.support-tab.is-active{background:linear-gradient(90deg,#0d6bff,#1157d6);color:#fff}.support-tab.is-active::after{content:'';position:absolute;left:50%;bottom:-10px;transform:translateX(-50%);border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid #1157d6}.support-tab-icon,.support-tab-icon svg{width:29px;height:29px;flex:0 0 29px}
.support-tab:focus-visible{z-index:2;outline:3px solid rgba(13,107,255,.35);outline-offset:-4px}.support-service-panel[hidden]{display:none!important}.support-overview-section{padding:58px 34px 66px;background:radial-gradient(circle at 50% 20%,rgba(19,105,224,.06),transparent 45%),#f4f7fb}.support-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.support-overview-card{min-height:260px;padding:34px 28px 30px;border:1px solid #dbe5ef;border-radius:10px;background:#fff;text-align:center;box-shadow:0 12px 30px rgba(24,64,110,.08)}.support-overview-icon{width:72px;height:72px;margin:0 auto 20px;color:#0a4ca8}.support-overview-icon svg{width:68px;height:68px;stroke-width:1.55}.support-overview-card h3{margin:0 0 14px;font-size:22px;line-height:1.25;font-weight:900;color:#0b356f}.support-overview-card p{margin:0;font-size:14px;line-height:1.85;color:#5f7188}.support-overview-action{margin-top:30px;text-align:center}.support-overview-action a{min-width:250px;min-height:56px;padding:0 28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(90deg,#0d6bff,#1157d6);color:#fff;text-decoration:none;font-size:17px;font-weight:900;box-shadow:0 12px 28px rgba(13,91,214,.22)}
.support-process-section{padding:52px 34px 34px;background:radial-gradient(circle at 50% 20%,rgba(19,105,224,.05),transparent 45%),#f4f7fb}.support-section-heading{text-align:center;margin-bottom:32px}.support-section-heading h2{margin:0 0 8px;font-size:38px;line-height:1.2;font-weight:900;color:#092d68}.support-section-heading p{margin:0;font-size:15px;color:#6c7f96}.support-process-grid{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:center}.support-process-card{min-height:270px;padding:28px 20px 22px;border:1px solid #dbe5ef;border-radius:10px;background:#fff;text-align:center;box-shadow:0 12px 30px rgba(24,64,110,.08)}.process-step{width:42px;height:42px;margin:-10px auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0d62df;color:#fff;font-size:15px;font-weight:900}.support-process-card h3{margin:0 0 14px;font-size:20px;line-height:1.2;font-weight:900;color:#0b356f}.process-icon{width:74px;height:74px;margin:0 auto 16px;color:#0a3f95}.process-icon svg{width:66px;height:66px;stroke-width:1.6}.support-process-card p{margin:0;font-size:13px;line-height:1.7;color:#5f7188}.process-arrow{display:flex;align-items:center;justify-content:center;color:#7696bf;font-size:28px;font-weight:900}
.support-advantages-section{padding:34px 34px 42px;background:radial-gradient(circle at 50% 100%,rgba(15,97,219,.24),transparent 42%),linear-gradient(180deg,#061a39,#07254f)}.support-advantages-section .support-section-heading h2{color:#fff}.support-advantages-section .support-section-heading p{color:rgba(211,231,255,.72)}.support-advantages-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.support-advantage-card{min-height:290px;padding:34px 24px 28px;border:1px solid rgba(85,154,235,.34);border-radius:10px;background:linear-gradient(180deg,rgba(19,66,123,.78),rgba(8,38,82,.86));text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.support-advantage-icon{width:78px;height:78px;margin:0 auto 18px;color:#fff}.support-advantage-icon svg{width:70px;height:70px;stroke-width:1.6}.support-advantage-card h3{margin:0 0 14px;font-size:22px;line-height:1.2;font-weight:900;color:#fff}.support-advantage-card p{margin:0;font-size:14px;line-height:1.85;color:rgba(218,236,255,.78)}
.support-value-section{padding:0 34px 44px;background:linear-gradient(180deg,#07254f,#061a39)}.support-dark-title{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:24px}.support-dark-title h2{margin:0;color:#fff;font-size:31px;font-weight:900}.support-dark-title i{width:7px;height:7px;border-radius:50%;background:#2a86f7}.support-dark-title span{width:54px;height:1px;background:linear-gradient(90deg,transparent,#387fca)}.support-dark-title span:last-child{background:linear-gradient(90deg,#387fca,transparent)}.support-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.support-value-card{position:relative;min-height:190px;padding:26px 28px;overflow:hidden;border:1px solid rgba(69,139,225,.34);border-radius:9px;background:radial-gradient(circle at 85% 55%,rgba(31,132,255,.22),transparent 38%),linear-gradient(135deg,rgba(14,52,103,.92),rgba(7,30,67,.96))}.support-value-card h3{margin:0 0 10px;color:#fff;font-size:18px}.support-value-number{display:block;margin-bottom:10px;font-size:clamp(42px,4vw,62px);line-height:1;font-weight:900;color:#a8d7ff}.support-value-card p{max-width:62%;margin:0;font-size:14px;line-height:1.6;color:rgba(214,233,255,.72)}.support-value-visual{position:absolute;right:22px;bottom:20px;width:90px;height:90px;color:#56a8ff}.support-value-visual svg{width:100%;height:100%;stroke-width:1.25}.support-value-note{margin:16px 0 0;text-align:center;font-size:12px;color:rgba(197,219,246,.54)}
.support-help-section{padding:38px 34px 34px;background:#f4f7fb}.support-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.support-help-card{position:relative;min-height:285px;overflow:hidden;border-radius:10px;background:#06204a;box-shadow:0 12px 30px rgba(20,58,105,.14)}.support-help-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.support-help-card::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,29,66,.74),rgba(4,27,63,.88))}.support-help-content{position:relative;z-index:1;padding:28px 28px 24px;color:#fff}.support-help-content h3{margin:0 0 12px;font-size:23px;line-height:1.2;font-weight:900}.support-help-content p{max-width:82%;margin:0;font-size:14px;line-height:1.8;color:rgba(222,238,255,.86)}.support-help-icon{position:absolute;right:24px;bottom:22px;z-index:1;width:84px;height:84px;color:#a9d8ff}.support-help-icon svg{width:84px;height:84px;stroke-width:1.4}
.support-bom-cta{min-height:170px;overflow:hidden;background:radial-gradient(circle at 18% 50%,rgba(22,129,255,.24),transparent 34%),linear-gradient(90deg,#041933,#073879 56%,#0a4c9d)}.support-bom-cta-inner{width:100%;max-width:1500px;min-height:170px;margin:0 auto;padding:24px clamp(24px,5vw,72px);display:grid;grid-template-columns:210px 1fr auto;gap:36px;align-items:center}.support-bom-cta-visual img{display:block;width:180px;max-height:120px;object-fit:contain}.support-bom-cta-copy h2{margin:0 0 8px;font-size:35px;line-height:1.2;font-weight:900;color:#fff}.support-bom-cta-copy p{margin:0;font-size:16px;color:rgba(221,238,255,.82)}.support-bom-cta-action a{min-width:270px;height:64px;padding:0 32px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:16px;background:#fff;color:#0a55cf;text-decoration:none;font-size:20px;font-weight:900;box-shadow:0 14px 34px rgba(0,40,100,.24)}
@media(max-width:1200px){.support-process-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.process-arrow{display:none}.support-advantages-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.support-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.support-tab{border-bottom:1px solid #e4ebf3}.support-process-grid,.support-advantages-grid,.support-value-grid,.support-help-grid,.support-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-bom-cta-inner{grid-template-columns:150px 1fr}.support-bom-cta-action{grid-column:1/-1}}@media(max-width:768px){.support-hero{height:390px}.support-hero-copy{left:20px;width:calc(100% - 40px);transform:translateY(-27%)}.support-hero h1{font-size:44px}.support-hero-en{font-size:16px}.support-hero-desc{font-size:16px;line-height:1.75}.support-tabs-section,.support-process-section,.support-advantages-section,.support-value-section,.support-help-section,.support-overview-section{padding-left:14px;padding-right:14px}.support-tabs,.support-process-grid,.support-advantages-grid,.support-value-grid,.support-help-grid,.support-overview-grid{grid-template-columns:1fr}.support-tab{min-height:60px}.support-tab.is-active::after{display:none}.support-section-heading h2{font-size:29px}.support-process-card,.support-advantage-card,.support-overview-card{min-height:auto}.support-value-card p{max-width:74%}.support-bom-cta-inner{grid-template-columns:1fr;text-align:center}.support-bom-cta-visual img{margin:0 auto}.support-bom-cta-copy h2{font-size:28px}.support-bom-cta-action a{width:100%;min-width:0}.support-overview-action a{width:100%;min-width:0}.support-hero-badge{font-size:12px;padding:0 12px}}

.contact-qr img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (max-width: 768px) {
  .contact-hero-inner {
    padding: 0 20px;
  }

  .contact-info-card,
  .contact-info-card-qr {
    grid-template-columns: 54px 1fr;
  }

  .contact-qr {
    grid-column: 2;
    margin-top: 8px;
  }
}
/* Contact page phase 3 */
.contact-location-section {
  width: 100%;
  padding: 66px 34px 32px;
  box-sizing: border-box;
  background: #eef4fb;
}

.contact-location-inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
}

.section-heading-center {
  text-align: center;
  margin-bottom: 34px;
}

.section-heading-center h2 {
  position: relative;
  margin: 0 0 12px;
  padding-bottom: 14px;
  font-size: 34px;
  line-height: 1.2;
  font-weight: 900;
  color: #082f5f;
}

.section-heading-center h2::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 54px;
  height: 3px;
  border-radius: 99px;
  transform: translateX(-50%);
  background: #116bff;
}

.section-heading-center p {
  margin: 0;
  font-size: 16px;
  line-height: 1.7;
  color: #5b7491;
}

.contact-location-panel {
  display: grid;
  grid-template-columns: 1.35fr 0.65fr;
  gap: 24px;
  align-items: stretch;
}

.contact-map {
  min-height: 360px;
  border-radius: 12px;
  overflow: hidden;
  background:
    linear-gradient(rgba(13, 107, 255, 0.10) 1px, transparent 1px),
    linear-gradient(90deg, rgba(13, 107, 255, 0.10) 1px, transparent 1px),
    linear-gradient(135deg, #dce9f6 0%, #f8fbff 100%);
  background-size: 42px 42px, 42px 42px, 100% 100%;
  border: 1px solid #d3e0ed;
  box-shadow: 0 12px 32px rgba(28, 74, 124, 0.08);
}

.contact-map-placeholder {
  height: 100%;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  color: #315878;
  text-align: center;
}

.map-pin {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: linear-gradient(180deg, #0d6bff 0%, #0456d9 100%);
  box-shadow: 0 12px 24px rgba(0, 92, 230, 0.22);
  position: relative;
}

.map-pin::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #ffffff;
  transform: translate(-50%, -50%);
}

.contact-map-placeholder strong {
  font-size: 22px;
  font-weight: 900;
  color: #0a3c78;
}

.contact-map-placeholder p {
  margin: 0;
  font-size: 15px;
  color: #5b7491;
}

.contact-location-card {
  padding: 32px 30px;
  border-radius: 12px;
  background: #ffffff;
  border: 1px solid #d9e5f1;
  box-shadow: 0 12px 32px rgba(28, 74, 124, 0.08);
}

.contact-location-card h3 {
  margin: 0 0 24px;
  font-size: 25px;
  line-height: 1.25;
  font-weight: 900;
  color: #082f5f;
}

.contact-location-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 18px;
}

.contact-location-card li {
  padding-bottom: 18px;
  border-bottom: 1px solid #e3edf6;
}

.contact-location-card li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.contact-location-card span {
  display: block;
  margin-bottom: 7px;
  font-size: 14px;
  font-weight: 800;
  color: #6a83a0;
}

.contact-location-card strong {
  display: block;
  font-size: 17px;
  line-height: 1.6;
  font-weight: 900;
  color: #0a55d8;
}

.contact-promise-section {
  width: 100%;
  padding: 34px 34px 52px;
  box-sizing: border-box;
  background: #eef4fb;
}

.contact-promise-inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
}

.promise-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.promise-card {
  min-height: 210px;
  padding: 34px 30px;
  box-sizing: border-box;
  border-radius: 12px;
  background: #ffffff;
  border: 1px solid #d9e5f1;
  text-align: center;
  box-shadow: 0 12px 32px rgba(28, 74, 124, 0.08);
}

.promise-icon {
  width: 68px;
  height: 68px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: linear-gradient(180deg, #0d6bff 0%, #06479f 100%);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
  line-height: 1;
  font-weight: 900;
  box-shadow: 0 12px 24px rgba(0, 92, 230, 0.22);
}

.promise-card h3 {
  margin: 0 0 12px;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 900;
  color: #082f5f;
}

.promise-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color: #5b7491;
}

.contact-bom-cta {
  width: 100%;
  padding: 0 34px 64px;
  box-sizing: border-box;
  background: #eef4fb;
}

.contact-bom-cta-inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding: 42px 52px;
  box-sizing: border-box;
  border-radius: 14px;
  background:
    radial-gradient(circle at 78% 50%, rgba(38, 180, 255, 0.22) 0%, rgba(38, 180, 255, 0) 42%),
    linear-gradient(90deg, #06182f 0%, #083875 55%, #0a5ed7 100%);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  overflow: hidden;
  box-shadow: 0 18px 42px rgba(6, 30, 68, 0.24);
}

.contact-bom-cta-text h2 {
  margin: 0 0 12px;
  font-size: 32px;
  line-height: 1.2;
  font-weight: 900;
  color: #ffffff;
}

.contact-bom-cta-text p {
  margin: 0;
  font-size: 16px;
  line-height: 1.7;
  color: rgba(225, 241, 255, 0.86);
}

.contact-bom-cta-actions {
  display: flex;
  gap: 14px;
  flex-shrink: 0;
}

.cta-primary,
.cta-secondary {
  min-width: 148px;
  height: 48px;
  padding: 0 24px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 15px;
  font-weight: 900;
  box-sizing: border-box;
}

.cta-primary {
  background: #ffffff;
  color: #075bd8;
}

.cta-secondary {
  border: 1px solid rgba(255, 255, 255, 0.55);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.08);
}

@media (max-width: 1024px) {
  .contact-location-panel {
    grid-template-columns: 1fr;
  }

  .promise-grid {
    grid-template-columns: 1fr;
  }

  .contact-bom-cta-inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .contact-bom-cta-actions {
    flex-wrap: wrap;
  }
}

@media (max-width: 768px) {
  .contact-location-section,
  .contact-promise-section,
  .contact-bom-cta {
    padding-left: 14px;
    padding-right: 14px;
  }

  .contact-location-section {
    padding-top: 42px;
  }

  .contact-map,
  .contact-map-placeholder {
    min-height: 260px;
  }

  .contact-location-card {
    padding: 26px 20px;
  }

  .contact-bom-cta-inner {
    padding: 32px 22px;
  }

  .contact-bom-cta-text h2 {
    font-size: 25px;
  }

  .contact-bom-cta-actions {
    width: 100%;
  }

  .cta-primary,
  .cta-secondary {
    width: 100%;
  }
}
/* Contact page phase 3 refinements */
.contact-page .section-heading-center {
  text-align: center;
}

.contact-page .section-heading-center h2::after {
  left: 50%;
  transform: translateX(-50%);
}

.contact-qr {
  background:
    linear-gradient(90deg, #5d7187 8px, transparent 8px) 8px 8px / 22px 22px,
    linear-gradient(#5d7187 8px, transparent 8px) 8px 8px / 22px 22px,
    radial-gradient(circle at 15px 15px, #5d7187 0 4px, transparent 5px),
    radial-gradient(circle at 51px 15px, #5d7187 0 4px, transparent 5px),
    radial-gradient(circle at 15px 51px, #5d7187 0 4px, transparent 5px),
    #ffffff;
}
/* Contact page phase 4 location map */
.contact-location-section {
  width: 100%;
  padding: 68px 34px 34px;
  box-sizing: border-box;
  background: #eef4fb;
}

.contact-location-inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
}

.contact-location-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.38fr) minmax(320px, 0.62fr);
  gap: 24px;
  align-items: stretch;
}

.contact-map {
  position: relative;
  min-height: 380px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #d3e0ed;
  background:
    radial-gradient(circle at 42% 48%, rgba(13, 107, 255, 0.18) 0%, rgba(13, 107, 255, 0) 28%),
    linear-gradient(rgba(13, 107, 255, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(13, 107, 255, 0.08) 1px, transparent 1px),
    linear-gradient(135deg, #dfeaf6 0%, #f8fbff 100%);
  background-size: 100% 100%, 44px 44px, 44px 44px, 100% 100%;
  box-shadow: 0 12px 32px rgba(28, 74, 124, 0.08);
}

.contact-map::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(32deg, transparent 0 18%, rgba(13, 107, 255, 0.28) 18.2%, transparent 18.8%),
    linear-gradient(138deg, transparent 0 34%, rgba(13, 107, 255, 0.22) 34.2%, transparent 34.8%),
    linear-gradient(8deg, transparent 0 62%, rgba(13, 107, 255, 0.18) 62.2%, transparent 62.8%);
  opacity: 0.9;
  pointer-events: none;
}

.contact-map::after {
  content: "";
  position: absolute;
  left: 42%;
  top: 48%;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(13, 107, 255, 0.22) 0%, rgba(13, 107, 255, 0.10) 36%, rgba(13, 107, 255, 0) 70%);
  pointer-events: none;
}

.contact-map-placeholder {
  position: relative;
  z-index: 2;
  height: 100%;
  min-height: 380px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  color: #315878;
  text-align: center;
}

.map-pin {
  position: relative;
  width: 58px;
  height: 58px;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  background: linear-gradient(180deg, #0d6bff 0%, #0456d9 100%);
  box-shadow: 0 12px 26px rgba(0, 92, 230, 0.24);
}

.map-pin::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #ffffff;
  transform: translate(-50%, -50%);
}

.contact-map-placeholder strong {
  margin-top: 8px;
  font-size: 23px;
  line-height: 1.2;
  font-weight: 900;
  color: #0a3c78;
}

.contact-map-placeholder p {
  margin: 0;
  font-size: 15px;
  color: #5b7491;
}

.contact-location-card {
  min-height: 380px;
  padding: 34px 32px;
  box-sizing: border-box;
  border-radius: 12px;
  background: #ffffff;
  border: 1px solid #d9e5f1;
  box-shadow: 0 12px 32px rgba(28, 74, 124, 0.08);
}

.contact-location-card h3 {
  margin: 0 0 26px;
  font-size: 26px;
  line-height: 1.25;
  font-weight: 900;
  color: #082f5f;
}

.location-info-list {
  display: grid;
  gap: 0;
}

.location-info-item {
  padding: 0 0 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #e3edf6;
}

.location-info-item:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

.location-info-item span {
  display: block;
  margin-bottom: 7px;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 800;
  color: #6a83a0;
}

.location-info-item strong {
  display: block;
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 1.45;
  font-weight: 900;
  color: #0a55d8;
}

.location-info-item p {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: #5b7491;
}

@media (max-width: 1024px) {
  .contact-location-panel {
    grid-template-columns: 1fr;
  }

  .contact-location-card {
    min-height: auto;
  }
}

@media (max-width: 768px) {
  .contact-location-section {
    padding: 46px 14px 28px;
  }

  .section-heading-center h2 {
    font-size: 28px;
  }

  .section-heading-center p {
    font-size: 14px;
  }

  .contact-map,
  .contact-map-placeholder {
    min-height: 280px;
  }

  .contact-location-card {
    padding: 28px 20px;
  }

  .contact-location-card h3 {
    font-size: 22px;
  }
}
