/* 06Contact.psd — 1920px artboard with a 1300px centered content area. */
.dy-contact-page {
  --dy-contact-cyan: #00bfff;
  --dy-contact-navy: #0e2f58;
  --dy-applications-cyan: #00bfff;
  color: #333;
  font-family: var(--font-body, Manrope, Arial, sans-serif);
}
.dy-contact-page,
.dy-contact-page *,
.dy-contact-page *::before,
.dy-contact-page *::after {
  box-sizing: border-box;
}
.dy-contact-page :where(h1, h2, h3, p, figure) {
  margin: 0;
}
.kernix-main:has(> .dy-contact-page) {
  display: flex;
  flex-direction: column;
}
.dy-contact-page {
  display: contents;
}
.dy-contact-hero {
  order: 1;
  background-color: #174d90;
  background-image: var(--dyc-bg-dongyu-contact-1, url("../images/contact/banner.webp"));
}
.dy-contact-details {
  order: 2;
  height: 820px;
  padding-top: 92px;
  background: #fff;
}
.dy-contact-shell {
  width: min(1300px, calc(100% - 64px));
  margin-inline: auto;
}
.dy-contact-details__heading {
  text-align: center;
}
.dy-contact-details__heading > p {
  color: var(--dy-contact-cyan);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
}
.dy-contact-details__heading > h2 {
  margin-top: 24px;
  color: #333;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.15;
}
.dy-contact-details__heading > span {
  display: block;
  margin-top: 13px;
  color: #333;
  font-size: 16px;
  line-height: 24px;
}
.dy-contact-cards {
  display: grid;
  margin-top: 33px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px;
}
.dy-contact-card {
  height: 282px;
  padding: 47px 24px 30px;
  background: #fbfbfb;
  text-align: center;
  transition:
    box-shadow 0.3s ease,
    background-color 0.3s ease;
}
.dy-contact-card:hover,
.dy-contact-card:focus-within {
  background: #fff;
  box-shadow: 0 8px 32px rgb(13 52 93 / 11%);
}
.dy-contact-card > img {
  display: block;
  width: auto;
  height: 46px;
  margin: 0 auto 26px;
  object-fit: contain;
}
.dy-contact-card:first-child > img {
  height: 42px;
  margin-bottom: 30px;
}
.dy-contact-card h3 {
  color: #4a6078;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.2;
}
.dy-contact-card :where(a, strong) {
  display: block;
  margin-top: 18px;
  color: #111;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
}
.dy-contact-card a:hover,
.dy-contact-card a:focus-visible {
  color: var(--dy-contact-cyan);
}
.dy-contact-social {
  margin-top: 83px;
  text-align: center;
}
.dy-contact-social > p {
  color: #333;
  font-size: 24px;
  line-height: 1.2;
}
.dy-contact-social > div {
  display: flex;
  margin-top: 19px;
  gap: 14px;
  align-items: center;
  justify-content: center;
}
.dy-contact-social a {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  color: var(--dy-contact-cyan);
  background: #f6f7f9;
  text-decoration: none;
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    transform 0.2s ease;
}
.dy-contact-social a:hover,
.dy-contact-social a:focus-visible {
  color: #fff;
  background: var(--dy-contact-cyan);
  transform: translateY(-2px);
}
.dy-contact-social svg {
  width: 21px;
  height: 21px;
  overflow: visible;
  fill: currentColor;
  stroke: none;
}
.dy-contact-social a:nth-child(2) svg,
.dy-contact-social a:nth-child(4) svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}
.dy-contact-social svg .is-fill {
  fill: currentColor;
  stroke: none;
}
.dy-contact-materials {
  order: 3;
}
.kernix-main:has(> .dy-contact-page) > .dy-inquiry {
  order: 4;
}
.dy-contact-map {
  order: 5;
  height: 555px;
  overflow: hidden;
  background: #6988b1;
}
.dy-contact-map img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 1000px) {
  .dy-contact-details {
    height: auto;
    padding: 80px 0 90px;
  }
  .dy-contact-cards {
    gap: 22px;
  }
  .dy-contact-card :where(a, strong) {
    font-size: 15px;
    overflow-wrap: anywhere;
  }
}
@media (max-width: 680px) {
  .dy-contact-hero {
    height: 310px;
  }
  .dy-contact-shell {
    width: calc(100% - 30px);
  }
  .dy-contact-details {
    padding: 66px 0 72px;
  }
  .dy-contact-details__heading > p {
    font-size: 12px;
  }
  .dy-contact-details__heading > h2 {
    margin-top: 18px;
    font-size: 31px;
    line-height: 1.18;
  }
  .dy-contact-details__heading > span {
    margin-top: 16px;
    font-size: 14px;
    line-height: 22px;
  }
  .dy-contact-details__heading > span br {
    display: none;
  }
  .dy-contact-cards {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-top: 38px;
  }
  .dy-contact-card {
    height: 238px;
    padding-top: 37px;
  }
  .dy-contact-social {
    margin-top: 55px;
  }
  .dy-contact-social > p {
    font-size: 20px;
  }
  .dy-contact-map {
    height: 360px;
  }
  .dy-contact-map img {
    object-position: 51% center;
  }
}
@media (prefers-reduced-motion: reduce) {
  .dy-contact-card,
  .dy-contact-social a {
    transition: none;
  }
}
