@charset "UTF-8";
/*-----------------------------------------------------------------------------------

    Template Name: Orisa - Creative Portfolio Agency HTML Template
    Author: AliThemes
    Support: https://alithemes.ticksy.com/
    Description: Orisa - Creative Portfolio Agency HTML Template
    Version: 1.0.0



**********************************************/
/*----------------------------------------*/
/*  1.1 Default
/*----------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,100..1000&display=swap"');
/* beautify ignore:start */
.back-to-top-wrapper, a,
button,
p,
input,
select,
textarea,
li,
.transition-3 {
  transition: all 0.3s ease-out;
}

/* transform */
/* beautify ignore:start */
.card-home-testimonial__author svg {
  width: 50px;
  height: 50px;
}

@font-face {
  font-family: "melodrama";
  src: url("./classyvogueregular.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
.name-hero {
  margin-top: 40px;
  margin-bottom: 24px;
}

.hero-row,
.hero-col {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}

.hero-col {
  flex-direction: column;
  gap: 12px;
}

.name-row {
  display: flex;
  gap: 16px;
}

.name-part {
  font-size: clamp(90px, 15vw, 160px);
  font-weight: 600;
  font-family: "melodrama", serif;
}

.avatar-wrap {
  position: relative;
  flex-shrink: 0;
  width: -moz-fit-content;
  width: fit-content;
}

.avatar-wrap img.photo {
  width: clamp(90px, 12vw, 140px);
  height: clamp(90px, 12vw, 140px);
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 3px solid #fff;
  display: block;
}

.star {
  position: absolute;
  top: -14px;
  right: -14px;
  font-size: 28px;
  line-height: 1;
  animation: spin-slow 8s linear infinite;
  filter: drop-shadow(0 0 6px rgba(255, 160, 0, 0.6));
}

@keyframes spin-slow {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* Toggle: desktop shows .desktop-only, mobile shows .mobile-only */
.mobile-only {
  display: none;
}

@media (max-width: 640px) {
  .desktop-only {
    display: none;
  }
  .mobile-only {
    display: flex;
  }
  .avatar-wrap img.photo {
    width: clamp(110px, 15vw, 180px);
    height: clamp(110px, 15vw, 180px);
  }
  .mobile-only .name-part {
    font-size: clamp(44px, 12vw, 64px);
  }
}
.rotate-90 {
  rotate: 90deg;
}

.fz-150 {
  font-size: 120px;
}

.fz-170 {
  font-size: 130px;
}

.fz-180 {
  font-size: 160px;
}

.fz-200 {
  font-size: 150px;
}

.fz-240 {
  font-size: 240px;
}

.fz-290 {
  font-size: 220px;
}

.fz-120 {
  font-size: 80px;
}

.fz-ds-1 {
  font-size: 80px !important;
}

@media screen and (min-width: 1441px) {
  .fz-150 {
    font-size: 150px;
  }
  .fz-170 {
    font-size: 170px;
  }
  .fz-180 {
    font-size: 180px;
  }
  .fz-200 {
    font-size: 200px;
  }
  .fz-290 {
    font-size: 290px;
  }
  .fz-120 {
    font-size: 120px;
  }
  .fz-ds-1 {
    font-size: 124px !important;
  }
  .footer-2-connect-title {
    font-size: 220px;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 66.66666667% !important;
  }
}
.fz-60 {
  font-size: 60px;
}

.fz-18 {
  font-size: 18px;
}

.opacity-10 {
  opacity: 0.1;
}

.invert-0 {
  filter: invert(0);
}

.invert-1 {
  filter: invert(1);
}

.topbar {
  border-bottom-right-radius: 16px;
  border-bottom-left-radius: 16px;
  padding: 7px 0;
}

.category-tag {
  display: inline-flex;
  padding: 10px 12px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border-radius: 25px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  background: var(--at-neutral-0, #fefefe);
  color: var(--at-neutral-900);
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  position: relative;
}
.category-tag .dot {
  width: 6px;
  height: 6px;
  background: #45a557;
  border-radius: 50%;
}

.odometer {
  letter-spacing: 12px;
}

.sec-1-services {
  padding-top: 86px;
}

.cilent-word-wide-content {
  border-radius: 8px;
  background: rgba(254, 254, 254, 0.6);
  backdrop-filter: blur(4px);
  padding: 20px;
}
.cilent-word-wide-content .avatar {
  width: 56px;
  height: 56px;
  margin-left: -25px;
  border-radius: 86.296px;
  border: 3.5px solid var(--at-neutral-0);
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}
.cilent-word-wide-content .avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.cilent-word-wide-content .avatar:first-child {
  margin-left: 0;
}
.cilent-word-wide-content .avatar:hover {
  transform: translateY(-2px);
}

.bg-coating {
  position: relative;
}
.bg-coating::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(0px);
  z-index: 1;
}

.fill-primary path {
  fill: var(--at-theme-primary);
}

.px-blur-bottom {
  backdrop-filter: blur(10px);
  bottom: 0;
  flex: none;
  height: 80px;
  left: 0;
  -webkit-mask: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, black 100%) add;
          mask: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, black 100%) add;
  overflow: visible;
  position: fixed;
  right: 0;
  pointer-events: none;
  z-index: 999;
}

.block-author .avatar {
  margin-right: -22px;
  width: 64px;
  height: 64px;
  border-radius: 100px;
  border: 4px solid var(--at-common-white);
}
.block-author .avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block-author :nth-last-child(1) {
  margin-right: 0;
}

.at-brand-area {
  position: relative;
  padding: 50px 0;
  border-top: 1px solid var(--at-neutral-100);
  border-bottom: 1px solid var(--at-neutral-100);
}
.at-brand-area::before {
  position: absolute;
  content: "";
  width: 230px;
  height: 100%;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, var(--at-neutral-0) 100%);
  left: 0;
  top: 0;
  z-index: 3;
}
.at-brand-area::after {
  position: absolute;
  content: "";
  width: 230px;
  height: 100%;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, var(--at-neutral-0) 100%);
  right: 0;
  top: 0;
  z-index: 3;
  transform: rotate(-180deg);
}

.page-loader {
  position: fixed;
  width: 100vw;
  height: 100vh;
  z-index: 99999;
  display: flex;
  top: 0;
}

.page-loader .page-loader-logo {
  display: inline;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.bar {
  width: 10vw;
  height: 105vh;
  background: #1d1d1d;
}

.swiper-button-wrapper {
  display: flex;
  gap: 10px;
}

.swiper-btn-next,
.swiper-btn-prev {
  display: flex;
  width: 50px;
  height: 50px;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  border: 1px solid var(--at-neutral-700);
  background-color: var(--at-neutral-800);
  transition: all 0.3s ease-in-out;
  color: var(--at-common-white);
}
.swiper-btn-next::after,
.swiper-btn-prev::after {
  content: "";
}
.swiper-btn-next:hover,
.swiper-btn-next :active,
.swiper-btn-prev:hover,
.swiper-btn-prev :active {
  border-color: rgba(255, 255, 255, 0.3);
  background-color: var(--at-neutral-700);
  transition: all 0.3s ease-in-out;
}

.swiper-pagination {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 5px 8px;
  align-items: center;
  left: 50% !important;
  width: unset !important;
  gap: 5px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(1px);
  transform: translateX(-50%);
}
.swiper-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  text-align: center;
  line-height: 8px;
  font-size: 12px;
  color: var(--at-neutral-900);
  opacity: 1;
  background-color: var(--at-neutral-0);
}
.swiper-pagination .swiper-pagination-bullet-active {
  color: var(--at-neutral-900);
  background-color: var(--at-neutral-900);
}

.pagination {
  display: flex;
  align-items: center;
  gap: 8px;
  list-style: none;
  margin-top: 70px;
  padding: 0;
}
.pagination .pagination_item {
  background: var(--at-neutral-0);
  border-radius: 50%;
  border: 1px solid var(--at-neutral-100);
  width: 42px;
  height: 42px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: var(--at-fz-font-lg);
  font-weight: 600;
  text-transform: uppercase;
  color: var(--at-neutral-900);
  transition: all 0.3s ease-in-out;
}
.pagination .pagination_item svg path {
  fill: var(--at-neutral-900) !important;
}
.pagination .pagination_item:hover {
  color: var(--at-neutral-0) !important;
  background: var(--at-neutral-900) !important;
  border-color: var(--at-neutral-900) !important;
}
.pagination .pagination_item:hover svg path {
  fill: var(--at-neutral-0) !important;
}
.pagination .pagination_item:focus {
  box-shadow: none;
  background-color: var(--at-neutral-900) !important;
  border-color: var(--at-neutral-900);
  color: var(--at-neutral-0) !important;
}
.pagination .pagination_item:focus svg path {
  fill: var(--at-neutral-0) !important;
}
.pagination .pagination_item.current {
  color: var(--at-neutral-0) !important;
  background: var(--at-neutral-900) !important;
  border-color: var(--at-neutral-900) !important;
}
.pagination .pagination_item.current svg path {
  fill: var(--at-neutral-0) !important;
}

.slider-testimonial-thumbs .swiper-wrapper {
  display: flex;
  justify-content: center;
}
.slider-testimonial-thumbs .swiper-slide:nth-child(1) {
  position: absolute;
  top: 25%;
  left: 50%;
  transform: translateX(-50%);
  margin-left: -200px;
}
.slider-testimonial-thumbs .swiper-slide:nth-child(2) {
  position: absolute;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  margin-left: -100px;
}
.slider-testimonial-thumbs .swiper-slide:nth-child(3) {
  position: relative;
  z-index: 5;
}
.slider-testimonial-thumbs .swiper-slide:nth-child(4) {
  position: absolute;
  z-index: 4;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  margin-left: 100px;
}
.slider-testimonial-thumbs .swiper-slide:nth-child(5) {
  position: absolute;
  z-index: 3;
  top: 25%;
  left: 50%;
  transform: translateX(-50%);
  margin-left: 200px;
}
@media (max-width: 574.98px) {
  .slider-testimonial-thumbs .swiper-slide:nth-child(1) {
    margin-left: -95px;
  }
  .slider-testimonial-thumbs .swiper-slide:nth-child(2) {
    margin-left: -45px;
  }
  .slider-testimonial-thumbs .swiper-slide:nth-child(4) {
    margin-left: 45px;
  }
  .slider-testimonial-thumbs .swiper-slide:nth-child(5) {
    margin-left: 95px;
  }
}
.slider-testimonial-thumbs .swiper-slide {
  width: 150px !important;
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 574.98px) {
  .slider-testimonial-thumbs .swiper-slide {
    width: 70px !important;
    height: 70px;
  }
}
.slider-testimonial-thumbs .swiper-slide.swiper-slide-thumb-active .avatar-thumbnail {
  transform: scale(1.05);
  transition: all 0.3s ease-in-out;
}

.image-slider {
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-100, #dfdfdf);
}

.avatar-thumbnail {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  overflow: hidden;
  border: 8px solid var(--at-neutral-0);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .avatar-thumbnail {
    width: 120px;
    height: 120px;
  }
}
@media (max-width: 574.98px) {
  .avatar-thumbnail {
    width: 60px;
    height: 60px;
    border-width: 4px;
  }
}

/* Text Truncation */
.text-truncate-1 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 1.5em;
}

.text-truncate-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 3em;
}

.text-truncate-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 4.5em;
}

.text-truncate-4 {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 6em;
}

.text-truncate-5 {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 8em;
}

.at-image-hover .content {
  opacity: 0;
  transition: all 0.5s ease;
  transform: translateY(-15px);
}
.at-image-hover .zoom-blur-image {
  transition: all 0.5s ease;
}
.at-image-hover:hover .content {
  opacity: 1;
  transform: translateY(0);
}
.at-image-hover:hover .zoom-blur-image {
  transition: all 0.5s ease;
  filter: blur(5px);
  scale: 1.05;
}

.border-bottom-900 {
  border-bottom: 1px solid var(--at-neutral-900);
}

.border-bottom-950 {
  border-bottom: 1px solid var(--at-neutral-950);
}

.border-100 {
  border: 1px solid var(--at-neutral-100) !important;
}

.border-bottom-opacity {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.border-top-opacity {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.border-top-100 {
  border-top: 1px solid var(--at-neutral-100) !important;
}

.border-bottom-100 {
  border-bottom: 1px solid var(--at-neutral-100) !important;
}

@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .sec-1-home-3 .mb-100 {
    margin-bottom: 50px;
  }
}

.card-item__bg {
  border-radius: 16px;
  border: 9px solid rgba(255, 255, 255, 0.3);
  overflow: hidden;
}
.card-item-avatar {
  margin: 30px;
}
.card-item-avatar img {
  border-radius: 100px;
  border: 4px solid var(--at-neutral-0);
  display: inline-flex;
  height: 65px;
  justify-content: flex-end;
  align-items: center;
}
.card-item-content {
  margin: 40px;
}
.card-item-content svg {
  width: 40px;
  height: 40px;
  margin-bottom: 19px;
}

.at-brand-item {
  display: flex;
  width: 180px;
  height: 180px;
  padding: 0 29px 0 30px;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  border-radius: 16px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  background: var(--at-neutral-0, #fefefe);
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .at-brand-item {
    width: 165px;
    height: 165px;
  }
}

.home-3-section-12 .box-newsletter {
  position: relative;
  border-radius: 42px;
}
.home-3-section-12 .box-newsletter::before {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 90%;
  height: 20%;
  border-radius: 42px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  background: var(--at-neutral-0, #fefefe);
}

.scroll-active-item .item.active .block-number {
  background: var(--at-theme-primary) !important;
  transition: all 0.3s ease;
}
.scroll-active-item .item.active .block-number .number {
  color: var(--at-neutral-0);
  transition: all 0.3s ease;
}
.scroll-active-item .item.active .rectangular::after {
  opacity: 1;
  width: 99px;
  height: 99px;
  transition: all 0.3s ease;
}
.scroll-active-item .item .rectangular {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 50px;
  background: var(--at-neutral-800);
  border-radius: 16px;
  border: 1px solid var(--at-neutral-700);
  padding: 50px;
  z-index: -2;
  overflow: hidden;
  transition: all 0.3s ease;
}
.scroll-active-item .item .rectangular::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  background: var(--at-theme-primary);
  filter: blur(125px);
  opacity: 0;
  z-index: -1;
  transition: all 0.5s ease;
}

.input-subscribe {
  position: relative;
  background: #fefefe;
  padding: 12px 14px 12px 32px;
  border-radius: 8px;
}
.input-subscribe input {
  width: 100%;
  height: 100%;
  border: none !important;
  outline: none;
}

.navigation-section-10 {
  display: flex;
  align-items: center;
  gap: 16px;
}
.navigation-section-10 .item {
  width: 100px;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .navigation-section-10 .item {
    width: 70px;
    height: 70px;
  }
}
@media (max-width: 574.98px) {
  .navigation-section-10 .item {
    width: 58px;
    height: 58px;
  }
}
.navigation-section-10 .item.active {
  scale: 0.9;
  transition: all 0.3s ease;
}

.navigation-sec4home3 .item {
  padding: 10px 0;
  border-bottom: 1px solid var(--at-neutral-100);
  transition: all 0.3s ease;
}
.navigation-sec4home3 .item .content span {
  flex: 0 0 60px;
}
.navigation-sec4home3 .item .content .h6 {
  flex: 1;
}
.navigation-sec4home3 .item .content svg {
  opacity: 0;
  transition: all 0.3s ease;
}
.navigation-sec4home3 .item.active {
  background-color: var(--at-neutral-100);
}
.navigation-sec4home3 .item.active .content {
  margin: 0 16px;
  transition: all 0.3s ease;
}
.navigation-sec4home3 .item.active svg {
  opacity: 1;
}

.border-white\/01 {
  border-right: 1px solid var(--at-neutral-100);
}

.border-dark\/01 {
  border-right: 1px solid var(--at-neutral-900);
}

@media (min-width: 768px) {
  .md\:grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
}
.icon-shape {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .w-lg-50 {
    width: 50%;
  }
}

@media (max-width: 574.98px) {
  .w-50 {
    width: 100% !important;
  }
}
.size-30 {
  width: 30px;
  height: 30px;
}

.size-40 {
  width: 40px;
  height: 40px;
}

.size-50 {
  width: 50px;
  height: 50px;
}

.size-56 {
  width: 56px;
  height: 56px;
}

.size-80 {
  width: 80px;
  height: 80px;
}

.size-100 {
  width: 100px !important;
  height: 100px !important;
}

.size-190 {
  width: 190px;
  height: 190px;
}

.cart-stats__item {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: wrap;
  border-bottom: 1px solid var(--at-neutral-100);
  padding-bottom: 42px;
  margin-bottom: 50px;
}
.cart-stats__item-title {
  flex: 1;
  letter-spacing: -1.2px;
}
.cart-stats__item-content {
  flex: 0 0 500px;
  margin-top: 16px;
}

/* Allow page scroll when cursor is in empty area; children (.client-capsule-wrapper > *) keep pointer-events: auto for drag */
.client-capsule-wrapper-box {
  pointer-events: none;
}

.client-capsule-wrapper {
  position: relative;
  overflow: hidden;
  pointer-events: none;
  margin-top: -200px;
  height: 633px;
}

.client-box {
  width: 250px;
  height: 100px;
  padding: 10px 20px;
  background-color: var(--at-neutral-900);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  transform: translate(-50%, -50%) rotate(0rad);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .client-box {
    width: 200px;
    height: 75px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .client-box {
    width: 150px;
    height: 60px;
  }
}
@media (max-width: 574.98px) {
  .client-box {
    width: 100px;
    height: 40px;
  }
}

.client-capsule-wrapper > * {
  position: absolute;
  display: inline-block;
  margin-bottom: 0;
  left: 0;
  top: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: auto;
  transition: none;
}

.client-box img {
  pointer-events: none;
  max-width: 100%;
  max-height: 100%;
}

.box-count {
  text-align: left;
  margin: 0px 0px 20px 0px;
}
.box-count .deals-countdown {
  border-radius: 0px;
  display: flex;
  padding: 4px 0px;
  width: 100%;
  margin: auto;
  max-width: 100%;
}
.box-count .deals-countdown .countdown-section {
  display: inline-block;
  text-align: center;
  width: 25%;
  line-height: 12px;
  position: relative;
}
.box-count .deals-countdown .countdown-section span {
  display: block;
  color: var(--at-common-white);
}
.box-count .deals-countdown .countdown-section .countdown-period {
  text-transform: capitalize;
}
.box-count .deals-countdown .countdown-section:last-child::before {
  display: none;
}
.box-count.box-count-square {
  margin-bottom: 5px;
}
.box-count.box-count-square .deals-countdown {
  background-color: var(--at-neutral-0);
  width: 100%;
  margin: auto;
  text-align: left;
  display: flex;
  max-width: 100%;
}
.box-count.box-count-square .deals-countdown .countdown-section {
  display: inline-block;
  text-align: center;
  line-height: 12px;
  position: relative;
  margin: 0px 16px 0px 0px;
  width: auto;
}
.box-count.box-count-square .deals-countdown .countdown-section .countdown-period {
  color: var(--at-neutral-900);
  font-size: 24px;
  line-height: normal;
  font-weight: 600;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .box-count.box-count-square .deals-countdown .countdown-section .countdown-period {
    font-size: 20px;
    line-height: 20px;
  }
}
@media (max-width: 574.98px) {
  .box-count.box-count-square .deals-countdown .countdown-section .countdown-period {
    font-size: 16px;
    line-height: 16px;
  }
}
.box-count.box-count-square .deals-countdown .countdown-amount {
  background-color: var(--at-neutral-50);
  border-radius: 12px;
  color: var(--at-neutral-900);
  width: 176px;
  padding: 50px 40px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 180px;
  display: inline-block;
  margin-bottom: 5px;
  font-size: 72px !important;
  font-weight: 600;
  line-height: 76px !important;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .box-count.box-count-square .deals-countdown .countdown-amount {
    width: 130px;
    height: 140px;
    padding: 50px 40px;
    font-size: 40px !important;
    line-height: 40px !important;
  }
}
@media (max-width: 574.98px) {
  .box-count.box-count-square .deals-countdown .countdown-amount {
    width: 65px;
    height: 70px;
    padding: 22px 5px;
    font-size: 24px !important;
    line-height: 24px !important;
  }
}

.menu-list .menu-list__item {
  transition: all 0.3s ease;
  border-bottom: 1px solid var(--at-neutral-300);
  position: relative;
}
.menu-list .menu-list__item .text {
  transition: all 0.3s ease;
  font-weight: 600;
}
.menu-list .menu-list__item.hasdot::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-0);
  transform: translateY(-50%) translateX(-100%);
  transition: all 0.3s ease;
  opacity: 0;
}
.menu-list .menu-list__item.hasdot:hover::before {
  opacity: 50%;
  transform: translateY(-50%) translateX(0);
}
.menu-list .menu-list__item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 12px;
  height: 12px;
  transform: translateY(-50%) translateX(-100%);
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M10.0208 3.41421L1.41421 12.0208L0 10.6066L8.60659 2H1.02082V0H12.0208V11H10.0208V3.41421Z" fill="%23FEFEFE"/></svg>');
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.5;
  transition: all 0.3s ease;
}
.menu-list .menu-list__item:hover .text {
  margin-left: 18px;
}
.menu-list .menu-list__item:hover::after {
  opacity: 1;
  transform: translateY(-50%) translateX(-5px);
}
.menu-list.style-2 .menu-list__item.hasdot::before {
  background-color: var(--at-neutral-900);
}
.menu-list.style-2 .menu-list__item::after {
  filter: invert(1);
}

.line-underline {
  display: inline-block;
  width: 60px;
  height: 1px;
  background-color: var(--at-neutral-900);
}

.reveal-text.indent .split-line:first-child {
  padding-left: 20px;
}

@media (max-width: 574.98px) {
  .reveal-text.indent .split-line:first-child {
    padding-left: 0;
  }
}
.text-indent {
  text-indent: 20px;
}

