:root {
  --font-pri: "UTM Avo", sans-serif;
  --font-title: "Albula Pro", sans-serif;
  --header-height: 10rem;
}
@media screen and (max-width: 1200px) {
  :root {
    --header-height: 8rem;
  }
}
:root {
  --pi-8: 0.8rem;
  --pi-10: 1rem;
  --pi-12: 1.2rem;
  --pi-14: 1.4rem;
  --pi-16: 1.6rem;
  --pi-18: 1.8rem;
  --pi-20: 2rem;
  --pi-24: 2.4rem;
  --pi-32: 3.2rem;
  --pi-40: 4rem;
}
@media screen and (max-width: 1200px) {
  :root {
    --pi-12: 0.8rem;
    --pi-14: 0.8rem;
    --pi-16: 0.8rem;
    --pi-18: 0.8rem;
    --pi-20: 0.8rem;
    --pi-24: 1.2rem;
    --pi-32: 1.6rem;
  }
}
:root {
  --z-i-header: 100;
  --radius-circle: 50%;
  --radius-max: 999rem;
  --radius-xl: 2.4rem;
  --radius-l: 1.6rem;
  --radius: 1.2rem;
  --radius-m: 0.8rem;
  --radius-s: 0.4rem;
  --box-shadow-1: 0 0.4rem 2.4rem 0 rgba(0, 0, 0, 0.1);
  --filter-white: brightness(0) invert(1);
  --filter-black: brightness(0) invert(0);
  --filter-pri: brightness(0) saturate(100%) invert(9%) sepia(10%) saturate(4890%) hue-rotate(196deg) brightness(98%) contrast(103%);
  --container-width: 124.8rem;
  --container-padding: 1.6rem;
}

