@media screen and (max-width: 768px) {
  html {
    font-size: 16px !important;
  }
  body {
    font-size: 1rem;
  }
  .content,
  .header_content,
  .content_big {
    padding: 0 20px;
  }
  .swiper_content {
    padding: 10px 20px;
  }
  .only_mobile {
    display: block;
  }
  body.fixed {
    padding-right: 0;
  }
  .gap {
    gap: 1rem;
  }
  .btn,
  .btn_line,
  .btn_line_i {
    font-size: 14px;
    line-height: 1.5;
    padding: 10px 20px;
    gap: 8px;
  }
  .btn::after,
  .btn_line::after,
  .btn_line_i::after {
    width: 12px;
    height: 12px;
  }
  .btn_single {
    width: 2.5rem;
    height: 2.5rem;
  }
  .btn_circle {
    width: 2rem;
    height: 2rem;
  }
  .swiper_btns {
    gap: 1rem;
  }
  .swiper_btns div {
    width: 2.5rem;
    height: 2.5rem;
  }
  .swiper_btns div::after {
    width: 12px;
    height: 12px;
  }
  .head.sm h2 {
    font-size: 22px;
    line-height: 1.5;
  }
  .head .subtitle,
  .head strong {
    letter-spacing: unset;
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 8px;
  }
  .head h1 {
    font-size: 25px;
    line-height: 1.5;
  }
  .head h2 {
    font-size: 22px;
    line-height: 1.5;
  }
  .head .desc,
  .head p {
    font-size: 0.9rem;
    line-height: 1.5rem;
    margin-top: 10px;
  }
  .head .btn,
  .head .btn_line {
    font-size: 14px;
    margin-top: 20px;
    padding: 10px 20px;
  }
  .video_pop .pop_content {
    height: auto;
    width: 90vw;
  }
  header.sticky {
    top: 0;
  }
  header .header_top {
    display: none;
  }
  header .logo img {
    height: 40px;
  }
  header .btns {
    gap: 26px;
    min-height: 4rem;
  }
  header .btn {
    display: none;
  }
  footer .footer_main {
    padding: 3rem 0 4rem;
  }
  footer .footer_main .flex {
    display: block;
  }
  footer .slide_intro {
    margin: 0;
    width: 100%;
    display: grid;
  }
  footer .slide_intro .logo {
    max-width: 180px;
    margin: 0 auto;
  }
  footer .slide_intro p {
    font-size: 0.9rem;
    line-height: 1.5rem;
    text-align: center;
    margin: 20px 0 0;
  }
  footer .slide_intro .social {
    margin-top: 2rem;
    gap: 1rem;
    justify-content: space-around;
  }
  footer .slide_intro .social a {
    width: 25px;
  }
  footer .slide_intro div {
    order: 2;
    margin: 3rem 0 1rem;
  }
  footer .slide_intro .menu {
    margin: 0;
  }
  footer .slide_intro .menu a {
    font-size: 1rem;
    padding: 3px 22px;
    min-height: 3rem;
    border-radius: 0;
    max-width: unset;
  }
  footer .slide_intro .menu a::after {
    width: 12px;
  }
  footer .slide_obj:not(.slide_connect) {
    width: 100%;
  }
  footer .slide_obj:not(.slide_connect) strong {
    font-size: 1rem;
    line-height: 46px;
    border: 1px solid rgba(22, 22, 22, 0.35);
    padding: 0 22px;
    position: relative;
    margin-bottom: 1rem;
  }
  footer .slide_obj:not(.slide_connect) strong::after {
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    background: url(../img/icon-select.svg) no-repeat center / contain;
    position: absolute;
    right: 22px;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s;
  }
  footer .slide_obj:not(.slide_connect).active strong::after {
    transform: translateY(-50%) rotate(180deg);
  }
  footer .slide_obj:not(.slide_connect) > div {
    display: none;
    padding: 0 1.2rem 1.2rem;
  }
  footer .slide_obj:not(.slide_connect) > div li {
    margin-bottom: 14px;
  }
  footer .slide_obj:not(.slide_connect) > div a {
    font-size: 14px;
    display: block;
    font-weight: normal;
  }
  footer .slide_obj:not(.slide_connect) > div p {
    font-size: 0.9rem;
    line-height: 1.5rem;
  }
  footer .slide_connect {
    margin: 0;
    width: 100%;
    padding-top: 20px;
  }
  footer .slide_connect strong {
    font-size: 18px;
    margin-bottom: 20px;
  }
  footer .slide_connect li {
    padding-left: 2rem;
    margin-bottom: 20px;
  }
  footer .slide_connect li::before {
    width: 20px;
    height: 20px;
  }
  footer .slide_connect li a {
    font-size: 1rem;
  }
  footer .slide_connect li .label {
    font-size: 14px;
    margin-top: 6px;
  }
  footer .copyright {
    padding: 20px 0;
  }
  footer .copyright .flex {
    gap: 2rem;
    flex-direction: column-reverse;
  }
  footer .copyright ul {
    gap: 1rem;
  }
  footer .copyright p {
    font-size: 13px;
  }
  footer .copyright a {
    font-size: 14px;
  }
  .footer_contact .inner {
    width: 100%;
    border-radius: 0;
  }
  .footer_contact .flex {
    min-height: unset;
    padding: 3rem 0;
  }
  .footer_contact .head {
    max-width: unset;
  }
  .product_item a {
    border-radius: 12px;
  }
  .product_item a::before {
    border-radius: 12px;
  }
  .product_item .info {
    padding: 1rem 20px 3.5rem;
  }
  .product_item h3 {
    font-size: 18px;
    line-height: 1.5;
  }
  .product_item strong {
    font-size: 16px;
    padding-bottom: 10px;
    margin-top: 10px;
  }
  .product_item p, .product_item li{
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  
  .product_item i {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 12px 0 12px 0;
  }
  .page_about {
    position: relative;
    padding-bottom: 0;
  }
  .page_about::before {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--subtheme_color);
    opacity: 0.3;
    content: '';
    pointer-events: none;
  }
  .page_about .flex {
    min-height: unset;
    padding: 4rem 0;
  }
  .page_about .head {
    max-width: unset;
    padding: 0;
  }
  .solution_list > div {
    display: grid;
    gap: 1rem;
  }
  .solution_list .item {
    min-height: unset;
    border-radius: 12px;
  }
  .solution_list .item .img {
    width: 100%;
  }
  .solution_list .item .img::after {
    opacity: 1;
  }
  .solution_list .item .info {
    width: 100%;
    padding: 2rem 20px;
  }
  .solution_list .item .info strong {
    font-size: 22px;
    line-height: 1.5;
  }
  .solution_list .item .info p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
    opacity: 1;
  }
  .solution_list .item .info .btn_single {
    margin-top: 2rem;
  }
  .solution_list .item.active .info {
    width: 100%;
  }
  .solution_list .item.active .img {
    width: 100%;
  }
  .solution_list .item.active .img::after {
    opacity: 1;
  }
  .page_solution {
    padding: 4rem 0 3rem;
  }
  .page_solution .inner {
    border-radius: 12px;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .page_solution .nums {
    margin-top: 2rem;
  }
  .page_solution .nums ul {
    grid-template-columns: 1fr;
    gap: 2rem 1rem;
  }
  .page_solution .nums li {
    align-items: unset;
  }
  .page_solution .nums i {
    width: 3rem;
    min-width: 3rem;
    height: 3rem;
    margin-right: 10px;
  }
  .page_solution .nums span {
    font-size: 2rem;
  }
  .page_solution .nums .label {
    font-size: 0.9rem;
    margin-top: 10px;
    text-align: left;
  }
  .page_advantage {
    overflow: hidden;
    padding: 3rem 0;
  }
  .page_advantage .flex {
    display: block;
  }
  .page_advantage h2 {
    max-width: unset;
  }
  .page_advantage .page_advantage_swiper {
    overflow: unset;
    margin-top: 2rem;
  }
  .page_advantage .page_advantage_swiper .img {
    border-radius: 12px;
    height: 100%;
    transform: translateY(0);
    top: 0;
  }
  .page_advantage .page_advantage_swiper .img img {
    opacity: 1;
  }
  .page_advantage .page_advantage_swiper .img::before {
    opacity: 1;
  }
  .page_advantage .page_advantage_swiper .img::after {
    opacity: 0;
  }
  .page_advantage .page_advantage_swiper .info {
    padding: 2rem 20px;
  }
  .page_advantage .page_advantage_swiper .icon {
    width: 60px;
    height: 60px;
    transform: translateY(0);
    background-color: #fff;
  }
  .page_advantage .page_advantage_swiper .icon i {
    filter: unset;
  }
  .page_advantage .page_advantage_swiper .intro {
    margin-top: 1rem;
    transform: translateY(0);
  }
  .page_advantage .page_advantage_swiper h3 {
    font-size: 18px;
    color: #fff;
    line-height: 1.5;
  }
  .page_advantage .page_advantage_swiper p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
    opacity: 1;
  }
  .page_advantage .page_advantage_swiper .link {
    width: 14px;
    height: 14px;
    margin-top: 2rem;
    transform: translateY(0);
    filter: contrast(0) brightness(2);
  }
  .page_banner {
    position: relative;
  }
  .page_banner::before {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--subtheme_color);
    content: '';
    opacity: 0.5;
    pointer-events: none;
  }
  .page_banner .flex {
    min-height: unset;
    padding: 3rem 0 4rem;
  }
  .page_banner .head {
    max-width: unset;
    padding: 0;
  }
  .page_banner form {
    margin-top: 20px;
    border-radius: 8px;
    max-width: 350px;
  }
  .page_banner form input[type=text] {
    font-size: 14px;
    padding: 10px 20px;
  }
  .page_banner form input[type=submit] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 8px;
  }
  .blog_item .img {
    border-radius: 12px;
  }
  .blog_item .cat {
    font-size: 14px;
    line-height: 2;
    padding: 0 12px;
    left: 20px;
    top: 20px;
  }
  .blog_item .info {
    margin-top: 1rem;
  }
  .blog_item .date {
    font-size: 14px;
  }
  .blog_item h3 {
    font-size: 18px;
    line-height: 1.5;
    margin-top: 5px;
  }
  .blog_item .link {
    font-size: 14px;
    margin-top: 20px;
    transform: translateX(0);
    gap: 12px;
  }
  .blog_item .link .btn_circle {
    width: 2rem;
    height: 2rem;
  }
  .breadcrumbs {
    line-height: 20px;
    min-height: 20px;
  }
  .breadcrumbs span {
    font-size: 14px;
  }
  .breadcrumbs span span::before {
    width: 8px;
    height: 8px;
    margin: 0 5px;
  }
  .home_banner .flex {
    min-height: unset;
    padding: 3rem 0 7rem;
    flex-direction: column-reverse;
  }
  .home_banner .head {
    text-align: center;
    padding: 0;
  }
  .home_banner .title {
    font-size: 25px;
    line-height: 1.5;
  }
  .home_banner .img {
    width: 100%;
    margin: 0;
  }
  .home_banner .swiper_con {
    bottom: 2rem;
    padding: 0 20px;
  }
  .home_banner .swiper_con .swiper_prev,
  .home_banner .swiper_con .swiper_next {
    width: 25px;
    height: 25px;
  }
  .home_banner .swiper_con .pagination {
    gap: 12px;
    font-size: 14px;
  }
  .home_banner .swiper_con .pagination div.swiper-pagination {
    width: 52px;
  }
  .home_products {
    padding: 4rem 0;
  }
  .home_products .flex {
    display: block;
  }
  .home_products .head {
    padding: 0;
    max-width: unset;
  }
  .home_products .products_swiper {
    margin-top: 2rem;
  }
  .home_products .swiper_btns {
    margin-top: 1rem;
    justify-content: flex-end;
  }
  .home_blog {
    padding: 3rem 0 4rem;
  }
  .home_blog .flex {
    gap: 0;
  }
  .home_blog .head {
    padding: 0;
  }
  .home_blog .nav_list {
    flex-wrap: nowrap;
    gap: 1.2rem;
    width: calc(100% + 40px);
    margin: 1.5rem -20px 0;
    padding: 0 20px;
    overflow-x: auto;
  }
  .home_blog .nav_list::-webkit-scrollbar {
    display: none;
  }
  .home_blog .nav_list a {
    font-size: 14px;
    line-height: 1.5;
    padding: 11px 2rem;
    white-space: nowrap;
  }
  .home_blog .main {
    margin-top: 2rem;
    gap: 1rem;
  }
  .home_blog .left {
    width: 100%;
  }
  .home_blog .home_blog_swiper {
    border-radius: 12px;
  }
  .home_blog .list {
    max-width: unset;
    padding: 0;
  }
  .home_blog .item a {
    gap: 1rem;
    padding: 1rem 0;
  }
  .home_blog .item .metas {
    font-size: 14px;
  }
  .home_blog .item h3 {
    font-size: 18px;
    margin-top: 6px;
  }
  .home_blog .item .btn_single {
    transform: translateY(0);
  }
  .home_blog p.right:has(.btn_line) {
    margin-top: 2rem;
  }
  .about_intro {
    padding: 3rem 0;
  }
  .about_intro .head {
    max-width: unset;
    padding: 0;
  }
  .about_intro .img {
    width: 100%;
    margin: 0 auto;
  }
  .about_history {
    padding: 3rem 0;
    overflow: hidden;
  }
  .about_history .about_history_swiper {
    margin-top: 2rem;
    border-radius: 0;
    overflow: unset;
  }
  .about_history .about_history_swiper .info {
    padding: 1.2rem 20px 2rem;
  }
  .about_history .about_history_swiper h3 {
    font-size: 18px;
    margin-top: 20px;
  }
  .about_history .about_history_swiper strong {
    font-size: 20px;
  }
  .about_history .about_history_swiper p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .about_history .about_history_time_swiper {
    width: calc(100% + 40px);
    margin: 2rem -20px 0;
    padding: 0 20px;
    overflow: unset;
  }
  .about_history .about_history_time_swiper::before {
    top: 4px;
  }
  .about_history .about_history_time_swiper i {
    width: 10px;
    height: 10px;
  }
  .about_history .about_history_time_swiper .date {
    font-size: 16px;
    margin-top: 10px;
  }
  .about_argument {
    padding: 3rem 0;
  }
  .about_argument .items {
    margin-top: 2rem;
  }
  .about_argument .items > div {
    display: grid;
    gap: 1rem;
  }
  .about_argument .items .item {
    height: auto;
    border-radius: 12px;
  }
  .about_argument .items .item .img {
    width: 100%;
  }
  .about_argument .items .item .img::after {
    width: 100%;
    height: 100%;
    background-color: #0e161e;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.5;
    content: '';
    transition: all 0.3s;
  }
  .about_argument .items .item .info {
    color: #fff;
    width: 100%;
    padding: 2rem 20px;
  }
  .about_argument .items .item .info .data {
    font-size: 2rem;
  }
  .about_argument .items .item .info h3 {
    font-size: 18px;
    margin-top: 20px;
  }
  .about_argument .items .item .info p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
    opacity: 1;
    color: #fff;
  }
  .about_argument .items .item .info .btn_single {
    margin-top: 2rem;
  }
  .blog_latest {
    padding: 4rem 0;
  }
  .blog_latest .nav_list {
    flex-wrap: nowrap;
    gap: 1.2rem;
    width: calc(100% + 40px);
    margin: 1.5rem -20px 0;
    padding: 0 20px;
    overflow-x: auto;
  }
  .blog_latest .nav_list::-webkit-scrollbar {
    display: none;
  }
  .blog_latest .nav_list a {
    font-size: 14px;
    line-height: 1.5;
    padding: 11px 2rem;
    white-space: nowrap;
  }
  .blog_latest .swiper_btns {
    width: 100%;
    position: static;
    justify-content: flex-end;
    padding: 0 20px;
    margin-top: 2rem;
    transform: translate(0);
  }
  .blog_latest .swiper_btns div {
    width: 2.5rem;
    height: 2.5rem;
  }
  .blog_latest .swiper_btns div::after {
    width: 12px;
    height: 12px;
  }
  .blog_latest .blog_latest_swiper {
    margin-top: 2rem;
    border-radius: 12px;
  }
  .blog_latest .item {
    flex-direction: column-reverse;
  }
  .blog_latest .item .info {
    width: 100%;
    padding: 2.5rem 20px 1.2rem;
    border-radius: 0;
    margin-top: 0;
  }
  .blog_latest .item .info .date {
    font-size: 14px;
  }
  .blog_latest .item .info h3 {
    font-size: 18px;
    line-height: 1.5;
    margin-top: 5px;
  }
  .blog_latest .item .info p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .blog_latest .item .info .link {
    gap: 12px;
    margin-top: 20px;
    font-size: 14px;
  }
  .blog_latest .item .img {
    min-width: unset;
    width: 100%;
    border-radius: 12px;
    margin-left: 0;
    padding-bottom: 77.381%;
    margin-bottom: -1rem;
    z-index: 2;
  }
  .blog_contact .flex {
    min-height: unset;
    border-radius: 0;
    width: calc(100% + 40px);
    margin: 0 -20px;
    padding: 3rem 20px;
  }
  .blog_contact .head {
    padding: 0;
    max-width: unset;
  }
  .blog_main {
    padding: 4rem 0;
  }
  .blog_main .list {
    margin-top: 2rem;
  }
  .blog_main .list ul {
    grid-template-columns: 1fr;
    gap: 3rem 1rem;
  }
  .blog_main nav.navigation {
    margin-top: 2rem;
  }
  .blog_main nav.navigation .nav-links {
    gap: 10px;
  }
  .blog_main nav.navigation .page-numbers {
    font-size: 16px;
    min-width: 40px;
    padding: 6.5px 10px;
  }
  .post_banner {
    padding: 0;
  }
  .post_banner .inner {
    width: 100%;
    border-radius: 0;
  }
  .post_banner .main {
    border-radius: 0;
  }
  .post_banner .flex {
    min-height: unset;
    padding: 3rem 0 4rem;
  }
  .post_banner .head {
    padding: 0;
  }
  .post_banner .cat {
    font-size: 14px;
    line-height: 2;
    padding: 0 12px;
    margin-bottom: 10px;
  }
  .post_banner h1 {
    font-size: 22px;
  }
  .post_banner .breadcrumbs {
    margin-top: 10px;
  }
  .post_main {
    padding: 4rem 0 3rem;
  }
  .post_main .postdetail {
    max-width: unset;
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 2rem;
  }
  .post_main .postdetail h2 {
    font-size: 18px;
    line-height: 1.5;
    margin: 20px 0;
  }
  .post_main .postdetail h3 {
    font-size: 16px;
    line-height: 1.5;
    margin: 12px 0;
  }
  .post_main .postdetail p {
    margin: 10px 0;
  }
  .post_main .postdetail img {
    margin: 2rem 0;
    border-radius: 5px;
  }
  .post_main .postdetail ul {
    margin: 10px 0;
  }
  .post_main .postdetail ul li {
    padding-left: 1rem;
    margin-bottom: 5px;
  }
  .post_main .postdetail ul li::before {
    width: 6px;
    height: 6px;
    top: 7px;
  }
  .post_main .postdetail .wp-block-quote {
    margin: 3rem 0;
    padding: 2rem 20px 1.5rem;
    border-radius: 12px;
  }
  .post_main .postdetail .wp-block-quote::after {
    width: 100px;
    height: 30px;
  }
  .post_main .postdetail .wp-block-quote p {
    font-size: 16px;
    max-width: unset;
  }
  .post_main .postdetail .wp-block-quote .wp-block-columns {
    gap: 10px;
    margin-top: 1rem;
  }
  .post_main .postdetail .wp-block-quote .wp-block-columns p {
    font-size: 14px;
  }
  .post_main .postdetail .wp-block-quote .wp-block-columns img {
    width: 30px;
    height: 30px;
  }
  .post_main .right {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    position: static;
    top: unset;
    margin: 0;
  }
  .post_main .right .date {
    width: 100%;
    font-size: 16px;
    gap: 10px;
    margin-bottom: 1rem;
  }
  .post_main .right .date::before {
    width: 12px;
    height: 12px;
  }
  .post_main .right .slide_obj {
    width: 100%;
    margin-bottom: 2rem;
  }
  .post_main .right .slide_obj strong {
    font-size: 16px;
    padding-bottom: 8px;
  }
  .post_main .right .category_list {
    margin-top: 1.2rem;
  }
  .post_main .right .category_list li {
    margin-bottom: 12px;
  }
  .post_main .right .category_list a {
    font-size: 0.9rem;
    padding-left: 1.5rem;
  }
  .post_main .right .category_list a::before {
    width: 10px;
    height: 10px;
    top: 6px;
  }
  .post_main .right .tags {
    margin-top: 1.2rem;
  }
  .post_main .right .tags > div {
    gap: 1rem;
    margin-right: 0;
  }
  .post_main .right .tags p {
    font-size: 14px;
    padding: 8px 14px;
  }
  .post_main .table {
    padding: 1.2rem 20px 2rem;
  }
  .post_main .table .title {
    font-size: 18px;
    padding-bottom: 10px;
  }
  .post_main .table .main {
    margin-top: 1rem;
  }
  .post_main .table .post_menu li {
    margin-bottom: 10px;
  }
  .post_main .table .post_menu a {
    font-size: 0.9rem;
    padding-left: 1.2rem;
  }
  .post_main .table .post_menu a::before {
    width: 10px;
    height: 10px;
    top: 6px;
  }
  .post_main .table .post_sub_menu {
    padding: 10px 20px 0;
  }
  .post_main .table .post_sub_menu a {
    padding-left: 1.2rem;
  }
  #share {
    right: 10px;
    gap: 12px;
  }
  #share strong {
    font-size: 16px;
  }
  #share .social {
    gap: 10px;
  }
  #share .social a {
    width: 40px;
    height: 40px;
  }
  .post_latest {
    overflow: hidden;
    padding: 3rem 0 4rem;
  }
  .post_latest .head {
    padding: 0;
  }
  .post_latest .flex {
    align-items: center;
    gap: 20px 1rem;
  }
  .post_latest .post_latest_swiper {
    overflow: unset;
    border-radius: 0;
    margin-top: 2rem;
  }
  .post_latest .swiper_btns {
    max-width: unset;
    width: 100%;
    justify-content: flex-end;
    transform: translate(0);
    padding: 0 20px;
    margin-top: 2rem;
    position: static;
  }
  .post_latest .swiper_btns div {
    width: 2.5rem;
    height: 2.5rem;
  }
  .post_latest .swiper_btns div::after {
    width: 12px;
    height: 12px;
  }
  .post_latest .blog_item .cat {
    font-size: 14px;
    line-height: 2;
    padding: 0 12px;
    left: 16px;
    top: 16px;
  }
  .post_latest .blog_item .info {
    margin-top: 1rem;
  }
  .post_latest .blog_item h3 {
    font-size: 18px;
    line-height: 1.5;
    margin-top: 5px;
  }
  .post_latest .blog_item .link {
    margin-top: 20px;
  }
  .post_latest .blog_item .link .btn_circle {
    width: 2rem;
    height: 2rem;
  }
  .contact_main {
    padding: 2rem 0 3rem;
  }
  .contact_main .main {
    max-width: unset;
    margin-top: 2rem;
  }
  .contact_main form {
    margin-top: 2rem;
    gap: 1rem;
    font-size: 14px;
  }
  .contact_main form .col-2 {
    width: 100%;
  }
  .contact_main form .label {
    margin-bottom: 6px;
  }
  .contact_main form input,
  .contact_main form textarea {
    font-size: 14px;
    padding: 16px 20px;
    border-radius: 6px;
  }
  .contact_main form textarea {
    height: 120px;
  }
  .contact_main form input[type=checkbox] {
    width: 20px;
    height: 20px;
    margin-top: 2px;
  }
  .contact_main form input[type=checkbox] ~ span {
    width: calc(100% - 25px);
    font-size: 0.9rem;
    padding-left: 12px;
    line-height: 1.5;
    margin-top: 0;
  }
  .contact_main form .btn {
    margin-top: 1rem;
    padding: 10px 20px;
    font-size: 14px;
    min-width: unset;
  }
  .contact_team {
    padding: 3rem 0 4rem;
  }
  .contact_team .items {
    width: 100%;
    padding: 0 20px;
    margin-top: 2rem;
  }
  .contact_team .items > ul {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .contact_team .item {
    border-radius: 12px;
    padding: 2rem 20px;
  }
  .contact_team .item .icon {
    width: 3rem;
    height: 3rem;
  }
  .contact_team .item .info {
    margin-top: 1rem;
  }
  .contact_team .item h3 {
    font-size: 18px;
  }
  .contact_team .item p {
    font-size: 0.9rem;
    line-height: 1.5;
    max-width: unset;
  }
  .contact_team .item span {
    font-size: 14px;
    margin-top: 20px;
  }
  .contact_team .item ul {
    margin-top: 10px;
  }
  .contact_team .item ul li {
    margin-bottom: 10px;
  }
  .contact_team .item ul a {
    font-size: 0.9rem;
  }
  .products_main {
    padding: 3rem 0;
  }
  .products_main.first {
    padding-top: 4rem;
  }
  .products_main.last {
    padding-bottom: 4rem;
  }
  .products_main .flex {
    display: block;
  }
  .products_main .head {
    max-width: unset;
  }
  .products_main .head p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .products_main .link {
    font-size: 14px;
    margin-top: 10px;
    gap: 10px;
  }
  .products_main .link::after {
    width: 14px;
    height: 14px;
  }
  .products_main .swiper_btns {
    margin-bottom: 0;
    margin-top: 1rem;
    justify-content: flex-end;
  }
  .products_main .products_swiper {
    margin-top: 2rem;
  }
  .solution_banner {
    position: relative;
  }
  .solution_banner::before {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    background-color: var(--subtheme_color);
    opacity: 0.5;
    pointer-events: none;
  }
  .solution_banner .flex {
    min-height: unset;
    padding: 3rem 0 4rem;
    flex-direction: column-reverse;
  }
  .solution_banner .head {
    max-width: unset;
    padding: 0;
    text-align: center;
  }
  .solution_banner .img {
    width: 100%;
    margin: 0;
    max-width: 444px;
  }
  .solution_intro {
    padding: 4rem 0 3rem;
  }
  .solution_intro .img {
    width: 100%;
  }
  .solution_intro .head {
    max-width: unset;
    padding: 0;
  }
  .solution_intro h2 {
    margin-bottom: 0;
  }
  .solution_intro .solution_intro_swiper {
    margin-top: 2rem;
    overflow: unset;
  }
  .solution_intro .solution_intro_swiper .img {
    border-radius: 12px;
  }
  .solution_about {
    padding: 3rem 0;
  }
  .solution_about .list {
    max-width: unset;
    margin-top: 2rem;
  }
  .solution_about .list ul {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .solution_about .item {
    border-radius: 12px;
    padding: 2rem 20px;
  }
  .solution_about .item::after {
    border-radius: 12px;
  }
  .solution_about .item h3 {
    font-size: 18px;
    letter-spacing: unset;
  }
  .solution_about .item p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .solution_efficiency {
    padding: 3rem 0;
  }
  .solution_efficiency .solution_efficiency_swiper {
    max-width: unset;
  }
  .solution_efficiency .solution_efficiency_swiper .swiper-slide-active .item .img {
    right: unset;
  }
  .solution_efficiency .item {
    padding: 0;
    transform: scale(1);
    display: flex;
    flex-direction: column-reverse;
  }
  .solution_efficiency .item .info {
    width: 100%;
    opacity: 1;
    position: static;
    transform: translate(0);
    padding: 2rem 20px;
    margin-top: -3rem;
  }
  .solution_efficiency .item .info strong {
    font-size: 18px;
    line-height: 1.5;
  }
  .solution_efficiency .item .info strong::after {
    width: 44px;
    margin-top: 12px;
  }
  .solution_efficiency .item .info p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .solution_efficiency .item .info .btn {
    margin-top: 20px;
  }
  .solution_efficiency .item .img {
    width: 100%;
    position: relative;
    right: unset;
    height: unset;
    padding-bottom: 81.45%;
  }
  .solution_efficiency .swiper_btns {
    display: none;
  }
  .solution_efficiency div.swiper-pagination {
    gap: 12px;
    margin-top: 4rem;
  }
  .solution_efficiency div.swiper-pagination .swiper-pagination-bullet {
    width: 20px;
  }
  .solution_products {
    padding: 3rem 0;
    overflow: hidden;
  }
  .solution_products .products_swiper {
    overflow: unset;
    border-radius: 0;
    margin-top: 2rem;
  }
  .solution_products .product_item .info {
    padding: 1rem 20px 3.5rem;
  }
  .solution_products .swiper_btns {
    margin-top: 2rem;
    justify-content: flex-end;
    width: 100%;
    position: static;
    max-width: unset;
    padding: 0 20px;
    transform: translate(0);
  }
  .solution_section {
    padding: 3rem 0 4rem;
  }
  .product_show {
    padding: 3rem 0 4rem;
  }
  .product_show .flex {
    flex-direction: column-reverse;
  }
  .product_show .head {
    max-width: unset;
    padding: 0;
  }
  .product_show .head ul {
    margin-top: 10px;
  }
  .product_show .head ul li {
    font-size: 0.9rem;
    padding-left: 1.5rem;
    margin-bottom: 10px;
  }
  .product_show .head ul li::before {
    width: 14px;
    height: 14px;
    top: 3px;
  }
  .product_show .head .breadcrumbs {
    margin-top: 10px;
  }
  .product_show .right {
    width: 100%;
    max-width: 444px;
    margin: 0 auto;
  }
  .product_show .product_show_gallery_swiper {
    margin: -2rem 0 1rem;
  }
  .product_show .product_show_thumbs_swiper {
    max-width: unset;
  }
  .product_nav {
    padding: 0;
  }
  .product_nav .nav_list {
    flex-wrap: nowrap;
    gap: 2rem;
    width: calc(100% + 40px);
    margin: 0 -20px;
    padding: 0 20px;
    overflow-x: auto;
  }
  .product_nav .nav_list::-webkit-scrollbar {
    display: none;
  }
  .product_nav .nav_item::after {
    bottom: 0;
  }
  .product_nav .nav_item a {
    font-size: 18px;
    white-space: nowrap;
    padding: 14px 0;
  }
  .products_nav .nav_list .nav_item{
    font-size: 0.9rem;
    white-space: nowrap;
    padding: 0.5rem 1rem;
  }
  .products_nav .nav_list{
    gap: 1rem;
  }
  .page-id-874 .products_swiper ul.swiper-wrapper{
    grid-template-columns: repeat(1,1fr);
  }
  .product_desc {
    padding: 3rem 0;
    margin: 0;
  }
  .product_desc .img {
    width: 100%;
  }
  .product_desc .head {
    max-width: unset;
    padding: 0;
  }
  .product_argument {
    padding: 3rem 0;
  }
  .product_argument .items {
    margin-top: 2rem;
  }
  .product_argument .items ul {
    grid-template-columns: 1fr;
    gap: 1rem;
    grid-template-columns: repeat(2,1fr) !important;
  }
  .product_argument .item .img {
    opacity: 1;
  }
  .product_argument .item .info {
    padding: 2rem 20px;
  }
  .product_argument .item i {
    width: 3rem;
    height: 3rem;
    filter: unset;
  }
  .product_argument .item h3 {
    font-size: 18px;
    line-height: 1.5;
    margin-top: 1rem;
    color: #fff;
  }
  .product_argument .item p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
    color: #fff;
  }
  .product_features {
    padding: 3rem 0;
  }
  .product_features .items {
    margin-top: 2rem;
  }
  .product_features .items .item {
    margin-bottom: 3rem;
  }
  .product_features .img_cv {
    border-radius: 12px;
  }
  .product_features .img {
    width: 100%;
  }
  .product_features .info {
    max-width: unset;
    padding: 0;
  }
  .product_features h3 {
    font-size: 22px;
    line-height: 1.5;
  }
  .product_features p {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .product_features .btn {
    font-size: 14px;
    margin-top: 20px;
    gap: 8px;
    padding: 10px 20px;
  }
  .product_features .btn::after {
    width: 12px;
    height: 12px;
  }
  .product_specifications {
    padding: 3rem 0 4rem;
  }
  .product_specifications .main {
    margin-top: 2rem;
    overflow-x: auto;
    padding-bottom: 1px;
  }
  .product_specifications .main::-webkit-scrollbar {
    display: none;
  }
  .product_specifications table {
    min-width: 700px;
  }
  .product_specifications table td,
  .product_specifications table td {
    width: unset;
  }
  .product_specifications table td:first-child,
  .product_specifications table td:first-child {
    width: unset;
  }
  .product_specifications table th {
    font-size: 16px;
    padding: 14px 10px;
  }
  .product_specifications table td {
    font-size: 0.9rem;
    line-height: 1.5;
    height: unset;
    padding: 14px 10px;
  }
  .product_faqs {
    padding: 4rem 0;
  }
  .product_faqs .flex {
    display: block;
  }
  .product_faqs .head {
    max-width: unset;
    min-width: unset;
    padding: 0;
  }
  .product_faqs .list {
    width: 100%;
    margin-top: 2rem;
  }
  .product_faqs .faq {
    margin-bottom: 1rem;
    border-radius: 12px;
  }
  .product_faqs .faq.active .question {
    padding: 14px 20px;
  }
  .product_faqs .faq .question {
    font-size: 18px;
    grid-template-columns: 1fr 12px;
    gap: 1rem;
    padding: 14px 20px;
  }
  .product_faqs .faq .answer {
    font-size: 0.9rem;
    line-height: 1.5;
    padding: 1rem 20px 1.2rem;
  }
  .product_related {
    padding: 4rem 0;
  }
  .product_related .content {
    margin: 0 auto;
    padding: 0;
  }
  .product_related .products_swiper {
    margin-top: 2rem;
  }
  .default_head{
    padding: 5rem 0;
  }
  .default_head h1{
    font-size: 2rem;
  }
  .default_body{
    padding: 3rem 0;
    font-size: 0.9rem;
    line-height: 1.5rem;
  }
  
  .default_body h2 {
    font-size: 1.2rem;
    line-height: 1.5;
    font-weight: 700;
    margin: 1rem 0 1rem;
  }
  .default_body h3 {
    font-size: 1.1rem;
    line-height: 1.5;
    font-weight: 700;
    margin: 1rem 0;
  }
  .default_body p {
    margin: 1rem 0;
  }
  
  
  .default_body ul li {
    position: relative;
    padding-left: 2.4rem;
    margin-bottom: 1rem;
  }
  .default_body ul li:last-child {
    margin-bottom: 0;
  }
  .default_body ul li::before {
    width: 1.4rem;
    height: 1.4rem;
    position: absolute;
    left: 0;
    top: 0.8rem;
    border-radius: 50%;
    background-color: var(--theme_color);
    content: '';
  }
  div.search-block div.content {
    height: 100%;
  }

  div.search-block {
    height: calc(100vh - 150px);
  }

  div.search-block.active {
    transform: translate(0);
  }

  div.search-block .searchform {
    padding-top: 2rem;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr auto;
    gap: 12px;
  }

  div.search-block .searchform input[type='text'] {
    height: 42px;
    min-width: unset;
    width: 100%;
    font-size: 22px;
  }

  div.search-block .searchform input[type='submit'] {
    display: block;
    width: 20px;
    filter: contrast(0) brightness(0);
    height: 20px;
    background: url(../img/icon-search.svg) no-repeat center/contain;
  }
  header nav .sub-menu .sub-menu{
    opacity: 1 !important;
    pointer-events: all !important;
    margin: 0 1rem;
  }
  .product_lineup .item p, .product_lineup .item li{
    font-size: 0.9rem !important;
    line-height: 1.5rem !important;
  }
  .product_structure1 .main li{
    padding-left: 1.8rem !important;
  }
  .product_structure1 .main li::before{
    width: 1.2rem !important;
  }
  .product_process h3{
    font-size: 1.1rem !important;
  }
  .product_structure1 .main li p{
    font-size: 0.85rem !important;
    line-height: 1.3rem !important;
  }
  .products_nav .nav_list{
    white-space: nowrap;
    overflow: auto;
    flex-flow: unset;
  }
  .products_main.first{
    padding-top: 0;
  }
  .products_main{
    padding-top: 0;
  }

  .product_structure1 .main ul{
    grid-template-columns: repeat(2,1fr) !important;
    gap: 1.2rem;
  }
  .categories_lists {
    padding: 3rem 0;
  }
  .categories_lists .main ul{
    grid-template-columns: repeat(2,1fr);
    gap: 1.2rem;
  }
  .categories_lists .main ul li .infos{
    padding: 0.5rem 1rem;
  }
  .categories_lists .main ul li strong{
    font-size: 1rem;
    margin-bottom: 0.5rem;
  }
  .categories_lists .main ul li p{
    font-size: 0.85rem;
    line-height: 1.3rem;
  }
  .categories_lists .main ul li .btn{
    font-size: 0.8rem;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
    padding: 0.5rem 1rem;
  }
  .categories_lists .main ul li .img{
    aspect-ratio: 1/0.7;
  }
}
@media screen and (min-width: 640px) and (max-width: 768px) {
  .btn {
    font-size: 16px;
  }
  .head.sm h2 {
    font-size: 28px;
  }
  .head .subtitle,
  .head strong {
    font-size: 15px;
  }
  .head h1 {
    font-size: 34px;
  }
  .head h2 {
    font-size: 28px;
  }
  .head .desc,
  .head p {
    font-size: 16px;
    margin-top: 12px;
  }
  .solution_list > div {
    grid-template-columns: 1fr 1fr;
  }
  .page_solution .nums ul {
    grid-template-columns: 1fr 1fr;
  }
  .home_banner .img {
    width: 80%;
  }
  .home_blog .left {
    width: 48%;
  }
  .about_intro .img {
    width: 45%;
  }
  .about_argument .items > div {
    grid-template-columns: 1fr 1fr;
  }
  .blog_latest .item {
    flex-direction: row;
  }
  .blog_latest .item .info {
    width: 50%;
    margin-right: -13%;
    border-radius: 12px;
  }
  .blog_latest .item .img {
    min-width: unset;
    width: 62.687%;
    padding-bottom: 48.6%;
    z-index: unset;
    margin-bottom: 0;
  }
  .blog_main .list ul {
    grid-template-columns: 1fr 1fr;
  }
  .post_main .right {
    display: flex;
    flex-wrap: wrap;
    gap: 0 2rem;
  }
  .post_main .right .date {
    width: 100%;
  }
  .post_main .right .slide_obj {
    flex: 1;
  }
  .contact_team .items > ul {
    grid-template-columns: 1fr 1fr;
  }
  .solution_intro .img {
    width: 48%;
  }
  .solution_about .list ul {
    grid-template-columns: 1fr 1fr;
  }
  .solution_efficiency .item {
    flex-direction: row;
    align-items: center;
  }
  .solution_efficiency .item .info {
    width: 50%;
    margin-right: -13%;
    border-radius: 12px;
    margin-top: 0;
  }
  .solution_efficiency .item .img {
    width: 62.687%;
    padding-bottom: 51.1%;
  }
  .product_desc .img {
    width: 48%;
  }
  .product_argument .items ul {
    grid-template-columns: 1fr 1fr;
  }
  .product_features .img {
    width: 48%;
  }

  .overlay_menu{
    display: none !important;
  }
  .header_solution_menu{
    display: none !important;
  }

  .product_desc .head ul{
    margin-top: 1rem;
  }
  .product_desc .head li{
    list-style: disc;
    margin-left: 2rem;
    line-height: 1.5rem;
    font-size: 0.9rem;
    margin-top: 0.2rem;
  }
  
}