:root {
  /**
  @font family declaration
  */
  --at-ff-body: 'DM Sans', sans-serif;
  --at-ff-heading: 'DM Sans', sans-serif;
  --at-ff-fontawesome: "Font Awesome 6 Pro";
  /**
  @font size declaration
  */
  --at-fz-body: 14px;
  --at-fz-font-label: 12px;
  --at-fz-font-md: 16px;
  --at-fz-font-lg: 20px;
  --at-fz-font-xl: 22px;
  --at-fz-font-2xl: 28px;
  --at-fz-font-3xl: 32px;
  --at-fz-ds-1: 124px;
  --at-fz-24: 24px;
  --at-fz-10: 10px;
  /**
  @color declaration
  */
  --at-common-white: #ffffff;
  --at-common-white-rgb: 255, 255, 255;
  --at-common-black: #1e1e1e;
  --at-common-black-rgb: 30, 30, 30;
  --at-common-bubbles: #e1eeb7;
  --at-common-dark-white: #1e1e1e;
  --at-common-dark-white-rgb: 30, 30, 30;
  --at-common-dark-black: #FFFFFF;
  --at-common-dark-black-rgb: 255, 255, 255;
  --at-common-dark-bubbles: #040403;
  --at-neutral-0: #FEFEFE;
  --at-neutral-0-rgb: 254, 254, 254;
  --at-neutral-50: #F2F2F2;
  --at-neutral-50-rgb: 242, 242, 242;
  --at-neutral-100: #DFDFDF;
  --at-neutral-200: #CDCCCC;
  --at-neutral-300: #B7B7B7;
  --at-neutral-500: #585959;
  --at-neutral-700: #303030;
  --at-neutral-800: #212121;
  --at-neutral-900: #1D1D1D;
  --at-neutral-950: #0F0F0F;
  --at-neutral-dark-0: #0C0C0C;
  --at-neutral-dark-0-rgb: 12, 12, 12;
  --at-neutral-dark-50: #141414;
  --at-neutral-dark-50-rgb: 20, 20, 20;
  --at-neutral-dark-100: #212121;
  --at-neutral-dark-200: #2D2D2D;
  --at-neutral-dark-300: #404040;
  --at-neutral-dark-500: #B3B3B3;
  --at-neutral-dark-700: #535353;
  --at-neutral-dark-800: #EAEAEA;
  --at-neutral-dark-900: #EFEFEF;
  --at-neutral-dark-950: #F4F4F4;
  --at-grey-1: #5e5959;
  --at-grey-2: #f3f3f3;
  --at-grey-3: #b6bcc6;
  --at-grey-4: #f6f6f6;
  --at-grey-5: #d7cdcd;
  --at-theme-primary: #F0460E;
  --at-gradient-primary: linear-gradient(90deg, #a020f0 0%, #00ffd1 100%);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/*---------------------------------
	typography css start 
---------------------------------*/
body {
  font-size: 16px;
  line-height: 1.2;
  font-weight: normal;
  color: var(--at-neutral-900);
  background-color: var(--at-neutral-0);
  font-family: var(--at-ff-body);
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -5%;
  transition: color 0.3s ease-out;
  color: var(--at-neutral-900);
  font-family: var(--at-ff-body);
}

h1,
.h1 {
  font-size: 70px;
}

h2,
.h2 {
  font-size: 60px;
}

h3,
.h3 {
  font-size: 52px;
}

h4,
.h4 {
  font-size: 38px;
}

h5,
.h5 {
  font-size: 26px;
}

h6,
.h6 {
  font-size: 20px;
}

.fz-font-lg {
  font-size: 18px !important;
}

@media screen and (min-width: 1401px) {
  h1,
  .h1 {
    font-size: 84px;
  }
  h2,
  .h2 {
    font-size: 72px;
  }
  h3,
  .h3 {
    font-size: 64px;
  }
  h4,
  .h4 {
    font-size: 48px;
  }
  h5,
  .h5 {
    font-size: 34px;
  }
  h6,
  .h6 {
    font-size: 24px;
  }
  .fz-font-lg {
    font-size: 20px !important;
  }
  .col-3xl-6 {
    width: 50% !important;
  }
}
ul {
  margin: 0px;
  padding: 0px;
}

p {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 15px;
  letter-spacing: -2%;
  line-height: 1.2;
  font-family: var(--at-ff-body);
  color: var(--at-neutral-500);
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

a:focus,
.button:focus {
  text-decoration: none;
  outline: none;
}

a:focus,
a:hover {
  color: inherit;
  text-decoration: none;
}

a,
button {
  color: inherit;
  outline: none;
  border: none;
  background: transparent;
}

button:hover {
  cursor: pointer;
}

button:focus {
  outline: 0;
}

.uppercase {
  text-transform: uppercase;
}

.capitalize {
  text-transform: capitalize;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=number],
input[type=password],
input[type=url],
textarea {
  outline: none;
  height: 56px;
  width: 100%;
  line-height: 56px;
  font-size: 14px;
  color: var(--at-neutral-900);
}
input[type=text]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=number]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=url]::-moz-placeholder,
textarea::-moz-placeholder {
  /* Firefox 19+ */
  color: var(--at-neutral-500);
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=url]::-moz-placeholder, textarea::-moz-placeholder {
  /* MODERN BROWSER */
  color: var(--at-neutral-500);
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
input[type=number]::placeholder,
input[type=password]::placeholder,
input[type=url]::placeholder,
textarea::placeholder {
  /* MODERN BROWSER */
  color: var(--at-neutral-500);
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=url]:focus,
textarea:focus {
  border-color: var(--at-neutral-900);
}
input[type=text]:focus::-moz-placeholder, input[type=email]:focus::-moz-placeholder, input[type=tel]:focus::-moz-placeholder, input[type=number]:focus::-moz-placeholder, input[type=password]:focus::-moz-placeholder, input[type=url]:focus::-moz-placeholder, textarea:focus::-moz-placeholder {
  opacity: 0;
}
input[type=text]:focus::placeholder,
input[type=email]:focus::placeholder,
input[type=tel]:focus::placeholder,
input[type=number]:focus::placeholder,
input[type=password]:focus::placeholder,
input[type=url]:focus::placeholder,
textarea:focus::placeholder {
  opacity: 0;
}

textarea {
  line-height: 1.4;
  padding-top: 17px;
  padding-bottom: 17px;
}

input[type=color] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: none;
  border: 0;
  cursor: pointer;
  height: 100%;
  width: 100%;
  padding: 0;
  border-radius: 50%;
}

*::-moz-selection {
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  text-shadow: none;
}

::-moz-selection {
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  text-shadow: none;
}

::selection {
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  text-shadow: none;
}

*::-moz-placeholder {
  color: var(--at-neutral-900);
  font-size: 14px;
  opacity: 1;
}

*::placeholder {
  color: var(--at-neutral-900);
  font-size: 14px;
  opacity: 1;
}

/*---------------------------------
    1.1 Common Classes
---------------------------------*/
.sec-4-portfolio-details__gallery {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 24px;
}

.sec-4-portfolio-details__item {
  grid-column: span 3;
  margin: 0;
  min-width: 0;
}

.sec-4-portfolio-details__item img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}

/* 3 columns */
@media (max-width: 991.98px) {
  .sec-4-portfolio-details__gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
  }
  .sec-4-portfolio-details__item {
    grid-column: span 1;
  }
}
/* 2 columns */
@media (max-width: 767.98px) {
  .sec-4-portfolio-details__gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
}
/* 1 column */
@media (max-width: 575.98px) {
  .sec-4-portfolio-details__gallery {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .sec-4-portfolio-details__item {
    grid-column: span 1;
  }
}
.cover-image {
  width: 100%;
  aspect-ratio: 16/6;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

/* Phones */
@media (max-width: 767px) {
  .cover-image {
    background-size: cover;
    background-attachment: initial;
    aspect-ratio: 16/9;
  }
}
.overflow-unset {
  overflow: unset !important;
}

.card-home-project__image .anim-zoomin-wrap {
  height: 100%;
}

.w-img img {
  width: 100%;
}

.m-img img {
  max-width: 100%;
}

.fix {
  overflow: hidden;
}

.clear {
  clear: both;
}

.z-n1 {
  position: relative;
  z-index: -1;
}

.z-index-1 {
  position: relative;
  z-index: 1;
}

.z-index-2 {
  position: relative;
  z-index: 2;
}

.z-index-3 {
  position: relative;
  z-index: 3;
}

.z-index-4 {
  position: relative;
  z-index: 4;
}

.z-index-5 {
  position: relative;
  z-index: 5;
}

.z-index-6 {
  position: relative;
  z-index: 6;
}

.z-index-7 {
  position: relative;
  z-index: 7;
}

.z-index-8 {
  position: relative;
  z-index: 8;
}

.z-index-9 {
  position: relative;
  z-index: 9;
}

.z-index-10 {
  position: relative;
  z-index: 10;
}

.gx-5 {
  --bs-gutter-x: 5px;
}

.gx-10 {
  --bs-gutter-x: 10px;
}

.gx-20 {
  --bs-gutter-x: 20px;
}

.gx-30 {
  --bs-gutter-x: 30px;
}

.gx-40 {
  --bs-gutter-x: 40px;
}

.gx-45 {
  --bs-gutter-x: 45px;
}

.gx-50 {
  --bs-gutter-x: 50px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .gx-50 {
    --bs-gutter-x: 30px;
  }
}

.gx-60 {
  --bs-gutter-x: 60px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .gx-60 {
    --bs-gutter-x: 30px;
  }
}

.gx-70 {
  --bs-gutter-x: 70px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .gx-70 {
    --bs-gutter-x: 30px;
  }
}

.gx-80 {
  --bs-gutter-x: 80px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .gx-80 {
    --bs-gutter-x: 30px;
  }
}

.gx-90 {
  --bs-gutter-x: 90px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .gx-90 {
    --bs-gutter-x: 30px;
  }
}

.gx-100 {
  --bs-gutter-x: 100px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .gx-100 {
    --bs-gutter-x: 30px;
  }
}

.overflow-y-visible {
  overflow-x: hidden;
  overflow-y: visible;
}

.p-relative {
  position: relative;
}

.p-absolute {
  position: absolute;
}

.bg-position {
  background-position: bottom center;
  background-size: cover;
  background-repeat: no-repeat;
}

.slide-transtion {
  transition-timing-function: linear;
}
.slide-transtion .swiper-slide {
  width: auto;
}

.common-underline {
  background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor);
  background-size: 0 1px, 0 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 0.3s linear;
  transition: all 0.4s ease 0.3s ease-out;
}
.common-underline:hover {
  background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor);
  background-size: 0 1px, 100% 1px;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: background-size 0.3s linear;
  transition: all 0.4s ease 0.3s ease-out;
}

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

.bg-cover {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.text-red {
  color: var(--at-theme-primary);
}

@media (min-width: 1400px) {
  .container-1136 {
    max-width: 1136px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1400px) {
  .container-2200 {
    max-width: 2200px;
    margin-left: auto;
    margin-right: auto;
  }
}
.at-ff-body {
  font-family: var(--at-ff-body);
}

.at-ff-heading {
  font-family: var(--at-ff-heading);
}

.at-ff-fontawesome {
  font-family: var(--at-ff-fontawesome);
}

/* Font weight */
.fw-100 {
  font-weight: 100;
}

.fw-200 {
  font-weight: 200;
}

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

.fw-800 {
  font-weight: 800;
}

.fw-900 {
  font-weight: 900;
}

/* Font size */
.fz-body {
  font-size: var(--at-fz-body);
}

.fz-font-label {
  font-size: var(--at-fz-font-label);
}

.fz-font-md {
  font-size: var(--at-fz-font-md);
}

.fz-font-lg {
  font-size: var(--at-fz-font-lg);
}

.fz-font-xl {
  font-size: var(--at-fz-font-xl);
}

.fz-font-2xl {
  font-size: var(--at-fz-font-2xl);
}

.fz-font-3xl {
  font-size: var(--at-fz-font-3xl);
}

.fz-ds-1 {
  font-size: var(--at-fz-ds-1);
}

.fz-24 {
  font-size: var(--at-fz-24);
}

.fz-10 {
  font-size: var(--at-fz-10);
}

/* Color */
.common-white {
  color: var(--at-common-white) !important;
}

.common-white-rgb {
  color: var(--at-common-white-rgb) !important;
}

.common-black {
  color: var(--at-common-black) !important;
}

.common-black-rgb {
  color: var(--at-common-black-rgb) !important;
}

.common-bubbles {
  color: var(--at-common-bubbles) !important;
}

.common-dark-white {
  color: var(--at-common-dark-white) !important;
}

.common-dark-white-rgb {
  color: var(--at-common-dark-white-rgb) !important;
}

.common-dark-black {
  color: var(--at-common-dark-black) !important;
}

.common-dark-black-rgb {
  color: var(--at-common-dark-black-rgb) !important;
}

.common-dark-bubbles {
  color: var(--at-common-dark-bubbles) !important;
}

.neutral-0 {
  color: var(--at-neutral-0) !important;
}

.neutral-0-rgb {
  color: var(--at-neutral-0-rgb) !important;
}

.neutral-50 {
  color: var(--at-neutral-50) !important;
}

.neutral-50-rgb {
  color: var(--at-neutral-50-rgb) !important;
}

.neutral-100 {
  color: var(--at-neutral-100) !important;
}

.neutral-200 {
  color: var(--at-neutral-200) !important;
}

.neutral-300 {
  color: var(--at-neutral-300) !important;
}

.neutral-500 {
  color: var(--at-neutral-500) !important;
}

.neutral-700 {
  color: var(--at-neutral-700) !important;
}

.neutral-800 {
  color: var(--at-neutral-800) !important;
}

.neutral-900 {
  color: var(--at-neutral-900) !important;
}

.neutral-950 {
  color: var(--at-neutral-950) !important;
}

.neutral-dark-0 {
  color: var(--at-neutral-dark-0) !important;
}

.neutral-dark-0-rgb {
  color: var(--at-neutral-dark-0-rgb) !important;
}

.neutral-dark-50 {
  color: var(--at-neutral-dark-50) !important;
}

.neutral-dark-50-rgb {
  color: var(--at-neutral-dark-50-rgb) !important;
}

.neutral-dark-100 {
  color: var(--at-neutral-dark-100) !important;
}

.neutral-dark-200 {
  color: var(--at-neutral-dark-200) !important;
}

.neutral-dark-300 {
  color: var(--at-neutral-dark-300) !important;
}

.neutral-dark-500 {
  color: var(--at-neutral-dark-500) !important;
}

.neutral-dark-700 {
  color: var(--at-neutral-dark-700) !important;
}

.neutral-dark-800 {
  color: var(--at-neutral-dark-800) !important;
}

.neutral-dark-900 {
  color: var(--at-neutral-dark-900) !important;
}

.neutral-dark-950 {
  color: var(--at-neutral-dark-950) !important;
}

.grey-1 {
  color: var(--at-grey-1) !important;
}

.grey-2 {
  color: var(--at-grey-2) !important;
}

.grey-3 {
  color: var(--at-grey-3) !important;
}

.grey-4 {
  color: var(--at-grey-4) !important;
}

.grey-5 {
  color: var(--at-grey-5) !important;
}

.theme-primary {
  color: var(--at-theme-primary) !important;
}

.gradient-primary {
  color: var(--at-gradient-primary) !important;
}

/* Background Color */
.bg-common-white {
  background-color: var(--at-common-white) !important;
}

.bg-common-white-rgb {
  background-color: var(--at-common-white-rgb) !important;
}

.bg-common-black {
  background-color: var(--at-common-black) !important;
}

.bg-common-black-rgb {
  background-color: var(--at-common-black-rgb) !important;
}

.bg-common-bubbles {
  background-color: var(--at-common-bubbles) !important;
}

.bg-common-dark-white {
  background-color: var(--at-common-dark-white) !important;
}

.bg-common-dark-white-rgb {
  background-color: var(--at-common-dark-white-rgb) !important;
}

.bg-common-dark-black {
  background-color: var(--at-common-dark-black) !important;
}

.bg-common-dark-black-rgb {
  background-color: var(--at-common-dark-black-rgb) !important;
}

.bg-common-dark-bubbles {
  background-color: var(--at-common-dark-bubbles) !important;
}

.bg-neutral-0 {
  background-color: var(--at-neutral-0) !important;
}

.bg-neutral-0-rgb {
  background-color: var(--at-neutral-0-rgb) !important;
}

.bg-neutral-50 {
  background-color: var(--at-neutral-50) !important;
}

.bg-neutral-50-rgb {
  background-color: var(--at-neutral-50-rgb) !important;
}

.bg-neutral-100 {
  background-color: var(--at-neutral-100) !important;
}

.bg-neutral-200 {
  background-color: var(--at-neutral-200) !important;
}

.bg-neutral-300 {
  background-color: var(--at-neutral-300) !important;
}

.bg-neutral-500 {
  background-color: var(--at-neutral-500) !important;
}

.bg-neutral-700 {
  background-color: var(--at-neutral-700) !important;
}

.bg-neutral-800 {
  background-color: var(--at-neutral-800) !important;
}

.bg-neutral-900 {
  background-color: var(--at-neutral-900) !important;
}

.bg-neutral-950 {
  background-color: var(--at-neutral-950) !important;
}

.bg-neutral-dark-0 {
  background-color: var(--at-neutral-dark-0) !important;
}

.bg-neutral-dark-0-rgb {
  background-color: var(--at-neutral-dark-0-rgb) !important;
}

.bg-neutral-dark-50 {
  background-color: var(--at-neutral-dark-50) !important;
}

.bg-neutral-dark-50-rgb {
  background-color: var(--at-neutral-dark-50-rgb) !important;
}

.bg-neutral-dark-100 {
  background-color: var(--at-neutral-dark-100) !important;
}

.bg-neutral-dark-200 {
  background-color: var(--at-neutral-dark-200) !important;
}

.bg-neutral-dark-300 {
  background-color: var(--at-neutral-dark-300) !important;
}

.bg-neutral-dark-500 {
  background-color: var(--at-neutral-dark-500) !important;
}

.bg-neutral-dark-700 {
  background-color: var(--at-neutral-dark-700) !important;
}

.bg-neutral-dark-800 {
  background-color: var(--at-neutral-dark-800) !important;
}

.bg-neutral-dark-900 {
  background-color: var(--at-neutral-dark-900) !important;
}

.bg-neutral-dark-950 {
  background-color: var(--at-neutral-dark-950) !important;
}

.bg-grey-1 {
  background-color: var(--at-grey-1) !important;
}

.bg-grey-2 {
  background-color: var(--at-grey-2) !important;
}

.bg-grey-3 {
  background-color: var(--at-grey-3) !important;
}

.bg-grey-4 {
  background-color: var(--at-grey-4) !important;
}

.bg-grey-5 {
  background-color: var(--at-grey-5) !important;
}

.bg-theme-primary {
  background-color: var(--at-theme-primary) !important;
}

.bg-gradient-primary {
  background-color: var(--at-gradient-primary) !important;
}

/*---------------------------------
    Footer Fixed Bottom Effect (Kanso Style)
---------------------------------*/
#smooth-content {
  pointer-events: none;
}
#smooth-content > * {
  pointer-events: auto;
}
#smooth-content main {
  position: relative;
  z-index: 2;
  will-change: transform;
  min-height: 100vh;
}
#smooth-content .footer-placeholder {
  pointer-events: none;
}

.footer-fixed-bottom {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1;
  transform-origin: center bottom;
  will-change: transform;
}
.footer-fixed-bottom .at-footer-area {
  position: relative;
  z-index: 1;
}

.footer-placeholder {
  width: 100%;
  pointer-events: none;
}

.bg-primary-1 {
  background-color: var(--at-theme-primary);
}

.text-dark {
  color: var(--at-neutral-950) !important;
}