.mona-content > * {
  color: #0D1432;
  line-height: 150%;
}
.mona-content b,
.mona-content strong {
  font-weight: 700;
  color: rgba(13, 20, 50, 0.5);
}
.mona-content em,
.mona-content i {
  font-style: italic;
}
.mona-content h1,
.mona-content h2,
.mona-content h3,
.mona-content h4,
.mona-content h5,
.mona-content h6 {
  font-weight: 700;
  margin-bottom: 1.6rem;
}
.mona-content h1 {
  font-size: 2.8rem;
}
@media only screen and (max-width: 1200px) {
  .mona-content h1 {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 800px) {
  .mona-content h1 {
    font-size: 2.1rem;
  }
}
.mona-content h2 {
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  .mona-content h2 {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  .mona-content h2 {
    font-size: 1.6rem;
  }
}
.mona-content h3 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 1200px) {
  .mona-content h3 {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 800px) {
  .mona-content h3 {
    font-size: 1.5rem;
  }
}
.mona-content h4 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 800px) {
  .mona-content h4 {
    font-size: 1.4rem;
  }
}
.mona-content h5 {
  font-size: 1.4rem;
}
.mona-content h6 {
  font-size: 1.2rem;
}
.mona-content p {
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  .mona-content p {
    font-size: 1.4rem;
  }
}
.mona-content ul,
.mona-content ol {
  margin: 1em 0;
  list-style-position: inside;
}
.mona-content ul ul,
.mona-content ul ol,
.mona-content ol ul,
.mona-content ol ol {
  margin-left: 1em;
}
.mona-content ul {
  list-style-type: disc;
}
.mona-content ol {
  list-style-type: decimal;
}
.mona-content ul ul,
.mona-content ol ul {
  list-style-type: circle;
}
.mona-content ol ol,
.mona-content ul ol {
  list-style-type: lower-latin;
}
.mona-content img,
.mona-content iframe {
  height: auto;
  margin: 4rem 0;
  user-select: none;
  max-width: 100% !important;
}
@media screen and (max-width: 1200px) {
  .mona-content img,
  .mona-content iframe {
    margin: 2.4rem 0;
  }
}
.mona-content blockquote {
  margin: 2rem 0 5.6rem;
  padding: 1.2rem 2.4rem;
  border-left: 0.4rem solid #0D1432;
}
@media screen and (max-width: 991px) {
  .mona-content blockquote {
    margin: 2rem 0;
  }
}
.mona-content blockquote p {
  font-size: 1.8rem;
}
@media only screen and (max-width: 1200px) {
  .mona-content blockquote p {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 800px) {
  .mona-content blockquote p {
    font-size: 1.5rem;
  }
}
.mona-content blockquote p {
  margin-bottom: 0.8rem;
}
.mona-content blockquote p strong {
  color: #0D1432;
}
.mona-content blockquote .author-txt {
  margin: 0;
  font-size: 1.4rem;
  color: rgba(13, 20, 50, 0.5);
}
.mona-content table {
  max-width: 100%;
  margin: 3.2rem 0;
  border-collapse: collapse;
}
@media screen and (max-width: 1200px) {
  .mona-content table {
    margin: 2.4rem 0;
  }
}
.mona-content table th,
.mona-content table td {
  padding: 1.2rem 0;
  vertical-align: middle;
  border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}
.mona-content .mona-youtube-wrap {
  position: relative;
  height: 0;
  padding-top: 56.25%;
}
.mona-content .mona-youtube-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mona-content .mona-table-wrap {
  overflow: auto;
}
.mona-content .wp-caption {
  border: 0;
  padding: 0;
  max-width: 100%;
  margin-bottom: 3.2rem;
}
@media screen and (max-width: 1200px) {
  .mona-content .wp-caption {
    margin-bottom: 2.4rem;
  }
}
.mona-content .wp-caption-text {
  line-height: 1.5;
  padding: 0.8rem 0;
  font-size: 1.4rem;
  font-style: italic;
  margin: 0 !important;
  color: rgba(13, 20, 50, 0.5);
}
@media screen and (max-width: 576px) {
  .mona-content .wp-caption-text {
    font-size: 1.2rem;
  }
}
.mona-content .wp-caption.alignnone {
  margin: 3.2rem 0;
}
@media screen and (max-width: 576px) {
  .mona-content .wp-caption.alignnone {
    margin: 2.4rem 0;
  }
}
.mona-content .wp-caption.alignright {
  float: right;
  display: inline;
  margin-bottom: 0;
  margin-left: 1.5rem;
}
.mona-content .wp-caption.aligncenter {
  margin: 2.4rem auto;
}
.mona-content .wp-caption.alignleft {
  float: left;
  display: inline;
  margin-bottom: 0;
  margin-right: 1.5rem;
}
.mona-content .wp-caption img {
  margin: 0;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
.mona-content a {
  font-weight: 700;
  color: #ec1d23;
  transition: all 0.5s ease;
}
.mona-content a:hover {
  text-decoration: underline;
  color: #0D1432;
}
.mona-content li {
  margin: 1em 0;
}
.mona-content figure {
  width: fit-content;
  margin-top: 1em;
  margin-bottom: 1em;
  margin-right: auto;
  margin-left: auto;
}
.mona-content figure img {
  margin: 0;
}
.mona-content figcaption {
  font-style: italic;
  font-size: 0.8em;
  text-align: center;
}
.mona-content .img-full img {
  width: 100%;
}
.mona-content table {
  width: 100%;
}
.mona-content table td {
  text-align: left;
  vertical-align: middle;
}
.mona-content table th,
.mona-content table td {
  padding: 1.2rem 0;
}
.mona-content table td {
  background-color: transparent;
}
.mona-content table tbody {
  background-color: #fff;
}
.mona-content table th {
  color: #111;
  font-weight: 600;
  text-align: left;
}
.mona-content .table-resp {
  overflow-x: auto;
  margin-bottom: 3rem;
}
.mona-content img.size-full {
  width: 100%;
}
.mona-content img.alignnone {
  margin: 3.2rem 0;
}
@media screen and (max-width: 576px) {
  .mona-content img.alignnone {
    margin: 2.4rem 0;
  }
}
.mona-content img.aligncenter {
  margin: 3.2rem auto;
}
@media screen and (max-width: 576px) {
  .mona-content img.aligncenter {
    margin: 2.4rem auto;
  }
}
.mona-content img.alignright {
  margin-left: auto;
}
.mona-content img.alignleft {
  margin-right: auto;
}
.mona-content .gallery-columns {
  gap: 4rem;
  display: flex;
  flex-wrap: wrap;
  margin: 2rem 0;
}
@media screen and (max-width: 576px) {
  .mona-content .gallery-columns {
    gap: 2.4rem;
  }
}
.mona-content .gallery-columns img {
  margin: 0;
}
.mona-content .gallery-columns .gallery-icon {
  width: 100%;
  height: 100%;
}
.mona-content .gallery-columns .gallery-icon a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mona-content .gallery-columns-2 {
  gap: 4rem;
  display: flex;
  flex-wrap: wrap;
  margin: 2rem 0;
}
@media screen and (max-width: 576px) {
  .mona-content .gallery-columns-2 {
    gap: 2.4rem;
  }
}
.mona-content .gallery-columns-2 .gallery-item {
  margin: 0 !important;
  float: unset !important;
  text-align: left !important;
  width: calc(50% - 2rem) !important;
}
@media screen and (max-width: 576px) {
  .mona-content .gallery-columns-2 .gallery-item {
    width: 100% !important;
  }
}
.mona-content .gallery-columns-2 img {
  margin: 0;
  border: 0 !important;
}
.mona-content .gallery-columns-3 .gallery-item {
  width: calc(33.3333333333% - 1.1rem) !important;
}
.mona-content .gallery-columns .wp-caption {
  margin: 0;
}

#ez-toc-container {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  border-radius: 0;
  box-shadow: unset;
  background-color: transparent;
}
@media screen and (max-width: 1200px) {
  #ez-toc-container {
    margin-bottom: 2.4rem;
  }
}
#ez-toc-container .ez-toc-title-container {
  display: block;
  padding: 1.2rem 0;
  line-height: 140%;
  border-top: 0.1rem solid #0D1432;
  border-bottom: 0.1rem solid #0D1432;
}
#ez-toc-container .ez-toc-title-container .ez-toc-title {
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  #ez-toc-container .ez-toc-title-container .ez-toc-title {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  #ez-toc-container .ez-toc-title-container .ez-toc-title {
    font-size: 1.6rem;
  }
}
#ez-toc-container .ez-toc-title-container .ez-toc-title {
  text-transform: uppercase;
  font-weight: 700 !important;
}
#ez-toc-container .ez-toc-title-toggle {
  display: none;
}
#ez-toc-container nav {
  margin-top: 2rem;
}
#ez-toc-container nav ul {
  gap: 1rem;
  display: flex;
  flex-direction: column;
}
#ez-toc-container nav ul li:not(:last-child) {
  padding-bottom: 1rem;
  border-bottom: 0.1rem solid rgba(13, 20, 50, 0.1);
}
#ez-toc-container nav ul li a {
  font-weight: 400;
  line-height: 160%;
  color: #0D1432;
  font-size: 1.6rem;
}
#ez-toc-container nav ul li a:visited {
  font-weight: 700;
  color: #0D1432;
}

