    @font-face {
      font-family: "AlibabaPuHuiTi 2.0";
      src: url("../fonts/AlibabaPuHuiTi-2/AlibabaPuHuiTi-2-45-Light.woff2") format("woff2");
      font-style: normal;
      font-weight: 300;
      font-display: swap;
    }
    @font-face {
      font-family: "AlibabaPuHuiTi 2.0";
      src: url("../fonts/AlibabaPuHuiTi-2/AlibabaPuHuiTi-2-55-Regular.woff2") format("woff2");
      font-style: normal;
      font-weight: 400;
      font-display: swap;
    }
    @font-face {
      font-family: "AlibabaPuHuiTi 2.0";
      src: url("../fonts/AlibabaPuHuiTi-2/AlibabaPuHuiTi-2-85-Bold.woff2") format("woff2");
      font-style: normal;
      font-weight: 700;
      font-display: swap;
    }
    @font-face {
      font-family: "AlibabaPuHuiTi 2.0";
      src: url("../fonts/AlibabaPuHuiTi-2/AlibabaPuHuiTi-2-105-Heavy.woff2") format("woff2");
      font-style: normal;
      font-weight: 900;
      font-display: swap;
    }

    :root {
      --blue: #172987;
      --blue-dark: #101d64;
      --ink: #111;
      --muted: #5d6472;
      --line: #e7e9ef;
      --soft: #f5f6f9;
      --wrap: 1200px;
      --font-main: "AlibabaPuHuiTi 2.0", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--ink);
      font-family: var(--font-main);
      font-weight: 300;
      background: #fff;
      line-height: 1.6;
    }
    a { color: inherit; text-decoration: none; }
    img { display: block; max-width: 100%; }
    ul { margin: 0; padding: 0; list-style: none; }
    .wrap { width: min(var(--wrap), calc(100% - 48px)); margin: 0 auto; }
    .section { padding: 30px 0; overflow: hidden; }
    #about {padding: 60px 0 30px;}
    .section-head { text-align: center; margin-bottom: 52px; }
    .section-head h2 { margin: 0 0 18px; font-size: 36px; font-weight: 900; line-height: 1.2; letter-spacing: 0; }
    .section-head p { margin: 0; color: #343b49; font-size: 16px; font-weight: 300; }
    .btn {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      min-height: 40px;
      padding: 0 20px;
      border: 1px solid currentColor;
      font-size: 13px;
      font-weight: 300;
      transition: color .25s ease, background .25s ease, transform .25s ease;
    }
    .btn::after { content: "›"; font-size: 22px; line-height: 1; }
    .btn:hover { transform: translateX(4px); background: var(--blue); color: #fff; }
    .about-text .btn {
      min-height: 24px;
      padding: 0;
      border: 0;
      color: #000;
      background: transparent;
    }
    .about-text .btn::after {
      content: "";
      width: 21px;
      height: 21px;
      background: url("../images/icon-arrow-more.png") center / contain no-repeat;
    }
    .about-text .btn:hover {
      color: #000;
      background: transparent;
      transform: translateX(3px);
    }

    .header-wrapper {
      position: relative;
      z-index: 60;
      background: var(--blue);
    }
    .header-pc {
      color: #fff;
      background: var(--blue);
      padding: 20px 0 24px;
    }
    .header-inner {
      width: min(1440px, calc(100% - 40px));
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0;
    }
    .header-logo {
      flex: 0 0 auto;
      height: 43px;
      margin-right: clamp(42px, 5.2vw, 120px);
    }
    .header-logo img {
      width: auto;
      height: 100%;
    }
    .nav-list { display: flex; align-items: center; height: 43px; }
    .nav-item { position: relative; height: 100%; }
    .nav-link {
      height: 100%;
      display: flex;
      align-items: center;
      padding: 0 13px;
      font-size: 16px;
      font-weight: 300;
      color: #fff;
      white-space: nowrap;
      transition: color .2s ease;
    }
    .nav-item:hover .nav-link,
    .nav-link.active { color: #ff9900; }
    .mega {
      position: absolute;
      left: 50%;
      top: 35px;
      background: #fff;
      box-shadow: none;
      opacity: 0;
      visibility: hidden;
      transform: translate(-50%, 8px);
      transition: opacity .24s ease, transform .24s ease, visibility .24s ease;
      z-index: 99;
    }
    .nav-item:hover .mega { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
    .mega-products { width: 480px; }
    .mega-small { width: 120px; padding: 20px 0; text-align: center; }
    .mega-grid { display: grid; grid-template-columns: repeat(3, 1fr); text-align: center; }
    .mega-grid > div { padding: 20px 0; }
    .mega h3 { margin: 0; color: #333; font-size: 14px; font-weight: 700; line-height: 2.5; }
    .mega a { display: block; padding: 10px; color: #333; font-size: 15px; font-weight: 300; line-height: 1.4; cursor: pointer; }
    .mega a:hover { background: #ff9900; color: #333; }
    .header-tools {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-left: 53px;
      color: #fff;
      font-size: 13px;
      white-space: nowrap;
    }
    .header-tools span {
      display: inline-flex;
      align-items: center;
    }
    .header-tools img {
      width: 11px;
      height: 11px;
      margin: 0 4px 0 8px;
      object-fit: contain;
    }
    .header-mobile { display: none; }
    .menu-btn {
      display: none;
      width: 34px;
      height: 30px;
      padding: 7px 0;
      border: 1px solid #cacaca;
      border-radius: 2px;
      background: #fff;
    }
    .menu-btn span {
      display: block;
      width: 14px;
      height: 2px;
      margin: 2px auto;
      border-radius: 2px;
      background: #000;
    }

    .hero {
      position: relative;
      height: clamp(360px, 42.708vw, 820px);
      background: #f2f2f2;
      overflow: hidden;
    }
    .hero-swiper,
    .hero-swiper .swiper-wrapper,
    .hero-swiper .swiper-slide {
      width: 100%;
      height: 100%;
    }
    .hero-slide {
      position: relative;
      overflow: hidden;
      background: #f2f2f2;
    }
    .hero-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center top;
      transform: scale(1.04);
      transition: transform 5.5s ease;
    }
    .hero-swiper .swiper-slide-active img { transform: scale(1); }
    .hero-swiper .swiper-pagination {
      bottom: 28px;
    }
    .hero-swiper .swiper-pagination-bullet {
      width: 34px;
      height: 3px;
      border-radius: 0;
      background: rgba(255,255,255,.7);
      opacity: 1;
    }
    .hero-swiper .swiper-pagination-bullet-active {
      background: #fff;
    }
    .hero-swiper .swiper-button-prev,
    .hero-swiper .swiper-button-next {
      width: 46px;
      height: 46px;
      color: #fff;
      background: rgba(0,0,0,.18);
      transition: background .2s ease, transform .2s ease;
    }
    .hero-swiper .swiper-button-prev::after,
    .hero-swiper .swiper-button-next::after {
      font-size: 18px;
    }
    .hero-swiper .swiper-button-prev:hover,
    .hero-swiper .swiper-button-next:hover {
      background: rgba(23,41,135,.82);
      transform: translateY(-2px);
    }

    #about .wrap { width: min(1560px, calc(100% - 96px)); }
    .about-grid { display: grid; grid-template-columns: minmax(0, 709px) minmax(0, 757px); gap: 86px; align-items: center; }
    .about-grid[data-about-panel] { display: none; }
    .about-grid[data-about-panel].active { display: grid; }
    .about-text p { margin: 0 0 18px; color: #4d5564; font-size: 16px; font-weight: 300; line-height: 1.65; }
    .about-nav {
      margin-top: 68px;
      background: #f2f2f2;
    }
    .about-nav-list {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      width: min(1560px, calc(100% - 96px));
      margin: 0 auto;
      min-height: 109px;
      border-left: 1px solid #fff;
      border-right: 1px solid #fff;
    }
    .about-nav-list button {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      width: 100%;
      min-height: 109px;
      border: 0;
      border-right: 1px solid #fff;
      background: transparent;
      color: #262b35;
      font-family: inherit;
      font-size: 14px;
      cursor: pointer;
      transition: color .2s ease, background .2s ease;
    }
    .about-nav-list button:last-child { border-right: 0; }
    .about-nav-list button::before {
      content: "";
      width: 27px;
      height: 27px;
      flex: 0 0 27px;
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
    }
    .about-nav-list button:nth-child(1)::before { background-image: url("../images/icon_01.png"); }
    .about-nav-list button:nth-child(2)::before { background-image: url("../images/icon_02.png"); }
    .about-nav-list button:nth-child(3)::before { background-image: url("../images/icon_03.png"); }
    .about-nav-list button:nth-child(4)::before { background-image: url("../images/icon_04.png"); }
    .about-nav-list button.active:nth-child(1)::before { background-image: url("../images/icon_active_01.png"); }
    .about-nav-list button.active:nth-child(2)::before { background-image: url("../images/icon_active_02.png"); }
    .about-nav-list button.active:nth-child(3)::before { background-image: url("../images/icon_active_03.png"); }
    .about-nav-list button.active:nth-child(4)::before { background-image: url("../images/icon_active_04.png"); }
    .about-nav-list button.active,
    .about-nav-list button:hover {
      background: var(--blue);
      color: #fff;
    }
    .sprite-box {
      background-repeat: no-repeat;
      background-size: cover;
      box-shadow: 0 24px 60px rgba(16,29,100,.12);
    }
    .about-img {
      aspect-ratio: 1.95;
      background-image: url("../images/about-service.jpg");
      background-position: center;
    }

    .products { background: #fff; }
    .products .wrap { width: min(1560px, calc(100% - 96px)); }
    .products .section-head { margin-bottom: 64px; }
    .product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
    .product-card {
      position: relative;
      aspect-ratio: 368 / 276;
      min-height: 0;
      padding: 0 26px 28px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      background-color: #f2f2f2;
      overflow: hidden;
      transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
    }
    .product-card::before {
      content: "";
      position: absolute;
      inset: 0;
      background-image: var(--img);
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      z-index: 0;
      pointer-events: none;
    }
    .product-card:hover { transform: translateY(-6px); box-shadow: 0 18px 38px rgba(16,29,100,.12); filter: saturate(1.04); }
    .product-card h3,
    .product-card p {
      position: relative;
      z-index: 1;
    }
    .product-card h3 { margin: 0 0 5px; font-size: 24px; line-height: 1.15; font-weight: 900; color: #000; }
    .product-card p { margin: 0; color: #222; font-size: 15px; font-weight: 300; line-height: 1.2; }
    .product-card .arrow {
      position: absolute;
      top: 24px;
      left: 24px;
      width: 24px;
      height: 24px;
      display: block;
      overflow: hidden;
      text-indent: -999px;
      background: url("../images/icon-arrow-yellow.png") center / contain no-repeat;
      z-index: 1;
    }
    .more-line { margin-top: 34px; text-align: center; }
    .more-line a { color: var(--blue); font-weight: 500; }

    .certs { background: #fff; }
    .cert-swiper {
      position: relative;
      width: 100%;
      margin: 0 auto;
      padding: 0;
      overflow: hidden;
    }
    .cert-swiper .swiper-wrapper {
      align-items: stretch;
    }
    .cert-swiper .swiper-slide {
      width: clamp(258px, 16.5vw, 340px);
      height: auto;
    }
    .cert-card {
      display: block;
      height: clamp(354px, 22.7vw, 467px);
      background: #fff;
      overflow: hidden;
    }
    .cert-card img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .cert-swiper .swiper-button-prev,
    .cert-swiper .swiper-button-next {
      width: 42px;
      height: 42px;
      color: #fff;
      background: rgba(23,41,135,.86);
      opacity: 0;
      transition: opacity .2s ease, background .2s ease;
    }
    .cert-swiper:hover .swiper-button-prev,
    .cert-swiper:hover .swiper-button-next {
      opacity: 1;
    }
    .cert-swiper .swiper-button-prev::after,
    .cert-swiper .swiper-button-next::after {
      font-size: 16px;
    }
    .cert-swiper .swiper-button-prev:hover,
    .cert-swiper .swiper-button-next:hover {
      background: var(--blue);
    }

    .solution-stage {
      position: relative;
      width: 100vw;
      min-height: clamp(360px, 31.25vw, 600px);
      margin-left: calc(50% - 50vw);
      color: #fff;
      background: #0a153f;
      overflow: hidden;
    }
    .solution-slide {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      transform: scale(1.02);
      transition: transform .7s ease;
    }
    .solution-stage:hover .solution-slide { transform: scale(1.08); }
    .solution-copy {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 50vw;
      min-height: 185px;
      padding: 36px max(44px, calc((100vw - 1560px) / 2 + 42px));
      background: rgba(23,41,135,.9);
      color: #fff;
    }
    .solution-copy::after {
      content: "";
      position: absolute;
      top: 34px;
      right: 44px;
      width: 30px;
      height: 30px;
      background: url("../images/icon-arrow-solution.png") center / contain no-repeat;
    }
    .solution-copy:hover::after { transform: translateX(3px); }
    .solution-copy h3 { margin: 0 48px 12px 0; font-size: 24px; font-weight: 700; }
    .solution-copy p { margin: 0; color: rgba(255,255,255,.9); font-weight: 300; }
    .solution-nav {
      position: absolute;
      right: max(54px, calc((100vw - 1560px) / 2 + 54px));
      bottom: 28px;
      display: flex;
      gap: 14px;
    }
    .solution-nav button {
      width: 12px;
      height: 12px;
      padding: 0;
      border: 1px solid #fff;
      border-radius: 50%;
      background: #fff;
      opacity: .75;
      cursor: pointer;
    }
    .solution-nav button.active { background: var(--blue); border-color: var(--blue); opacity: 1; }

    .news { background: #fff; }
    .news .wrap { width: min(1560px, calc(100% - 96px)); }
    .news-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 47px; }
    .news-column-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding-bottom: 22px;
      border-bottom: 1px solid #151515;
    }
    .news-column-head h3 { margin: 0; font-size: 24px; font-weight: 300; line-height: 1; }
    .news-column-head a { font-size: 16px; font-weight: 300; line-height: 1; }
    .news-item {
      display: grid;
      grid-template-columns: 290px 1fr;
      gap: 24px;
      min-height: 228px;
      padding: 28px 0;
      border-bottom: 1px solid var(--line);
      transition: transform .25s ease;
    }
    .news-item:hover { transform: translateX(6px); }
    .news-thumb {
      display: block;
      width: 100%;
      height: 201px;
      min-height: 201px;
      object-fit: cover;
      background: #e8edf3 url("../images/news-thumb.jpg") center / cover no-repeat;
    }
    .news-item h4 { margin: 4px 0 18px; font-size: 17px; line-height: 1.25; font-weight: 400; }
    .news-item p { margin: 0; color: #4a4a4a; font-size: 15px; font-weight: 300; line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

    .footer {
      color: #fff;
      background: var(--blue);
      /*min-height: 720px;*/
      padding: 72px 0 58px;
    }
    .footer .wrap {
      position: relative;
      width: min(1560px, calc(100% - 96px));
    }
    .footer-logo {
      margin-bottom: 56px;
    }
    .footer-top {
      display: grid;
      grid-template-columns: 140px 190px 190px 190px 190px;
      width: 900px;
      gap: 0;
    }
    .footer-logo img { width: 300px; height: auto; }
    .footer-logo span { display: none; }
    .footer-lang {
      position: absolute;
      top: 24px;
      right: 0;
      display: flex;
      align-items: center;
      gap: 12px;
      color: #fff;
      font-size: 16px;
      line-height: 1;
    }
    .footer-lang a {
      display: block;
      margin: 0;
    }
    .footer-lang img {
      width: 96px;
      height: auto;
      object-fit: contain;
    }
    .footer-col {
      min-height: 252px;
      padding: 0 0 0 42px;
      border-left: 1px solid rgba(255,255,255,.32);
    }
    .footer-col:first-child { padding-left: 0; border-left: 0; }
    .footer h4 { margin: 0 0 20px; font-size: 15px; font-weight: 400; line-height: 1; }
    .footer h4 a {
      display: inline;
      margin: 0;
      color: #fff;
      font-size: inherit;
      font-weight: inherit;
      line-height: inherit;
    }
    .footer a,
    .footer p { display: block; margin: 0 0 9px; color: rgba(255,255,255,.82); font-size: 13px; font-weight: 300; line-height: 1.25; }
    .footer-contact {
      position: absolute;
      right: 0;
      top: 100px;
      width: 320px;
      text-align: right;
    }
    .footer-contact h4 {
      margin-bottom: 14px;
    }
    .footer-phone { font-size: 32px; font-weight: 700; line-height: 1; }
    .footer-contact p { margin-top: 9px; }
    .qr-title {
      margin: 54px 0 14px !important;
      color: #fff !important;
      font-weight: 400;
      text-align: right;
    }
    .qr {
      width: 190px;
      height: 186px;
      margin: 0 0 0 auto;
      object-fit: cover;
      background: #fff;
    }
    .copyright {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 24px;
      margin-top: 62px;
      color: rgba(255,255,255,.86);
      font-size: 12px;
    }
    .footer-social {
      display: flex;
      gap: 28px;
      flex-wrap: wrap;
    }
    .footer-social a,
    .footer-social span {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      margin: 0;
      color: #fff;
      font-size: 12px;
      font-weight: 300;
    }
    .footer-social img {
      width: 24px;
      height: 24px;
      object-fit: contain;
    }
    .footer-address {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      margin-left: 180px;
      white-space: nowrap;
    }
    .footer-address img {
      width: 16px;
      height: 16px;
      object-fit: contain;
    }
    .footer-bottom {
      margin-top: 28px;
      padding-top: 18px;
      border-top: 1px solid rgba(255,255,255,.18);
      color: rgba(255,255,255,.72);
      font-size: 11px;
      line-height: 1.7;
    }
    .footer-bottom p {
      margin: 0;
    }
    .footer-links {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 2px 16px;
    }
    .footer-links span {
      color: rgba(255,255,255,.86);
    }
    .footer-links a,
    .footer-record a {
      display: inline;
      margin: 0;
      color: rgba(255,255,255,.72);
      font-size: inherit;
      line-height: inherit;
    }
    .footer-links a:hover,
    .footer-record a:hover {
      color: #fff;
    }
    .footer-record {
      margin-top: 8px !important;
    }

    .reveal { opacity: 0; transform: translateY(34px); transition: opacity .7s ease, transform .7s ease; }
    .reveal.in { opacity: 1; transform: translateY(0); }
    .delay-1 { transition-delay: .08s; }
    .delay-2 { transition-delay: .16s; }
    .delay-3 { transition-delay: .24s; }
    @keyframes heroZoom {
      from { transform: scale(1.12); }
      to { transform: scale(1.04); }
    }

    @media (max-width: 1280px) {
      .header-logo { margin-right: 42px; }
      .header-tools { display: none; }
    }

    @media (max-width: 980px) {
      .wrap { width: min(100% - 32px, var(--wrap)); }
      .header-pc { display: none; }
      .header-mobile {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 15px 20px;
        background: #fff;
      }
      .header-mobile-logo {
        width: 32.5%;
        height: 40px;
      }
      .header-mobile-logo img {
        width: 100%;
        height: 100%;
        object-fit: scale-down;
      }
      .menu-btn {
        display: block;
      }
      .mobile-nav {
        display: none;
        width: 100%;
        height: auto;
        background: #fff;
        padding-top: 12px;
      }
      .header-wrapper.open .mobile-nav { display: block; }
      .mobile-nav .nav-item { height: auto; border-top: 1px solid var(--line); }
      .mobile-nav .nav-link {
        height: 44px;
        padding: 0 10px;
        color: #1b2230;
      }
      .mobile-nav .nav-link.active {
        background: var(--blue);
        color: #fff;
      }
      .mega { display: none; }
      .hero { height: clamp(300px, 42.708vw, 620px); }
      .about-grid, .news-grid { grid-template-columns: 1fr; }
      #about .wrap { width: min(100% - 32px, var(--wrap)); }
      .about-nav-list { width: min(100% - 32px, var(--wrap)); }
      .products .wrap { width: min(100% - 32px, var(--wrap)); }
      .news .wrap { width: min(100% - 32px, var(--wrap)); }
      .products .section-head { margin-bottom: 38px; }
      .product-grid { grid-template-columns: repeat(2, 1fr); }
      .cert-swiper .swiper-slide { width: 230px; }
      .cert-card { height: 315px; }
      .footer {
        min-height: 0;
        padding: 56px 0 44px;
      }
      .footer .wrap { width: min(100% - 32px, var(--wrap)); }
      .footer-logo { margin-bottom: 34px; }
      .footer-logo img { width: 188px; }
      .footer-lang {
        position: static;
        flex-wrap: wrap;
        margin-bottom: 34px;
        font-size: 20px;
        row-gap: 12px;
      }
      .footer-lang img {
        width: 106px;
        height: 28px;
      }
      .footer-top {
        width: 100%;
        grid-template-columns: repeat(2, 1fr);
        gap: 28px 22px;
      }
      .footer-col {
        min-height: auto;
        padding: 0 28px 0 0;
        border-left: 0;
      }
      .footer h4 { font-size: 15px; }
      .footer a,
      .footer p { font-size: 13px; }
      .footer-contact {
        position: static;
        width: auto;
        margin-top: 42px;
        text-align: left;
      }
      .footer-phone { font-size: 28px; }
      .qr-title {
        margin: 10px 0 14px !important;
        text-align: left;
      }
      .qr {
        width: 126px;
        height: 124px;
        margin: 24px 0 0;
      }
      .copyright {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px;
        margin-top: 42px;
      }
      .footer-social { gap: 18px 28px; }
      .footer-address {
        margin-left: 0;
        white-space: normal;
      }
    }

    @media (max-width: 640px) {
      .section { padding: 58px 0; }
      .section-head h2 { font-size: 26px; }
      .hero { height: 280px; }
      .hero-swiper .swiper-button-prev,
      .hero-swiper .swiper-button-next { display: none; }
      .about-nav-list {
        width: 100%;
        min-height: 0;
        grid-template-columns: repeat(2, 1fr);
      }
      .about-nav-list button {
        min-height: 58px;
      }
      .about-nav-list button:nth-child(2) { border-right: 0; }
      .product-grid { grid-template-columns: 1fr; }
      .product-card {
        padding: 0 22px 24px;
      }
      .product-card h3 { font-size: 22px; }
      .cert-swiper .swiper-slide { width: 210px; }
      .cert-card { height: 288px; }
      .cert-swiper .swiper-button-prev,
      .cert-swiper .swiper-button-next { display: none; }
      .solution-copy {
        width: min(100%, 560px);
        min-height: 150px;
        padding: 26px 24px;
      }
      .solution-copy::after {
        top: 26px;
        right: 24px;
      }
      .solution-nav { right: 24px; bottom: 18px; }
      .news-column-head {
        padding-bottom: 14px;
      }
      .news-column-head h3 {
        font-size: 20px;
      }
      .news-column-head a {
        font-size: 13px;
      }
      .news-item {
        grid-template-columns: 1fr;
        min-height: 0;
        padding: 22px 0;
      }
      .news-thumb {
        height: 180px;
        min-height: 180px;
      }
      .news-item h4 {
        margin: 0 0 10px;
        font-size: 16px;
        line-height: 1.35;
      }
      .news-item p {
        font-size: 13px;
        line-height: 1.55;
      }
      .footer { padding: 42px 0 32px; }
      .footer .wrap { width: min(100% - 28px, var(--wrap)); }
      .footer-logo {
        display: flex;
        justify-content: center;
        margin-bottom: 26px;
      }
      .footer-logo img { width: min(188px, 62vw); }
      .footer-lang {
        justify-content: center;
        gap: 10px;
        margin-bottom: 30px;
        text-align: center;
        font-size: 16px;
      }
      .footer-lang span {
        width: 100%;
        margin-bottom: 2px;
      }
      .footer-lang img {
        width: 96px;
        height: auto;
      }
      .footer-top {
        grid-template-columns: 1fr;
        gap: 0;
        border-top: 1px solid rgba(255,255,255,.22);
      }
      .footer-col {
        min-height: auto;
        padding: 18px 0;
        border-left: 0;
        border-bottom: 1px solid rgba(255,255,255,.18);
      }
      .footer h4 {
        margin-bottom: 12px;
        font-size: 15px;
      }
      .footer a,
      .footer p {
        font-size: 13px;
        line-height: 1.7;
      }
      .footer-contact {
        margin-top: 30px;
        text-align: center;
      }
      .footer-phone {
        font-size: clamp(24px, 7vw, 32px);
      }
      .qr-title {
        margin: 10px 0 14px !important;
        text-align: center;
      }
      .qr {
        width: 156px;
        height: 153px;
        margin: 0 auto;
      }
      .copyright {
        align-items: center;
        gap: 16px;
        margin-top: 34px;
        text-align: center;
      }
      .footer-social {
        justify-content: center;
        gap: 12px 18px;
      }
      .footer-social a,
      .footer-social span {
        font-size: 12px;
      }
      .footer-social img {
        width: 24px;
        height: 24px;
      }
      .footer-address {
        justify-content: center;
        max-width: 100%;
        font-size: 12px;
        line-height: 1.6;
      }
      .footer-address img {
        flex: 0 0 auto;
      }
    }
