﻿/* === projects.css === */
/* --- base: projects.css --- */
/* #region projects_list */
.projects_list {
  position: relative;
  padding: 13.46rem 0px 14.4rem;
  background-color: #fff;
}
.projects_list .tcon .tag + h2 {
  margin-top: 1.5rem;
}
.projects_list .tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 3.62rem;
}
.projects_list .tabs button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 4.8rem;
  padding: 0px 1.85rem;
  border-radius: 2.4rem;
  border: 1px solid var(--line);
  background-color: #fff;
  color: var(--title);
  white-space: nowrap;
  font-family: 'Archivo', sans-serif;
  font-weight: 600;
  font-size: 1.8rem;
  transition: 0.3s;
}
.projects_list .tabs button:hover {
  color: var(--primary);
  border-color: var(--secondary);
  background-color: #eef7fd;
}
.projects_list .tabs li.active button {
  color: #fff;
  border-color: #0b3d87;
  background-color: #0b3d87;
}
.projects_list .list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6.56rem 3.89rem;
  margin-top: 7.5rem;
}
.projects_list .list > li.hide {
  display: none;
}
.projects_list .item {
  display: block;
}
.projects_list .item .img {
  height: 34.61rem;
  border-radius: 1.8rem;
  border: 1px solid var(--line);
  transition: box-shadow 0.4s;
}
.projects_list .item:hover .img {
  box-shadow: 0px 1.6rem 3.6rem rgba(10, 35, 80, 0.14);
}
.projects_list .item:hover .img img {
  transform: scale(1.05);
}
.projects_list .info {
  padding: 0px 0.37rem;
  margin-top: 3.61rem;
}
.projects_list .cat {
  display: inline-flex;
  align-items: center;
  height: 2.64rem;
  padding: 0px 1.1rem;
  border-radius: 0.6rem;
  color: var(--primary);
  background-color: #e6f3fa;
  font-weight: 600;
  font-size: 1.4rem;
  text-transform: uppercase;
  transition: 0.3s;
}
.projects_list .item:hover .cat {
  color: #fff;
  background-color: var(--primary);
}
.projects_list .text {
  max-width: 35rem;
}
.projects_list .text h3,
.projects_list .text p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.projects_list .text h3 {
  height: 5.76rem;
  margin-top: 1.83rem;
  color: var(--title);
  font-family: 'Archivo', sans-serif;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 2.88rem;
  transition: 0.3s;
}
.projects_list .item:hover .text h3 {
  color: var(--primary);
}
.projects_list .text p {
  height: 4.4rem;
  margin-top: 0.74rem;
  color: var(--text);
  font-size: 1.6rem;
  line-height: 2.2rem;
}
.projects_list .info .more {
  margin-top: 4.08rem;
}
.projects_list .item:hover .more::after {
  background-color: var(--secondary);
  transform: translateX(0.4rem);
}
.projects_list .empty {
  display: none;
  flex-direction: column;
  align-items: center;
  margin-top: 7.5rem;
  padding: 7rem 3rem;
  border-radius: 1.8rem;
  border: 1px dashed var(--line);
  background-color: var(--light);
  text-align: center;
}
.projects_list.is_empty .empty {
  display: flex;
}
.projects_list.is_empty .list {
  display: none;
}
.projects_list.is_empty .pager {
  display: none;
}
.projects_list .empty p {
  max-width: 52rem;
  color: var(--text);
  font-size: 1.8rem;
  line-height: 2.8rem;
}
.projects_list .empty .btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.6rem;
  margin-top: 3rem;
}
.projects_list .pager {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.03rem;
  margin-top: 7.17rem;
}
.projects_list .pager .nums {
  display: flex;
  align-items: center;
  gap: 1.03rem;
}
.projects_list .pager .num,
.projects_list .pager .nav {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.83rem;
  height: 3.8rem;
  border-radius: 0.4rem;
  border: 1px solid #d6d6d6;
  background-color: #fff;
  color: #171717;
  font-size: 1.68rem;
  transition: 0.3s;
}
.projects_list .pager .num:hover,
.projects_list .pager .nav:hover {
  border-color: var(--primary);
  color: var(--primary);
}
.projects_list .pager .num.active {
  color: #fff;
  border-color: #1a3275;
  background-color: #1a3275;
}
.projects_list .pager .nav::after {
  content: '';
  width: 0.55rem;
  height: 1.1rem;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 12' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.3.7.7 6l4.6 5.3'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 12' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.3.7.7 6l4.6 5.3'/%3E%3C/svg%3E") no-repeat center / contain;
}
.projects_list .pager .nav.next::after {
  transform: rotate(180deg);
}
.projects_list .pager .nav:disabled {
  opacity: 0.4;
  cursor: default;
  pointer-events: none;
}
.projects_list .pager .dots {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 2.99rem;
  height: 3.8rem;
  color: #171717;
  font-size: 2.06rem;
  line-height: 1.6rem;
  pointer-events: none;
}
.projects_list .pager .jump {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-left: 2.2rem;
  color: #171717;
  font-size: 1.4rem;
}
.projects_list .pager .jump select {
  width: 5.61rem;
  height: 3.8rem;
  padding: 0px 1.4rem;
  border-radius: 0.4rem;
  border: 1px solid #d6d6d6;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 5' fill='none' stroke='%23171717' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M.7.7 4.5 4.3 8.3.7'/%3E%3C/svg%3E") no-repeat right 1.2rem center / 0.75rem auto;
  color: #171717;
  cursor: pointer;
  font-size: 1.68rem;
  -webkit-appearance: none;
  appearance: none;
  transition: 0.3s;
}
.projects_list .pager .jump select:hover {
  border-color: var(--primary);
}
/* #endregion */

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .projects_list {
    padding: 9rem 0px 9rem;
  }
  .projects_list .list {
    grid-template-columns: repeat(2, 1fr);
    gap: 5rem 3rem;
    margin-top: 5rem;
  }
  .projects_list .item .img {
    height: auto;
    aspect-ratio: 434 / 346;
  }
  .projects_list .text {
    max-width: none;
  }
}