form .form-wrap {
  display: flex;
  row-gap: 1.2rem;
  flex-direction: column;
}
form .form-group {
  gap: 1.2rem;
  flex-wrap: wrap;
  display: flex;
  align-items: center;
}
form .form-group:has(textarea) {
  margin-top: 0.8rem;
}
form .form-box {
  width: calc(50% - 0.6rem);
}
@media screen and (max-width: 576px) {
  form .form-box {
    width: 100%;
  }
}
form .form-label {
  width: 100%;
  display: flex;
  row-gap: 0.8rem;
  flex-direction: column;
}
form .form-text {
  width: 100%;
  display: block;
  font-size: 1.6rem;
  letter-spacing: 0.224rem;
  text-transform: uppercase;
}
form .form-text sup {
  color: #f00;
}
form .form-select {
  position: relative;
}
form .form-select::before {
  content: "";
  top: 50%;
  right: 1.6rem;
  position: absolute;
  width: 1.6rem;
  height: 1.6rem;
  pointer-events: none;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top;
  background-image: url("../../assets/images/icons/icon-chevron.svg");
}
form .form-action {
  margin-top: 2.8rem;
}
@media screen and (min-width: 992px) {
  form .form-action {
    margin-left: auto;
  }
}
form .form-action .btn {
  padding: 1.2rem 3.2rem;
}
form input,
form textarea {
  padding: 1.6rem;
}
form input:hover, form input:focus, form input:not(:placeholder-shown),
form textarea:hover,
form textarea:focus,
form textarea:not(:placeholder-shown) {
  color: #0D1432;
  border-color: #0D1432;
}
form input::placeholder,
form textarea::placeholder {
  line-height: 160%;
  color: #0D1432;
}
form input,
form select {
  border: 0;
  border-bottom: 0.1rem solid #0D1432;
}
form input,
form select,
form textarea {
  outline: 0;
  width: 100%;
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  form input,
  form select,
  form textarea {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  form input,
  form select,
  form textarea {
    font-size: 1.6rem;
  }
}
form input,
form select,
form textarea {
  border-radius: 0;
  transition: 0.4s ease-in-out;
  font-family: var(--font-pri);
  background-color: transparent;
}
form input {
  height: 4.8rem;
  padding-left: 0;
}
form textarea {
  resize: none;
  height: 20rem;
  border: 0.1rem solid #0D1432;
}
form select {
  padding: 1.6rem 4.8rem 1.6rem 0;
}

.g-recaptcha-wrap {
  padding: 0 !important;
}

.wpcf7-form-control-wrap {
  width: 100%;
  display: block;
}

.wpcf7-not-valid-tip {
  right: 0;
  z-index: 4;
  bottom: -2.2rem;
  padding: 0.4rem;
  width: fit-content;
  position: absolute;
  border-radius: 0.5rem;
  background-color: red;
  color: white !important;
  font-size: 1.2rem !important;
}
.wpcf7-not-valid-tip::before {
  content: "";
  width: 0;
  height: 0;
  bottom: 100%;
  right: 1.6rem;
  position: absolute;
  border-left: 0.5rem solid transparent;
  border-right: 0.5rem solid transparent;
  border-bottom: 0.5rem solid #ec1f26;
}

.wpcf7-response-output {
  color: #7FFF00;
  font-weight: 600;
  font-size: 1.2rem;
  text-align: center;
  border: 0 !important;
  padding: 0 !important;
  margin: 2rem 0 0 0 !important;
}
@media screen and (max-width: 1200px) {
  .wpcf7-response-output {
    font-size: 1.4rem !important;
    margin: 1.2rem 0 0 0 !important;
  }
}

.select2-results {
  overflow: hidden;
  background-color: white;
  border-radius: 0 !important;
  border: 0.1rem solid white;
  box-shadow: var(--box-shadow-1);
}

.select2-container .select2-dropdown {
  border: 0;
  background-color: transparent;
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #0D1432;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: white;
  -webkit-box-shadow: 0 0 0 100rem transparent inset;
  transition: background-color 5000s ease-in-out 0s;
}

ul.page-numbers {
  gap: 0.6rem;
  user-select: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
ul.page-numbers li {
  transition: 0.4s ease-in-out;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 10rem;
}
ul.page-numbers li:has(.current) {
  background-color: #0D1432;
}
ul.page-numbers li:has(.current) a,
ul.page-numbers li:has(.current) span {
  color: white;
}
@media screen and (min-width: 1201px) {
  ul.page-numbers li:not(:has(.disable)):hover {
    background-color: #0D1432;
  }
  ul.page-numbers li:not(:has(.disable)):hover a {
    color: white;
  }
  ul.page-numbers li:not(:has(.disable)):hover img {
    filter: brightness(0) invert(1);
  }
}
ul.page-numbers li .disable {
  pointer-events: none;
}
ul.page-numbers li .prev img {
  transform: rotate(90deg);
}
ul.page-numbers li .next img {
  transform: rotate(-90deg);
}
ul.page-numbers li a,
ul.page-numbers li span {
  width: 100%;
  height: 100%;
  font-weight: 500;
  color: #656565;
  line-height: 150%;
  transition: 0.4s ease-in-out;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.pj-main {
  padding: 4rem 0 20rem 0;
}

.p-project {
  background: #0D1432;
}

.pj-container {
  max-width: 1680;
  margin: 0 auto;
  padding: 0 1.5rem;
}

.pj-top {
  display: flex;
  gap: 2.4rem;
  margin-bottom: 8rem;
}
@media screen and (max-width: 768px) {
  .pj-top {
    margin-bottom: 4rem;
    flex-direction: column;
    gap: 1.2rem;
  }
}

.pj-t-box {
  width: calc(50% - 1.2rem);
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .pj-t-box {
    width: 100%;
  }
}
.pj-t-box p {
  font-size: 1.6rem;
}
@media only screen and (max-width: 800px) {
  .pj-t-box p {
    font-size: 1.4rem;
  }
}
.pj-t-box p {
  font-weight: 300;
  line-height: 1.5;
  max-width: 63.7rem;
}
.pj-t-box .title-48 {
  line-height: 1;
  text-transform: uppercase;
}

.pj-loadmore {
  width: fit-content;
  margin: 4rem auto 0;
}
.pj-loadmore .btn::after {
  background-color: #101941;
}

.pj-list {
  display: flex;
  margin: 0 -1.2rem;
  flex-wrap: wrap;
  row-gap: 8rem;
}
@media screen and (max-width: 980px) {
  .pj-list {
    row-gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .pj-list {
    margin: 0 -0.5rem;
  }
}

.pj-box {
  width: 33.3333333333%;
  padding: 0 1.2rem;
}
@media screen and (max-width: 980px) {
  .pj-box {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .pj-box {
    padding: 0 0.5rem;
  }
}

.pj-i-tag {
  display: flex;
  justify-content: space-between;
  gap: 0.8rem;
  flex-wrap: wrap;
  margin: 2.4rem 0 1.2rem 0;
}
@media screen and (max-width: 1200px) {
  .pj-i-tag {
    margin: 1.2rem 0;
  }
}
@media screen and (max-width: 768px) {
  .pj-i-tag {
    justify-content: start;
  }
}

.tag-item {
  color: #fff;
  font-size: 1.2rem;
  font-weight: 300;
  opacity: 0.4;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: 0.3s;
}
@media screen and (max-width: 1200px) {
  .tag-item {
    font-size: 1.2rem;
  }
}
.tag-item:first-child {
  opacity: 1;
}
.tag-item:hover {
  opacity: 1;
}

.text-24 {
  color: #fff;
  font-weight: 400;
  font-size: 3rem;
}
@media only screen and (max-width: 1200px) {
  .text-24 {
    font-size: 2.7rem;
  }
}
@media only screen and (max-width: 800px) {
  .text-24 {
    font-size: 2.4rem;
  }
}
.text-24 {
  display: flex;
  width: fit-content;
  position: relative;
}
@media screen and (max-width: 768px) {
  .text-24 {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 768px) and (max-width: 800px) {
  .text-24 {
    font-size: 1.4rem;
  }
}

.pj-item {
  position: relative;
}
@media screen and (hover: hover) and (pointer: fine) and (min-width: 1201px) {
  .pj-item:hover .img-box:before, .pj-item:focus-visible .img-box:before {
    opacity: 1;
  }
  .pj-item:hover .img-box .view-link, .pj-item:focus-visible .img-box .view-link {
    opacity: 1;
  }
}
.pj-item.is-inview .img-box {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.pj-item .img-box {
  position: relative;
  display: flex;
  padding-top: 125.468164794%;
  overflow: hidden;
  transition: 1.5s ease-in-out;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
.pj-item .img-box::before {
  top: 0;
  left: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  content: "";
  z-index: 1;
  transition: 0.4s ease-in-out;
  background-color: rgba(9, 29, 30, 0.4);
}
.pj-item .img-box > picture,
.pj-item .img-box img {
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  transition: 0.6s ease-in-out;
}
.pj-item .img-box:hover img {
  filter: grayscale(0);
  transform: scale(1.075);
}
.pj-item .img-box .view-link {
  z-index: 5;
  opacity: 0;
  font-size: 2.4rem;
}
@media only screen and (max-width: 1200px) {
  .pj-item .img-box .view-link {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 800px) {
  .pj-item .img-box .view-link {
    font-size: 1.7rem;
  }
}
.pj-item .img-box .view-link {
  font-weight: 500;
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  color: white;
  transition: 0.4s ease-in-out;
  font-family: var(--font-pri);
}
.pj-item.t-black .text-24 {
  color: #0D1432;
}
.pj-item.t-black .tag-item {
  color: #0D1432;
}

.pj-bot-img {
  min-height: 52rem;
  width: 100%;
  position: relative;
  display: flex;
  align-items: end;
  padding: 4rem;
}
@media screen and (max-width: 980px) {
  .pj-bot-img {
    min-height: 30rem;
    padding: 2rem;
  }
}
@media screen and (max-width: 480px) {
  .pj-bot-img {
    padding: 1.6rem;
  }
}

.pj-bot-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
  transition: clip-path 1.5s ease-in-out;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
.pj-bot-bg.is-inview {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.pj-bot-bg::before {
  content: "";
  width: 100%;
  height: 100%;
  z-index: 1;
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(12, 18, 29, 0.25) 0%, rgba(12, 18, 29, 0.75) 60%, rgb(13, 20, 50) 100%);
}
.pj-bot-bg img {
  width: 100%;
  height: 150%;
  object-fit: cover;
}

.pj-bot-content {
  position: relative;
  z-index: 3;
  color: #fff;
}
.pj-bot-content .title-36 {
  margin-bottom: 3.2rem;
}

.pj-search {
  width: 100%;
  display: flex;
  gap: 8rem;
}
@media screen and (max-width: 1024px) {
  .pj-search {
    gap: 2.4rem;
  }
}
@media screen and (max-width: 980px) {
  .pj-search {
    flex-direction: column-reverse;
  }
}

.search-item {
  max-width: 34rem;
  width: 100%;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .search-item {
    width: calc(50% - 1.2rem);
  }
}
@media screen and (max-width: 580px) {
  .search-item {
    width: 100%;
    justify-content: center;
    max-width: 100%;
    flex-wrap: wrap;
  }
}
.search-item label {
  font-size: 1.6rem;
}
@media only screen and (max-width: 800px) {
  .search-item label {
    font-size: 1.4rem;
  }
}
.search-item label {
  font-weight: 300;
  color: #0C121D;
  text-transform: uppercase;
  margin-right: 2.4rem;
}
@media screen and (max-width: 768px) {
  .search-item label {
    margin-right: 1.2rem;
  }
}
@media screen and (max-width: 580px) {
  .search-item label {
    min-width: 9rem;
  }
}
.search-item input,
.search-item select {
  color: #101941;
  padding: 0;
  border: none;
  border-radius: 0;
  height: 2.2rem;
}
.search-item input::placeholder,
.search-item select::placeholder {
  color: #0C121D;
  opacity: 0.2;
}
@media screen and (max-width: 580px) {
  .search-item input,
  .search-item select {
    flex: 1;
  }
}
.search-item img {
  width: 1rem;
}
.search-item button {
  margin-left: 0.8rem;
  width: 0.8rem;
}
.search-item input {
  font-size: 1.6rem;
  border-bottom: 0.1rem solid #d6d6d6;
}

.btn-submit {
  display: flex;
  justify-content: center;
  gap: 1rem;
}

.banner-pj {
  position: relative;
  display: flex;
  align-items: end;
  color: #fff;
  overflow: hidden;
  height: calc(100dvh - 8rem);
  transition: clip-path 1.5s ease-in-out;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
.banner-pj.is-inview {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.banner-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: -1;
  will-change: transform;
}
.banner-bg::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  inset: 1;
  background: linear-gradient(180deg, rgba(12, 18, 29, 0) 60%, rgb(13, 20, 50) 100%);
}
.banner-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.banner-txt {
  width: 100%;
  padding: 4rem 4rem 8rem 4rem;
  display: flex;
  align-items: end;
  gap: 2.4rem;
  flex-wrap: wrap;
  row-gap: 6rem;
}
@media screen and (max-width: 480px) {
  .banner-txt {
    padding: 6rem 1.5rem;
  }
}

.title-48,
.pj-ban-info {
  width: calc(50% - 1.2rem);
}
@media screen and (max-width: 980px) {
  .title-48,
  .pj-ban-info {
    width: 100%;
    text-align: center;
  }
}

.pj-ban-info {
  display: flex;
  gap: 13rem;
  justify-content: end;
  text-transform: uppercase;
  flex-wrap: wrap;
  row-gap: 3.2rem;
}
@media screen and (max-width: 1400px) {
  .pj-ban-info {
    gap: 4rem;
    justify-content: center;
  }
}
@media screen and (max-width: 480px) {
  .pj-ban-info {
    gap: 2.4rem;
    font-size: 1.4rem;
  }
}

.pj-info {
  padding: 10rem 0;
  transition: 0.8s ease-in-out;
}
.pj-info.is-inview {
  background: #F7F5F1;
}
.pj-info.is-inview .img-box {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.pj-info.linen {
  background-color: #0D1432;
}

.pj-info-inner {
  display: flex;
  gap: 23.8rem;
}
@media screen and (max-width: 1500px) {
  .pj-info-inner {
    gap: 10rem;
  }
}
@media screen and (max-width: 1200px) {
  .pj-info-inner {
    gap: 4rem;
  }
}
@media screen and (max-width: 980px) {
  .pj-info-inner {
    flex-direction: column;
    align-items: center;
  }
}

.pi-img {
  max-width: 60rem;
  width: 100%;
}
.pi-img .img-box {
  width: 100%;
  padding-top: 141.6666666667%;
  position: relative;
  transition: 3s ease-in-out 0.75s;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
.pi-img .img-box img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
}
.pi-img .text-16 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 800px) {
  .pi-img .text-16 {
    font-size: 1.4rem;
  }
}
.pi-img .text-16 {
  color: #0D1432;
  text-transform: uppercase;
  margin-top: 1.2rem;
  opacity: 0.4;
}

.pi-content {
  width: 35%;
  margin: 0 auto;
}
@media screen and (max-width: 980px) {
  .pi-content {
    width: 100%;
  }
}

.pi-ct-text {
  margin-bottom: 4rem;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media screen and (max-width: 768px) {
  .pi-ct-text {
    margin-bottom: 3.2rem;
  }
}
.pi-ct-text > p {
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  .pi-ct-text > p {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  .pi-ct-text > p {
    font-size: 1.6rem;
  }
}
.pi-ct-text > p {
  text-align: justify;
}
.pi-ct-text > p:first-of-type {
  margin: 0;
}
.pi-ct-text .text-20 {
  line-height: 1.5;
  font-weight: 300;
  text-align: justify;
}

.pi-ct-item {
  display: flex;
  justify-content: space-between;
  color: #0D1432;
  align-items: center;
  gap: 1.2rem;
}
.pi-ct-item:not(:first-child) {
  padding-top: 1.2rem;
  margin-top: 1.2rem;
  border-top: 0.1rem solid rgba(13, 20, 50, 0.2);
}
.pi-ct-item .text-16 {
  opacity: 0.5;
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  .pi-ct-item .text-16 {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  .pi-ct-item .text-16 {
    font-size: 1.6rem;
  }
}
.pi-ct-item .text-16 {
  min-height: 2.6rem;
  display: flex;
  align-items: center;
}
.pi-ct-item .text-16.bold {
  opacity: 1;
}

.pj-social {
  display: flex;
  gap: 1.6rem;
}
.pj-social .share-item {
  display: flex;
}
.pj-social .share-item img {
  width: 2rem;
  height: 2rem;
  object-fit: contain;
  object-position: center;
}

.pj-preview {
  padding: 4rem 6rem 7rem 6rem;
  position: relative;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-attachment: fixed;
}
.pj-preview::before {
  opacity: 1 !important;
  transition: 0.8s ease-in-out;
  background-color: #0D1432 !important;
}
.pj-preview:has(.is-inview)::before {
  opacity: 0.8 !important;
  background-color: #fff !important;
}
.pj-preview.linen::before {
  opacity: 0.8 !important;
  background-color: #0D1432 !important;
}
@media screen and (max-width: 980px) {
  .pj-preview {
    padding: 4rem 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .pj-preview {
    min-height: auto;
  }
}
.pj-preview::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background: #0D1432;
  opacity: 0.8;
  z-index: 0;
}
.pj-preview.bg-white::before {
  background: #fff;
}
.pj-preview.bg-white .preview-item {
  color: #0D1432;
  padding-top: 2.6rem;
}
.pj-preview.bg-white .info-sign .text-20 {
  color: #0D1432;
}
.pj-preview.bg-white .info-sign .view-more {
  color: #0D1432;
  opacity: 0.5;
}
.pj-preview.bg-white .ss-link img {
  filter: brightness(0) saturate(100%) invert(10%) sepia(12%) saturate(3178%) hue-rotate(190deg) brightness(99%) contrast(104%);
}
.pj-preview.bg-white .js-pagi-progress {
  background: rgba(122, 122, 122, 0.4);
}
.pj-preview.bg-white .js-pagi-progress.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #0D1432;
}
.pj-preview.bg-white .js-btn-prev img,
.pj-preview.bg-white .js-btn-next img {
  filter: brightness(0) saturate(100%) invert(10%) sepia(12%) saturate(3178%) hue-rotate(190deg) brightness(99%) contrast(104%);
}

.pj-p-icon {
  display: flex;
  max-width: 20rem;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.pj-p-icon img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.pj-preview-slide {
  display: flex;
  justify-content: space-between;
  gap: 2.4rem;
  align-items: center;
  margin: 4rem 0;
  position: relative;
  z-index: 2;
}
.pj-preview-slide .swiper {
  max-width: 109rem;
  margin: 0 auto;
}
@media screen and (max-width: 680px) {
  .pj-preview-slide .prev,
  .pj-preview-slide .next {
    display: none;
  }
}

.js-btn-prev,
.js-btn-next {
  width: 4.8rem;
  height: 4.8rem;
  display: flex;
  transition: 0.3s;
  border-radius: 50%;
  overflow: hidden;
  cursor: pointer;
  flex-shrink: 0;
}
@media screen and (max-width: 480px) {
  .js-btn-prev,
  .js-btn-next {
    width: 3.2rem;
    height: 3.2rem;
  }
}
.js-btn-prev.swiper-button-disabled,
.js-btn-next.swiper-button-disabled {
  opacity: 0.4;
  pointer-events: none;
}
.js-btn-prev img,
.js-btn-next img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: 0.3s;
}
.js-btn-prev:hover,
.js-btn-next:hover {
  background: #fff;
}
.js-btn-prev:hover img,
.js-btn-next:hover img {
  filter: invert(0) brightness(0);
}

.js-btn-prev {
  transform: scaleX(-1);
}

.preview-item {
  color: #fff;
  text-align: center;
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  .preview-item {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  .preview-item {
    font-size: 1.6rem;
  }
}
.preview-item {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  font-weight: 300;
  line-height: 1.5;
}
.preview-item > p {
  font-size: 1.6rem;
}
.preview-item > p br {
  display: none;
}

.pj-info-bottom {
  display: flex;
  justify-content: space-between;
  align-items: end;
  position: relative;
  z-index: 1;
}

.pi-social {
  display: flex;
  gap: 2rem;
  min-width: 20.8rem;
}
@media screen and (max-width: 580px) {
  .pi-social {
    order: 1;
  }
}

.pj-info-bottom {
  max-width: 140.2rem;
  width: 100%;
  padding: 0 1.5rem;
  margin: 0 auto;
}

.inf-bot-inner {
  display: flex;
  justify-content: space-between;
  gap: 2.4rem;
  width: 100%;
  align-items: end;
}
@media screen and (max-width: 580px) {
  .inf-bot-inner {
    flex-wrap: wrap;
    row-gap: 1.6rem;
  }
}

.info-sign {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  color: #fff;
}
@media screen and (max-width: 580px) {
  .info-sign {
    order: 2;
  }
}
.info-sign .view-more {
  text-transform: uppercase;
  font-size: 1.6rem;
}
@media only screen and (max-width: 800px) {
  .info-sign .view-more {
    font-size: 1.4rem;
  }
}
.info-sign .view-more {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 1.2;
  width: fit-content;
  margin-left: auto;
}

.js-pagi-progress {
  max-width: 20rem;
  position: relative;
  height: 0.2rem !important;
  background: rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 580px) {
  .js-pagi-progress {
    order: 0;
    width: 100%;
    max-width: 100%;
  }
}
.js-pagi-progress.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #fff;
}

.ani-img {
  height: 100dvh;
}
.ani-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ani-gallery {
  position: relative;
}

.ani-gallery-inner {
  display: flex;
  gap: 2.4rem;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .ani-gallery-inner .next,
  .ani-gallery-inner .prev {
    display: none;
  }
}

.ani-gallery {
  padding: 8rem 1.6rem 10rem;
}
@media screen and (max-width: 1200px) {
  .ani-gallery {
    padding: 3rem 1.6rem 10rem;
  }
}
.ani-gallery .swiper {
  margin: 0 auto;
  width: 100%;
}
.ani-gallery .swiper-slide {
  width: 100%;
}

.gal-item {
  width: 100%;
}
.gal-item .img-box {
  width: 100%;
  padding-top: 56.9343065693%;
  position: relative;
}
.gal-item .img-box img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: contain;
}
.gal-item_text {
  margin-top: 1.2rem;
  text-align: center;
}
.gal-item_text .text-14 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 1200px) {
  .gal-item_text .text-14 {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 800px) {
  .gal-item_text .text-14 {
    font-size: 1.5rem;
  }
}
.gal-item_text .text-14 {
  color: white;
  text-transform: uppercase;
  font-family: var(--font-title);
}

.animation-block {
  position: relative;
}
.animation-block .js-pagi-progress {
  position: absolute !important;
  bottom: 6rem !important;
  left: 50% !important;
  transform: translateX(-50%);
  top: unset;
}

.ani-team {
  display: flex;
  padding: 8rem 4rem;
  align-items: center;
  gap: 14rem;
  transition: 0.4s ease-in-out;
  background-color: #F7F5F1;
}
@media screen and (max-width: 1400px) {
  .ani-team {
    gap: 6rem;
  }
}
@media screen and (max-width: 1100px) {
  .ani-team {
    flex-direction: column-reverse;
    padding: 4rem 1.5rem;
  }
}
.ani-team.is-inview {
  background-color: #0D1432;
}
.ani-team.is-inview .ani-team-img {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.ani-team-img {
  max-width: 71.2rem;
  width: 100%;
  transition: 1.5s ease-in-out;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
@media screen and (max-width: 1400px) {
  .ani-team-img {
    max-width: 50%;
  }
}
@media screen and (max-width: 1100px) {
  .ani-team-img {
    max-width: 60rem;
    margin: 0 auto;
  }
}
.ani-team-img img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.ani-team-info {
  flex: 1;
  color: #fff;
  margin: 0 auto;
  max-width: 65rem;
}
@media screen and (max-width: 1100px) {
  .ani-team-info {
    width: 100%;
    flex: unset;
  }
}
.ani-team-info .text-40 {
  text-align: center;
  font-size: 4rem;
}
@media only screen and (max-width: 1200px) {
  .ani-team-info .text-40 {
    font-size: 3.5rem;
  }
}
@media only screen and (max-width: 800px) {
  .ani-team-info .text-40 {
    font-size: 2.7rem;
  }
}
.ani-team-info .text-40 {
  font-weight: 600;
  margin-bottom: 4.8rem;
}

.team-list {
  display: flex;
  flex-direction: column;
}

.team-item {
  padding-left: 4.2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.2rem 0;
  position: relative;
}
.team-item::before {
  content: "";
  width: calc(100% - 4.2rem);
  height: 0.1rem;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  right: 0;
  position: absolute;
}
.team-item:first-child::after {
  content: "";
  width: calc(100% - 4.2rem);
  height: 0.1rem;
  background: rgba(255, 255, 255, 0.2);
  top: 0;
  right: 0;
  position: absolute;
}
.team-item .text-16 {
  display: flex;
  gap: 2.4rem;
  color: #fff;
  opacity: 0.5;
  font-size: 1.6rem;
}
@media only screen and (max-width: 800px) {
  .team-item .text-16 {
    font-size: 1.4rem;
  }
}
.team-item .text-16 {
  min-height: 2.6rem;
  align-items: center;
  text-align: end;
}
@media screen and (max-width: 768px) {
  .team-item .text-16 {
    gap: 0.8rem;
  }
}
.team-item .text-16.bold {
  opacity: 1;
  max-width: 25rem;
  text-align: start;
}
@media screen and (max-width: 580px) {
  .team-item .text-16.bold {
    max-width: 18rem;
  }
}

.project-req {
  padding: 12rem 0rem 12rem;
}
@media screen and (max-width: 991px) {
  .project-req {
    padding: 6rem 0rem;
  }
}
@media screen and (max-width: 576px) {
  .project-req {
    padding: 4rem 0rem;
  }
}
.project-req {
  transition: 0.6s ease-in-out 0.6s;
  background-color: rgb(247, 245, 241);
}
.project-req.is-inview {
  background: rgba(247, 245, 241, 0.8);
}

.pj-req-inner {
  display: flex;
  flex-wrap: wrap;
  row-gap: 3.2rem;
  margin: 0 -1.2rem;
}

.pj-req-title {
  width: 25%;
  padding: 0 1.2rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  justify-content: space-between;
}
.pj-req-title .btn-sec {
  height: fit-content;
}
@media screen and (max-width: 1024px) {
  .pj-req-title {
    width: 100%;
    flex-direction: row;
    align-items: end;
  }
}
.pj-req-title .title-40 {
  font-weight: 600;
  text-transform: uppercase;
}
@media screen and (max-width: 1024px) {
  .pj-req-title .title-40 br {
    display: none;
  }
}

.pj-req-list {
  width: 75%;
  padding: 0 1.2rem;
}
@media screen and (max-width: 1024px) {
  .pj-req-list {
    width: 100%;
  }
}

.swiper {
  margin: 0 -1.2rem;
}
@media screen and (max-width: 768px) {
  .swiper {
    margin: 0 -0.5rem;
  }
}

.swiper-slide {
  width: 33.3333333333%;
  padding: 0 1.2rem;
}
@media screen and (max-width: 768px) {
  .swiper-slide {
    padding: 0 0.5rem;
    width: 50%;
  }
}
@media screen and (max-width: 480px) {
  .swiper-slide {
    width: 70%;
  }
}

.req-nav {
  display: flex;
  gap: 1.2rem;
  flex-shrink: 0;
}

.req-slide-action {
  display: flex;
  align-items: end;
  gap: 2.4rem;
  margin-top: 2.4rem;
}
.req-slide-action .js-pagi-progress {
  flex: 1;
  max-width: 100%;
  background: rgba(13, 20, 50, 0.2);
}
.req-slide-action .js-pagi-progress.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #0D1432;
  height: 0.4rem !important;
  top: unset;
  bottom: 0;
}
.req-slide-action .js-btn-prev:hover,
.req-slide-action .js-btn-next:hover {
  background: #101941;
}
.req-slide-action .js-btn-prev:hover img,
.req-slide-action .js-btn-next:hover img {
  filter: invert(1) brightness(10);
}

.sticky-search {
  position: fixed;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 10;
  transform: translateY(calc(0% - 6rem));
  transition: 0.4s ease-in-out;
  background: #F7F5F1;
  padding: 1.9rem 4rem;
  max-height: 60rem;
  overflow-y: auto;
}
@media screen and (max-width: 768px) {
  .sticky-search {
    transform: translateY(calc(0% - 4rem));
    padding: 0.8rem 1.5rem;
  }
}
.sticky-search.is-active {
  top: 100%;
  transform: translateY(-100%);
  transition: 0.6s;
}
.sticky-search.is-active .btn-close {
  opacity: 1;
  pointer-events: initial;
}
.sticky-search.is-hidden {
  opacity: 0;
  pointer-events: none;
}

.pj-check {
  display: flex;
  gap: 8rem;
  align-items: start;
}
@media screen and (max-width: 1024px) {
  .pj-check {
    gap: 2.4rem;
  }
}
@media screen and (max-width: 980px) {
  .pj-check {
    flex-wrap: wrap;
    gap: 2.4rem;
  }
}

.pj-check-list {
  max-width: 25rem;
}
.pj-check-list .selected {
  min-height: 2.9rem;
}

.pj-check-item {
  display: flex;
  gap: 2.4rem;
}
@media screen and (max-width: 1024px) {
  .pj-check-item {
    gap: 1.2rem;
  }
}
.pj-check-item > .text-16 {
  color: #0C121D;
  opacity: 0.5;
  text-transform: uppercase;
}

.check-list {
  margin-top: 4rem;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media screen and (max-width: 1024px) {
  .check-list {
    margin-top: 2.4rem;
  }
}
@media screen and (max-width: 980px) {
  .check-list {
    margin-top: 1.2rem;
  }
}
.check-list .check-item {
  font-size: 1.4rem;
  color: #0C121D;
  font-weight: 300;
  opacity: 0.5;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}
@media screen and (hover: hover) and (pointer: fine) and (min-width: 1201px) {
  .check-list .check-item:hover, .check-list .check-item:focus-visible {
    opacity: 1;
  }
}

.pj-search-top {
  display: none;
  justify-content: space-between;
  margin-bottom: 1.6rem;
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid #b9b9b9;
}
.pj-search-top .text-20 {
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  .pj-search-top .text-20 {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  .pj-search-top .text-20 {
    font-size: 1.6rem;
  }
}
.pj-search-top .text-20 {
  font-weight: 500;
  color: #0D1432;
  opacity: 0.5;
}
@media screen and (max-width: 980px) {
  .pj-search-top {
    display: flex;
  }
}
.pj-search-top .btn-close {
  display: flex;
  width: 2.4rem;
  height: 2.4rem;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
}
.pj-search-top .btn-close img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pre-item-img {
  max-width: 40.2rem;
  margin: 0 auto;
  width: 100%;
}
.pre-item-img.is-inview .img-box img {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.pre-item-img .img-box {
  width: 100%;
  padding-top: 147.7611940299%;
  position: relative;
}
.pre-item-img .img-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0;
  transition: 1.5s ease-in-out;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}

.pre-tag-img {
  padding: 1rem;
  font-size: 2rem;
}
@media only screen and (max-width: 1200px) {
  .pre-tag-img {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 800px) {
  .pre-tag-img {
    font-size: 1.6rem;
  }
}
.pre-tag-img {
  font-weight: 700;
  color: #fff;
  background: #0D1432;
  min-width: 65%;
  max-width: 90%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.ani-short-info {
  background: transparent;
  padding: 8rem 4.4rem 0 4.4rem;
}

.ani-img-inner {
  display: flex;
  margin: 0 -1.2rem;
  flex-wrap: wrap;
}

.ani-img-box {
  width: 66.6666666667%;
  padding: 0 1.2rem;
}
@media screen and (max-width: 980px) {
  .ani-img-box {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .ani-img-box {
    width: 100%;
  }
}
.ani-img-box .img-box {
  position: relative;
  width: 100%;
  padding-top: 80.7339449541%;
  overflow: hidden;
  transform: translateY(-1rem);
}
.ani-img-box .img-box img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  inset: 0;
}

.ani-content {
  width: 33.3333333333%;
  position: relative;
  padding: 0 1.2rem;
}
@media screen and (max-width: 980px) {
  .ani-content {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .ani-content {
    width: 100%;
  }
}

.ani-c-bg {
  position: absolute;
  inset: 0;
}
.ani-c-bg::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background: #fff;
}
.ani-c-bg::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background: #F7F5F1;
  opacity: 0.8;
}
.ani-c-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.3;
}

.ani-c-inner {
  position: relative;
  height: 100%;
  padding: 3.2rem 1.5rem;
  display: flex;
  align-items: center;
}

.txt-content {
  position: relative;
  z-index: 2;
  max-width: 37.4rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media screen and (max-width: 980px) {
  .txt-content {
    gap: 2.4rem;
  }
}
.txt-content.is-inview .tag-ct {
  opacity: 1;
}
.txt-content.is-inview .tag-desc > * {
  opacity: 1;
}

.tag-ct {
  opacity: 0;
  padding: 1rem;
  font-size: 1.6rem;
}
@media only screen and (max-width: 800px) {
  .tag-ct {
    font-size: 1.4rem;
  }
}
.tag-ct {
  font-weight: 700;
  color: #fff;
  background: #0D1432;
  min-width: 80%;
  margin: 0 auto;
  text-align: center;
  transition: 0.6s ease-in-out;
}

.tag-desc {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.tag-desc > * {
  opacity: 0;
  transition: 0.6s ease-in-out;
}
.tag-desc > *:nth-child(1) {
  transition-delay: 0.6s;
}
.tag-desc > *:nth-child(2) {
  transition-delay: 1.2s;
}
.tag-desc > *:nth-child(3) {
  transition-delay: 1.8s;
}
.tag-desc > *:nth-child(4) {
  transition-delay: 2.4s;
}
.tag-desc > *:nth-child(5) {
  transition-delay: 3s;
}

.project-req .pj-item .tag-item,
.project-req .pj-item .text-24 {
  color: #0D1432;
}

body:has(.sticky-search) .footer {
  padding: 10rem 0rem 8rem;
}
@media screen and (max-width: 991px) {
  body:has(.sticky-search) .footer {
    padding: 6rem 0rem;
  }
}
@media screen and (max-width: 576px) {
  body:has(.sticky-search) .footer {
    padding: 4rem 0rem;
  }
}
/*# sourceMappingURL=project.css.map */