/*---------------------------------
    1.2 Default Spacing
---------------------------------*/
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-170 {
    padding-top: 115px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-165 {
    padding-top: 110px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-160 {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-155 {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-150 {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-145 {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-140 {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-135 {
    padding-top: 95px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-130 {
    padding-top: 90px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-125 {
    padding-top: 85px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-120 {
    padding-top: 80px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-115 {
    padding-top: 75px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-110 {
    padding-top: 70px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-105 {
    padding-top: 65px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-100 {
    padding-top: 60px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-170 {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-180 {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-190 {
    padding-top: 110px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-165 {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-160 {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-155 {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-150 {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-145 {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-140 {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-135 {
    padding-bottom: 95px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-130 {
    padding-bottom: 90px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-125 {
    padding-bottom: 85px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-120 {
    padding-bottom: 80px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-115 {
    padding-bottom: 75px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-110 {
    padding-bottom: 70px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-105 {
    padding-bottom: 65px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-100 {
    padding-bottom: 60px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-95 {
    padding-bottom: 55px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pb-90 {
    padding-bottom: 50px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .pt-90 {
    padding-top: 50px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  /* Font size */
  .fz-body {
    font-size: 16px !important;
  }
  .fz-font-label {
    font-size: 12px !important;
  }
  .fz-font-md {
    font-size: 18px !important;
  }
  .fz-font-lg {
    font-size: 20px !important;
  }
  .fz-font-xl {
    font-size: 22px !important;
  }
  .fz-font-2xl {
    font-size: 26px !important;
  }
  .fz-font-3xl {
    font-size: 28px !important;
  }
  .fz-ds-1 {
    font-size: 72px !important;
  }
  h1,
  .h1 {
    font-size: 58px;
  }
  h2,
  .h2 {
    font-size: 50px;
  }
  h3,
  .h3 {
    font-size: 42px;
  }
  h4,
  .h4 {
    font-size: 30px;
  }
  h5,
  .h5 {
    font-size: 28px;
  }
  h6,
  .h6 {
    font-size: 20px;
  }
  .fz-150 {
    font-size: 100px;
  }
  .fz-170 {
    font-size: 100px;
  }
  .fz-180 {
    font-size: 140px;
  }
  .fz-200 {
    font-size: 120px;
  }
  .fz-290 {
    font-size: 180px;
  }
  .fz-120 {
    font-size: 84px;
  }
  .fz-60 {
    font-size: 60px;
  }
  .scroll-section .pb-80 {
    padding-bottom: 0;
  }
  .d-md-none {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  /* Font size */
  .fz-body {
    font-size: 14px !important;
  }
  .fz-font-label {
    font-size: 12px !important;
  }
  .fz-font-md {
    font-size: 16px !important;
  }
  .fz-font-lg {
    font-size: 18px !important;
  }
  .fz-font-xl {
    font-size: 20px !important;
  }
  .fz-font-2xl {
    font-size: 24px !important;
  }
  .fz-font-3xl {
    font-size: 26px !important;
  }
  .fz-ds-1 {
    font-size: 60px !important;
  }
  h1,
  .h1 {
    font-size: 54px;
  }
  h2,
  .h2 {
    font-size: 52px;
  }
  h3,
  .h3 {
    font-size: 40px;
  }
  h4,
  .h4 {
    font-size: 36px;
  }
  h5,
  .h5 {
    font-size: 24px;
  }
  h6,
  .h6 {
    font-size: 20px;
  }
  .fz-150 {
    font-size: 110px;
  }
  .fz-170 {
    font-size: 70px;
  }
  .fz-180 {
    font-size: 70px;
  }
  .fz-200 {
    font-size: 80px;
  }
  .fz-240 {
    font-size: 100px;
  }
  .fz-290 {
    font-size: 180px;
  }
  .fz-120 {
    font-size: 100px;
  }
  .fz-60 {
    font-size: 60px;
  }
  .scroll-section .pb-80 {
    padding-bottom: 0;
  }
  br {
    display: none;
  }
  .d-md-none {
    display: none;
  }
}
@media (max-width: 574.98px) {
  /* Font size */
  .fz-body {
    font-size: 14px !important;
  }
  .fz-font-label {
    font-size: 12px !important;
  }
  .fz-font-md {
    font-size: 14px !important;
  }
  .fz-font-lg {
    font-size: 16px !important;
  }
  .fz-font-xl {
    font-size: 18px !important;
  }
  .fz-font-2xl {
    font-size: 22px !important;
  }
  .fz-font-3xl {
    font-size: 24px !important;
  }
  .fz-ds-1 {
    font-size: 54px !important;
  }
  h1,
  .h1 {
    font-size: 50px;
  }
  h2,
  .h2 {
    font-size: 42px;
  }
  h3,
  .h3 {
    font-size: 36px;
  }
  h4,
  .h4 {
    font-size: 30px;
  }
  h5,
  .h5 {
    font-size: 20px;
  }
  h6,
  .h6 {
    font-size: 16px;
  }
  .fz-150 {
    font-size: 52px;
  }
  .fz-170 {
    font-size: 30px;
  }
  .fz-180 {
    font-size: 38px;
  }
  .fz-200 {
    font-size: 38px;
  }
  .fz-240 {
    font-size: 100px;
  }
  .fz-290 {
    font-size: 100px;
  }
  .fz-120 {
    font-size: 90px;
  }
  .fz-60 {
    font-size: 60px;
  }
  .w-75 {
    width: 100% !important;
  }
  br {
    display: none;
  }
  .scroll-section .pb-80 {
    padding-bottom: 0;
  }
  .d-xs-none {
    display: none;
  }
}
@media (min-width: 1400px) {
  .container {
    max-width: 1750px;
  }
}
/* HEADER CSS */
/*----------------------------------------*/
/*  3.2 Header main
/*----------------------------------------*/
.at-header-sidebar-btn {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
}
.at-header-logo {
  display: flex;
  align-items: center;
}
.at-header-logo a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.at-header-spacing {
  padding: 10px 0;
}

.header-transparent {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9;
  width: 100%;
}

/*----------------------------------------*/
/*  Header 7 (toggle inline nav)
/*----------------------------------------*/
.header-7 #header7Nav,
.header-7 #header10Nav {
  max-width: 0;
  opacity: 0;
  visibility: hidden;
  overflow-x: clip;
  overflow-y: visible;
  transform: translateX(24px);
  margin-inline-end: -1rem;
  pointer-events: none;
  height: 48px;
  transition: max-width 0.55s cubic-bezier(0.65, 0, 0.35, 1), margin 0.55s cubic-bezier(0.65, 0, 0.35, 1), opacity 0.35s ease, transform 0.55s cubic-bezier(0.65, 0, 0.35, 1), visibility 0s linear 0.55s;
}
.header-7 #header7Nav.at-main-menu nav ul li .submenu,
.header-7 #header10Nav.at-main-menu nav ul li .submenu {
  background: rgba(var(--at-neutral-0-rgb), 1);
}
.header-7.is-menu-open #header7Nav, .header-7.is-menu-open #header10Nav {
  max-width: 900px;
  opacity: 1;
  visibility: visible;
  overflow: visible;
  transform: translateX(0);
  margin-inline-end: 0;
  pointer-events: auto;
  transition: max-width 0.55s cubic-bezier(0.65, 0, 0.35, 1), margin 0.55s cubic-bezier(0.65, 0, 0.35, 1), opacity 0.4s ease 0.1s, transform 0.55s cubic-bezier(0.65, 0, 0.35, 1), visibility 0s linear 0s;
}
.header-7.header-10 .at-hamburger {
  color: var(--at-neutral-950);
}
.header-7 .at-hamburger {
  cursor: pointer;
  background: transparent;
  border: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.header-7 .at-hamburger__box {
  position: relative;
  display: block;
  width: 20px;
  height: 14px;
}
.header-7 .at-hamburger__bar {
  position: absolute;
  left: 0;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transition: transform 0.5s cubic-bezier(0.65, 0, 0.35, 1), width 0.5s cubic-bezier(0.65, 0, 0.35, 1), top 0.45s cubic-bezier(0.65, 0, 0.35, 1), opacity 0.25s ease;
}
.header-7 .at-hamburger__bar:nth-child(1) {
  top: 0;
  width: 100%;
}
.header-7 .at-hamburger__bar:nth-child(2) {
  top: 6px;
  width: 65%;
}
.header-7 .at-hamburger__bar:nth-child(3) {
  top: 12px;
  width: 85%;
}
.header-7 .at-hamburger:hover .header-7 .at-hamburger__bar:nth-child(1) {
  width: 65%;
  transform: translateX(35%);
}
.header-7 .at-hamburger:hover .header-7 .at-hamburger__bar:nth-child(2) {
  width: 100%;
}
.header-7 .at-hamburger:hover .header-7 .at-hamburger__bar:nth-child(3) {
  width: 75%;
  transform: translateX(25%);
}
.header-7.is-menu-open .at-hamburger__bar:nth-child(1) {
  top: 6px;
  width: 100%;
  transform: rotate(45deg);
}
.header-7.is-menu-open .at-hamburger__bar:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}
.header-7.is-menu-open .at-hamburger__bar:nth-child(3) {
  top: 6px;
  width: 100%;
  transform: rotate(-45deg);
}

/*----------------------------------------*/
/*  Header 8 — primary-coloured CTA button
/*----------------------------------------*/
.header-8 .at-btn-theme {
  background-color: var(--at-theme-primary);
  padding: 12px 25px;
}
.header-8 .at-btn-theme:hover {
  background-color: var(--at-theme-primary);
  opacity: 0.88;
}

:root {
  --basic-ease: cubic-bezier(.625, .05, 0, 1);
}

.at-title-text span {
  display: inline-block;
  text-shadow: 0 1.05em var(--at-theme-primary);
  transition: translate 0.3s var(--basic-ease), text-shadow 0.1s 0.15s ease;
}
.at-title-anim:hover .at-title-text span {
  text-shadow: 0 1.05em currentColor;
  translate: 0 -1.05em 0;
  transition: translate 0.5s calc((var(--char) - 1) * 0.024s) var(--basic-ease), text-shadow 0.175s calc((var(--char) - 1) * 0.024s + 0.225s) ease;
}
.at-title-anim-inner {
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  overflow-y: clip;
}

.header-10__bar {
  position: absolute;
  z-index: 9;
  width: 100%;
  background: transparent;
  border-bottom: 0;
}
.header-10__logo-link {
  color: inherit;
}
.header-10__mark {
  display: block;
  width: 27px;
  height: 30px;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
}
.header-10__brand {
  font-family: var(--at-ff-body);
  font-weight: 700;
  font-size: 24px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}
.header-10__actions {
  -moz-column-gap: 16px;
       column-gap: 16px;
  row-gap: 12px;
}
.header-10__pill {
  display: inline-flex;
  align-items: center;
  min-height: 41px;
  padding: 0 18px;
}
.header-10__pill--tools {
  gap: 18px;
}
.header-10__hamburger {
  padding: 0;
  min-width: 24px;
  color: var(--at-neutral-950);
  background: transparent;
  border: 0;
}
.header-10 .at-hamburger__box {
  width: 24px;
  height: 16px;
}
.header-10 .at-hamburger__bar:nth-child(1) {
  top: 0;
  width: 100%;
}
.header-10 .at-hamburger__bar:nth-child(2) {
  top: 7px;
  width: 100%;
}
.header-10 .at-hamburger__bar:nth-child(3) {
  top: 14px;
  width: 100%;
}
.header-10 .at-hamburger:hover .at-hamburger__bar:nth-child(1), .header-10 .at-hamburger:hover .at-hamburger__bar:nth-child(2), .header-10 .at-hamburger:hover .at-hamburger__bar:nth-child(3) {
  width: 100%;
  transform: none;
}
.header-10.header-7.is-menu-open .at-hamburger__bar:nth-child(1) {
  top: 7px;
}
.header-10.header-7.is-menu-open .at-hamburger__bar:nth-child(3) {
  top: 7px;
}
.header-10__icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  color: var(--at-neutral-950);
  line-height: 0;
  cursor: pointer;
  transition: opacity 0.25s ease, color 0.25s ease;
}
.header-10__icon-btn:hover {
  opacity: 0.75;
  color: var(--at-theme-primary);
}
.header-10__icon-btn svg {
  display: block;
}
.header-10 {
  /* Collapsible mega menu track — match pill glass */
}
.header-10.header-7 #header10Nav {
  height: 41px;
}
.header-10 #header10Nav.at-main-menu.menu-light.style-1 {
  border: 0;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.header-10 #header10Nav.at-main-menu.menu-light.style-1 nav ul li .submenu {
  background: rgba(var(--at-neutral-0-rgb), 0.98);
}
.header-10 .at-main-menu.menu-light nav ul li.has-dropdown > a {
  color: var(--at-neutral-950);
}
.header-10 .at-main-menu.menu-light nav ul li.has-dropdown > a::after {
  filter: none;
}
.header-10 .at-main-menu.menu-light nav ul li:hover.has-dropdown > a {
  color: var(--at-neutral-950);
  background: color-mix(in srgb, var(--at-neutral-950) 8%, transparent);
}
.header-10 .dark-light-mode .toggle {
  color: var(--at-neutral-950);
}

/* Header 12 (Home 12) */
.header-12 .at-main-menu {
  background-color: var(--at-neutral-0);
  padding: 10px 15px;
  border-radius: 50px;
}

/* Header 14 (Home 14 — Photography Showcase) */
.header-14__meta {
  background-color: var(--at-neutral-0);
  border-bottom: 1px solid var(--at-neutral-200);
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.header-14__meta-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 12px 100px;
  max-width: 2200px;
  margin: 0 auto;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .header-14__meta-inner {
    padding: 12px 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .header-14__meta-inner {
    padding: 12px 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .header-14__meta-inner {
    padding: 10px 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .header-14__meta-inner {
    padding: 10px 16px;
    font-size: 10px;
  }
}
@media (max-width: 574.98px) {
  .header-14__meta-inner {
    padding: 10px 16px;
    font-size: 10px;
  }
}
.header-14__meta-group {
  display: flex;
  align-items: center;
  gap: 28px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .header-14__meta-group {
    gap: 16px;
  }
}
@media (max-width: 574.98px) {
  .header-14__meta-group {
    gap: 10px;
  }
}
.header-14__meta-key {
  color: var(--at-neutral-950);
  font-weight: 500;
  font-family: var(--at-ff-body);
}
.header-14__meta-val {
  color: var(--at-neutral-500);
  font-weight: 500;
  font-family: var(--at-ff-body);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .header-14__meta-val {
    display: none;
  }
}
.header-14__meta-quiet {
  color: var(--at-neutral-500);
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0.02em;
}
@media (max-width: 574.98px) {
  .header-14__meta-quiet {
    font-size: 10px;
  }
}

/*----------------------------------------*/
/*  5.2 Postbox css
/*----------------------------------------*/
.postbox-item:not(:last-child) {
  border-bottom: 1px solid rgba(30, 30, 30, 0.08);
  padding-bottom: 50px;
  margin-bottom: 60px;
}
.postbox-item:hover .postbox-thumb img {
  transform: scale(1.1);
}
.postbox-thumb {
  border-radius: 42px;
  overflow: hidden;
}
.postbox-thumb img {
  border-radius: 42px;
  transition: all 0.8s ease;
}
.postbox-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.postbox-play-btn a {
  height: 80px;
  width: 80px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 77px;
  text-align: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(5px);
  animation: animate-pulse 3s linear infinite;
}
.postbox-play-btn a svg {
  margin-left: 3px;
  display: inline-block;
}

.postbox-scroll-zoom .postbox-item-wrap {
  width: 100%;
  height: 200vh;
}
.postbox-scroll-zoom .postbox-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
}
.postbox-scroll-zoom .postbox-thumb {
  width: 100%;
  height: 100%;
  background-color: var(--at-neutral-50, #f5f5f5);
}
.postbox-scroll-zoom .postbox-scroll-zoom-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: inset(calc(50% - 50px) calc(50% - 100px) calc(50% - 50px) calc(50% - 100px) round 4px);
  will-change: clip-path;
  position: relative;
  z-index: 2;
}
.postbox-scroll-zoom .postbox-scroll-zoom-play {
  z-index: 3;
}
.postbox-scroll-zoom .postbox-scroll-zoom-marquee {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: stretch;
  padding: 4% 0;
  pointer-events: none;
  overflow: hidden;
  will-change: opacity;
}
.postbox-scroll-zoom .postbox-scroll-zoom-marquee-row {
  display: flex;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
}
.postbox-scroll-zoom .postbox-scroll-zoom-marquee-row.dir-left .postbox-scroll-zoom-marquee-track {
  animation: postbox-marquee-left 30s linear infinite;
}
.postbox-scroll-zoom .postbox-scroll-zoom-marquee-row.dir-right .postbox-scroll-zoom-marquee-track {
  animation: postbox-marquee-right 35s linear infinite;
}
.postbox-scroll-zoom .postbox-scroll-zoom-marquee-track {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 40px;
  font-family: inherit;
  font-weight: 600;
  font-size: clamp(48px, 8vw, 120px);
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-100, #dfdfdf);
  padding-right: 40px;
}
.postbox-scroll-zoom .postbox-scroll-zoom-marquee-track > span {
  display: inline-block;
  flex-shrink: 0;
}

@keyframes postbox-marquee-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes postbox-marquee-right {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .postbox-scroll-zoom .postbox-scroll-zoom-marquee-row .postbox-scroll-zoom-marquee-track {
    animation: none;
  }
}
/*----------------------------------------*/
/*  5.1 Blog css
/*----------------------------------------*/
.blog-card {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.blog-card__thumb {
  position: relative;
  width: 100%;
}
.blog-card__img-link {
  display: block;
  width: 100%;
  height: 100%;
}
.blog-card__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.blog-card__content {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}
.blog-card__title {
  font-weight: 600;
  color: var(--at-neutral-900);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 4.5em;
}
.blog-card__title-link {
  text-decoration: none;
  transition: color 0.3s ease;
}
.blog-card__title-link:hover {
  color: var(--at-theme-primary);
}
.blog-card__meta {
  font-family: var(--at-ff-body);
  font-size: 16px;
  font-weight: 500;
  line-height: 100%;
  color: #585959;
  margin: 0;
}
.blog-card__meta-text {
  color: #585959;
}
.blog-card__author {
  color: var(--at-neutral-900);
  text-decoration: none;
  transition: color 0.3s ease;
}
.blog-card__author:hover {
  color: var(--at-theme-primary, var(--at-neutral-900));
}

/* Blog card 2 – horizontal 3-column layout  */
.blog-card-2 {
  display: flex;
  align-items: center;
  gap: 40px;
  width: 100%;
  padding-bottom: 32px;
  border-bottom: 1px solid rgba(30, 30, 30, 0.08);
}
.blog-card-2-wrap:last-child .blog-card-2 {
  border-bottom: none;
  padding-bottom: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .blog-card-2 {
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
  }
}
.blog-card-2__left {
  flex: 0 1 40%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 26px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .blog-card-2__left {
    flex: none;
    order: 1;
  }
}
.blog-card-2__category {
  display: inline-block;
  font-family: var(--at-ff-body);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
  padding: 8px 16px;
  background: var(--at-common-white);
  border: 1px solid var(--at-neutral-100);
  border-radius: 50px;
  width: -moz-fit-content;
  width: fit-content;
}
.blog-card-2__title {
  margin: 0;
}
@media (max-width: 574.98px) {
  .blog-card-2__title {
    font-size: 18px;
  }
}
.blog-card-2__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s ease;
}
.blog-card-2__title-link:hover {
  color: var(--at-theme-primary);
}
.blog-card-2__thumb {
  flex: 0 0 340px;
  width: 340px;
  height: 210px;
  overflow: hidden;
  border-radius: 12px;
  flex-shrink: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .blog-card-2__thumb {
    flex: none;
    width: 100%;
    height: 220px;
    order: 2;
  }
}
.blog-card-2__img-link {
  display: block;
  width: 100%;
  height: 100%;
}
.blog-card-2__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 12px;
  transition: transform 0.5s ease;
}
.blog-card-2:hover .blog-card-2__img {
  transform: scale(1.05);
}
.blog-card-2__right {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 56px;
  justify-content: center;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .blog-card-2__right {
    gap: 26px;
    flex: none;
    order: 3;
  }
}
.blog-card-2__excerpt {
  font-family: var(--at-ff-body);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #585959;
  margin: 0;
}
.blog-card-2__meta {
  font-family: var(--at-ff-body);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  color: #585959;
  margin: 0;
}
.blog-card-2__meta-text {
  color: #585959;
}
.blog-card-2__author {
  color: var(--at-theme-primary, #c94b2a);
  text-decoration: none;
  transition: color 0.3s ease;
}
.blog-card-2__author:hover {
  color: var(--at-common-black);
}

/* Blog card 3 – sidebar Flash news (compact horizontal) */
.blog-card-3-wrap {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: 24px;
}
.blog-card-3-wrap .blog-card-3:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.blog-card-3 {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 16px;
  width: 100%;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid rgba(30, 30, 30, 0.08);
}
.blog-card-3__thumb {
  flex: 0 0 115px;
  width: 115px;
  height: 115px;
}
.blog-card-3__img-link {
  display: block;
  width: 100%;
  height: 100%;
}
.blog-card-3__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
}
.blog-card-3:hover .blog-card-3__img {
  transform: scale(1.05);
}
.blog-card-3__content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.blog-card-3__title {
  font-family: var(--at-ff-body);
  font-weight: 600;
  line-height: normal;
  letter-spacing: -1.2px;
  color: var(--at-neutral-900);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.blog-card-3__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s ease;
}
.blog-card-3__title-link:hover {
  color: var(--at-theme-primary);
}
.blog-card-3__meta {
  color: var(--at-neutral-500);
}
.blog-card-3__author {
  color: var(--at-theme-primary, #c94b2a);
  text-decoration: none;
  transition: color 0.3s ease;
}
.blog-card-3__author:hover {
  color: var(--at-common-black);
}

/* Product card – shop archive */
.product-card {
  display: flex;
  flex-direction: column;
}
.product-card__inner {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 0;
}
.product-card__thumb {
  position: relative;
  background-color: var(--at-neutral-50, #f2f2f2);
  overflow: hidden;
  border-radius: 16px;
  width: 100%;
  height: 490px;
  flex-shrink: 0;
}
.product-card__img-link {
  display: block;
  width: 100%;
  height: 100%;
}
.product-card__content {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0 24px 24px;
  width: 100%;
}
.product-card__brand {
  font-size: 12px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: var(--at-neutral-500, #585959);
  margin: 0;
}
.product-card__row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
}
.product-card__title {
  font-size: 18px;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.9px;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0;
  flex: 1;
  min-width: 0;
}
.product-card__title-link {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s ease;
}
.product-card__title-link:hover {
  color: var(--at-theme-primary);
}
.product-card__price {
  font-size: 18px;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.9px;
  color: var(--at-neutral-900, #1d1d1d);
  text-align: right;
  margin: 0;
  flex-shrink: 0;
}

/*----------------------------------------*/
/*  4.1 Mobile Menu
/*----------------------------------------*/
.at-main-menu {
  padding: 5px 8px;
}
.at-main-menu.menu-light.style-1 {
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(2px);
  height: 48px;
}
.at-main-menu.menu-light nav ul li:hover > .submenu {
  visibility: visible;
  opacity: 1;
  transform: scale(1);
}
.at-main-menu.menu-light nav ul li:hover.has-dropdown > a {
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
}
.at-main-menu.menu-light nav ul li.has-dropdown > a {
  color: #fff;
}
.at-main-menu.menu-light nav ul li.has-dropdown > a::after {
  filter: invert(1);
}
.at-main-menu nav ul li {
  list-style: none;
  display: inline-block;
  position: relative;
}
.at-main-menu nav ul li.has-dropdown > a {
  color: var(--at-common-black);
  position: relative;
  transition: all 0.4s ease 0.3s ease-out;
}
.at-main-menu nav ul li.has-dropdown > a::after {
  content: "";
  position: absolute;
  bottom: 12px;
  right: 12px;
  width: 8px;
  height: 8px;
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="5" viewBox="0 0 5 5" fill="none"><path d="M0.119881 4.0916L3.76201 0.14603C3.8265 0.0762058 3.912 0.0286966 4.00771 0.00950819C4.10343 -0.00968026 4.20505 0.000313791 4.29974 0.0382265C4.39443 0.0761392 4.47794 0.140268 4.5397 0.222507C4.60146 0.304746 4.63871 0.401402 4.64673 0.500256L4.96657 4.4493C4.97728 4.58185 4.93474 4.70892 4.8483 4.80257C4.76185 4.89622 4.63858 4.94877 4.50559 4.94867L0.543624 4.94521C0.444446 4.94511 0.345125 4.9157 0.258216 4.8607C0.171308 4.8057 0.100716 4.72759 0.0553628 4.63623C0.0100097 4.54486 -0.00806781 4.44436 0.00341617 4.34742C0.0149001 4.25048 0.0554298 4.16146 0.119881 4.0916Z" fill="%230F0F0F"/></svg>');
}
.at-main-menu nav ul li:hover > .submenu {
  visibility: visible;
  opacity: 1;
  transform: scale(1);
}
.at-main-menu nav ul li:hover.has-dropdown > a {
  transition: all 0.4s ease 0.3s ease-out;
}
.at-main-menu nav ul li a {
  font-family: var(--at-ff-body);
  font-size: 16px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--at-common-black);
  padding: 10px 24px;
  display: inline-block;
  line-height: 1;
}
.at-main-menu nav ul li a:hover {
  color: var(--at-common-black);
}
.at-main-menu nav ul li a::before {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.at-main-menu nav ul li .submenu {
  position: absolute;
  top: 120%;
  left: 0;
  width: 260px;
  z-index: 99;
  opacity: 0;
  padding: 12px 0;
  transition: 0.5s;
  text-align: start;
  visibility: hidden;
  transform-origin: 0 0;
  transform: scale(1, 0);
  backdrop-filter: blur(20px);
  background: rgba(var(--at-neutral-0-rgb), 0.9);
  box-shadow: 0 20px 30px -8px rgba(19, 19, 22, 0.1);
}
.at-main-menu nav ul li .submenu li {
  width: 100%;
  padding: 0 12px;
  border-radius: 8px;
  margin: 0;
}
.at-main-menu nav ul li .submenu li a {
  position: relative;
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  color: var(--at-neutral-500);
  padding: 12px 18px;
  display: inline-block;
  letter-spacing: -0.01em;
  text-align: start;
  width: 100%;
  font-family: var(--at-ff-body);
  transition: padding-left 0.35s cubic-bezier(0.65, 0, 0.35, 1), background 0.3s ease, color 0.3s ease;
}
.at-main-menu nav ul li .submenu li .submenu {
  top: 0;
  left: 100%;
}
.at-main-menu nav ul li .submenu li:hover > a {
  background: var(--at-neutral-50);
  color: var(--at-neutral-900) !important;
  padding-left: 23px;
}
.at-main-menu nav ul li .at-megamenu {
  width: 720px;
  padding: 30px 30px;
}
.at-main-menu nav ul li .at-megamenu li {
  padding: 0;
}
.at-main-menu nav ul li .at-megamenu-title {
  font-size: 20px;
  font-weight: 600;
  padding-left: 18px;
  padding-right: 6px;
  color: var(--at-common-black);
  font-family: var(--at-ff-body);
}
.at-main-menu nav ul li .at-megamenu-title-wrap {
  display: block;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.at-megamenu-title {
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--at-common-black);
  font-family: var(--at-ff-body);
}

.at-megamenu-title-wrap {
  display: block;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--at-neutral-100);
}

/*----------------------------------------*/
/*  4.x Main menu — text swap hover animation
/*  Wrapper .at-link-swap is injected by main.js (section 47c)
/*----------------------------------------*/
.at-main-menu > nav > ul > li > a {
  /* Descender room: wrapper has 4px padding-bottom for "g","p" tails;
     compensate link's bottom padding so total height stays 36px. */
  --link-desc-room: 4px;
  padding-bottom: calc(10px - var(--link-desc-room));
}
.at-main-menu > nav > ul > li > a .at-link-swap {
  position: relative;
  display: inline-block;
  overflow: hidden;
  vertical-align: top;
  line-height: inherit;
  padding-bottom: var(--link-desc-room);
}
.at-main-menu > nav > ul > li > a .at-link-swap .text-1,
.at-main-menu > nav > ul > li > a .at-link-swap .text-2 {
  display: block;
  line-height: inherit;
  /* Wavy easing: cubic-bezier with overshoot creates a bounce/settle
     feel that reads as a subtle wave during the swap. */
  transition: transform 0.45s cubic-bezier(0.5, 1.5, 0.35, 1);
}
.at-main-menu > nav > ul > li > a .at-link-swap .text-1 {
  position: relative;
}
.at-main-menu > nav > ul > li > a .at-link-swap .text-2 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  /* Park text-2 fully below the wrapper's padding-box
     (own height + descender room) so it never leaks at rest. */
  transform: translateY(calc(100% + var(--link-desc-room)));
}

/* Trigger swap on the parent <li>:hover so the hit area covers the
   entire menu item (incl. empty space inside .menu-light.style-1
   where <a> is shorter than the 48px container). */
.at-main-menu > nav > ul > li:hover > a .at-link-swap .text-1 {
  /* Push text-1 up enough to clear both content + padding-bottom area. */
  transform: translateY(calc(-100% - var(--link-desc-room)));
}
.at-main-menu > nav > ul > li:hover > a .at-link-swap .text-2 {
  transform: translateY(0);
}

/*----------------------------------------*/
/*  4.3 offcanvas scss
/*----------------------------------------*/
.footer-title.sm {
  font-size: 36px;
  font-weight: 600;
  margin-bottom: 15px;
  color: var(--at-common-white);
}

.footer-contact ul li a {
  display: inline-block;
  color: var(--at-neutral-100);
  position: relative;
  font-family: var(--at-ff-body);
  list-style-type: none;
}

.footer-contact ul {
  list-style-type: none;
}

.body-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 995;
  width: 100%;
  height: 100%;
  background: rgba(24, 24, 24, 0.5);
  visibility: hidden;
  opacity: 0;
  transition: 0.45s ease-in-out;
}
.body-overlay.apply {
  opacity: 1;
  visibility: visible;
}
.body-overlay:hover {
  cursor: url(../imgs/icons/cross-out.webp), pointer;
}

.at-offcanvas {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: fixed;
  top: 0;
  right: -100%;
  width: 460px;
  bottom: 0;
  box-shadow: 0 16px -32px 0 rgba(0, 0, 0, 0.8);
  background-color: var(--at-common-white);
  z-index: 997;
  padding: 50px;
  scrollbar-width: none;
  opacity: 0;
  visibility: hidden;
  transition: 0.45s ease-in-out;
  overflow-y: scroll;
}
@media (max-width: 574.98px) {
  .at-offcanvas {
    width: 100%;
    padding: 40px 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .at-offcanvas {
    width: 400px;
    padding: 40px;
  }
}
.at-offcanvas-logo a {
  display: flex;
  align-items: center;
  gap: 4px;
}
.at-offcanvas.opened {
  opacity: 1;
  visibility: visible;
  right: 0;
  transition: all 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition-duration: 0.6s;
}
.at-offcanvas-top {
  margin-bottom: 50px;
}
.at-offcanvas-close-btn button {
  color: rgba(var(--at-common-black), 1);
}
.at-offcanvas-close-btn button:hover {
  opacity: 1;
  transform: rotate(90deg);
}
.at-offcanvas-menu .at-megamenu-box {
  margin-bottom: 30px;
}
.at-offcanvas-menu .at-megamenu-box li a {
  padding: 8px 20px;
  border-radius: 10px;
  font-size: 17px;
}
.at-offcanvas-menu .at-megamenu-box li a:hover {
  background-color: var(--at-neutral-50);
  color: var(--at-common-black);
}
.at-offcanvas-menu .at-megamenu {
  margin-top: 15px;
}
.at-offcanvas-title {
  font-size: 64px;
  line-height: 1;
  letter-spacing: -0.8px;
  font-weight: 700;
  color: var(--at-common-black);
}
.at-offcanvas-title.sm {
  font-size: 36px;
  font-weight: 600;
  margin-bottom: 15px;
  color: var(--at-common-black);
}
.at-offcanvas-contact {
  margin-bottom: 55px;
}
.at-offcanvas-contact ul li {
  list-style: none;
}
.at-offcanvas-contact ul li:not(:last-child) {
  margin-bottom: 2px;
}
.at-offcanvas-contact ul li a {
  display: inline-block;
  color: var(--at-neutral-900);
  position: relative;
  font-family: var(--at-ff-body);
}
.at-offcanvas-gallery {
  margin-bottom: 65px;
}
.at-offcanvas-gallery-img {
  width: 65px;
  height: 65px;
  border-radius: 8px;
  overflow: hidden;
  padding: 4px;
  background: var(--at-neutral-50);
}
.at-offcanvas-gallery-img img {
  transition: 0.9s;
  border-radius: 4px;
  filter: grayscale(100%);
}
.at-offcanvas-gallery-img:hover img {
  transform: scale(1.2) rotate(-2deg);
}
.at-offcanvas-content p {
  font-size: 20px;
  font-weight: 500;
  line-height: normal;
  color: var(--at-neutral-900);
  font-family: var(--at-ff-body);
}

.at-offcanvas-social {
  margin-top: 40px;
  margin-bottom: 60px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .at-offcanvas-social {
    margin-bottom: 40px;
  }
}
.at-offcanvas-social__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 24px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.at-offcanvas-social__link {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  color: var(--at-common-black);
  font-size: 16px;
  font-weight: 500;
  font-family: var(--at-ff-body);
  text-decoration: none;
  transition: color 0.3s ease, opacity 0.3s ease;
}
.at-offcanvas-social__link:hover {
  color: var(--at-theme-primary, var(--at-common-black));
  opacity: 0.85;
}
.at-offcanvas-social__link svg {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

.at-offcanvas-2-wrapper {
  padding: 100px 100px 0px;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .at-offcanvas-2-wrapper {
    padding: 80px 50px 0px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .at-offcanvas-2-wrapper {
    padding: 60px 50px 0px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-offcanvas-2-wrapper {
    padding: 60px 30px 0px;
  }
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li {
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transition: all 1.5s ease-in-out !important;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li:nth-child(2) > a {
  transition-delay: 1.7s;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li:nth-child(3) > a {
  transition-delay: 1.8s;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li:nth-child(3) > a {
  transition-delay: 1.9s;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li:nth-child(4) > a {
  transition-delay: 2s;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li:nth-child(5) > a {
  transition-delay: 2.1s;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li > a {
  font-size: 48px;
  padding: 0;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.04em;
  color: var(--at-common-black);
  font-family: var(--at-ff-body);
  transform: translateY(-300px);
  opacity: 0;
  visibility: hidden;
  transition: all 1.5s ease-in-out !important;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li > a {
    font-size: 42px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li > a {
    font-size: 54px;
  }
}
@media (max-width: 574.98px) {
  .at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li > a {
    font-size: 50px;
  }
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li .at-menu-close i {
  font-size: 28px;
  color: var(--at-common-black);
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li .submenu > li > a {
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  transition: 0.3s;
  color: var(--at-neutral-900);
  letter-spacing: -0.02em;
  font-family: var(--at-ff-body);
  position: relative;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li .submenu > li > a:hover {
  background-color: initial;
  transform: translateX(15px);
  color: var(--at-common-black);
}
.at-offcanvas-2-wrapper .at-offcanvas-menu > nav > ul > li .submenu > li > a::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 5px;
  height: 5px;
  z-index: -1;
  background-color: var(--at-neutral-900);
  border-radius: 50%;
  transition: 0.3s;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu nav ul li .at-megamenu {
  width: auto;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu nav ul li .at-megamenu .col-xl-6 {
  width: 100%;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu nav ul li .at-megamenu .col-xl-4 {
  width: 100%;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu nav ul li .at-megamenu li a {
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  transition: 0.3s;
  color: var(--at-neutral-900);
  letter-spacing: -0.8px;
  font-family: var(--at-ff-body);
}
.at-offcanvas-2-wrapper .at-offcanvas-menu nav ul li .at-megamenu li a::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 5px;
  height: 5px;
  z-index: -1;
  background-color: var(--at-neutral-900);
  border-radius: 50%;
  transition: 0.3s;
}
.at-offcanvas-2-wrapper .at-offcanvas-menu nav ul li .at-megamenu li a:hover {
  background-color: initial;
  transform: translateX(15px);
  color: var(--at-common-black);
}
.at-offcanvas-2-wrapper .hamburger-close-btn {
  color: var(--at-common-black);
  cursor: pointer;
  transition: all 0.4s ease;
}
.at-offcanvas-2-wrapper .hamburger-close-btn:hover {
  transform: rotate(90deg);
}
.at-offcanvas-2-wrapper .hamburger-mobile-close-btn:hover {
  transform: rotate(0);
}
.at-offcanvas-2-wrapper .hamburger-mobile-close-btn {
  position: absolute;
  bottom: -100px;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 20px;
}
.at-offcanvas-2-wrapper .hamburger-mobile-close-btn:hover {
  color: var(--at-theme-primary);
}
.at-offcanvas-2-wrapper .at-header-logo {
  transform: translateY(-80px);
  visibility: hidden;
  opacity: 0;
  transition-delay: 0s;
  transition: all 1.5s ease-in-out !important;
}
.at-offcanvas-2-left {
  opacity: 0;
  animation-delay: 1s;
  transform: translateY(20px);
}
.at-offcanvas-2-left .at-offcanvas-menu {
  border-bottom: 1px solid var(--at-neutral-100);
  padding-bottom: 105px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .at-offcanvas-2-left .at-offcanvas-menu {
    margin-bottom: 65px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .at-offcanvas-2-left .at-offcanvas-menu {
    margin-bottom: 0;
  }
}
.at-offcanvas-2-left .at-offcanvas-menu ul {
  overflow: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  max-height: 450px;
  padding-top: 10px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .at-offcanvas-2-left .at-offcanvas-menu ul {
    max-height: 350px;
  }
}

.at-offcanvas-2-area.menu-open,
.at-offcanvas-2-area.menu-open-temp {
  position: fixed;
  top: 0;
  right: 0;
  left: auto;
  height: 100%;
  transition: all 0s 2s;
  width: 600px;
  z-index: 1000;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-offcanvas-2-area.menu-open,
  .at-offcanvas-2-area.menu-open-temp {
    width: 100%;
  }
}

.at-offcanvas-2-area {
  position: fixed;
  left: 100%;
}
.at-offcanvas-2-area .offcanvas-bg {
  inset: 0;
  border-radius: 20px;
  clip-path: circle(0% at calc(100% - 45px) 45px);
  transition: clip-path 0.7s ease-in-out;
  position: fixed;
  width: 570px;
  margin: 20px;
  right: 0;
  left: auto;
  z-index: 2;
  backdrop-filter: blur(20px);
  background: rgb(var(--at-neutral-0-rgb), 0.9);
  box-shadow: 0 20px 30px -8px rgba(19, 19, 22, 0.1);
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-offcanvas-2-area .offcanvas-bg {
    margin: 0;
    border-radius: 0;
    width: 100%;
  }
}
.at-offcanvas-2-area.menu-open .offcanvas-bg {
  clip-path: circle(150% at calc(100% - 45px) 45px);
}
.at-offcanvas-2-area.menu-open .offcanvas-menu {
  pointer-events: auto;
}
.at-offcanvas-2-area.menu-open .at-offcanvas-menu > nav > ul > li {
  visibility: visible;
  opacity: 1;
}
.at-offcanvas-2-area.menu-open .at-offcanvas-menu > nav > ul > li a {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}
.at-offcanvas-2-area.menu-open .at-header-logo {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}
.at-offcanvas-2-area.menu-open .at-offcanvas-2-left {
  opacity: 1;
  transform: translateY(0);
  transition-delay: calc(0.7s + 0.06s);
}
.at-offcanvas-2-area.menu-open .at-offcanvas-2-left .at-offcanvas-menu {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
  transition-delay: calc(calc(0.7s + 0.06s) + 0.2s);
}
.at-offcanvas-2-area:not(.menu-open) .offcanvas-menu {
  pointer-events: none;
}
.at-offcanvas-2-area:not(.menu-open) .at-offcanvas-2-left {
  transition-delay: 0.6s;
  opacity: 0;
  transform: translateY(30px);
}
.at-offcanvas-2-area:not(.menu-open) .at-offcanvas-2-left .at-offcanvas-menu {
  opacity: 0;
  transform: translateY(20px);
  transition-delay: 0.4s;
}
.at-offcanvas-2-area:not(.menu-open) .at-offcanvas-2-left .at-offcanvas-2-left-btn-box {
  opacity: 0;
  transform: translateY(20px);
  transition-delay: 0.2s;
}
.at-offcanvas-2-area:not(.menu-open) .offcanvas-bg {
  clip-path: circle(0% at calc(100% - 45px) 45px);
  transition-delay: 0.4s;
}

.hamburger-sticky-menu {
  border-radius: 16px;
  border: 1px solid var(--at-neutral-100, #DFDFDF);
  background: var(--at-neutral-0, #FEFEFE);
  color: var(--at-neutral-950);
  font-size: 16px;
  font-weight: 600;
  display: inline-flex;
  padding: 15px 24px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  position: absolute;
  top: 40px;
  right: 20px;
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  transform: scale(0.5);
  transition-delay: 0.4s;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .hamburger-sticky-menu {
    top: 20px;
    right: 20px;
    padding: 5px 10px;
    font-size: 14px;
  }
}
.hamburger-sticky-menu.header-sticky {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  position: fixed;
}

/*----------------------------------------*/
/*  4.2 Mobile Menu
/*----------------------------------------*/
.at-offcanvas-menu .at-megamenu-box li a {
  font-weight: 400;
}
.at-offcanvas-menu ul {
  list-style: none;
}
.at-offcanvas-menu ul li {
  position: relative;
}
.at-offcanvas-menu ul li > a {
  padding: 7px 0;
  display: block;
  font-size: 18px;
  font-weight: 600;
}
.at-offcanvas-menu ul li.active > a {
  color: var(--at-common-black);
}
.at-offcanvas-menu ul li.active > .at-menu-close i {
  top: 10px;
  transform: rotate(90deg);
}
.at-offcanvas-menu ul li .submenu {
  display: none;
}
.at-offcanvas-menu ul li .submenu .submenu {
  margin-left: 30px;
}
.at-offcanvas-menu .at-submenu > li > a {
  padding: 8px 20px;
  border-radius: 10px;
  font-size: 16px;
}
.at-offcanvas-menu .at-submenu > li > a:hover {
  background-color: #f8f8fb;
  color: var(--at-common-black);
}

.at-menu-close {
  position: absolute;
  right: 7px;
  top: 12px;
}
.at-menu-close i {
  transition: all 0.3s;
  font-size: 18px;
  font-weight: 500;
}

/* Footer 12 (Home 12) — Always-dark CTA + main footer */
.footer-12 {
  background-color: #0f0f0f;
  color: #fefefe;
  position: relative;
}

/* ── CTA strip ──────────────────────────────────── */
.footer-12__cta {
  padding-top: 120px;
  padding-bottom: 120px;
  background-color: #0f0f0f;
}

.footer-12__cta-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 32px;
}

.footer-12__cta-pill {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
  padding: 7px 14px;
  background-color: #212121;
  border: 1px solid #303030;
  border-radius: 999px;
}

.footer-12__cta-pill-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
}

.footer-12__cta-pill-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #fefefe;
  white-space: nowrap;
}

.footer-12__cta-title {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: clamp(40px, 6.5vw, 84px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: #fefefe;
  text-align: center;
}

.footer-12__cta-sub {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #b7b7b7;
}

.footer-12__cta-form {
  --footer12-cta-pad: 8px; /* uniform inset between pill border and inner controls */
  --footer12-cta-control-h: 44px; /* shared height of input + submit button */
  display: inline-flex;
  align-items: stretch; /* so input matches button height; pad becomes visually equal on all sides */
  -moz-column-gap: var(--footer12-cta-pad);
       column-gap: var(--footer12-cta-pad);
  padding: var(--footer12-cta-pad);
  background-color: #212121;
  border: 1px solid #303030;
  border-radius: 999px;
  max-width: 100%;
}

/* `input.` selector matches the global theme rule `input[type="email"]` in
   specificity (1 element + 1 class) AND comes later in source order, so this
   reliably overrides the theme's height: 56px / line-height: 56px on this
   input only — without touching the global rule. */
input.footer-12__cta-input {
  flex: 1 1 auto;
  min-width: 0;
  height: var(--footer12-cta-control-h);
  padding: 0 16px;
  background: transparent;
  border: 0;
  color: #fefefe;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 15px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  outline: none;
}
input.footer-12__cta-input::-moz-placeholder {
  color: #585959;
}
input.footer-12__cta-input::placeholder {
  color: #585959;
}

.footer-12__cta-submit {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: var(--footer12-cta-control-h);
  padding: 0 22px;
  background-color: var(--at-theme-primary);
  color: #fefefe;
  border: 0;
  border-radius: 999px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.02em;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.footer-12__cta-submit:hover, .footer-12__cta-submit:focus-visible {
  background-color: #ff6128;
}

/* ── Footer main ────────────────────────────────── */
.footer-12__main {
  padding-top: 72px;
  padding-bottom: 32px;
  background-color: #0f0f0f;
  display: flex;
  flex-direction: column;
}

.footer-12__divider {
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.1);
}

.footer-12__columns {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)) minmax(0, 0.9fr);
  -moz-column-gap: 48px;
       column-gap: 48px;
  row-gap: 48px;
  padding: 64px 0;
}

.footer-12__col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 18px;
  min-width: 0;
}

.footer-12__col--brand {
  max-width: 420px;
  row-gap: 24px;
}

/* Brand */
.footer-12__brand {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: #fefefe;
}
.footer-12__brand:hover, .footer-12__brand:focus-visible {
  color: #fefefe;
}

.footer-12__brand-logo {
  display: block;
  height: 30px;
  width: auto;
}

.footer-12__brand-desc {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 15px;
  line-height: 1.6;
  letter-spacing: -0.02em;
  color: #b7b7b7;
}

/* Socials — uses .at-hero-social pill pattern (shared with footer-1).
   Compound selector (.at-hero-social.footer-12__socials) keeps specificity
   above the global .at-hero-social rule from _hero.scss, which is loaded
   later in the cascade and would otherwise win on equal specificity. */
.at-hero-social.footer-12__socials {
  justify-content: flex-start;
  gap: 8px;
}
.at-hero-social.footer-12__socials a {
  color: var(--at-common-white);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.32);
}
.at-hero-social.footer-12__socials a:hover, .at-hero-social.footer-12__socials a:focus-visible {
  background: var(--at-theme-primary);
  border-color: var(--at-theme-primary);
  color: var(--at-common-white);
}

/* Column links */
.footer-12__col-title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.96px;
  color: #585959;
  text-transform: uppercase;
}

.footer-12__col-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  row-gap: 12px;
}
.footer-12__col-links a {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 15px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #fefefe;
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-12__col-links a:hover, .footer-12__col-links a:focus-visible {
  color: var(--at-theme-primary);
}

/* Hours column */
.footer-12__col--hours {
  row-gap: 13px;
}

.footer-12__hours-value {
  font-family: var(--at-ff-heading);
  font-weight: 400;
  font-size: 20px;
  line-height: 1.25;
  letter-spacing: -0.05em;
  color: #fefefe;
}

/* ── Bottom bar ─────────────────────────────────── */
.footer-12__bottom {
  padding-top: 24px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 24px;
       column-gap: 24px;
  row-gap: 12px;
}

.footer-12__copy {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #585959;
}

.footer-12__legal {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 24px;
       column-gap: 24px;
  row-gap: 8px;
}
.footer-12__legal a {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #b7b7b7;
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-12__legal a:hover, .footer-12__legal a:focus-visible {
  color: var(--at-theme-primary);
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .footer-12__cta {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .footer-12__cta {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  .footer-12__columns {
    -moz-column-gap: 36px;
         column-gap: 36px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .footer-12__cta {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .footer-12__cta-inner {
    row-gap: 24px;
  }
  .footer-12__main {
    padding-top: 56px;
  }
  .footer-12__columns {
    grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr));
    padding: 48px 0;
    -moz-column-gap: 32px;
         column-gap: 32px;
    row-gap: 32px;
  }
  .footer-12__col--hours {
    grid-column: 1/-1;
    flex-direction: row;
    align-items: center;
    -moz-column-gap: 18px;
         column-gap: 18px;
    row-gap: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-12__cta {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .footer-12__cta-inner {
    row-gap: 20px;
  }
  .footer-12__main {
    padding-top: 48px;
  }
  .footer-12__columns {
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 32px;
         column-gap: 32px;
    row-gap: 32px;
    padding: 40px 0;
  }
  .footer-12__col--brand {
    grid-column: 1/-1;
    max-width: 100%;
  }
  .footer-12__col--hours {
    grid-column: 1/-1;
    flex-direction: row;
    align-items: center;
    -moz-column-gap: 18px;
         column-gap: 18px;
    row-gap: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .footer-12__cta {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .footer-12__cta-inner {
    row-gap: 18px;
  }
  .footer-12__cta-form {
    width: 100%;
    max-width: 420px;
    --footer12-cta-control-h: 40px;
  }
  .footer-12__cta-submit {
    padding: 0 18px;
    font-size: 13px;
  }
  .footer-12__main {
    padding-top: 40px;
  }
  .footer-12__columns {
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 20px;
         column-gap: 20px;
    row-gap: 28px;
    padding: 36px 0;
  }
  .footer-12__col--brand {
    grid-column: 1/-1;
  }
  .footer-12__col--hours {
    grid-column: 1/-1;
    flex-direction: row;
    align-items: center;
    -moz-column-gap: 14px;
         column-gap: 14px;
    row-gap: 0;
  }
  .footer-12__bottom {
    -moz-column-gap: 18px;
         column-gap: 18px;
  }
  .footer-12__legal {
    -moz-column-gap: 18px;
         column-gap: 18px;
  }
}
@media (max-width: 574.98px) {
  .footer-12__cta {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .footer-12__cta-inner {
    row-gap: 16px;
  }
  .footer-12__cta-pill-text {
    font-size: 12px;
  }
  .footer-12__cta-sub {
    font-size: 16px;
  }
  /* On mobile the pill wrapper looks cramped; lay out as two stacked
     full-width controls with their own rounded corners — no outer pill. */
  .footer-12__cta-form {
    width: 100%;
    flex-direction: column;
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 10px;
    padding: 0;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    --footer12-cta-control-h: 48px;
  }
  input.footer-12__cta-input {
    width: 100%;
    text-align: center;
    padding: 0 16px;
    background-color: #212121;
    border: 1px solid #303030;
    border-radius: 999px;
  }
  .footer-12__cta-submit {
    padding: 0 16px;
    width: 100%;
    font-size: 14px;
  }
  .footer-12__main {
    padding-top: 32px;
    padding-bottom: 24px;
  }
  .footer-12__columns {
    grid-template-columns: 1fr;
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 24px;
    padding: 28px 0;
  }
  .footer-12__col {
    row-gap: 14px;
  }
  .footer-12__col--brand {
    row-gap: 18px;
  }
  .footer-12__col--hours {
    flex-direction: row;
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .footer-12__hours-value {
    font-size: 18px;
  }
  .footer-12__brand-logo {
    height: 26px;
  }
  .footer-12__brand-desc {
    font-size: 14px;
  }
  .footer-12__col-links a {
    font-size: 14px;
  }
  .footer-12__bottom {
    flex-direction: column;
    align-items: flex-start;
    row-gap: 10px;
  }
}
/*----------------------------------------*/
/*  7.14 hero css
/*----------------------------------------*/
.at-hero-spacing {
  padding-top: 550px;
  padding-bottom: 80px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .at-hero-spacing {
    padding-bottom: 120px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-spacing {
    padding-bottom: 100px;
  }
}
.at-hero-title {
  line-height: 95%;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-common-black);
}
.at-hero-dec {
  font-weight: 500;
  font-size: 18px;
  line-height: 156%;
  letter-spacing: -0.03em;
  color: var(--at-neutral-500);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-dec br {
    display: none;
  }
}
.at-hero-shape {
  transform: translateY(-10px);
  display: inline-block;
  margin-right: 7px;
}
.at-hero-social {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-social {
    margin-left: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-social {
    justify-content: flex-start;
  }
}
.at-hero-social a {
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  border: 1px solid rgba(38, 38, 38, 0.1);
  border-radius: 20px;
  padding: 6px 20px;
  display: inline-block;
}
.at-hero-social a:hover {
  background: var(--at-common-black);
  border-color: var(--at-common-black);
  color: var(--at-common-white);
}
.at-hero-social.style-2 a {
  color: var(--at-common-black);
  border: 1px solid var(--at-common-black);
  background: var(--at-common-white);
}
.at-hero-social.style-2 a:hover {
  background: var(--at-common-black);
  border-color: var(--at-common-black);
  color: var(--at-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-slider-active {
    padding-top: 40px;
  }
}
.at-hero-slider-active .swiper-slide {
  width: auto !important;
}
.at-hero-slider-active .background-img img {
  width: 170px;
  height: 170px;
  -o-object-fit: cover;
     object-fit: cover;
}

.alt-hero-spacing {
  padding-top: 83px;
}
.alt-hero-video {
  width: 327px;
  height: 220px;
  border-bottom: 1px solid rgba(30, 30, 30, 0.1);
  padding-bottom: 250px;
  margin-bottom: 15px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .alt-hero-video {
    width: 276px;
    padding-bottom: 220px;
  }
}
.alt-hero-video video {
  width: 100%;
  overflow: hidden;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-position: center center;
}
.alt-hero-service ul li {
  list-style: none;
}
.alt-hero-service ul li:not(:last-child) {
  margin-bottom: 3px;
}
.alt-hero-service ul li a {
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.03em;
  color: var(--at-common-black);
}
.alt-hero-service ul li a .explore-text {
  position: relative;
  display: inline-block;
  padding: 0;
  transition: transform 0.5s;
  transform-origin: 50% 0;
  transform-style: preserve-3d;
  line-height: 1;
}
.alt-hero-service ul li a .explore-text::before {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  content: attr(data-text);
  transition: color 0.5s;
  transform: rotateX(-90deg);
  transform-origin: 50% 0;
  text-align: center;
  z-index: -1;
}
.alt-hero-service ul li a:hover .explore-text {
  transform: rotateX(90deg) translateY(-12px);
  color: inhewrit;
  color: var(--at-theme-primary);
}
.alt-hero-title {
  font-family: var(--at-ff-body);
  font-size: 180px;
  letter-spacing: -0.01em;
  line-height: 83%;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .alt-hero-title {
    font-size: 125px;
  }
}
@media (max-width: 574.98px) {
  .alt-hero-title {
    font-size: 100px;
  }
}
.alt-hero-title-wrap {
  border-left: 1px solid rgba(30, 30, 30, 0.1);
  border-right: 1px solid rgba(30, 30, 30, 0.1);
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .alt-hero-title-wrap {
    border: none;
  }
}
.alt-hero-btn {
  width: 100%;
  background: var(--at-common-white);
  color: var(--at-common-black);
  justify-content: space-between;
  border-radius: 0;
  padding: 22px 25px;
}
.alt-hero-btn:hover {
  color: var(--at-common-white);
  background: var(--at-theme-primary);
}
.alt-hero-dec {
  padding-top: 280px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .alt-hero-dec {
    margin-left: 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .alt-hero-dec {
    padding-top: 180px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .alt-hero-dec {
    padding-top: 0px;
    padding-bottom: 80px;
  }
}
.alt-hero-dec p {
  font-weight: 500;
  font-size: 18px;
  line-height: 156%;
  letter-spacing: -0.03em;
  color: var(--at-common-black);
  display: flex;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .alt-hero-dec p br {
    display: none;
  }
}
.alt-hero-dec p svg {
  flex: 0 0 auto;
  margin-right: 15px;
  margin-top: 7px;
}
.alt-hero-thumb {
  height: 720px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .alt-hero-thumb {
    height: 500px;
  }
  .alt-hero-thumb img {
    height: 600px;
  }
}

.mp-hero-w-logo {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  margin: 0 auto;
}
.mp-hero-title {
  font-weight: 600;
  font-size: 82px;
  line-height: 110%;
  letter-spacing: -0.05em;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mp-hero-title {
    font-size: 60px;
  }
  .mp-hero-title br {
    display: none;
  }
}
@media (max-width: 574.98px) {
  .mp-hero-title {
    font-size: 37px;
  }
}
.mp-hero-spacing {
  padding-top: 165px;
  padding-bottom: 105px;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mp-hero-magnetic {
    -moz-column-count: 2;
         column-count: 2;
  }
}
.mp-hero-magnetic-image {
  border-radius: 22px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.25);
  background: #d9d9d9;
  border: 2px solid var(--at-common-black);
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(1) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(n+1):nth-child(4n+1) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(2) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(n+2):nth-child(4n+2) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(3) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(n+3):nth-child(4n+3) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(4) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item:nth-child(n+4):nth-child(4n+4) img {
  rotate: calc(0deg - var(--velocity) * 0.25deg);
  --translateY: 0%;
}
.mp-hero-magnetic-image-wrap .mp-hero-magnetic-item img {
  pointer-events: auto;
  width: auto;
  height: 100%;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -o-object-fit: cover;
     object-fit: cover;
  will-change: transform;
  transform: translateX(calc(var(--offsetX) * 1px)) translateY(calc(var(--offsetY) * 1px + var(--translateY)));
  transition: transform 0.7s linear(0, 0.5737 7.6%, 0.8382 11.87%, 0.9463 14.19%, 1.0292 16.54%, 1.0886 18.97%, 1.1258 21.53%, 1.137 22.97%, 1.1424 24.48%, 1.1423 26.1%, 1.1366 27.86%, 1.1165 31.01%, 1.0507 38.62%, 1.0219 42.57%, 0.9995 46.99%, 0.9872 51.63%, 0.9842 58.77%, 1.0011 81.26%, 1);
}
.mp-hero-bigtitle {
  font-size: 430px;
  line-height: 1;
  letter-spacing: -0.04em;
  text-transform: uppercase;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px) {
  .mp-hero-bigtitle {
    font-size: 410px;
  }
}
@media only screen and (min-width: 1600px) and (max-width: 1700px) {
  .mp-hero-bigtitle {
    font-size: 385px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .mp-hero-bigtitle {
    font-size: 330px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mp-hero-bigtitle {
    font-size: 270px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mp-hero-bigtitle {
    font-size: 225px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mp-hero-bigtitle {
    font-size: 165px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mp-hero-bigtitle {
    font-size: 125px;
  }
}
@media (max-width: 574.98px) {
  .mp-hero-bigtitle {
    font-size: 80px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mp-hero-content {
    margin-left: 0;
  }
}

.bg-linear-opacity {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.bg-linear-opacity::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.84;
  background: linear-gradient(99deg, #000 5.05%, rgba(0, 0, 0, 0.44) 49.84%, #000 94.63%);
  z-index: -1;
}

.at-hero-video {
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(2px);
  padding: 11px 11px 0;
}
.at-hero-video video {
  width: 100%;
  border-radius: 8px;
}
.at-hero-spacing {
  padding-top: 395px;
  padding-bottom: 70px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .at-hero-spacing {
    padding-top: 300px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .at-hero-spacing {
    padding-top: 250px;
  }
}
@media (max-width: 574.98px) {
  .at-hero-spacing {
    padding-top: 290px;
  }
}
.at-hero-service {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  padding-bottom: 25px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-service {
    margin-right: 0;
  }
}
.at-hero-service ul {
  padding-left: 13px;
}
.at-hero-service ul li {
  margin-bottom: 0 !important;
  line-height: 1.6;
}
.at-hero-service ul li a {
  color: var(--at-common-white);
  font-size: 16px;
}
.at-hero-service-2 ul li::marker {
  width: 8px;
  height: 8px;
  color: rgba(255, 255, 255, 0.5);
}
.at-hero-subtitle {
  font-style: italic;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.03em;
}
.at-hero-title {
  line-height: 121%;
  letter-spacing: -0.03em;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .at-hero-title {
    font-size: 42px;
  }
}
@media (max-width: 574.98px) {
  .at-hero-title {
    font-size: 35px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-button {
    padding-bottom: 30px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-content {
    margin-left: 0;
  }
}
.at-hero-bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  display: flex;
  justify-content: center;
  transform: translateY(50px);
}
.at-hero-bg img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-hero-bg img {
    width: 600px;
    margin-bottom: -50px;
    height: auto;
  }
}

.cs-hero-spacing {
  padding-top: 180px;
  padding-bottom: 130px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-video {
    margin-left: 0;
  }
}
.cs-hero-video video {
  border-radius: 16px;
  width: 256px;
  height: 147px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .cs-hero-video video {
    width: 190px;
    height: 114px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .cs-hero-video video {
    width: 130px;
    height: 77px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-video video {
    margin-top: 20px;
  }
}
.cs-hero-title {
  font-size: 206px;
  line-height: 0.94;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .cs-hero-title {
    font-size: 165px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .cs-hero-title {
    font-size: 130px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-title {
    font-size: 95px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-title {
    text-align: center;
    font-size: 75px;
  }
}
@media (max-width: 574.98px) {
  .cs-hero-title {
    font-size: 52px;
  }
}
.cs-hero-title .text-sm {
  font-weight: 600;
  font-size: 18px;
  line-height: 133%;
  letter-spacing: -0.05em;
  text-align: left;
  margin-top: 23px;
  margin-left: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-title .text-sm {
    font-size: 14px;
    margin-top: 8px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-title .text-sm {
    position: absolute;
  }
}
.cs-hero-title .text-sm-video {
  margin-top: -100px;
  margin-right: 20px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-title .text-sm-video {
    margin-top: -65px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .cs-hero-title .text-sm-video {
    margin-top: -36px;
  }
}

.mg-hero-bg img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: saturate(0);
  z-index: -1;
  border-radius: 60px;
  overflow: hidden;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-bg img {
    border-radius: 30px;
  }
}
.mg-hero-spacing {
  padding-top: 97px;
}
.mg-hero-spacing-inner {
  padding-top: 70px;
  padding-bottom: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-spacing-inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.mg-hero-spacing-inner::before {
  position: absolute;
  content: "";
  background: rgba(30, 30, 30, 0.15);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 60px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-spacing-inner::before {
    border-radius: 30px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .mg-hero-dec {
    margin-left: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-dec {
    margin-left: 0;
  }
}
.mg-hero-dec p {
  font-weight: 500;
  font-size: 28px;
  line-height: 129%;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-dec p br {
    display: none;
  }
}
.mg-hero-awards {
  box-shadow: inset 0 1px 10px 0 rgba(0, 0, 0, 0.15), inset 0 1px 10px 0 rgba(0, 0, 0, 0.15);
  background: rgba(0, 0, 0, 0);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .mg-hero-awards {
    margin-right: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-awards {
    margin-right: 0;
  }
}
.mg-hero-slider-title {
  font-size: 159px;
  line-height: 94%;
  letter-spacing: -0.06em;
  position: relative;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .mg-hero-slider-title {
    font-size: 130px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mg-hero-slider-title {
    font-size: 100px;
  }
}
@media (max-width: 574.98px) {
  .mg-hero-slider-title {
    font-size: 60px;
  }
}
.mg-hero-slider-symbol {
  font-weight: 600;
  font-size: 30px;
  letter-spacing: -0.13em;
  border: 4px solid var(--at-common-white);
  border-radius: 20px;
  line-height: 1;
  width: 39px;
  height: 44px;
  position: absolute;
  top: 22px;
  right: -60px;
  text-align: center;
  padding-top: 3px;
}
@media (max-width: 574.98px) {
  .mg-hero-slider-symbol {
    top: 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-tag {
    margin-left: 40px;
    margin-right: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-tag {
    margin-left: 0;
  }
}
.mg-hero-tag ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.mg-hero-tag ul li {
  list-style: none;
}
.mg-hero-tag ul li a {
  font-weight: 500;
  font-size: 14px;
  letter-spacing: -0.01em;
  color: var(--at-common-white);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 50px;
  padding: 6px 16px;
  background: rgba(255, 255, 255, 0.04);
  display: inline-block;
}
.mg-hero-tag ul li a:hover {
  background: var(--at-common-white);
  color: var(--at-common-black);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .mg-hero-scrool {
    margin-right: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-hero-scrool {
    margin-right: 0;
    margin-top: 0;
  }
}
.mg-hero-scrool a {
  font-weight: 700;
  font-size: 20px;
  letter-spacing: -0.03em;
  color: var(--at-common-white);
}
.mg-hero-scrool a:hover {
  color: var(--at-theme-primary);
}
.mg-hero-scrool a svg {
  margin-left: 5px;
}

.shop-hero-spacing {
  padding-top: 120px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .shop-hero-spacing {
    padding-top: 79px;
  }
}
.shop-hero-item:hover .shop-hero-thumb img {
  transform: scale(1.1);
}
.shop-hero-item-3 .shop-hero-thumb img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .shop-hero-item-3 .shop-hero-thumb img {
    height: 600px;
  }
}
@media (max-width: 574.98px) {
  .shop-hero-item-3 .shop-hero-thumb img {
    height: 400px;
  }
}
.shop-hero-content {
  position: absolute;
  bottom: 60px;
  left: 0;
  right: 0;
  text-align: center;
  z-index: 2;
  padding: 0 30px;
}
@media (max-width: 574.98px) {
  .shop-hero-content {
    bottom: 20px;
  }
}
.shop-hero-title {
  font-size: 52px;
  line-height: 112%;
  letter-spacing: -0.03em;
  color: var(--at-common-white);
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .shop-hero-title {
    font-size: 40px;
    margin-bottom: 0;
  }
}
@media (max-width: 574.98px) {
  .shop-hero-title {
    font-size: 30px;
  }
}
.shop-hero-dec {
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.05em;
  color: var(--at-grey-5);
}
@media (max-width: 574.98px) {
  .shop-hero-dec {
    font-size: 18px;
  }
}
.shop-hero-thumb {
  border-radius: 16px;
  position: relative;
}
.shop-hero-thumb::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  border-radius: 16px;
  z-index: 1;
}
.shop-hero-thumb img {
  border-radius: 16px;
  transition: all 0.9s ease;
}

/*----------------------------------------*/
/*  sec-1-home-4 (Orisa AI Solutions Hero)
/*----------------------------------------*/
.sec-1-home-4-wrap {
  padding-top: 140px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-4-wrap {
    padding-top: 100px;
  }
}
.sec-1-home-4-wrap .sec-1-home-4 {
  padding-top: 200px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-4-wrap .sec-1-home-4 {
    padding-top: 100px;
  }
}
.sec-1-home-4-wrap .sec-1-home-4__tagline {
  font-weight: 600;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.15em;
  color: #FEFEFE;
}
@media (max-width: 574.98px) {
  .sec-1-home-4-wrap .sec-1-home-4__tagline {
    font-size: 10px;
    letter-spacing: 0.1em;
  }
}
.sec-1-home-4-wrap .sec-1-home-4__btns .at-btn {
  padding: 14px 24px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.05em;
  border-bottom: 1px solid rgba(255, 255, 255, 0);
  background: transparent;
}
.sec-1-home-4-wrap .sec-1-home-4__btns .at-btn:hover {
  background: rgba(229, 229, 229, 0.1);
  border-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(3px);
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-4-wrap .sec-1-home-4__btns .at-btn {
    background: rgba(229, 229, 229, 0.1);
    border-color: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(3px);
  }
}
.sec-1-home-4-wrap .sec-1-home-4__cards {
  justify-content: flex-end;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-4-wrap .sec-1-home-4__cards {
    justify-content: flex-start;
  }
}
.sec-1-home-4-wrap .sec-1-home-4__card {
  flex: 1;
  max-width: 145px;
  aspect-ratio: 4/3;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.sec-1-home-4-wrap .sec-1-home-4__card img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
}
.sec-1-home-4-wrap .sec-1-home-4__card img:hover {
  transform: scale(1.05);
}
.sec-1-home-4-wrap .sec-1-home-4__tags {
  justify-content: flex-end;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-4-wrap .sec-1-home-4__tags {
    justify-content: flex-start;
  }
}
.sec-1-home-4-wrap .sec-1-home-4__tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.01em;
  color: #FEFEFE;
  padding: 6px 18px;
  border-radius: 50px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(70, 70, 70, 0.2);
  backdrop-filter: blur(24px);
  text-decoration: none;
  transition: all 0.3s ease;
}
.sec-1-home-4-wrap .sec-1-home-4__tag:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.4);
  color: var(--at-common-white);
}
.sec-1-home-4-wrap .sec-1-home-4__tag svg {
  flex-shrink: 0;
  opacity: 0.8;
}
.sec-1-home-4-wrap .sec-1-home-4__brand {
  font-weight: 700;
  font-size: 220px;
  line-height: 0.95;
  letter-spacing: -0.04em;
  margin-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-4-wrap .sec-1-home-4__brand {
    font-size: 150px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-4-wrap .sec-1-home-4__brand {
    font-size: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-4-wrap .sec-1-home-4__brand {
    font-size: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-4-wrap .sec-1-home-4__brand {
    font-size: 32px;
  }
}
.sec-1-home-4-wrap .sec-1-home-4__brand-suffix {
  font-size: 0.5em;
  font-weight: 600;
  vertical-align: middle;
}
.sec-1-home-4-wrap .sec-1-home-4__brand-suffix sup {
  font-size: 50px;
  vertical-align: super;
  opacity: 0.8;
  font-weight: 400;
}
.sec-1-home-4-wrap .sec-1-home-4__nav li {
  position: relative;
}
.sec-1-home-4-wrap .sec-1-home-4__nav li:not(:first-child)::before {
  content: "";
  position: absolute;
  left: -12px;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
}
@media (max-width: 574.98px) {
  .sec-1-home-4-wrap .sec-1-home-4__nav li:not(:first-child)::before {
    left: -8px;
    width: 3px;
    height: 3px;
  }
}
.sec-1-home-4-wrap .sec-1-home-4__nav a {
  font-weight: 500;
  font-size: 14px;
  letter-spacing: -0.02em;
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: color 0.3s ease;
}
.sec-1-home-4-wrap .sec-1-home-4__nav a:hover {
  color: var(--at-common-white);
}
.sec-1-home-4-wrap .sec-1-home-4__nav a svg {
  flex-shrink: 0;
  opacity: 0.7;
}

/*----------------------------------------*/
/*  sec-3-home-4 (How We Work Process Cards)
/*----------------------------------------*/
.card__process-card {
  display: flex;
  gap: 20px;
  align-items: center;
}
.card__process-card.card-2 {
  margin-top: 80px;
}
.card__process-card.card-3 {
  margin-top: 160px;
}
.card__process-card.card-4 {
  margin-top: 240px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .card__process-card.card-2 {
    margin-top: 50px;
  }
  .card__process-card.card-3 {
    margin-top: 50px;
  }
  .card__process-card.card-4 {
    margin-top: 100px;
  }
}
@media (max-width: 574.98px) {
  .card__process-card {
    flex-direction: column;
    gap: 16px;
    margin-top: 0 !important;
  }
}
.card__process-visual {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  max-width: 100px;
  min-height: 270px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .card__process-visual {
    max-width: 100px;
    min-height: 240px;
  }
}
@media (max-width: 574.98px) {
  .card__process-visual {
    max-width: 80px;
    min-height: 200px;
  }
}
.card__process-pill {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  max-height: 320px;
  border-radius: 9999px;
  overflow: hidden;
}
.card__process-pill--1 {
  background-image: url(../imgs/pages/img-81.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.card__process-pill--2 {
  background-image: url(../imgs/pages/img-82.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.card__process-pill--3 {
  background-image: url(../imgs/pages/img-83.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.card__process-pill--4 {
  background-image: url(../imgs/pages/img-84.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.card__process-pill::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: repeating-linear-gradient(90deg, transparent, transparent 2px, rgba(255, 255, 255, 0.08) 2px, rgba(255, 255, 255, 0.08) 4px);
  opacity: 0.6;
  pointer-events: none;
}
.card__process-num {
  position: absolute;
  top: 24px;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-0, #FEFEFE);
  color: var(--at-common-black, #1D1D1D);
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  border-radius: 50%;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12);
  z-index: 1;
}
@media (max-width: 574.98px) {
  .card__process-num {
    width: 40px;
    height: 40px;
    font-size: 18px;
    top: 16px;
  }
}
.card__process-content {
  flex: 1;
  min-width: 0;
}
.card__process-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  margin-bottom: 12px;
}
@media (max-width: 574.98px) {
  .card__process-title {
    font-size: 20px;
  }
}
.card__process-desc {
  font-size: 16px;
  line-height: 1.5;
  color: var(--at-neutral-500);
  margin-bottom: 16px;
}
@media (max-width: 574.98px) {
  .card__process-desc {
    font-size: 14px;
  }
}
.card__process-divider {
  width: 100%;
  height: 1px;
  background: var(--at-neutral-900);
}

/*----------------------------------------*/
/*  sec-4-home-4 (Featured Case Card)
/*----------------------------------------*/
.card_case__studies-card {
  display: flex;
  flex-direction: row;
  border-radius: 16px;
  overflow: hidden;
  padding: 10px;
  background: #1D1D1D;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.3s ease;
  text-decoration: none;
  color: inherit;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .card_case__studies-card {
    flex-direction: column;
  }
}
.card_case__studies-card:hover {
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
}
.card_case__studies-card:hover .card_case__studies-thumb img {
  transform: scale(1.04);
}
.card_case__studies-card:hover .card_case__studies-play {
  opacity: 0.95;
}
.card_case__studies-card:hover .card_case__studies-link svg {
  transform: rotate(90deg);
}
.card_case__studies-left {
  flex: 1 0 50%;
  display: flex;
  flex-direction: column;
  padding: 70px;
  background: #1D1D1D;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .card_case__studies-left {
    flex: none;
    padding: 32px 24px 28px;
  }
}
@media (max-width: 574.98px) {
  .card_case__studies-left {
    padding: 24px 20px 24px;
  }
}
.card_case__studies-featured-tag {
  display: inline-block;
  align-self: flex-start;
  padding: 6px 10px;
  border-radius: 100px;
  background: var(--at-theme-primary);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #FEFEFE;
  margin-bottom: 20px;
}
.card_case__studies-title {
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #FEFEFE;
  max-width: 60%;
}
@media (max-width: 574.98px) {
  .card_case__studies-title {
    max-width: 100%;
  }
}
.card_case__studies-desc {
  font-size: 16px;
  line-height: 1.6;
  color: rgba(254, 254, 254, 0.5);
  margin-bottom: 28px;
  max-width: 100%;
  max-width: 75%;
}
@media (max-width: 574.98px) {
  .card_case__studies-desc {
    font-size: 14px;
    margin-bottom: 20px;
  }
}
.card_case__studies-metrics {
  display: flex;
  gap: 32px;
  align-items: stretch;
  gap: 0;
}
@media (max-width: 574.98px) {
  .card_case__studies-metrics {
    margin-bottom: 50px;
  }
}
.card_case__studies-metric {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.card_case__studies-metric:first-child {
  padding-right: 32px;
}
.card_case__studies-metric:last-child {
  padding-left: 32px;
}
.card_case__studies-metric-divider {
  width: 1px;
  min-height: 36px;
  background: rgba(255, 255, 255, 0.25);
  flex-shrink: 0;
}
.card_case__studies-metric-value {
  letter-spacing: -2.4px;
  color: #FEFEFE;
}
.card_case__studies-metric-label {
  font-size: 12px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.75);
}
.card_case__studies-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  max-width: 50%;
}
@media (max-width: 574.98px) {
  .card_case__studies-tags {
    max-width: 100%;
  }
}
.card_case__studies-tag {
  display: inline-block;
  padding: 4px 20px;
  border-radius: 32px;
  border: 1px solid rgba(223, 223, 223, 0.5);
  background: transparent;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #FEFEFE;
}
.card_case__studies-tag:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.4);
  color: #FEFEFE;
}
.card_case__studies-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  color: #FEFEFE;
  font-size: 12px;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: uppercase;
}
.card_case__studies-link svg {
  flex-shrink: 0;
  transition: transform 0.25s ease;
}
.card_case__studies-thumb {
  position: relative;
  width: 100%;
  height: 680px;
  border-radius: 12px;
  overflow: hidden;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .card_case__studies-thumb {
    height: 400px;
  }
}
.card_case__studies-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.5s ease;
}
.card_case__studies-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.card_case__studies-card--overlay {
  padding: 10px;
  flex-direction: column;
  display: flex;
}
.card_case__studies-card--overlay:hover .card_case__studies-visual img {
  transform: scale(1.04);
}
.card_case__studies-visual {
  position: relative;
  border-radius: 12px;
  width: 100%;
  aspect-ratio: 16/10;
  overflow: hidden;
  min-height: 300px;
}
.card_case__studies-visual img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.5s ease;
}
.card_case__studies-metric-overlay {
  position: absolute;
  bottom: 30px;
  left: 30px;
  padding: 24px 32px;
  border-radius: 16px;
  border: 1px solid var(--neutral-500, #585959);
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(2px);
  display: flex;
  flex-direction: column;
  gap: 4px;
}
@media (max-width: 574.98px) {
  .card_case__studies-metric-overlay {
    display: none;
    visibility: hidden;
  }
}
.card_case__studies-metric-overlay .card_case__studies-metric-value {
  font-size: 48px;
  font-weight: 600;
  margin-bottom: 16px;
  letter-spacing: -0.02em;
  color: #FEFEFE;
}
.card_case__studies-metric-overlay .card_case__studies-metric-label {
  font-size: 20px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.85);
}
.card_case__studies-tags-overlay {
  position: absolute;
  bottom: 30px;
  right: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  max-width: 42%;
}
@media (max-width: 574.98px) {
  .card_case__studies-tags-overlay {
    max-width: 100%;
  }
}
.card_case__studies-tags-overlay .card_case__studies-tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: -0.01em;
  color: #FEFEFE;
  padding: 6px 20px;
  border-radius: 50px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(70, 70, 70, 0.2);
  backdrop-filter: blur(24px);
  text-decoration: none;
  transition: all 0.3s ease;
}
.card_case__studies-tags-overlay .card_case__studies-tag:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.4);
  color: #FEFEFE;
}
.card_case__studies-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 30px;
  background: var(--at-neutral-700);
  border-radius: 12px;
}
@media (max-width: 574.98px) {
  .card_case__studies-footer {
    padding: 20px 20px;
    flex-wrap: wrap;
  }
}
.card_case__studies-footer-title {
  font-weight: 600;
  letter-spacing: -1.8px;
  color: #FEFEFE;
  margin: 0;
}
@media (max-width: 574.98px) {
  .card_case__studies-footer-title {
    font-size: 18px;
  }
}
.card_case__studies-card--overlay .card_case__studies-link {
  margin-top: 0;
}

/* Home 12 / Section 1 — Hero (Pure Design. Potent Storytelling) */
.sec-1-home {
  --sec1h12-brand-2: #7f0b01;
  --sec1h12-tile-w: 370px;
  --sec1h12-tile-h: 360px;
  --sec1h12-tile-gap: 16px;
  background-color: var(--at-neutral-50);
  overflow: hidden;
  position: relative;
}

.sec-1-home__hero {
  padding-top: 56px;
  padding-bottom: 64px;
}

.sec-1-home__hero-inner {
  row-gap: 24px;
}

/* ── Social proof pill ───────────────────────────── */
.sec-1-home__pill {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 6px 16px 6px 8px;
  background-color: var(--at-neutral-0);
  border-radius: 999px;
}

.sec-1-home__avatars {
  display: inline-flex;
  align-items: center;
}

.sec-1-home__avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 0 0 0 2px var(--at-neutral-0);
}
.sec-1-home__avatar + .sec-1-home__avatar {
  margin-left: -10px;
}

.sec-1-home__pill-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.28px;
  color: var(--at-neutral-700);
  white-space: nowrap;
}

/* ── Headline ────────────────────────────────────── */
.sec-1-home__title {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: clamp(40px, 6.5vw, 84px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  /* SplitText line wrappers — clip overflow so chars rise from below */
}
.sec-1-home__title .split-line {
  overflow: hidden;
  padding-bottom: 0.12em;
}

/* ── Subline ─────────────────────────────────────── */
.sec-1-home__sub {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  max-width: 540px;
}

/* ── CTAs ────────────────────────────────────────── */
.sec-1-home__ctas {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding-top: 8px;
  flex-wrap: wrap;
  justify-content: center;
}

.sec-1-home__btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 50px;
  padding: 0;
  background: transparent;
  color: var(--at-neutral-0);
  text-decoration: none;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 16px;
  letter-spacing: -0.05em;
  transition: opacity 0.3s ease;
}
.sec-1-home__btn-primary:hover, .sec-1-home__btn-primary:focus-visible {
  color: var(--at-neutral-0);
  opacity: 0.9;
}
.sec-1-home__btn-primary:hover .sec-1-home__btn-primary-icon svg, .sec-1-home__btn-primary:focus-visible .sec-1-home__btn-primary-icon svg {
  transform: translate(2px, -2px);
}

.sec-1-home__btn-primary-label {
  display: inline-flex;
  align-items: center;
  height: 50px;
  padding: 14px 27px;
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  border-radius: 50px;
  white-space: nowrap;
}

.sec-1-home__btn-primary-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  border-radius: 50%;
}
.sec-1-home__btn-primary-icon svg {
  transition: transform 0.3s ease;
}

.sec-1-home__btn-secondary {
  display: inline-flex;
  align-items: center;
  height: 50px;
  padding: 14px 28px;
  border-radius: 999px;
  color: var(--at-neutral-950);
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 16px;
  letter-spacing: -0.05em;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  transition: opacity 0.3s ease;
}
.sec-1-home__btn-secondary:hover, .sec-1-home__btn-secondary:focus-visible {
  color: var(--at-neutral-950);
  opacity: 0.7;
}

/* ── Image strip — Swiper marquee ────────────────── */
.sec-1-home__strip {
  position: relative;
  overflow: hidden;
  padding-inline: 24px;
}

.sec-1-home-slider {
  overflow: visible;
}
.sec-1-home-slider .swiper-wrapper {
  /* Linear timing for continuous marquee feel */
  transition-timing-function: linear !important;
}

.sec-1-home__tile {
  flex-shrink: 0;
  height: var(--sec1h12-tile-h);
  border-radius: 16px;
  overflow: hidden;
  position: relative;
  display: block;
}

.sec-1-home__tile-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}

.sec-1-home__tile:hover .sec-1-home__tile-img,
.sec-1-home__tile:focus-visible .sec-1-home__tile-img {
  transform: scale(1.05);
}

.sec-1-home__tile--brand-1 {
  background-color: var(--at-theme-primary);
}

.sec-1-home__tile--brand-2 {
  background-color: var(--sec1h12-brand-2);
}

.sec-1-home__tile--neutral-100 {
  background-color: var(--at-neutral-100);
}

.sec-1-home__tile--neutral-300 {
  background-color: var(--at-neutral-300);
}

.sec-1-home__tile--neutral-800 {
  background-color: var(--at-neutral-800);
}

/* ── Responsive ──────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home {
    --sec1h12-tile-w: 320px;
    --sec1h12-tile-h: 320px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home {
    --sec1h12-tile-w: 280px;
    --sec1h12-tile-h: 280px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home {
    --sec1h12-tile-w: 240px;
    --sec1h12-tile-h: 240px;
  }
  .sec-1-home__hero {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home {
    --sec1h12-tile-w: 220px;
    --sec1h12-tile-h: 220px;
    --sec1h12-tile-gap: 12px;
  }
  .sec-1-home__hero {
    padding-top: 40px;
    padding-bottom: 48px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-home {
    --sec1h12-tile-w: 220px;
    --sec1h12-tile-h: 220px;
    --sec1h12-tile-gap: 12px;
  }
  .sec-1-home__hero {
    padding-top: 32px;
    padding-bottom: 40px;
  }
  .sec-1-home__hero-inner {
    row-gap: 18px;
  }
  .sec-1-home__sub {
    max-width: 100%;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home {
    --sec1h12-tile-w: 200px;
    --sec1h12-tile-h: 200px;
    --sec1h12-tile-gap: 10px;
  }
  .sec-1-home__hero {
    padding-top: 28px;
    padding-bottom: 32px;
  }
  .sec-1-home__hero-inner {
    row-gap: 16px;
  }
  .sec-1-home__pill-text {
    font-size: 13px;
  }
  .sec-1-home__btn-primary-label {
    padding: 14px 20px;
  }
  .sec-1-home__btn-secondary {
    padding: 14px 18px;
  }
  .sec-1-home__strip {
    padding-inline: 16px;
  }
}
/* Home 12 / Section 2 — Selected Projects */
.sec-2-home {
  background-color: var(--at-neutral-50);
  padding-top: 120px;
}

/* ── Section header ─────────────────────────────── */
.sec-2-home__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 16px;
  margin-bottom: 64px;
}

.sec-2-home__eyebrow {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.24px;
  color: var(--at-theme-primary);
  text-transform: uppercase;
}

.sec-2-home__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(48px, 8vw, 124px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

.sec-2-home__sub {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  max-width: 620px;
}

/* ── Cards container ────────────────────────────── */
.sec-2-home__cards {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
  margin-inline: auto;
  max-width: 1280px;
}

/* ── Project card ───────────────────────────────── */
.card-home-project {
  display: flex;
  align-items: center;
  gap: 48px;
  padding: 32px;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  border-radius: 24px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 18px 40px -28px rgba(0, 0, 0, 0.18);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  /* JS-driven stack: ScrollTrigger pins each card; transform-origin keeps the
     scale-down "tucking under" feel anchored at the top of each card. */
  transform-origin: 50% 0%;
  will-change: transform;
}
.card-home-project:hover, .card-home-project:focus-visible {
  border-color: var(--at-neutral-300);
  box-shadow: 0 12px 32px -16px rgba(0, 0, 0, 0.12);
  color: inherit;
}
.card-home-project:hover .card-home-project__img, .card-home-project:focus-visible .card-home-project__img {
  transform: scale(1.04);
}
.card-home-project:hover .card-home-project__title, .card-home-project:focus-visible .card-home-project__title {
  color: var(--at-theme-primary);
}

.card-home-project__image {
  flex: 0 0 480px;
  width: 480px;
  height: 400px;
  border-radius: 16px;
  overflow: hidden;
  background-color: var(--at-neutral-100);
  position: relative;
}

.card-home-project__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}

.card-home-project__content {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 24px;
}

.card-home-project__top {
  display: flex;
  align-items: center;
  -moz-column-gap: 12px;
       column-gap: 12px;
}

.card-home-project__num {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.24px;
  color: var(--at-theme-primary);
}

.card-home-project__dot {
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--at-neutral-300);
}

.card-home-project__label {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.24px;
  color: var(--at-neutral-500);
  text-transform: uppercase;
}

.card-home-project__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 36px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  transition: color 0.3s ease;
}

.card-home-project__desc {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

.card-home-project__tags {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.card-home-project__tags li {
  display: inline-flex;
}

.card-home-project__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10.5px 19px;
  border: 1px solid var(--at-neutral-100);
  border-radius: 32px;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.24px;
  color: var(--at-neutral-900);
  text-transform: uppercase;
  white-space: nowrap;
  background-color: transparent;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.card-home-project__tag.is-filled {
  background-color: var(--at-neutral-900);
  border-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-2-home {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .card-home-project__image {
    flex: 0 0 420px;
    width: 420px;
    height: 360px;
  }
  .card-home-project__title {
    font-size: 32px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  .card-home-project {
    gap: 32px;
    padding: 24px;
  }
  .card-home-project__image {
    flex: 0 0 360px;
    width: 360px;
    height: 320px;
  }
  .card-home-project__title {
    font-size: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-2-home__header {
    margin-bottom: 48px;
  }
  .card-home-project {
    gap: 24px;
    padding: 20px;
  }
  .card-home-project__image {
    flex: 0 0 320px;
    width: 320px;
    height: 300px;
  }
  .card-home-project__content {
    row-gap: 16px;
  }
  .card-home-project__title {
    font-size: 28px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .sec-2-home__header {
    margin-bottom: 40px;
    row-gap: 12px;
  }
  .sec-2-home__cards {
    row-gap: 14px;
  }
  .card-home-project {
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
    padding: 20px;
  }
  .card-home-project__image {
    flex: 0 0 auto;
    width: 100%;
    height: 360px;
  }
  .card-home-project__title {
    font-size: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-2-home {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .sec-2-home__header {
    margin-bottom: 32px;
    row-gap: 12px;
  }
  .sec-2-home__cards {
    row-gap: 12px;
  }
  .card-home-project {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    padding: 16px;
  }
  .card-home-project__image {
    flex: 0 0 auto;
    width: 100%;
    height: 280px;
  }
  .card-home-project__content {
    row-gap: 14px;
  }
  .card-home-project__title {
    font-size: 24px;
  }
  .card-home-project__tag {
    padding: 9px 16px;
    font-size: 11px;
  }
}
@media (max-width: 574.98px) {
  .sec-2-home {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sec-2-home__header {
    margin-bottom: 28px;
  }
  .card-home-project {
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
    padding: 14px;
    border-radius: 20px;
  }
  .card-home-project__image {
    flex: 0 0 auto;
    width: 100%;
    height: 240px;
  }
  .card-home-project__content {
    row-gap: 12px;
  }
  .card-home-project__title {
    font-size: 22px;
  }
  .card-home-project__desc {
    font-size: 15px;
  }
  .card-home-project__tag {
    padding: 8px 14px;
    font-size: 10.5px;
  }
}
/* Home 12 / Section 3 — Our Services */
.sec-3-home {
  background-color: var(--at-neutral-50);
  padding-top: 120px;
  padding-bottom: 120px;
}

/* ── Section header ─────────────────────────────── */
.sec-3-home__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 48px;
  max-width: 1280px;
  margin-inline: auto;
  margin-bottom: 64px;
}

.sec-3-home__header-left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 16px;
  flex: 1 1 0;
  min-width: 0;
}

.sec-3-home__eyebrow {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.96px;
  color: var(--at-theme-primary);
  text-transform: uppercase;
}

.sec-3-home__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: clamp(36px, 5vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

.sec-3-home__lede {
  flex: 0 0 380px;
  max-width: 380px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}

/* ── Services grid ──────────────────────────────── */
.sec-3-home__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1280px;
  margin-inline: auto;
}

/* ── Service card ───────────────────────────────── */
.card-home-service {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  row-gap: 24px;
  padding: 32px;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  border-radius: 24px;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}
.card-home-service:hover, .card-home-service:focus-visible {
  border-color: var(--at-neutral-300);
  box-shadow: 0 12px 32px -16px rgba(0, 0, 0, 0.12);
  color: inherit;
}
.card-home-service:hover .card-home-service__title, .card-home-service:focus-visible .card-home-service__title {
  color: var(--at-theme-primary);
}
.card-home-service:hover .card-home-service__icon:not(.is-filled), .card-home-service:focus-visible .card-home-service__icon:not(.is-filled) {
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
}
.card-home-service:hover .card-home-service__icon svg, .card-home-service:focus-visible .card-home-service__icon svg {
  transform: translate(2px, -2px);
}

.card-home-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.card-home-service__num-wrap {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
}

.card-home-service__num-line {
  display: inline-block;
  width: 20px;
  height: 1px;
  background-color: var(--at-theme-primary);
}

.card-home-service__num {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.96px;
  color: var(--at-theme-primary);
}

.card-home-service__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
  flex-shrink: 0;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.card-home-service__icon svg {
  transition: transform 0.3s ease;
}
.card-home-service__icon.is-filled {
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
}

.card-home-service__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 36px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  transition: color 0.3s ease;
}

.card-home-service__desc {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}

.card-home-service__tags {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.card-home-service__tags li {
  display: inline-flex;
}

.card-home-service__tag {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border: 1px solid var(--at-neutral-200, #cdcccc);
  border-radius: 999px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
  white-space: nowrap;
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-3-home {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-3-home {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  .card-home-service {
    padding: 24px;
  }
  .card-home-service__title {
    font-size: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-3-home {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-3-home__header {
    margin-bottom: 48px;
    gap: 32px;
  }
  .sec-3-home__lede {
    flex-basis: 320px;
    max-width: 320px;
  }
  .sec-3-home__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .card-home-service {
    padding: 24px;
    row-gap: 18px;
  }
  .card-home-service__title {
    font-size: 28px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-home {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .sec-3-home__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 40px;
  }
  .sec-3-home__lede {
    flex: 0 0 auto;
    max-width: 100%;
  }
  .sec-3-home__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .card-home-service {
    padding: 22px;
    row-gap: 16px;
  }
  .card-home-service__title {
    font-size: 26px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-3-home {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .sec-3-home__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 32px;
  }
  .sec-3-home__lede {
    flex: 0 0 auto;
    max-width: 100%;
  }
  .sec-3-home__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .card-home-service {
    padding: 20px;
    row-gap: 14px;
    border-radius: 20px;
  }
  .card-home-service__title {
    font-size: 26px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-home {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sec-3-home__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 28px;
  }
  .sec-3-home__lede {
    flex: 0 0 auto;
    max-width: 100%;
    font-size: 15px;
  }
  .sec-3-home__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .card-home-service {
    padding: 18px;
    row-gap: 12px;
    border-radius: 18px;
  }
  .card-home-service__title {
    font-size: 24px;
  }
  .card-home-service__desc {
    font-size: 15px;
  }
}
/* Home 12 / Section 4 — Process Philosophy */
.sec-4-home {
  background-color: var(--at-neutral-50);
  padding-top: 120px;
  padding-bottom: 120px;
}

/* ── Section header ─────────────────────────────── */
.sec-4-home__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 16px;
  margin-bottom: 64px;
}

.sec-4-home__eyebrow {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.96px;
  color: var(--at-neutral-500);
  text-transform: uppercase;
}

.sec-4-home__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: clamp(36px, 5vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  max-width: 980px;
}

/* ── Cards row ──────────────────────────────────── */
.sec-4-home__row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1280px;
  margin-inline: auto;
}

/* ── Process card ───────────────────────────────── */
.card-home-process {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
  padding: 24px 24px 32px;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  border-radius: 24px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}
.card-home-process:hover, .card-home-process:focus-within {
  border-color: var(--at-neutral-300);
  box-shadow: 0 12px 32px -16px rgba(0, 0, 0, 0.12);
}
.card-home-process:hover .card-home-process__img, .card-home-process:focus-within .card-home-process__img {
  transform: scale(1.05);
}

.card-home-process__image {
  width: 100%;
  aspect-ratio: 1/1;
  background-color: var(--at-neutral-50);
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}

.card-home-process__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}

.card-home-process__text {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}

.card-home-process__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 28px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

.card-home-process__desc {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-4-home {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  .card-home-process {
    padding: 20px 20px 28px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-4-home {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-4-home__header {
    margin-bottom: 48px;
  }
  .sec-4-home__row {
    gap: 20px;
  }
  .card-home-process {
    padding: 20px 20px 24px;
    row-gap: 18px;
  }
  .card-home-process__title {
    font-size: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .sec-4-home__header {
    margin-bottom: 40px;
  }
  .sec-4-home__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .card-home-process {
    padding: 18px 18px 24px;
    row-gap: 16px;
  }
  .card-home-process__title {
    font-size: 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-home {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .sec-4-home__header {
    margin-bottom: 32px;
    row-gap: 12px;
  }
  .sec-4-home__row {
    grid-template-columns: 1fr;
    gap: 16px;
    max-width: 480px;
  }
  .card-home-process {
    padding: 18px 18px 24px;
    row-gap: 16px;
    border-radius: 20px;
  }
  .card-home-process__title {
    font-size: 24px;
  }
}
@media (max-width: 574.98px) {
  .sec-4-home {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sec-4-home__header {
    margin-bottom: 28px;
    row-gap: 12px;
  }
  .sec-4-home__row {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .card-home-process {
    padding: 16px 16px 20px;
    row-gap: 14px;
    border-radius: 18px;
  }
  .card-home-process__title {
    font-size: 22px;
  }
  .card-home-process__desc {
    font-size: 15px;
  }
}
/* Home 12 / Section 5 — Pricing */
.sec-5-home {
  background-color: var(--at-neutral-50);
  padding-top: 120px;
  padding-bottom: 120px;
  position: relative;
  overflow: hidden;
}

/* ── Dot pattern background ─────────────────────── */
.sec-5-home__dots {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background-image: radial-gradient(circle, rgba(0, 0, 0, 0.45) 1.2px, transparent 1.4px), radial-gradient(circle, rgba(0, 0, 0, 0.45) 1.2px, transparent 1.4px);
  background-size: 96px 96px, 96px 96px;
  background-position: 0 0, 48px 48px;
}

/* ── Section header ─────────────────────────────── */
.sec-5-home__header {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 16px;
  margin-bottom: 64px;
}

.sec-5-home__eyebrow {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.96px;
  color: var(--at-neutral-500);
  text-transform: uppercase;
}

.sec-5-home__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: clamp(36px, 5vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

/* ── Tables row ─────────────────────────────────── */
.sec-5-home__tables {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  max-width: 1287px;
  margin-inline: auto;
  margin-bottom: 64px;
}

/* ── Pricing card ───────────────────────────────── */
.card-home-price {
  position: relative;
  background-color: var(--at-neutral-0);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.card-home-price__top {
  position: relative;
  background-color: var(--at-neutral-50);
  border-radius: 14px;
  margin: 16px 16px 0;
  padding: 25px 29px 32px;
  min-height: 289px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 7px;
}

.card-home-price.is-popular .card-home-price__top {
  background-color: rgba(240, 70, 14, 0.1);
}

.card-home-price__badge {
  position: absolute;
  top: 23px;
  right: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 10px;
  border-radius: 20px;
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 10px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  white-space: nowrap;
}

.card-home-price__plan {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 18px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  text-transform: capitalize;
}

.card-home-price__price {
  display: flex;
  align-items: flex-end;
  -moz-column-gap: 0;
       column-gap: 0;
}

.card-home-price__amount {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 48px;
  line-height: 52px;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}

.card-home-price__period {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  align-self: flex-end;
  padding-bottom: 4px;
}

.card-home-price__desc {
  margin: 24px 0 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  max-width: 100%;
}

.card-home-price__cta {
  margin-top: auto;
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 12px;
       column-gap: 12px;
  height: 50px;
  padding: 14px 42px;
  border-radius: 50px;
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  text-decoration: none;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.card-home-price__cta:hover, .card-home-price__cta:focus-visible {
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
}
.card-home-price__cta:hover .card-home-price__cta-icon svg, .card-home-price__cta:focus-visible .card-home-price__cta-icon svg {
  transform: translate(2px, -2px);
}

.card-home-price__cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.card-home-price__cta-icon svg {
  transition: transform 0.3s ease;
}

/* ── Features list ──────────────────────────────── */
.card-home-price__features {
  list-style: none;
  margin: 0;
  padding: 24px 45px 32px;
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.card-home-price__features li {
  display: flex;
  align-items: center;
  -moz-column-gap: 12px;
       column-gap: 12px;
}

.card-home-price__feature-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
}

.card-home-price__feature-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}

/* ── Custom pricing CTA ─────────────────────────── */
.sec-5-home__custom {
  position: relative;
  display: flex;
  align-items: flex-start;
  -moz-column-gap: 10px;
       column-gap: 10px;
  max-width: 483px;
  margin: 0 auto;
  padding-top: 8px;
}

.sec-5-home__custom-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-top: 4px;
}

.sec-5-home__custom-text {
  display: flex;
  flex-direction: column;
  row-gap: 17px;
}

.sec-5-home__custom-title {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: -0.05em;
  color: var(--at-neutral-800);
}

.sec-5-home__custom-desc {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}

.sec-5-home__custom-link {
  color: var(--at-neutral-700);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.3s ease;
}
.sec-5-home__custom-link:hover, .sec-5-home__custom-link:focus-visible {
  color: var(--at-theme-primary);
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-5-home {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  .sec-5-home__tables {
    gap: 20px;
  }
  .card-home-price__top {
    padding: 22px 24px 28px;
  }
  .card-home-price__features {
    padding: 22px 32px 28px;
  }
  .card-home-price__cta {
    padding: 14px 28px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-home {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-5-home__header {
    margin-bottom: 48px;
  }
  .sec-5-home__tables {
    gap: 18px;
    margin-bottom: 48px;
  }
  .card-home-price__top {
    padding: 20px 22px 26px;
  }
  .card-home-price__features {
    padding: 20px 26px 26px;
    row-gap: 16px;
  }
  .card-home-price__cta {
    padding: 14px 22px;
    font-size: 15px;
  }
  .card-home-price__amount {
    font-size: 42px;
    line-height: 46px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-home {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .sec-5-home__header {
    margin-bottom: 40px;
  }
  .sec-5-home__tables {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 480px;
    margin-bottom: 40px;
  }
  .card-home-price__top {
    padding: 24px 28px 32px;
    min-height: auto;
  }
  .card-home-price__features {
    padding: 24px 32px 32px;
  }
  .sec-5-home__custom-title {
    font-size: 22px;
  }
  .sec-5-home__custom-desc {
    font-size: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-5-home {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .sec-5-home__header {
    margin-bottom: 32px;
    row-gap: 12px;
  }
  .sec-5-home__tables {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 32px;
  }
  .card-home-price__top {
    padding: 20px 22px 28px;
    min-height: auto;
  }
  .card-home-price__features {
    padding: 20px 26px 28px;
    row-gap: 14px;
  }
  .card-home-price__amount {
    font-size: 40px;
    line-height: 44px;
  }
  .sec-5-home__custom-title {
    font-size: 20px;
  }
  .sec-5-home__custom-desc {
    font-size: 16px;
  }
}
@media (max-width: 574.98px) {
  .sec-5-home {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sec-5-home__header {
    margin-bottom: 28px;
  }
  .sec-5-home__tables {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 28px;
  }
  .card-home-price {
    border-radius: 14px;
  }
  .card-home-price__top {
    margin: 12px 12px 0;
    padding: 18px 18px 24px;
    border-radius: 12px;
  }
  .card-home-price__features {
    padding: 18px 20px 24px;
    row-gap: 12px;
  }
  .card-home-price__amount {
    font-size: 36px;
    line-height: 40px;
  }
  .card-home-price__cta {
    padding: 13px 20px;
    font-size: 14px;
  }
  .sec-5-home__dots {
    background-size: 64px 64px, 64px 64px;
    background-position: 0 0, 32px 32px;
  }
}
/* Home 12 / Section 6 — About + Brand logos (dark) */
.sec-6-home {
  background-color: #0f0f0f;
  color: var(--at-common-white);
  padding-bottom: 100px;
  padding-top: 32px;
  overflow: hidden;
}

/* ── Top bar with line ──────────────────────────── */
.sec-6-home__topbar {
  position: relative;
  margin-bottom: 0;
}

.sec-6-home__topline {
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.18);
  margin-bottom: 24px;
}

.sec-6-home__topbar-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 24px;
       column-gap: 24px;
}

.sec-6-home__topbar-label {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0);
  white-space: nowrap;
}

/* ── Lede paragraph ─────────────────────────────── */
.sec-6-home__lede-wrap {
  padding: 96px 0;
}

.sec-6-home__lede {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(24px, 3.5vw, 64px);
  line-height: 1.18;
  letter-spacing: -0.03em;
  color: var(--at-neutral-0);
  max-width: 100%;
}

/* ── Brand logos — Swiper marquee ────────────────── */
.sec-6-home__brands-strip {
  position: relative;
  overflow: hidden;
  padding-inline: 24px;
  color: var(--at-neutral-0);
}

.sec-6-home-slider {
  overflow: visible;
}
.sec-6-home-slider .swiper-wrapper {
  /* Linear timing for continuous marquee feel */
  transition-timing-function: linear !important;
  align-items: center;
}

.sec-6-home__brand-slide {
  flex-shrink: 0;
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 64px;
}

.sec-6-home__brand-img {
  display: inline-block;
  height: 40px;
  width: auto;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.95;
}

.sec-6-home__brand {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
  color: var(--at-neutral-0);
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 22px;
  line-height: 1;
  letter-spacing: -0.04em;
}

.sec-6-home__brand-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  color: var(--at-neutral-0);
}

.sec-6-home__brand-name {
  color: var(--at-neutral-0);
}

.sec-6-home__brand-name--logo {
  font-size: 24px;
  margin-right: 2px;
}

.sec-6-home__brand-loop {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 2px solid var(--at-neutral-0);
  margin-right: 1px;
}
.sec-6-home__brand-loop + .sec-6-home__brand-loop {
  margin-left: -7px;
}

.sec-6-home__brand-name--oslo {
  display: inline-flex;
  align-items: baseline;
  font-weight: 600;
  font-size: 26px;
  letter-spacing: -0.04em;
}

.sec-6-home__brand-dot {
  color: var(--at-theme-primary);
  font-size: 1em;
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-6-home__lede-wrap {
    padding: 80px 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-6-home__lede-wrap {
    padding: 72px 0;
  }
  .sec-6-home__brand-slide {
    height: 56px;
  }
  .sec-6-home__brand-img {
    height: 36px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home {
    padding-bottom: 80px;
  }
  .sec-6-home__lede-wrap {
    padding: 56px 0;
  }
  .sec-6-home__brand-slide {
    height: 52px;
  }
  .sec-6-home__brand-img {
    height: 32px;
  }
  .sec-6-home__brand {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home {
    padding-bottom: 64px;
  }
  .sec-6-home__lede-wrap {
    padding: 48px 0;
  }
  .sec-6-home__brand-slide {
    height: 48px;
  }
  .sec-6-home__brand-img {
    height: 28px;
  }
  .sec-6-home__brand {
    font-size: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-6-home {
    padding-bottom: 56px;
  }
  .sec-6-home__topline {
    margin-bottom: 18px;
  }
  .sec-6-home__lede-wrap {
    padding: 36px 0;
  }
  .sec-6-home__brand-slide {
    height: 44px;
  }
  .sec-6-home__brand-img {
    height: 24px;
  }
  .sec-6-home__brand {
    font-size: 17px;
  }
  .sec-6-home__topbar-label {
    font-size: 13px;
  }
}
@media (max-width: 574.98px) {
  .sec-6-home {
    padding-bottom: 48px;
    padding-top: 24px;
  }
  .sec-6-home__topline {
    margin-bottom: 14px;
  }
  .sec-6-home__lede-wrap {
    padding: 28px 0;
  }
  .sec-6-home__lede {
    font-size: 22px;
    line-height: 1.25;
  }
  .sec-6-home__brand-slide {
    height: 40px;
  }
  .sec-6-home__brand-img {
    height: 22px;
  }
  .sec-6-home__brand {
    font-size: 16px;
  }
  .sec-6-home__topbar-label {
    font-size: 12px;
  }
}
/* Home 12 / Section 7 — Testimonials */
.sec-7-home {
  background-color: var(--at-neutral-50);
  border-bottom: 1px solid var(--at-neutral-200, #cdcccc);
  padding-top: 120px;
  padding-bottom: 120px;
}

/* ── Section header ─────────────────────────────── */
.sec-7-home__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 16px;
  margin-bottom: 80px;
}

.sec-7-home__eyebrow {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.96px;
  color: var(--at-neutral-500);
  text-transform: uppercase;
}

.sec-7-home__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: clamp(36px, 5vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

/* ── Cards row (3 staggered columns) ────────────── */
.sec-7-home__row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1280px;
  margin-inline: auto;
  align-items: start;
}

.sec-7-home__col {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}

.sec-7-home__col--offset-lg {
  padding-top: 48px;
}

.sec-7-home__col--offset-sm {
  padding-top: 16px;
}

/* ── Testimonial card ───────────────────────────── */
.card-home-testimonial {
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  border-radius: 20px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  row-gap: 16px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}
.card-home-testimonial:hover, .card-home-testimonial:focus-within {
  border-color: var(--at-neutral-300);
  box-shadow: 0 12px 32px -16px rgba(0, 0, 0, 0.12);
}

.card-home-testimonial--dark {
  background-color: var(--at-neutral-950);
  border-color: var(--at-neutral-950);
}
.card-home-testimonial--dark .card-home-testimonial__quote {
  color: var(--at-neutral-0);
}
.card-home-testimonial--dark .card-home-testimonial__name {
  color: var(--at-neutral-0);
  fill: var(--at-neutral-0);
}
.card-home-testimonial--dark .card-home-testimonial__icon {
  fill: var(--at-neutral-0);
}
.card-home-testimonial--dark .card-home-testimonial__role {
  color: var(--at-neutral-300);
}
.card-home-testimonial--dark:hover, .card-home-testimonial--dark:focus-within {
  border-color: var(--at-neutral-800);
}

.card-home-testimonial__quote {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}

.card-home-testimonial__author {
  display: flex;
  align-items: center;
  -moz-column-gap: 12px;
       column-gap: 12px;
}

.card-home-testimonial__avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  flex-shrink: 0;
}

.card-home-testimonial__meta {
  display: flex;
  flex-direction: column;
  row-gap: 4px;
  line-height: 1;
}

.card-home-testimonial__name {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 15px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}

.card-home-testimonial__role {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-7-home {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-7-home {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  .sec-7-home__row {
    gap: 18px;
  }
  .sec-7-home__col {
    row-gap: 18px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-7-home {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-7-home__header {
    margin-bottom: 56px;
  }
  .sec-7-home__row {
    gap: 16px;
  }
  .sec-7-home__col {
    row-gap: 16px;
  }
  .sec-7-home__col--offset-lg {
    padding-top: 32px;
  }
  .sec-7-home__col--offset-sm {
    padding-top: 12px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .sec-7-home__header {
    margin-bottom: 48px;
  }
  .sec-7-home__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .sec-7-home__col {
    row-gap: 16px;
    padding-top: 0 !important;
  }
  .card-home-testimonial {
    padding: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-7-home {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .sec-7-home__header {
    margin-bottom: 40px;
    row-gap: 12px;
  }
  .sec-7-home__row {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .sec-7-home__col {
    row-gap: 14px;
    padding-top: 0 !important;
  }
  .card-home-testimonial {
    padding: 18px;
    border-radius: 18px;
  }
}
@media (max-width: 574.98px) {
  .sec-7-home {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sec-7-home__header {
    margin-bottom: 32px;
    row-gap: 12px;
  }
  .sec-7-home__row {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .sec-7-home__col {
    row-gap: 12px;
    padding-top: 0 !important;
  }
  .card-home-testimonial {
    padding: 16px;
    border-radius: 16px;
    row-gap: 14px;
  }
  .card-home-testimonial__quote {
    font-size: 15px;
  }
}
/* Home 12 / Section 8 — FAQ accordion */
.sec-8-home {
  background-color: var(--at-neutral-50);
  padding-top: 120px;
  padding-bottom: 120px;
}

/* ── Section header ─────────────────────────────── */
.sec-8-home__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 16px;
  margin-bottom: 64px;
}

.sec-8-home__eyebrow {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.96px;
  color: var(--at-neutral-500);
  text-transform: uppercase;
}

.sec-8-home__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: clamp(36px, 5vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

/* ── List ───────────────────────────────────────── */
.sec-8-home__list {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  max-width: 800px;
  margin-inline: auto;
}

/* ── Accordion item (native <details>) ──────────── */
.sec-8-home__item {
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  border-radius: 16px;
  overflow: hidden;
  transition: border-color 0.3s ease;
}
.sec-8-home__item[open] {
  border-color: var(--at-neutral-300);
}

.sec-8-home__summary {
  list-style: none;
  cursor: pointer;
  padding: 22px 24px 22px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 16px;
       column-gap: 16px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.sec-8-home__summary::-webkit-details-marker {
  display: none;
}
.sec-8-home__summary::marker {
  content: "";
}

.sec-8-home__question {
  font-family: var(--at-ff-heading);
  font-weight: 600;
  font-size: 17px;
  line-height: 1.3;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}

.sec-8-home__toggle {
  flex-shrink: 0;
  position: relative;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.sec-8-home__bar {
  position: absolute;
  background-color: currentColor;
  border-radius: 1px;
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.sec-8-home__bar--h {
  width: 14px;
  height: 1.6px;
}

.sec-8-home__bar--v {
  width: 1.6px;
  height: 14px;
}

.sec-8-home__item[open] .sec-8-home__toggle {
  background-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
}

.sec-8-home__item[open] .sec-8-home__bar--v {
  opacity: 0;
  transform: scaleY(0);
}

.sec-8-home__answer {
  padding: 0 24px 22px 28px;
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}
.sec-8-home__answer p {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

.sec-8-home__divider {
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--at-neutral-100);
  margin-top: -2px;
}

/* ── Responsive ─────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-8-home {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-8-home__header {
    margin-bottom: 48px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .sec-8-home__header {
    margin-bottom: 40px;
  }
  .sec-8-home__summary {
    padding: 20px 22px 20px 24px;
  }
  .sec-8-home__answer {
    padding: 0 22px 20px 24px;
  }
  .sec-8-home__question {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .sec-8-home__header {
    margin-bottom: 32px;
    row-gap: 12px;
  }
  .sec-8-home__list {
    row-gap: 10px;
  }
  .sec-8-home__summary {
    padding: 18px 20px 18px 22px;
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .sec-8-home__answer {
    padding: 0 20px 20px 22px;
    row-gap: 14px;
  }
  .sec-8-home__answer p {
    font-size: 15px;
  }
  .sec-8-home__question {
    font-size: 15px;
    line-height: 1.35;
  }
  .sec-8-home__toggle {
    width: 28px;
    height: 28px;
  }
  .sec-8-home__bar--h {
    width: 12px;
  }
  .sec-8-home__bar--v {
    height: 12px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sec-8-home__header {
    margin-bottom: 28px;
  }
  .sec-8-home__list {
    row-gap: 8px;
  }
  .sec-8-home__item {
    border-radius: 14px;
  }
  .sec-8-home__summary {
    padding: 16px 18px 16px 20px;
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .sec-8-home__answer {
    padding: 0 18px 18px 20px;
    row-gap: 12px;
  }
  .sec-8-home__answer p {
    font-size: 14.5px;
  }
  .sec-8-home__question {
    font-size: 14.5px;
    line-height: 1.4;
  }
  .sec-8-home__toggle {
    width: 26px;
    height: 26px;
  }
  .sec-8-home__bar--h {
    width: 11px;
  }
  .sec-8-home__bar--v {
    height: 11px;
  }
}
/*----------------------------------------*/
/*  Portfolio Details 4 — Sticky Sidebar + Chapters
/*  Brand accent: var(--at-theme-primary) (#F0460E)
/*----------------------------------------*/
/* JS injects `.anim-zoomin-wrap` around every `.anim-zoomin` <img>.
   Image hosts use absolute-fill img inside aspect-ratio box. */
.sec-2-portfolio-details__inline-fig .anim-zoomin-wrap,
.sec-4-portfolio-details__cell .anim-zoomin-wrap,
.sec-5-portfolio-details__media .anim-zoomin-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

/* =========================================================
   SEC 1 — Compact title block
   ========================================================= */
.sec-1-portfolio-details {
  background-color: var(--at-neutral-0);
}
.sec-1-portfolio-details__crumbs {
  letter-spacing: 0.1em;
}
.sec-1-portfolio-details__crumbs span {
  margin: 0 8px;
  color: var(--at-neutral-300);
}
.sec-1-portfolio-details__title {
  letter-spacing: -0.05em;
}
.sec-1-portfolio-details__title sup {
  margin-left: 4px;
  line-height: 1;
}
.sec-1-portfolio-details__tagline {
  letter-spacing: -0.03em;
  line-height: 1.35;
}
.sec-1-portfolio-details__tags {
  gap: 8px;
}
.sec-1-portfolio-details__tag {
  padding: 8px 18px;
  background: var(--at-neutral-50);
  color: var(--at-neutral-900);
  border-radius: 25px;
  letter-spacing: 0.05em;
}
.sec-1-portfolio-details__demo {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: gap 0.3s ease;
}
.sec-1-portfolio-details__demo span {
  transition: transform 0.3s ease;
}
.sec-1-portfolio-details__demo:hover {
  color: var(--at-theme-primary);
  gap: 12px;
}
.sec-1-portfolio-details__demo:hover span {
  transform: translate(3px, -3px);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-portfolio-details {
    padding-top: 100px;
    padding-bottom: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-portfolio-details {
    padding-top: 90px;
    padding-bottom: 30px;
  }
  .sec-1-portfolio-details__title {
    margin-bottom: 18px !important;
  }
  .sec-1-portfolio-details__tagline {
    margin-bottom: 30px;
  }
  .sec-1-portfolio-details__crumbs span {
    margin: 0 6px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-portfolio-details__title {
    font-size: 54px !important;
  }
}

/* =========================================================
   SEC 2 — Sticky sidebar + chapters
   ========================================================= */
.sec-2-portfolio-details {
  background-color: var(--at-neutral-0);
}
.sec-2-portfolio-details__sidebar-col {
  position: relative;
}
.sec-2-portfolio-details__sidebar {
  position: sticky;
  top: 120px;
  background: var(--at-neutral-50);
  border-radius: 8px;
  padding: 32px;
}
.sec-2-portfolio-details__sidebar-eyebrow {
  letter-spacing: 0.1em;
  margin-bottom: 16px;
}
.sec-2-portfolio-details__meta {
  padding-top: 0;
}
.sec-2-portfolio-details__meta-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  padding: 14px 0;
  border-top: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details__meta-row dt {
  margin: 0;
  flex-shrink: 0;
}
.sec-2-portfolio-details__meta-row dd {
  text-align: right;
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details__meta-row:last-child {
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details__services li {
  padding: 6px 0;
  color: var(--at-neutral-900);
  font-size: var(--at-fz-font-md);
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details__services li::before {
  content: "— ";
  color: var(--at-theme-primary);
  margin-right: 4px;
}
.sec-2-portfolio-details__cta {
  padding: 14px 22px;
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
  border-radius: 23px;
  text-decoration: none;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.sec-2-portfolio-details__cta span {
  transition: transform 0.3s ease;
}
.sec-2-portfolio-details__cta:hover {
  background: var(--at-theme-primary);
  color: var(--at-neutral-0);
  transform: translateY(-2px);
}
.sec-2-portfolio-details__cta:hover span {
  transform: translate(3px, -3px);
}
.sec-2-portfolio-details__content-col {
  padding-left: 60px;
}
.sec-2-portfolio-details__chapter {
  padding-bottom: 70px;
  margin-bottom: 70px;
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details__chapter:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
.sec-2-portfolio-details__chapter-head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  letter-spacing: 0.1em;
}
.sec-2-portfolio-details__chapter-num {
  color: var(--at-theme-primary);
}
.sec-2-portfolio-details__chapter-title {
  font-size: 44px;
  letter-spacing: -0.04em;
  line-height: 1.15;
  margin-bottom: 24px;
}
.sec-2-portfolio-details__chapter-body {
  line-height: 1.65;
  letter-spacing: -0.02em;
  margin-bottom: 40px;
}
.sec-2-portfolio-details {
  /* Inline image grid (chapter 01) */
}
.sec-2-portfolio-details__inline-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.sec-2-portfolio-details__inline-fig {
  position: relative;
  margin: 0;
  aspect-ratio: 7/5;
  overflow: hidden;
  border-radius: 6px;
  background: var(--at-neutral-100);
}
.sec-2-portfolio-details__inline-fig img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-2-portfolio-details__inline-fig:hover img {
  transform: scale(1.04);
}
.sec-2-portfolio-details {
  /* Pull-quote (chapter 02) — brand-1 left bar */
}
.sec-2-portfolio-details__pull-quote {
  position: relative;
  margin: 0;
  padding: 10px 0 10px 32px;
  border-left: 4px solid var(--at-theme-primary);
}
.sec-2-portfolio-details__pull-quote p {
  letter-spacing: -0.03em;
  line-height: 1.4;
}
.sec-2-portfolio-details {
  /* Steps (chapter 03) */
}
.sec-2-portfolio-details__steps {
  margin: 0;
}
.sec-2-portfolio-details__step {
  display: grid;
  grid-template-columns: 80px 1fr 2fr;
  gap: 20px;
  align-items: baseline;
  padding: 22px 0;
  border-top: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details__step:last-child {
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details__step-num {
  color: var(--at-theme-primary);
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details__step-title {
  letter-spacing: -0.03em;
}
.sec-2-portfolio-details__step-desc {
  line-height: 1.55;
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details {
  /* Stats (chapter 04) */
}
.sec-2-portfolio-details__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.sec-2-portfolio-details__stat {
  padding-top: 20px;
  border-top: 1px solid var(--at-neutral-950);
}
.sec-2-portfolio-details__stat-num {
  font-size: 48px;
  letter-spacing: -0.05em;
  margin-bottom: 8px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-portfolio-details__content-col {
    padding-left: 40px;
  }
  .sec-2-portfolio-details__chapter-title {
    font-size: 38px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-portfolio-details {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-2-portfolio-details__sidebar {
    position: static;
    top: auto;
    margin-bottom: 50px;
  }
  .sec-2-portfolio-details__content-col {
    padding-left: 12px;
  }
  .sec-2-portfolio-details__chapter-title {
    font-size: 34px;
  }
  .sec-2-portfolio-details__step {
    grid-template-columns: 60px 1fr;
    row-gap: 8px;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
  .sec-2-portfolio-details__step-desc {
    grid-column: 1/-1;
    padding-left: 76px;
  }
  .sec-2-portfolio-details__stats {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .sec-2-portfolio-details__stat-num {
    font-size: 36px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-portfolio-details {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-2-portfolio-details__sidebar {
    position: static;
    padding: 24px;
    margin-bottom: 40px;
  }
  .sec-2-portfolio-details__content-col {
    padding-left: 12px;
  }
  .sec-2-portfolio-details__chapter {
    padding-bottom: 50px;
    margin-bottom: 50px;
  }
  .sec-2-portfolio-details__chapter-title {
    font-size: 28px;
  }
  .sec-2-portfolio-details__chapter-body {
    margin-bottom: 30px;
  }
  .sec-2-portfolio-details__inline-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .sec-2-portfolio-details__inline-fig {
    aspect-ratio: 4/3;
  }
  .sec-2-portfolio-details__pull-quote {
    padding: 8px 0 8px 20px;
  }
  .sec-2-portfolio-details__pull-quote p {
    font-size: 20px !important;
  }
  .sec-2-portfolio-details__step {
    grid-template-columns: 60px 1fr;
    row-gap: 8px;
  }
  .sec-2-portfolio-details__step-desc {
    grid-column: 1/-1;
    padding-left: 76px;
  }
  .sec-2-portfolio-details__stats {
    grid-template-columns: 1fr;
  }
  .sec-2-portfolio-details__stat-num {
    font-size: 36px;
  }
}
@media (max-width: 574.98px) {
  .sec-2-portfolio-details__chapter-head {
    gap: 8px;
  }
  .sec-2-portfolio-details__chapter-title {
    font-size: 24px;
  }
}

/* =========================================================
   SEC 3 — Pull-quote callout (centered)
   ========================================================= */
.sec-3-portfolio-details {
  background-color: var(--at-neutral-50);
}
.sec-3-portfolio-details__mark {
  display: inline-block;
  font-family: var(--at-ff-heading);
  font-size: 180px;
  line-height: 0.8;
  color: var(--at-theme-primary);
  margin-bottom: -10px;
  letter-spacing: -0.05em;
}
.sec-3-portfolio-details__quote {
  font-size: 34px;
  line-height: 1.4;
  letter-spacing: -0.03em;
  margin-top: 30px;
  padding: 0;
  border: 0;
}
.sec-3-portfolio-details__divider {
  width: 60px;
  height: 1px;
  background: var(--at-neutral-300);
}
.sec-3-portfolio-details__author {
  letter-spacing: -0.02em;
}
.sec-3-portfolio-details__role {
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-portfolio-details {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-3-portfolio-details__mark {
    font-size: 140px;
  }
  .sec-3-portfolio-details__quote {
    font-size: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-portfolio-details {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-3-portfolio-details__mark {
    font-size: 120px;
  }
  .sec-3-portfolio-details__quote {
    font-size: 22px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-portfolio-details__mark {
    font-size: 100px;
  }
  .sec-3-portfolio-details__quote {
    font-size: 20px;
  }
}

/* =========================================================
   SEC 4 — Visual showcase 3 rows
   ========================================================= */
.sec-4-portfolio-details {
  background-color: var(--at-neutral-0);
}
.sec-4-portfolio-details__row {
  display: grid;
  gap: 20px;
  margin-bottom: 20px;
}
.sec-4-portfolio-details__row:last-child {
  margin-bottom: 0;
}
.sec-4-portfolio-details__row--split {
  grid-template-columns: 6fr 4fr;
}
.sec-4-portfolio-details__row--full {
  grid-template-columns: 1fr;
}
.sec-4-portfolio-details__row--triple {
  grid-template-columns: repeat(3, 1fr);
}
.sec-4-portfolio-details__cell {
  position: relative;
  margin: 0;
  aspect-ratio: 16/11;
  overflow: hidden;
  border-radius: 6px;
  background: var(--at-neutral-100);
}
.sec-4-portfolio-details__cell img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-4-portfolio-details__cell:hover img {
  transform: scale(1.05);
}
.sec-4-portfolio-details__cell--wide {
  aspect-ratio: 13/9;
}
.sec-4-portfolio-details__cell--narrow {
  aspect-ratio: 13/9;
}
.sec-4-portfolio-details__cell--full {
  aspect-ratio: 22/7;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-portfolio-details {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .sec-4-portfolio-details__row {
    gap: 14px;
    margin-bottom: 14px;
  }
  .sec-4-portfolio-details__cell--full {
    aspect-ratio: 16/7;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-portfolio-details {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-4-portfolio-details__row {
    gap: 12px;
    margin-bottom: 12px;
  }
  .sec-4-portfolio-details__row--split, .sec-4-portfolio-details__row--triple {
    grid-template-columns: 1fr 1fr;
  }
  .sec-4-portfolio-details__cell--full {
    aspect-ratio: 4/3;
  }
}
@media (max-width: 574.98px) {
  .sec-4-portfolio-details {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-4-portfolio-details__row {
    gap: 10px;
    margin-bottom: 10px;
  }
  .sec-4-portfolio-details__row--split, .sec-4-portfolio-details__row--triple {
    grid-template-columns: 1fr;
  }
  .sec-4-portfolio-details__cell--full {
    aspect-ratio: 4/3;
  }
}

/* =========================================================
   SEC 5 — Next project banner
   ========================================================= */
.sec-5-portfolio-details {
  position: relative;
}
.sec-5-portfolio-details__link {
  position: relative;
  text-decoration: none;
  color: var(--at-neutral-0);
  display: block;
}
.sec-5-portfolio-details__link:hover {
  color: var(--at-neutral-0);
}
.sec-5-portfolio-details__link:hover .sec-5-portfolio-details__media img {
  transform: scale(1.04);
}
.sec-5-portfolio-details__link:hover .sec-5-portfolio-details__disk-inner {
  transform: scale(1.08);
}
.sec-5-portfolio-details__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.sec-5-portfolio-details__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-5-portfolio-details__veil {
  position: absolute;
  inset: 0;
  background: rgba(15, 15, 15, 0.68);
}
.sec-5-portfolio-details__content {
  position: relative;
  z-index: 1;
  padding: 140px 0;
}
.sec-5-portfolio-details__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.15em;
  margin-bottom: 30px;
}
.sec-5-portfolio-details__name {
  font-size: 180px;
  letter-spacing: -0.05em;
  line-height: 0.95;
  color: var(--at-neutral-0);
}
.sec-5-portfolio-details__tagline {
  color: var(--at-neutral-100);
  letter-spacing: -0.03em;
}
.sec-5-portfolio-details__meta {
  color: var(--at-neutral-0);
  letter-spacing: 0.15em;
  opacity: 0.6;
}
.sec-5-portfolio-details__disk {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  border: 1px solid rgba(254, 254, 254, 0.35);
}
.sec-5-portfolio-details__disk-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: var(--at-theme-primary);
  color: var(--at-neutral-0);
  transition: transform 0.4s ease;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-portfolio-details__content {
    padding: 110px 0;
  }
  .sec-5-portfolio-details__name {
    font-size: 140px;
  }
  .sec-5-portfolio-details__disk {
    width: 180px;
    height: 180px;
  }
  .sec-5-portfolio-details__disk-inner {
    width: 110px;
    height: 110px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-portfolio-details__content {
    padding: 90px 0;
  }
  .sec-5-portfolio-details__name {
    font-size: 100px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-portfolio-details__content {
    padding: 70px 0;
  }
  .sec-5-portfolio-details__name {
    font-size: 72px;
  }
  .sec-5-portfolio-details__tagline {
    font-size: 20px;
  }
  .sec-5-portfolio-details__eyebrow {
    margin-bottom: 20px;
  }
}
@media (max-width: 574.98px) {
  .sec-5-portfolio-details__content {
    padding: 60px 0;
  }
  .sec-5-portfolio-details__name {
    font-size: 56px;
  }
  .sec-5-portfolio-details__tagline {
    font-size: 18px;
  }
}

/*----------------------------------------*/
/*  2.3 Back to top
/*----------------------------------------*/
.back-to-top-wrapper {
  position: fixed;
  right: 50px;
  bottom: 0;
  height: 44px;
  width: 44px;
  cursor: pointer;
  display: block;
  border-radius: 50%;
  z-index: 99;
  opacity: 0;
  visibility: hidden;
}
@media (max-width: 574.98px) {
  .back-to-top-wrapper {
    right: 20px;
    bottom: 20px;
  }
}
.back-to-top-wrapper.back-to-top-btn-show {
  visibility: visible;
  opacity: 1;
  bottom: 50px;
}

.back-to-top-btn {
  display: inline-block;
  width: 44px;
  height: 44px;
  line-height: 44px;
  text-align: center;
  background: var(--at-common-white);
  box-shadow: 0px 8px 16px rgba(3, 4, 28, 0.3);
  color: var(--at-common-black);
  border-radius: 50%;
  transition: all 0.3s ease-out;
}
.back-to-top-btn svg {
  transform: translateY(-2px);
}
.back-to-top-btn:hover {
  transform: translateY(-4px);
}

/*----------------------------------------*/
/*  2.5 Buttons
/*----------------------------------------*/
.at-btn {
  gap: 8px;
  line-height: 1;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: -0.05em;
  padding: 17px 25px;
  text-transform: capitalize;
  color: #FEFEFE;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #1D1D1D;
  border-radius: 50px;
}
.at-btn:hover {
  color: #FEFEFE;
}
.at-btn:hover span span.text-1 {
  transform: translateY(-150%);
}
.at-btn:hover span span.text-2 {
  top: 50%;
  transform: translateY(-50%);
}
.at-btn:hover i svg:first-child {
  transform: translate(16px, -16px);
}
.at-btn:hover i svg:last-child {
  opacity: 1;
  visibility: visible;
  transform: translate(13px, -13px);
}
.at-btn:hover i.icon-arrow-right svg:first-child {
  transform: translate(16px, 0);
}
.at-btn:hover i.icon-arrow-right svg:last-child {
  transform: translate(16px, 0);
}
.at-btn:hover i.icon-arrow-up-left svg:first-child {
  transform: translate(-16px, -16px);
}
.at-btn:hover i.icon-arrow-up-left svg:last-child {
  transform: translate(-16px, -16px);
}
.at-btn span {
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
}
.at-btn span span.text-1 {
  position: relative;
  display: block;
  transition: 0.3s;
}
.at-btn span span.text-2 {
  position: absolute;
  top: 100%;
  display: block;
  transition: 0.3s;
}
.at-btn i {
  position: relative;
  overflow: hidden;
  width: 16px;
  height: 16px;
  display: inline-flex;
  margin-left: 4px;
}
.at-btn i svg {
  transform: translateY(-2px);
  position: absolute;
  bottom: -1px;
  left: 1px;
  transition: all 0.2s ease-out;
}
.at-btn i svg:last-child {
  left: -12px;
  bottom: -12px;
  transform: translate(0, 0);
  opacity: 0;
}
.at-btn i.icon-arrow-right svg:last-child {
  left: -16px;
  bottom: 0;
}
.at-btn i.icon-arrow-up-left svg:last-child {
  left: 16px;
  bottom: -16px;
}
.at-btn.btn-sm {
  padding: 10px 20px;
}
.at-btn.filter-btn {
  border-radius: 100px;
  border: 1px solid var(--at-neutral-100, #DFDFDF);
  background: var(--at-neutral-0, #FEFEFE);
  color: var(--at-neutral-900);
}
.at-btn.active {
  background: var(--at-neutral-900);
  border-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
}
.at-btn-border-white {
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.25);
}
.at-btn-group {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
}
.at-btn-group > *:nth-child(1) {
  transform: scale3d(0.5, 0.5, 1);
  margin-inline-end: -52px;
}
.at-btn-group > *:nth-child(2) {
  transform: scale3d(1, 1, 1);
}
.at-btn-group > *:nth-child(3) {
  transform: scale3d(1, 1, 1);
  margin-inline-start: 0;
}
.at-btn-group:hover > *:nth-child(1) {
  transform: scale3d(1, 1, 1);
  margin-inline-end: 0;
  background: #1D1D1D;
}
.at-btn-group:hover > *:nth-child(2) {
  transform: scale3d(1, 1, 1);
  background: #1D1D1D;
}
.at-btn-group:hover > *:nth-child(3) {
  transform: scale3d(0.5, 0.5, 1);
  margin-inline-start: -52px;
  background: #1D1D1D;
}
.at-btn-group .at-btn-circle {
  text-align: center;
  width: 50px;
  height: 50px;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  border-radius: 100%;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  background-color: #1D1D1D;
  color: #FEFEFE;
}
.at-btn-group .at-btn-circle i {
  transform: rotate(-45deg);
}
.at-btn-group-transparent .at-btn {
  background: #FEFEFE;
  border: 1px solid rgba(38, 38, 38, 0.1);
  color: #1D1D1D;
}
.at-btn-group-transparent .at-btn-circle {
  background-color: #FEFEFE;
  color: #1D1D1D;
  border: 1px solid rgba(38, 38, 38, 0.1);
}
.at-btn-group-transparent:hover > *:nth-child(2) {
  background: #FEFEFE;
}
.at-btn-group-transparent:hover > *:nth-child(1) {
  background: #FEFEFE;
}
.at-btn-group-transparent-2 .at-btn {
  background: #fff5f3;
  border: 1px solid rgba(38, 38, 38, 0.1);
  color: #1D1D1D;
}
.at-btn-group-transparent-2 .at-btn-circle {
  background-color: #fff5f3;
  color: #1D1D1D;
  border: 1px solid rgba(38, 38, 38, 0.1);
}
.at-btn-group-transparent-2:hover > *:nth-child(2) {
  background: #fff5f3;
}
.at-btn-group-transparent-2:hover > *:nth-child(1) {
  background: #fff5f3;
}
.at-btn-group.btn-brand-1 .at-btn {
  background: #F0460E;
  border: 1px solid #F0460E;
  color: #FEFEFE;
}
.at-btn-group.btn-brand-1 .at-btn-circle {
  background-color: #F0460E;
  color: #FEFEFE;
  border: 1px solid #F0460E;
}
.at-btn.has-dot {
  position: relative;
}
.at-btn.has-dot::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background-color: #fff;
  border-radius: 50%;
  opacity: 50%;
}

/*----------------------------------------*/
/*  2.1 Animations
/*----------------------------------------*/
@keyframes rotate-infinite {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.rotate-infinite {
  animation: rotate-infinite 15s linear infinite;
}
@keyframes rotate-infinite-2 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
.rotate-infinite-2 {
  animation: rotate-infinite-2 15s linear infinite;
}

@keyframes animate-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.2), 0 0 0 0 rgba(255, 255, 255, 0.2);
  }
  40% {
    box-shadow: 0 0 0 50px rgba(255, 109, 74, 0), 0 0 0 0 rgba(255, 255, 255, 0.2);
  }
  80% {
    box-shadow: 0 0 0 50px rgba(255, 109, 74, 0), 0 0 0 30px rgba(255, 109, 74, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 109, 74, 0), 0 0 0 30px rgba(255, 109, 74, 0);
  }
}
@keyframes arrowLineRotation {
  to {
    transform: rotate(180deg);
  }
}
@keyframes arrowLineRotationRev {
  to {
    transform: rotate(-180deg);
  }
}
.hover-up {
  transition: transform 0.2s ease-in-out;
}
.hover-up:hover {
  transform: translateY(-3px);
}

/*----------------------------------------*/
/*  2.10 Preloader
/*----------------------------------------*/
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  background-color: var(--at-theme-primary);
}

.preloader {
  width: 50px;
  height: 50px;
  display: inline-block;
  padding: 0px;
  text-align: left;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -25px;
  margin-top: -25px;
}

.preloader span {
  position: absolute;
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 100%;
  background: var(--at-common-white);
  animation: preloader 1.3s linear infinite;
  -webkit-animation: preloader 1.3s linear infinite;
}

.preloader span:last-child {
  animation-delay: -0.9s;
  -webkit-animation-delay: -0.9s;
}

@keyframes preloader {
  0% {
    transform: scale(0, 0);
    opacity: 0.5;
  }
  100% {
    transform: scale(1, 1);
    opacity: 0;
  }
}
/*--- end of preloader ---*/
/*----------------------------------------*/
/*  2.11 search style
/*----------------------------------------*/
.at-search-form-toggle {
  position: fixed;
  top: 115px;
  left: 50%;
  max-width: 1136px;
  width: 100%;
  padding: 50px 60px 60px;
  border-radius: 16px;
}
@media (max-width: 574.98px) {
  .at-search-form-toggle {
    padding: 15px;
  }
}
.at-search-form-toggle {
  background-color: rgba(var(--at-neutral-50-rgb), 0.9);
  backdrop-filter: blur(20px);
  opacity: 0;
  transform: translate(-50%, calc(-100% - 80px));
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  transition-delay: 0s, 0s, 0s;
  transition-delay: 0.5s;
  z-index: 9999;
  pointer-events: none;
  visibility: hidden;
}
.at-search-form-toggle.active {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  transform: translate(-50%, 0);
  transition-delay: 0s;
}
.at-search-form-toggle.active .at-search-form-input {
  transform: translate(0, 0) !important;
  opacity: 1;
  transition-delay: 0.5s;
}
.at-search-form-btn {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  font-size: 16px;
  border-radius: 8px;
}
.at-search-form-input {
  position: relative;
  transform: translateY(-40px);
  transition: all 0.3s ease-in-out !important;
  transition-delay: 0.5s;
  padding: 12px 15px 12px 32px;
  border-radius: 8px;
  opacity: 0;
  border: 1px solid var(--at-neutral-100);
  background: var(--at-neutral-0);
  overflow: hidden;
}
.at-search-form-input input {
  width: 100%;
  height: 100%;
  border: 0;
  outline: 0;
  font-size: 24px;
  font-weight: 400;
  color: var(--at-common-black);
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 636px;
  background: var(--at-neutral-0);
  transition-delay: 0.5s;
  transition: all 0.3s ease-in-out !important;
}
.at-search-form-input input::-moz-placeholder {
  /* Firefox 19+ */
  font-size: 24px;
  color: var(--at-neutral-500);
}
.at-search-form-input input::placeholder {
  /* MODERN BROWSER */
  font-size: 24px;
  color: var(--at-neutral-500);
}
.at-search-form-input input:focus {
  border-color: transparent;
}
.at-search-form-input input:focus ~ .at-search-focus-border {
  width: 100%;
  left: 0;
  right: auto;
  transition: all 2s;
}
.at-search-form-input .at-search-focus-border {
  position: absolute;
  bottom: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 1px;
  background-color: var(--at-common-black);
  transition: all 0.5s;
}
.at-search-close {
  color: var(--at-common-black);
  font-size: 40px;
  transition: all 0.3s ease;
}
.at-search-close:hover {
  color: var(--at-neutral-500);
  transform: rotate(180deg);
}
.at-search-body-overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(24, 24, 24, 0.5);
  z-index: 99;
  cursor: zoom-out;
  pointer-events: none;
  transform: translateY(calc(-100% - 80px));
  transition: all 0.5s ease-in-out 0s;
  transition-delay: 0.3s;
}
.at-search-body-overlay.active {
  pointer-events: auto;
  transform: translateY(0);
}
.at-search-dark {
  background-color: var(--at-common-black);
}
.at-search-dark .at-search-form-input input {
  color: var(--at-common-white);
  border-bottom: 1px solid var(--at-border-3);
}
.at-search-dark .at-search-form-input input ~ .at-search-focus-border {
  background-color: var(--at-common-white);
}
.at-search-dark .at-search-close {
  color: var(--at-common-white);
}
.at-search-dark .at-search-close:hover {
  color: var(--at-grey-2);
}
.at-search-dark .at-search-form-icon {
  color: var(--at-common-white);
}

.at-categories-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--at-neutral-900);
  margin-bottom: 16px;
  margin-top: 50px;
}
.at-categories-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.at-categories-item {
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 18px;
  border-radius: 100px;
  border: 1px solid var(--at-neutral-100);
  background: var(--at-neutral-0);
  color: var(--at-neutral-900);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.8px;
  transition: all 0.3s ease;
}
.at-categories-item:hover {
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  border-color: var(--at-neutral-900);
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/*----------------------------------------*/
/*  2.8 Magic Cursor
/*----------------------------------------*/
body.at-magic-cursor #magic-cursor {
  display: block;
}

#magic-cursor {
  position: absolute;
  display: none;
  width: 10px;
  height: 10px;
  pointer-events: none;
  z-index: 99999;
  opacity: 0;
  top: 0;
  left: 0;
}

/* Disable magic cursor on tablet/mobile (≤991px) and on touch/no-hover devices. */
@media (max-width: 991.98px), (hover: none), (pointer: coarse) {
  body.at-magic-cursor #magic-cursor,
  #magic-cursor,
  #ball {
    display: none !important;
  }
}
#ball {
  position: fixed;
  display: flex;
  align-items: center;
  pointer-events: none;
  border-radius: 50%;
  color: transparent;
  justify-content: center;
  mix-blend-mode: difference;
  background-color: var(--at-common-black);
}

.cursor-bg-red #ball {
  background-color: #FF535B !important;
}
.cursor-bg-red #ball .ball-view {
  color: var(--at-common-white);
}

.cursor-bg-red-2 #ball {
  background-color: #FF481F !important;
}
.cursor-bg-red-2 #ball .ball-view {
  color: var(--at-common-white);
}

.cursor-bg-yellow #ball {
  background-color: #FFF669 !important;
}
.cursor-bg-yellow #ball .ball-view {
  color: var(--at-common-black);
}

.cursor-white-bg #ball .ball-view {
  color: var(--at-common-black);
}

/* Ball view 
============= */
#ball .ball-view {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  padding: 0 5px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  transform: scale(0);
  color: var(--at-common-black);
}

/* Ball drag 
============= */
#ball .ball-drag {
  position: absolute;
  display: block;
  width: 100%;
  padding: 0 5px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  transition: all 0.3s;
  color: var(--at-common-black);
}

#ball .ball-drag::before,
#ball .ball-drag::after {
  position: absolute;
  top: 50%;
  margin-top: -5px;
  font-size: 19px;
  height: 10px;
  line-height: 10px;
  font-weight: 900;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  color: var(--at-common-white);
  font-family: "Font Awesome 6 Pro";
  -webkit-font-smoothing: antialiased;
}

#ball .ball-drag::before {
  content: "\f104";
  /* Font Awesome */
  left: 0;
  transform: translate3d(-30px, 0, 0);
  transition: all 0.25s;
}

#ball .ball-drag::after {
  content: "\f105";
  /* Font Awesome */
  right: 0;
  transform: translate3d(30px, 0, 0);
  transition: all 0.25s;
}

#ball.with-blur {
  backdrop-filter: blur(5px);
  transform: translate3d(0, 0, 0);
}

/* Ball close 
============== */
#ball.ball-close-enabled {
  opacity: 1 !important;
}

#ball .ball-close {
  position: absolute;
  padding: 0 5px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  color: var(--at-common-black);
}

.at-magnetic-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

/*----------------------------------------*/
/*  2.9 Nice Select
/*----------------------------------------*/
.nice-select {
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  clear: both;
  cursor: pointer;
  display: block;
  outline: none;
  position: relative;
  transition: all 0.2s ease-in-out;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  white-space: nowrap;
  width: auto;
  color: var(--at-neutral-900);
  padding-left: 55px;
  font-weight: 500;
  background-color: var(--at-neutral-0);
  border-radius: 5px;
  font-size: 20px;
  height: 50px;
  line-height: 48px;
  padding-right: 30px;
  font-family: var(--at-ff-body);
}
.nice-select:hover {
  border-color: ar(--at-theme-primary);
}
.nice-select::before {
  position: absolute;
  content: "";
  width: 48px;
  height: 2px;
  background-color: var(--at-neutral-900);
  top: 50%;
  left: 0;
  transition: all 0.15s ease-in-out;
  margin-top: 0;
  transform-origin: center;
  transform: translateY(-50%);
}
.nice-select::after {
  position: absolute;
  content: "\f107";
  top: 50%;
  right: 0;
  font-family: var(--at-ff-fontawesome);
  color: var(--at-neutral-900);
  font-weight: 600;
  pointer-events: none;
  font-size: 18px;
  transition: all 0.15s ease-in-out;
  margin-top: 0;
  transform-origin: center;
  transform: translateY(-50%);
}
.nice-select.open::after {
  transform: translateY(-50%) rotate(-180deg);
}
.nice-select.open .list {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1) translateY(0);
}
.nice-select.disabled {
  border-color: #ededed;
  color: #999;
  pointer-events: none;
}
.nice-select.disabled::after {
  border-color: #cccccc;
}
.nice-select.wide {
  width: 100%;
}
.nice-select.wide .list {
  left: 0 !important;
  right: 0 !important;
}
.nice-select.right {
  float: right;
}
.nice-select.right .list {
  left: auto;
  right: 0;
}
.nice-select.small {
  font-size: 12px;
  height: 36px;
  line-height: 34px;
}
.nice-select.small::after {
  height: 4px;
  width: 4px;
}
.nice-select.small .option {
  line-height: 34px;
  min-height: 34px;
}
.nice-select .list {
  background-color: var(--at-neutral-0);
  width: 200px;
  border-radius: 5px;
  box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
  box-sizing: border-box;
  margin-top: 4px;
  opacity: 0;
  overflow: hidden;
  padding: 10px;
  pointer-events: none;
  position: absolute;
  top: 100%;
  left: 0;
  transform-origin: 50% 0;
  transform: scale(0.75) translateY(-21px);
  transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
  z-index: 9;
}
.nice-select .option {
  cursor: pointer;
  font-weight: 500;
  line-height: 40px;
  list-style: none;
  min-height: 40px;
  outline: none;
  padding-left: 18px;
  padding-right: 29px;
  text-align: left;
  transition: all 0.2s;
  border-radius: 12px;
}
.nice-select .option:hover {
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-900);
}
.nice-select .option.disabled {
  background-color: transparent;
  color: #999;
  cursor: default;
}
.nice-select .option.selected {
  font-weight: 400;
  color: var(--at-theme-primary);
}

.no-csspointerevents .nice-select .list {
  display: none;
}

.no-csspointerevents .nice-select.open .list {
  display: block;
}

[data-bs-theme=dark] {
  --at-common-white: var(--at-common-dark-white);
  --at-common-white-rgb: var(--at-common-dark-white-rgb);
  --at-common-black: var(--at-common-dark-black);
  --at-common-black-rgb: var(--at-common-dark-black-rgb);
  --at-common-bubbles: var(--at-common-dark-bubbles);
  --at-neutral-0: var(--at-neutral-dark-0);
  --at-neutral-0-rgb: var(--at-neutral-dark-0-rgb);
  --at-neutral-50: var(--at-neutral-dark-50);
  --at-neutral-50-rgb: var(--at-neutral-dark-50-rgb);
  --at-neutral-100: var(--at-neutral-dark-100);
  --at-neutral-200: var(--at-neutral-dark-200);
  --at-neutral-300: var(--at-neutral-dark-300);
  --at-neutral-500: var(--at-neutral-dark-500);
  --at-neutral-700: var(--at-neutral-dark-700);
  --at-neutral-800: var(--at-neutral-dark-800);
  --at-neutral-900: var(--at-neutral-dark-900);
  --at-neutral-950: var(--at-neutral-dark-950);
}
[data-bs-theme=dark] .invert-1 {
  filter: invert(0);
}
[data-bs-theme=dark] .at-header-logo img,
[data-bs-theme=dark] .at-offcanvas-logo img {
  filter: invert(1);
}
[data-bs-theme=dark] .invert-0 {
  filter: invert(0) !important;
}
[data-bs-theme=dark] .dark-mode-invert {
  filter: invert(1);
}
[data-bs-theme=dark] .at-main-menu nav ul li.has-dropdown > a::after {
  filter: invert(1);
}
[data-bs-theme=dark] .changeless {
  --at-common-white: #ffffff;
  --at-common-white-rgb: 255, 255, 255;
  --at-common-black: #1e1e1e;
  --at-common-bubbles: #e1eeb7;
  --at-neutral-950: #0f0f0f;
  --at-neutral-900: #1d1d1d;
  --at-neutral-800: #212121;
  --at-neutral-700: #303030;
  --at-neutral-500: #585959;
  --at-neutral-300: #b7b7b7;
  --at-neutral-100: #dfdfdf;
  --at-neutral-50: #f2f2f2;
  --at-neutral-0: #fefefe;
}

.dark-light-mode .toggle {
  display: grid;
  place-items: center;
  cursor: pointer;
  line-height: 1;
}

.dark-light-mode .input {
  display: none;
}

.dark-light-mode label {
  margin-bottom: 0 !important;
}

.dark-light-mode .icon {
  grid-column: 1/1;
  grid-row: 1/1;
  transition: transform 500ms;
  line-height: 0.1;
}

.dark-light-mode .icon--moon {
  transition-delay: 200ms;
}

.dark-light-mode .icon--sun {
  transform: scale(0);
}

.dark-light-mode #switch:checked + .icon--moon {
  transform: rotate(360deg) scale(0);
}

.dark-light-mode #switch:checked ~ .icon--sun {
  transition-delay: 200ms;
  transform: scale(1) rotate(360deg);
}