@media screen and (max-width: 768px) {
  .projects_list {
    padding: 50px 0px;
  }
  .projects_list .tcon .tag + h2 {
    margin-top: 10px;
  }
  .projects_list .tabs {
    gap: 8px;
    margin-top: 20px;
  }
  .projects_list .tabs button {
    height: 36px;
    padding: 0px 14px;
    border-radius: 18px;
    font-size: 14px;
  }
  .projects_list .list {
    grid-template-columns: 1fr;
    gap: 30px;
    margin-top: 26px;
  }
  .projects_list .item .img {
    height: auto;
    aspect-ratio: 434 / 346;
    border-radius: 12px;
  }
  .projects_list .info {
    padding: 0px;
    margin-top: 16px;
  }
  .projects_list .cat {
    height: 24px;
    padding: 0px 10px;
    border-radius: 5px;
    font-size: 12px;
  }
  .projects_list .text {
    max-width: none;
  }
  .projects_list .text h3 {
    height: 2.6em;
    margin-top: 12px;
    font-size: 18px;
    line-height: 1.3;
  }
  .projects_list .text p {
    height: 3.2em;
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.6;
  }
  .projects_list .info .more {
    margin-top: 18px;
  }
  .projects_list .empty {
    margin-top: 26px;
    padding: 36px 20px;
    border-radius: 12px;
  }
  .projects_list .empty p {
    font-size: 14px;
    line-height: 1.7;
  }
  .projects_list .empty .btns {
    gap: 10px;
    margin-top: 20px;
  }
  .projects_list .pager {
    gap: 6px;
    margin-top: 30px;
  }
  .projects_list .pager .nums {
    gap: 6px;
  }
  .projects_list .pager .num,
  .projects_list .pager .nav {
    width: 34px;
    height: 34px;
    border-radius: 4px;
    font-size: 14px;
  }
  .projects_list .pager .nav::after {
    width: 5px;
    height: 10px;
  }
  .projects_list .pager .dots {
    width: 20px;
    height: 34px;
    font-size: 18px;
    line-height: 14px;
  }
  .projects_list .pager .jump {
    gap: 8px;
    width: 100%;
    justify-content: center;
    margin-left: 0px;
    margin-top: 14px;
    font-size: 13px;
  }
  .projects_list .pager .jump select {
    width: 54px;
    height: 34px;
    padding: 0px 12px;
    font-size: 14px;
    background-size: 8px auto;
  }
}


/* --- module: projects1-projects_banner-img_bg --- */
* {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
}
:root {
  --primary: #02378a;
  --secondary: #05b6f2;
  --title: #0a2350;
  --text: #5c6b80;
  --dark: #071933;
  --line: #dce5ee;
  --light: #f5f8fb;
}
html {
  scroll-behavior: smooth;
  font-size: clamp(7.5px, 0.520834vw, 10px);
}
.content {
  max-width: 138rem;
  margin: 0px auto;
  position: relative;
}
.content .content {
  padding: 0px;
}
li {
  list-style: none;
}
li.swiper-slide {
  height: auto;
}
a {
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  text-decoration: none;
}
i,
em {
  font-style: normal;
}
input,
button,
textarea,
select {
  border: none;
  outline: none;
  font-family: inherit;
  color: var(--title);
}
button {
  cursor: pointer;
  background-color: transparent;
}
body {
  font-size: 1.6rem;
  color: var(--title);
  font-family: 'Inter', sans-serif;
}
.img.img_cv {
  overflow: hidden;
}
.img.img_cv img {
  object-fit: cover;
}
.img.img_ct img {
  object-fit: contain;
}
.img img {
  width: 100%;
  height: 100%;
  display: block;
  transition: 0.5s;
  aspect-ratio: inherit;
}
.img_bg {
  position: relative;
  z-index: 2;
}
.img_bg > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: -2;
}
section:has(> .snow) {
  overflow-x: clip;
}
.img_bg > img.snow {
  height: auto;
  object-fit: fill;
  z-index: 1;
}
.snow {
  position: absolute;
  z-index: 1;
  display: block;
  height: auto;
  pointer-events: none;
  user-select: none;
}
.tag {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  color: var(--primary);
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.7rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.tag::before {
  content: '';
  flex-shrink: 0;
  width: 1.8rem;
  height: 0.92rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 9.2'%3E%3Cpath fill='%2305b6f2' d='M18.02 2.91c-1.76 1.09-4.08 1.34-5.73 2.63-1.1.86-1.92 2.41-2.57 3.62C7.57 5.57 3.6 6.15 0 6.45c1.66-1.05 4.02-1.34 5.6-2.53C6.68 3.1 8.05 1.28 8.57.01c.69.21.72 1 1.32 1.58 2.09 2.04 5.47 1.34 8.13 1.32Z'/%3E%3C/svg%3E") no-repeat center / contain;
}
.tag.light {
  color: var(--secondary);
}
.tcon h1,
.tcon h2 {
  color: var(--title);
  font-family: 'Archivo', sans-serif;
  font-weight: 600;
  font-size: 4.8rem;
  line-height: 1.2;
}
.tcon .tag + h1,
.tcon .tag + h2 {
  margin-top: 1.2rem;
}
.tcon h1 em,
.tcon h2 em {
  color: var(--secondary);
}
.tcon p {
  color: var(--text);
  font-size: 1.8rem;
  line-height: 2.8rem;
}
.tcon h1 + p,
.tcon h2 + p {
  margin-top: 1.2rem;
}
.btn,
.btn_line,
.btn_border {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  height: 5.6rem;
  padding: 0px 2.7rem;
  border-radius: 10rem;
  cursor: pointer;
  white-space: nowrap;
  font-family: 'Archivo', sans-serif;
  font-weight: 600;
  font-size: 1.8rem;
  transition: 0.3s;
}
.btn_line::after,
.btn_border::after,
.btn.arrow::after {
  content: '';
  flex-shrink: 0;
  width: 1.33rem;
  height: 0.82rem;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 9' fill='none' stroke='%23000' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M.7 4.5h12.4M9.4.7l3.7 3.8-3.7 3.8'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 9' fill='none' stroke='%23000' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M.7 4.5h12.4M9.4.7l3.7 3.8-3.7 3.8'/%3E%3C/svg%3E") no-repeat center / contain;
  transition: transform 0.3s;
}
.btn_line:hover::after,
.btn_border:hover::after,
.btn.arrow:hover::after {
  transform: translateX(0.4rem);
}
.btn {
  color: var(--title);
  background-color: var(--secondary);
}
.btn:hover {
  color: #fff;
  background-color: var(--primary);
  box-shadow: 0px 1rem 2.4rem rgba(2, 55, 138, 0.25);
}
.btn.navy {
  color: #fff;
  background-color: var(--primary);
}
.btn.navy:hover {
  color: var(--title);
  background-color: var(--secondary);
  box-shadow: 0px 1rem 2.4rem rgba(5, 182, 242, 0.3);
}
.btn_line {
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.btn_line:hover {
  color: var(--title);
  border-color: #fff;
  background-color: #fff;
}
.btn_border {
  color: var(--title);
  border: 1px solid var(--line);
  background-color: #fff;
}
.btn_border:hover {
  color: #fff;
  border-color: var(--primary);
  background-color: var(--primary);
}
.more {
  display: inline-flex;
  align-items: center;
  gap: 1.8rem;
  color: var(--primary);
  font-family: 'Archivo', sans-serif;
  font-weight: 600;
  font-size: 1.8rem;
  white-space: nowrap;
  transition: 0.3s;
}
.more::after {
  content: '';
  flex-shrink: 0;
  width: 3.47rem;
  height: 3.47rem;
  border-radius: 50%;
  transition: 0.3s;
  background: var(--primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10' fill='none' stroke='%23fff' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h10M7 1l4 4-4 4'/%3E%3C/svg%3E") no-repeat center / 1rem auto;
}
.more.light::after,
.more:hover::after {
  background-color: var(--secondary);
}
.more:hover::after {
  transform: translateX(0.4rem);
}
.swiper_btns {
  display: flex;
  gap: 2.3rem;
}
.swiper_btns div {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5.4rem;
  height: 5.4rem;
  border-radius: 50%;
  transition: 0.3s;
  color: var(--title);
  border: 1px solid rgba(11, 20, 46, 0.3);
}
.swiper_btns div::after {
  content: '';
  width: 1.2rem;
  height: 1rem;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10' fill='none' stroke='%23000' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5H1M5 1 1 5l4 4'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10' fill='none' stroke='%23000' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5H1M5 1 1 5l4 4'/%3E%3C/svg%3E") no-repeat center / contain;
}
.swiper_btns .btn_next::after {
  transform: rotate(180deg);
}
.swiper_btns div:hover,
.swiper_btns .btn_next {
  color: #fff;
  border-color: #0b3d87;
  background-color: #0b3d87;
}
.swiper_btns .btn_next:hover {
  border-color: var(--secondary);
  background-color: var(--secondary);
}
.swiper_btns .swiper-button-disabled {
  opacity: 0.4;
  pointer-events: none;
}
.swiper_btns:has(.swiper-button-lock) {
  display: none;
}

@media screen and (min-width: 769px) and (max-width: 1480px) {
  .content {
    padding: 0px 3rem;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .content {
    max-width: 896px;
  }
  .tcon h1,
  .tcon h2 {
    font-size: 4.2rem;
  }
}

@media screen and (max-width: 768px) {
  html {
    font-size: 10px;
  }
  body {
    font-size: 1.4rem;
  }
  .content {
    padding: 0px 20px;
  }
  .snow,
  .img_bg > img.snow {
    display: none;
  }
  .tag {
    gap: 6px;
    font-size: 12px;
    line-height: 16px;
  }
  .tag::before {
    width: 16px;
    height: 8px;
  }
  .tcon .tag + h1,
  .tcon .tag + h2 {
    margin-top: 10px;
  }
  .tcon h1,
  .tcon h2 {
    font-size: 26px;
    line-height: 1.25;
  }
  .tcon p {
    font-size: 14px;
    line-height: 1.7;
  }
  .tcon h1 + p,
  .tcon h2 + p {
    margin-top: 10px;
  }
  .btn,
  .btn_line,
  .btn_border {
    height: 44px;
    gap: 8px;
    padding: 0px 22px;
    font-size: 15px;
  }
  .btn_line::after,
  .btn_border::after,
  .btn.arrow::after {
    width: 12px;
    height: 8px;
  }
  .more {
    gap: 12px;
    font-size: 15px;
  }
  .more::after {
    width: 30px;
    height: 30px;
    background-size: 10px auto;
  }
  .swiper_btns {
    gap: 12px;
  }
  .swiper_btns div {
    width: 40px;
    height: 40px;
  }
}

.project_industry_banner {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  margin-top: 7.7rem;
  min-height: 40rem;
  padding: 8rem 0;
  background: var(--dark);
}
.project_industry_banner picture,
.project_industry_banner picture img,
.project_industry_banner::after {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.project_industry_banner picture {
  z-index: -2;
}
.project_industry_banner picture img {
  display: block;
  object-fit: cover;
}
.project_industry_banner::after {
  content: '';
  z-index: -1;
  background: linear-gradient(90deg, rgba(7, 25, 51, 0.94), rgba(7, 25, 51, 0.65) 60%, rgba(7, 25, 51, 0.3));
}
.project_industry_banner > .content {
  width: 100%;
}
.project_industry_banner .tcon {
  max-width: 82rem;
  overflow-wrap: anywhere;
}
.project_industry_banner .tcon h1 {
  color: #fff;
  font-size: clamp(36px, 3.4vw, 64px);
  line-height: 1.15;
}
.project_industry_banner .tcon p {
  margin-top: 20px;
  color: rgba(255, 255, 255, 0.85);
  font-size: 18px;
  line-height: 1.65;
}
.project_industry_banner + .projects_list {
  padding-top: 6rem;
}
@media screen and (max-width: 768px) {
  .project_industry_banner {
    margin-top: 64px;
    min-height: 300px;
    padding: 48px 0;
  }
  .project_industry_banner::after {
    background: rgba(7, 25, 51, 0.76);
  }
  .project_industry_banner .tcon h1 {
    font-size: 34px;
  }
  .project_industry_banner .tcon p {
    margin-top: 16px;
    font-size: 16px;
  }
  .project_industry_banner + .projects_list {
    padding-top: 32px;
  }
}

.projects_banner {
  min-height: 71.22rem;
  padding: 13.79rem 0px 6rem;
  color: #fff;
  background-color: #225d8b;
}
.projects_banner > img:first-child {
  object-position: center top;
}
.projects_banner > img.snow_left {
  left: -6.99rem;
  top: auto;
  bottom: -12.5rem;
  z-index: 3;
  width: 19.17rem;
  transform: rotate(-18.35deg);
}
.projects_banner > img.snow_right {
  left: auto;
  right: -12.8rem;
  top: -5.12rem;
  width: 25.6rem;
  opacity: 0.72;
}
.projects_banner .collage {
  position: absolute;
  right: 19.99rem;
  top: 0px;
  z-index: 1;
  display: flex;
  gap: 1.57rem;
  width: 63.83rem;
  height: 71.22rem;
  overflow: hidden;
}
.projects_banner .collage .col {
  display: flex;
  flex-direction: column;
  gap: 2.1rem;
  width: 31.13rem;
}
.projects_banner .collage .col:first-child {
  margin-top: -1.08rem;
}
.projects_banner .collage .col:last-child {
  margin-top: -16.87rem;
}
.projects_banner .collage .img {
  flex-shrink: 0;
  height: 29.89rem;
  border-radius: 2.2rem;
}
.projects_banner .collage .col:first-child .img:nth-child(2) {
  height: 29.79rem;
}
.projects_banner .collage .col:first-child .img:nth-child(3) {
  height: 19.15rem;
}
.projects_banner .collage .col:last-child .img:nth-child(1) {
  height: 27.51rem;
}
.projects_banner .collage .col:last-child .img:nth-child(2) {
  height: 39.86rem;
}
.projects_banner .collage .col:last-child .img:nth-child(3) {
  height: 18.6rem;
}
.projects_banner .collage .img:hover img {
  transform: scale(1.06);
}
.projects_banner .tcon {
  max-width: 66rem;
}
.projects_banner .tcon h1 {
  color: #fff;
  font-weight: 700;
  font-size: 6.8rem;
  line-height: 8.6rem;
}
.projects_banner .tcon .tag + h1 {
  margin-top: 1.3rem;
}
.projects_banner .tcon h1 em {
  color: #00bdf5;
}
.projects_banner .tcon p {
  max-width: 64rem;
  margin-top: 2.06rem;
  color: rgba(255, 255, 255, 0.85);
  line-height: 3rem;
}
.projects_banner .btns {
  display: flex;
  flex-wrap: wrap;
  gap: 2.85rem;
  margin-top: 4.14rem;
}
@media screen and (min-width: 769px) and (max-width: 1360px) {
  .projects_banner .collage {
    right: 0px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .projects_banner .tcon {
    max-width: 52rem;
  }
  .projects_banner .tcon h1 {
    font-size: 5.2rem;
    line-height: 1.25;
  }
  .projects_banner .tcon p {
    max-width: none;
  }
  .projects_banner .collage {
    width: 42rem;
  }
  .projects_banner .collage .col {
    flex: 1;
    width: auto;
  }
  .projects_banner .collage .img,
  .projects_banner .collage .col:first-child .img:nth-child(2),
  .projects_banner .collage .col:first-child .img:nth-child(3),
  .projects_banner .collage .col:last-child .img:nth-child(1),
  .projects_banner .collage .col:last-child .img:nth-child(2),
  .projects_banner .collage .col:last-child .img:nth-child(3) {
    height: auto;
  }
  .projects_banner .collage .img img {
    height: auto;
  }
}

@media screen and (max-width: 768px) {
  .projects_banner {
    display: flex;
    flex-direction: column;
    min-height: 0px;
    padding: 50px 0px 40px;
  }
  .projects_banner .content {
    order: 1;
  }
  .projects_banner .collage {
    order: 2;
  }
  .projects_banner > img:first-child {
    object-position: center bottom;
  }
  .projects_banner .tcon h1 {
    font-size: 34px;
    line-height: 1.2;
  }
  .projects_banner .tcon .tag + h1 {
    margin-top: 10px;
  }
  .projects_banner .tcon p {
    margin-top: 14px;
    line-height: 1.7;
  }
  .projects_banner .btns {
    gap: 10px;
    margin-top: 24px;
  }
  .projects_banner .collage {
    position: static;
    overflow: visible;
    gap: 10px;
    width: auto;
    height: auto;
    margin-top: 28px;
    padding: 0px 20px;
  }
  .projects_banner .collage .col {
    flex: 1;
    gap: 10px;
    width: auto;
    margin-top: 0px;
  }
  .projects_banner .collage .col:first-child,
  .projects_banner .collage .col:last-child {
    margin-top: 0px;
  }
  .projects_banner .collage .img,
  .projects_banner .collage .col:first-child .img:nth-child(2),
  .projects_banner .collage .col:first-child .img:nth-child(3),
  .projects_banner .collage .col:last-child .img:nth-child(1),
  .projects_banner .collage .col:last-child .img:nth-child(2),
  .projects_banner .collage .col:last-child .img:nth-child(3) {
    height: auto;
    border-radius: 12px;
  }
  .projects_banner .collage .img img {
    height: auto;
  }
}
