@charset "UTF-8";


/* ===== Typography: Inter (same files + stack as the Fabrica reference) =====
   "Inter" = the local woff2 from /assets/fonts (weight 500, the weight Fabrica uses for text and headings).
   The other weights (400 / 600 / 700) come from the Google Fonts <link> in index.html, which also declares "Inter".
   "Inter Placeholder" is the metric-matched Arial fallback Framer uses while Inter loads (no layout jump). */
@font-face {
    font-family: "Inter";
    src: url("../fonts/1ZFS7N918ojhhd0nQWdj3jz4w.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Inter Placeholder";
    src: local("Arial");
    ascent-override: 89.79%;
    descent-override: 22.36%;
    line-gap-override: 0%;
    size-adjust: 107.89%;
}
/* 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 */
.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: 500;
  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: 500;
  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: 500;
}
@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: 500;
  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: 500;
}
.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: 'Inter', 'Inter Placeholder', sans-serif;
  --at-ff-heading: 'Inter', 'Inter Placeholder', 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: #0a0a0a;
  --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: 500;
  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: 500;
  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 !important;
  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
---------------------------------*/
.overflow-unset {
  overflow: unset !important;
}

.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: 500;
}

.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; */
    max-width: 1400px;
  }
}
/* 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%;
}

/* AK Sports Infra — desktop dropdown nav is hidden here; the same links are
   rendered inside the hero at bottom-right (see .sec-1-home-15__nav below). */
.header-nav-in-hero .at-main-menu {
  visibility: hidden;
  pointer-events: none;
}

/*----------------------------------------*/
/*  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;

  transition: translate 0.3s var(--basic-ease), text-shadow 0.1s 0.15s ease;
}
.at-title-anim:hover .at-title-text span {

  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: 500;
  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: 500;
  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: 500;
  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, #0a0a0a);
  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: 500;
  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, #0a0a0a);
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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
/*----------------------------------------*/
.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: 500;
  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: 500;
  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: 500;
  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: 500;
}
.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;
}

/*----------------------------------------*/
/*  6.1 Footer Style 1
/*----------------------------------------*/
.at-footer-link .at-hero-social {
  justify-content: flex-start;
}
.at-footer-copyright {
  font-weight: 500;
  font-size: 16px;
  opacity: 0.5;
  color: var(--at-common-black);
}

.alt-footer-social-item ul li {
  position: relative;
  list-style: none;
}
.alt-footer-social-item ul li::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.alt-footer-social-item ul li a {
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.32px;
  line-height: 1;
  color: var(--at-neutral-300);
  transition: all 0.5s ease;
  padding: 15px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.alt-footer-social-item ul li a .icon-social {
  color: #fefefe;
}
.alt-footer-social-item ul li a:hover {
  color: #ffffff;
  margin: 0 12px;
}
.alt-footer-social-item.white-mode ul li::before {
  border-bottom: 1px solid rgba(33, 33, 33, 0.3);
}
.alt-footer-social-item.white-mode ul li a .icon-social {
  color: var(--at-neutral-900);
}
.alt-footer-social-item.white-mode ul li a {
  color: var(--at-neutral-500);
}
.alt-footer-social-item.white-mode ul li a:hover {
  color: var(--at-neutral-900);
  margin: 0 12px;
}
.alt-footer-link-item ul li {
  list-style: none;
}
.alt-footer-link-item ul li a {
  font-weight: 400;
  font-size: 22px;
  letter-spacing: -0.02em;
  line-height: 1;
  color: var(--at-neutral-300);
  position: relative;
  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;
}
.alt-footer-link-item ul li a::before {
  content: "";
  width: 14px;
  height: 13px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><g opacity="0.3" clip-path="url(%23clip0_1857_869)"><path d="M11.0037 3.41421L2.39712 12.0208L0.98291 10.6066L9.5895 2H2.00373V0H13.0037V11H11.0037V3.41421Z" fill="%23FEFEFE"/></g><defs><clipPath id="clip0_1857_869"><rect width="14" height="13" fill="white"/></clipPath></defs></svg>');
  margin-left: 14px;
  position: absolute;
  left: 100%;
  top: 50%;
  opacity: 0;
  transition: all 0.5s ease;
  transform: translate(-15px, -40%);
}
.alt-footer-link-item ul li a.fz-font-md::before {
  width: 12px;
  height: 12px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 14 13" fill="none"><g opacity="0.3" clip-path="url(%23clip0_1857_869)"><path d="M11.0037 3.41421L2.39712 12.0208L0.98291 10.6066L9.5895 2H2.00373V0H13.0037V11H11.0037V3.41421Z" fill="%23FEFEFE"/></g><defs><clipPath id="clip0_1857_869"><rect width="14" height="13" fill="white"/></clipPath></defs></svg>');
}
.alt-footer-link-item ul li a: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;
  color: var(--at-neutral-0);
}
.alt-footer-link-item ul li a:hover::before {
  opacity: 1;
  transform: translate(-50%, -50%);
}
@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-footer-link-item-wrap {
    margin-left: 0;
    margin-right: 0;
  }
}

.mp-footer-style .at-hero-social a {
  color: var(--at-common-white);
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.mp-footer-style .at-hero-social a:hover {
  background: var(--at-common-white);
  color: var(--at-common-black);
}
.mp-footer-style .at-footer-copyright {
  color: var(--at-common-white);
}
.mp-footer-style .at-about-border {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.text-scale-anim {
  white-space: pre-wrap;
  transform-origin: top left;
}

.at-letter-span {
  display: inline-block;
}

.at-word-span {
  display: inline-block;
}

/*----------------------------------------*/
/*  Footer Style 2
/*----------------------------------------*/
.footer-2-follow-label {
  font-size: 12px;
  letter-spacing: 0.02em;
  font-weight: 500;
}

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

.footer-2-connect-title {
  font-weight: 500;
  font-size: 160px;
  letter-spacing: -11px;
  line-height: 1.1;
}
@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) {
  .footer-2-connect-title {
    letter-spacing: 0;
    font-size: clamp(3rem, 4vw, 3rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-2-connect-title {
    font-size: clamp(4rem, 4vw, 3rem);
  }
}

.sale-off {
  color: var(--at-neutral-900);
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 17.506px;
  display: inline-flex;
  transform: rotate(-8.359deg);
  padding: 4.265px 16px 3.264px 16px;
  justify-content: center;
  align-items: center;
  background: var(--at-theme-primary);
}

.footer-3-logo {
  transform: translateX(-30px);
}

/*----------------------------------------*/
/*  Footer style 7 (Home 7)
/*----------------------------------------*/
.footer-7 {
  padding-top: 40px;
  background: #0f0f0f;
  color: #fefefe;
}
.footer-7__top {
  padding-bottom: 26px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  margin-bottom: 44px;
}
.footer-7__nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 32px;
}
.footer-7__nav-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: #b7b7b7;
  text-decoration: none;
  transition: color 0.25s ease, opacity 0.25s ease;
}
.footer-7__nav-link:hover {
  color: #fefefe;
}
.footer-7__nav-link:hover .footer-7__nav-arrow {
  opacity: 0.6;
  visibility: visible;
  transform: translate(2px, -2px);
}
.footer-7__nav-link.is-active {
  color: #fefefe;
  text-decoration: underline;
  text-underline-offset: 6px;
}
.footer-7__nav-arrow {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
}
.footer-7__mid {
  padding-bottom: 38px;
  position: relative;
}
.footer-7__object {
  margin-top: 16px;
  opacity: 0.9;
}
.footer-7__social-icon {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.08);
  color: #fefefe;
  flex-shrink: 0;
}
.footer-7__social-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: rotate(90deg);
  color: #fefefe;
  opacity: 0.9;
}
.footer-7__contact {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #fefefe;
}
.footer-7__contact a {
  color: inherit;
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-7__contact a:hover {
  color: var(--at-theme-primary);
}
.footer-7__address {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #fefefe;
}
.footer-7__hours-label {
  opacity: 0.5;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
}
.footer-7__hours-value {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.footer-7__newsletter-title {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #fefefe;
  opacity: 1;
}
.footer-7__form {
  display: grid;
  gap: 8px;
}
.footer-7__input {
  height: 50px;
  padding: 0 24px;
  border-radius: 16px;
  background: #1d1d1d;
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #fefefe;
  outline: none;
}
.footer-7__input::-moz-placeholder {
  color: rgba(254, 254, 254, 0.5);
}
.footer-7__input::placeholder {
  color: rgba(254, 254, 254, 0.5);
}
.footer-7__input:focus {
  border-color: rgba(10,10,10,0.65);
}
.footer-7__submit {
  height: 50px;
  border-radius: 16px;
  background: #1d1d1d;
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #fefefe;
  font-size: 16px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.footer-7__submit > span {
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  line-height: 1.2;
}
.footer-7__submit > span span.text-1 {
  position: relative;
  display: block;
  transition: transform 0.3s ease;
}
.footer-7__submit > span span.text-2 {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: block;
  transition: top 0.3s ease, transform 0.3s ease;
}
.footer-7__submit > i {
  position: relative;
  overflow: hidden;
  width: 16px;
  height: 16px;
  display: inline-flex;
  flex-shrink: 0;
  font-style: normal;
}
.footer-7__submit > i svg {
  transform: translateY(-2px);
  position: absolute;
  bottom: -1px;
  left: 1px;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
}
.footer-7__submit > i svg:last-child {
  left: -12px;
  bottom: -12px;
  transform: translate(0, 0);
  opacity: 0;
}
.footer-7__submit:hover {
  background: rgba(29, 29, 29, 0.75);
  border-color: rgba(255, 255, 255, 0.14);
  transform: translateY(-1px);
  color: #fefefe;
}
.footer-7__submit:hover > span span.text-1 {
  transform: translateY(-150%);
}
.footer-7__submit:hover > span span.text-2 {
  top: 50%;
  transform: translateY(-50%);
}
.footer-7__submit:hover > i svg:first-child {
  transform: translate(16px, -16px);
}
.footer-7__submit:hover > i svg:last-child {
  opacity: 1;
  visibility: visible;
  transform: translate(13px, -13px);
}
.footer-7__word {
  font-family: var(--at-heading-font);
  font-weight: 900;
  font-size: clamp(3.25rem, 10vw, 15.25rem);
  line-height: 0.93;
  letter-spacing: 0;
  color: #fefefe;
  margin-top: 70px;
  padding-bottom: 10px;
  white-space: nowrap;
  text-align: 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) {
  .footer-7__word {
    white-space: normal;
  }
}
.footer-7__bottom {
  padding: 18px 0 30px;
}
.footer-7__bottom-inner {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  padding-top: 15px;
}
.footer-7__copy {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
  opacity: 0.5;
}
.footer-7__policies a {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.02em;
  opacity: 0.5;
  color: #fefefe;
  text-decoration: none;
  transition: opacity 0.25s ease, color 0.25s ease;
}
.footer-7__policies a:hover {
  opacity: 1;
  color: var(--at-theme-primary);
}

/*----------------------------------------*/
/*  Footer style 8 (Home 8)
/*----------------------------------------*/
.footer-8 {
  padding-top: 40px;
  background: #0f0f0f;
  color: #fefefe;
  position: relative;
}
.footer-8__bg {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 1920px;
  height: 1012px;
  pointer-events: none;
  z-index: 0;
  opacity: 0.9;
}
.footer-8__bg img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer-8__container {
  position: relative;
  z-index: 1;
  max-width: 1920px;
  padding-left: clamp(20px, 5.5vw, 104px);
  padding-right: clamp(20px, 5.5vw, 104px);
}
.footer-8__top {
  padding-bottom: 26px;
  border-bottom: 1px solid #212121;
  margin-bottom: 44px;
}
.footer-8__nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 32px;
}
.footer-8__nav-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: #b7b7b7;
  text-decoration: none;
  transition: color 0.28s ease, -webkit-text-decoration-color 0.28s ease;
  transition: color 0.28s ease, text-decoration-color 0.28s ease;
  transition: color 0.28s ease, text-decoration-color 0.28s ease, -webkit-text-decoration-color 0.28s ease;
  text-decoration: underline;
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
  text-underline-offset: 6px;
}
.footer-8__nav-link:hover {
  color: #fefefe;
  -webkit-text-decoration-color: currentColor;
          text-decoration-color: currentColor;
}
.footer-8__nav-link:hover .footer-8__nav-arrow {
  opacity: 1;
  visibility: visible;
  transform: translate(2px, -2px);
}
.footer-8__nav-link.is-active {
  color: #b7b7b7;
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
}
.footer-8__nav-arrow {
  width: 14px;
  height: 13px;
  opacity: 0;
  visibility: hidden;
  transform: translate(0, 0);
  transition: opacity 0.28s ease, transform 0.28s ease, visibility 0.28s ease;
}
.footer-8__mid {
  padding-bottom: 38px;
}
.footer-8__contact {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #fefefe;
}
.footer-8__contact a {
  color: inherit;
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-8__contact a:hover {
  color: var(--at-theme-primary);
}
.footer-8__address {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #fefefe;
}
.footer-8__hours-label {
  opacity: 0.5;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
}
.footer-8__hours-value {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.footer-8__socials {
  max-width: 279px;
  padding-top: 6px;
}
.footer-8__social-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 6px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  text-decoration: none;
  color: #b7b7b7;
  transition: color 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.footer-8__social-link:hover {
  color: #fefefe;
  border-color: rgba(255, 255, 255, 0.45);
  transform: translateX(2px);
}
.footer-8__social-link.is-active {
  color: #fefefe;
}
.footer-8__social-link.no-border {
  border-bottom: 0;
}
.footer-8__social-left {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
}
.footer-8__social-icon {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
}
.footer-8__social-arrow {
  width: 16px;
  height: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: rotate(90deg);
  opacity: 0.9;
}
.footer-8__social-arrow img {
  width: 15px;
  height: 16px;
}
.footer-8__newsletter-title {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #fefefe;
}
.footer-8__form {
  display: grid;
  gap: 8px;
  max-width: 410px;
}
.footer-8__input {
  height: 50px;
  padding: 0 24px;
  border-radius: 16px;
  background: #1d1d1d;
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #fefefe;
  outline: none;
}
.footer-8__input::-moz-placeholder {
  color: rgba(254, 254, 254, 0.5);
}
.footer-8__input::placeholder {
  color: rgba(254, 254, 254, 0.5);
}
.footer-8__input:focus {
  border-color: rgba(10,10,10,0.65);
}
.footer-8__submit {
  height: 50px;
  border-radius: 16px;
  background: #1d1d1d;
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #fefefe;
  font-size: 16px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.footer-8__submit img {
  width: 14px;
  height: 13px;
  transform: translateY(-1px);
}
.footer-8__submit:hover {
  background: rgba(29, 29, 29, 0.75);
  border-color: rgba(255, 255, 255, 0.14);
  transform: translateY(-1px);
  color: #fefefe;
}
.footer-8__bottom {
  border-top: 1px solid #212121;
  padding: 26px 0;
}
.footer-8__copy {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
  opacity: 0.5;
}
.footer-8__policies a {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: rgba(254, 254, 254, 0.5);
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-8__policies a:hover {
  color: #fefefe;
}

/*----------------------------------------*/
/*  Footer style 9 (Home 9)
/*----------------------------------------*/
.footer-9 {
  position: relative;
  padding-top: clamp(48px, 5.5vw, 87px);
  padding-bottom: 0;
  background: var(--at-neutral-50, #f2f2f2);
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__container {
  max-width: 2200px;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.footer-9__top {
  margin-bottom: clamp(32px, 4vw, 56px);
}
.footer-9__label {
  margin: 0 0 clamp(18px, 2vw, 24px);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-950, #0f0f0f);
  opacity: 0.5;
}
.footer-9 {
  /* Same structure / hover as footer-6 alt-footer-link-item; links stay neutral-950 on light bg */
}
.footer-9__quick-links {
  margin-left: 0;
  margin-right: 0;
}
.footer-9__quick-links .alt-footer-link-item ul li {
  list-style: none;
}
.footer-9__quick-links .alt-footer-link-item ul li a {
  display: inline-flex;
  align-items: center;
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
  text-decoration: none;
  position: relative;
  transition: all 0.5s ease;
}
.footer-9__quick-links .alt-footer-link-item ul li a::before {
  content: "";
  width: 14px;
  height: 13px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path d="M11.0037 3.41421L2.39712 12.0208L0.98291 10.6066L9.5895 2H2.00373V0H13.0037V11H11.0037V3.41421Z" fill="%230f0f0f"/></svg>');
  margin-left: 14px;
  position: absolute;
  left: 100%;
  top: 50%;
  opacity: 0;
  transition: all 0.5s ease;
  transform: translate(-15px, -40%);
}
.footer-9__quick-links .alt-footer-link-item ul li a: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;
  margin-left: 5px;
  transition: all 0.5s ease;
}
.footer-9__quick-links .alt-footer-link-item ul li a:hover::before {
  opacity: 0.85;
  transform: translate(-50%, -50%);
}
.footer-9__contact-row {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(24px, 4vw, 48px);
  align-items: flex-start;
}
.footer-9__contact {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__contact a {
  color: inherit;
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-9__contact a:hover {
  color: var(--at-theme-primary);
}
.footer-9__contact-line + .footer-9__contact-line {
  margin-top: 16px;
}
.footer-9__address {
  margin-top: 16px;
}
.footer-9__hours-label {
  margin-bottom: 6px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-950, #0f0f0f);
  opacity: 0.5;
}
.footer-9__hours-value {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9 {
  /* Same HTML pattern as footer-7 `.alt-footer-social-item`; neutral-950 text/icons on light bg */
}
.footer-9__socials {
  max-width: 436px;
  margin-left: auto;
  padding-top: 4px;
}
@media (max-width: 1199px) {
  .footer-9__socials {
    margin-left: 0;
  }
}
.footer-9__socials.alt-footer-social-item.white-mode ul li a {
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__socials.alt-footer-social-item.white-mode ul li a .icon-social {
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__socials.alt-footer-social-item.white-mode ul li a > svg {
  flex-shrink: 0;
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__socials.alt-footer-social-item.white-mode ul li a {
  /* Keep neutral-950 on hover (override white-mode neutral-900) */
}
.footer-9__socials.alt-footer-social-item.white-mode ul li a:hover {
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__socials.alt-footer-social-item.white-mode ul li a:hover .icon-social, .footer-9__socials.alt-footer-social-item.white-mode ul li a:hover > svg {
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__brand {
  margin: 0 auto clamp(40px, 6vw, 80px);
  max-width: 100%;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(42px, 12vw, 192px);
  line-height: 0.88;
  letter-spacing: -0.05em;
  text-align: center;
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__bottom {
  padding-top: 24px;
}
.footer-9__bottom-bar {
  padding-bottom: clamp(20px, 2.5vw, 28px);
}
.footer-9__copy {
  font-family: var(--at-ff-body);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500, #585959);
}
.footer-9__policies a {
  font-family: var(--at-ff-body);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500, #585959);
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.25s ease;
}
.footer-9__policies a:hover {
  color: var(--at-neutral-950, #0f0f0f);
}
.footer-9__line {
  width: 100%;
  max-width: 1720px;
  margin: 0 auto;
}
.footer-9__line img {
  display: block;
  width: 100%;
  height: auto;
}

/*----------------------------------------*/
/*  Footer style 10 (Home 10)
/*----------------------------------------*/
.footer-10 {
  position: relative;
  padding-top: clamp(48px, 6vw, 100px);
  padding-bottom: clamp(24px, 3vw, 36px);
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.footer-10__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
.footer-10__bg-img {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: min(2096px, 160%);
  max-width: none;
  height: auto;
  opacity: 0.28;
  -o-object-fit: cover;
     object-fit: cover;
  mix-blend-mode: lighten;
}
.footer-10 .container-2200 {
  z-index: 1;
}
.footer-10__hero {
  padding-bottom: clamp(40px, 6vw, 72px);
  margin-bottom: clamp(8px, 2vw, 24px);
}
.footer-10__deco {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 0;
  width: min(200px, 18vw);
}
.footer-10__deco img {
  display: block;
  width: 100%;
  height: auto;
  transform-origin: center center;
  will-change: transform;
}
.footer-10__deco--left {
  left: 0;
}
@media (min-width: 1400px) {
  .footer-10__deco--left {
    left: clamp(8px, 4vw, 48px);
  }
}
.footer-10__deco--right {
  right: 0;
}
@media (min-width: 1400px) {
  .footer-10__deco--right {
    right: clamp(8px, 4vw, 48px);
  }
}
.footer-10__headline {
  max-width: 18ch;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: clamp(24px, 3.5vw, 36px) !important;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(32px, 4.5vw, 64px);
  line-height: 1.12;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  text-wrap: balance;
  color: var(--at-neutral-0);
}
.footer-10__cta-row {
  gap: 0;
}
.footer-10__cta {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: var(--at-neutral-0);
  transition: transform 0.25s ease, filter 0.25s ease;
}
.footer-10__cta:hover {
  transform: translateY(-2px);
  color: var(--at-neutral-0);
}
.footer-10__cta-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 27px;
  border-radius: 50px;
  background: var(--at-theme-primary);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--at-neutral-0);
}
.footer-10__cta-round {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  margin-left: 0;
  border-radius: 50%;
  background: var(--at-theme-primary);
  color: var(--at-neutral-0);
}
.footer-10__cta-round svg {
  display: block;
}
.footer-10__mid {
  padding-bottom: clamp(28px, 4vw, 48px);
}
.footer-10__nav-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer-10__nav-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: -moz-fit-content;
  width: fit-content;
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.33;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-300);
  text-decoration: underline;
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), -webkit-text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), -webkit-text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.footer-10__nav-link:hover {
  color: var(--at-neutral-0);
  -webkit-text-decoration-color: currentColor;
          text-decoration-color: currentColor;
}
.footer-10__nav-link:hover .footer-10__nav-arrow {
  max-width: 14px;
  opacity: 1;
  transform: translateX(0);
}
.footer-10__nav-link:focus-visible {
  color: var(--at-neutral-0);
  -webkit-text-decoration-color: currentColor;
          text-decoration-color: currentColor;
  outline: 2px solid var(--at-theme-primary);
  outline-offset: 3px;
}
.footer-10__nav-link:focus-visible .footer-10__nav-arrow {
  max-width: 14px;
  opacity: 1;
  transform: translateX(0);
}
.footer-10__nav-arrow {
  display: block;
  flex-shrink: 0;
  width: 14px;
  height: 13px;
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  -o-object-fit: contain;
     object-fit: contain;
  transform: translateX(-6px);
  transition: max-width 0.45s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1), transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.footer-10__contact-hours {
  align-items: flex-start;
}
.footer-10__contact {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.45;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0);
}
.footer-10__contact a {
  color: inherit;
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-10__contact a:hover {
  color: var(--at-theme-primary);
}
.footer-10__address {
  font-weight: 500;
  color: var(--at-neutral-0);
}
.footer-10__hours-label {
  margin-bottom: 6px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0);
  opacity: 0.5;
}
.footer-10__hours-value {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0);
}
.footer-10 {
  /* Newsletter — same interaction pattern as `.footer-7__form` / `.footer-7__submit` */
}
.footer-10__newsletter-title {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.05em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--at-neutral-0);
}
.footer-10__form {
  display: grid;
  gap: 8px;
  max-width: 410px;
}
.footer-10__input {
  height: 50px;
  padding: 0 24px;
  border-radius: 16px;
  background: var(--at-neutral-900);
  border: 1px solid rgba(var(--at-neutral-0-rgb), 0.08);
  color: var(--at-neutral-0);
  outline: none;
  font-size: 16px;
  letter-spacing: -0.05em;
}
.footer-10__input::-moz-placeholder {
  color: rgba(var(--at-neutral-0-rgb), 0.5);
}
.footer-10__input::placeholder {
  color: rgba(var(--at-neutral-0-rgb), 0.5);
}
.footer-10__input:focus {
  border-color: rgba(10,10,10,0.65);
}
.footer-10__submit {
  height: 50px;
  border-radius: 16px;
  background: var(--at-neutral-900);
  border: 1px solid rgba(var(--at-neutral-0-rgb), 0.08);
  color: var(--at-neutral-0);
  font-size: 16px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.footer-10__submit > span {
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  line-height: 1.2;
}
.footer-10__submit > span span.text-1 {
  position: relative;
  display: block;
  transition: transform 0.3s ease;
}
.footer-10__submit > span span.text-2 {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: block;
  transition: top 0.3s ease, transform 0.3s ease;
}
.footer-10__submit > i {
  position: relative;
  overflow: hidden;
  width: 16px;
  height: 16px;
  display: inline-flex;
  flex-shrink: 0;
  font-style: normal;
}
.footer-10__submit > i svg {
  transform: translateY(-2px);
  position: absolute;
  bottom: -1px;
  left: 1px;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
}
.footer-10__submit > i svg:last-child {
  left: -12px;
  bottom: -12px;
  transform: translate(0, 0);
  opacity: 0;
}
.footer-10__submit:hover {
  background: color-mix(in srgb, var(--at-neutral-900) 82%, var(--at-neutral-0));
  border-color: rgba(var(--at-neutral-0-rgb), 0.14);
  transform: translateY(-1px);
  color: var(--at-neutral-0);
}
.footer-10__submit:hover > span span.text-1 {
  transform: translateY(-150%);
}
.footer-10__submit:hover > span span.text-2 {
  top: 50%;
  transform: translateY(-50%);
}
.footer-10__submit:hover > i svg:first-child {
  transform: translate(16px, -16px);
}
.footer-10__submit:hover > i svg:last-child {
  opacity: 1;
  visibility: visible;
  transform: translate(13px, -13px);
}
.footer-10__bottom {
  padding-top: 0;
}
.footer-10__bottom-inner {
  border-top: 1px solid rgba(var(--at-neutral-0-rgb), 0.12);
  padding-top: clamp(14px, 2vw, 18px);
}
.footer-10__copy, .footer-10__since {
  font-family: var(--at-ff-body);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0);
  opacity: 0.5;
}

/*----------------------------------------*/
/*  Footer style 11 (Home 11)
/*----------------------------------------*/
.footer-11 {
  position: relative;
  padding-top: clamp(48px, 6vw, 100px);
  padding-bottom: clamp(24px, 3vw, 36px);
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.footer-11__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
.footer-11__bg-lines {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.footer-11__bg-lines::before {
  content: "";
  position: absolute;
  inset: -100%;
  background-image: repeating-linear-gradient(135deg, transparent, transparent 56px, rgba(255, 255, 255, 0.022) 56px, rgba(255, 255, 255, 0.022) 57px);
  animation: footer11-grid 14s linear infinite;
}
.footer-11__bg-lines::after {
  content: "";
  position: absolute;
  bottom: -20%;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: 60%;
  background: radial-gradient(ellipse at center, rgba(255, 90, 0, 0.07) 0%, transparent 70%);
  pointer-events: none;
}
.footer-11__bg-lines span {
  position: absolute;
  top: -30%;
  width: 1px;
  height: 35%;
  animation: footer11-scan linear infinite;
  opacity: 0;
}
.footer-11__bg-lines span:nth-child(1) {
  left: 6%;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.18), transparent);
  animation-duration: 4s;
  animation-delay: 0s;
}
.footer-11__bg-lines span:nth-child(2) {
  left: 19%;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.1), transparent);
  animation-duration: 5.5s;
  animation-delay: -1.4s;
}
.footer-11__bg-lines span:nth-child(3) {
  left: 34%;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.14), transparent);
  height: 25%;
  animation-duration: 3.8s;
  animation-delay: -2.6s;
}
.footer-11__bg-lines span:nth-child(4) {
  left: 51%;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.1), transparent);
  animation-duration: 6.2s;
  animation-delay: -0.8s;
}
.footer-11__bg-lines span:nth-child(5) {
  left: 66%;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.16), transparent);
  height: 40%;
  animation-duration: 4.6s;
  animation-delay: -3.2s;
}
.footer-11__bg-lines span:nth-child(6) {
  left: 80%;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.1), transparent);
  animation-duration: 5s;
  animation-delay: -1.9s;
}
.footer-11__bg-lines span:nth-child(7) {
  left: 27%;
  width: 1px;
  background: linear-gradient(to bottom, transparent, var(--at-theme-primary), transparent);
  height: 20%;
  animation-duration: 7s;
  animation-delay: -0.5s;
  opacity: 0;
  filter: blur(0.5px);
}
.footer-11__bg-lines span:nth-child(8) {
  left: 72%;
  width: 1px;
  background: linear-gradient(to bottom, transparent, var(--at-theme-primary), transparent);
  height: 28%;
  animation-duration: 8.5s;
  animation-delay: -4s;
  opacity: 0;
  filter: blur(0.5px);
}
@keyframes footer11-grid {
  from {
    transform: translate(0, 0);
  }
  to {
    transform: translate(57px, 57px);
  }
}
@keyframes footer11-scan {
  0% {
    top: -40%;
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  88% {
    opacity: 1;
  }
  100% {
    top: 115%;
    opacity: 0;
  }
}
.footer-11 .container-2200 {
  z-index: 1;
}
.footer-11 {
  /* ---- CTA hero ---- */
}
.footer-11__hero {
  padding-bottom: clamp(40px, 6vw, 72px);
  margin-bottom: clamp(8px, 2vw, 24px);
}
.footer-11__deco {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 0;
  width: min(200px, 18vw);
}
.footer-11__deco img {
  display: block;
  width: 100%;
  height: auto;
  transform-origin: center center;
  will-change: transform;
}
.footer-11__deco--left {
  left: 0;
}
@media (min-width: 1400px) {
  .footer-11__deco--left {
    left: clamp(8px, 4vw, 48px);
  }
}
.footer-11__deco--right {
  right: 0;
}
@media (min-width: 1400px) {
  .footer-11__deco--right {
    right: clamp(8px, 4vw, 48px);
  }
}
.footer-11__headline {
  max-width: 20ch;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: clamp(24px, 3.5vw, 36px) !important;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(32px, 4.5vw, 64px);
  line-height: 1.12;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  text-wrap: balance;
  color: var(--at-neutral-0);
}
.footer-11__cta-row {
  gap: 0;
}
.footer-11__cta {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: var(--at-neutral-0);
  transition: transform 0.25s ease, filter 0.25s ease;
}
.footer-11__cta:hover {
  transform: translateY(-2px);
  color: var(--at-neutral-0);
}
.footer-11__cta-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 27px;
  border-radius: 50px;
  background: var(--at-theme-primary);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--at-neutral-0);
}
.footer-11__cta-round {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  margin-left: 0;
  border-radius: 50%;
  background: var(--at-theme-primary);
  color: var(--at-neutral-0);
}
.footer-11__cta-round svg {
  display: block;
}
.footer-11 {
  /* ---- Mid section ---- */
}
.footer-11__mid {
  padding-bottom: clamp(28px, 4vw, 48px);
}
.footer-11__nav-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer-11__nav-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: -moz-fit-content;
  width: fit-content;
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.33;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-300);
  text-decoration: underline;
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), -webkit-text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), -webkit-text-decoration-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.footer-11__nav-link:hover {
  color: var(--at-neutral-0);
  -webkit-text-decoration-color: currentColor;
          text-decoration-color: currentColor;
}
.footer-11__nav-link:hover .footer-11__nav-arrow {
  max-width: 14px;
  opacity: 1;
  transform: translateX(0);
}
.footer-11__nav-link:focus-visible {
  color: var(--at-neutral-0);
  -webkit-text-decoration-color: currentColor;
          text-decoration-color: currentColor;
  outline: 2px solid var(--at-theme-primary);
  outline-offset: 3px;
}
.footer-11__nav-link:focus-visible .footer-11__nav-arrow {
  max-width: 14px;
  opacity: 1;
  transform: translateX(0);
}
.footer-11__nav-arrow {
  display: block;
  flex-shrink: 0;
  width: 14px;
  height: 13px;
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  -o-object-fit: contain;
     object-fit: contain;
  transform: translateX(-6px);
  transition: max-width 0.45s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1), transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.footer-11 {
  /* ---- Contact & Hours ---- */
}
.footer-11__contact-hours {
  align-items: flex-start;
}
.footer-11__contact {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.45;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0);
}
.footer-11__contact a {
  color: inherit;
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-11__contact a:hover {
  color: var(--at-theme-primary);
}
.footer-11__address {
  font-weight: 500;
  color: var(--at-neutral-0);
}
.footer-11__hours-label {
  margin-bottom: 6px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0);
  opacity: 0.5;
}
.footer-11__hours-value {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0);
}
.footer-11 {
  /* ---- Newsletter ---- */
}
.footer-11__newsletter-title {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.05em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--at-neutral-0);
}
.footer-11__form {
  display: grid;
  gap: 8px;
  max-width: 410px;
}
.footer-11__input {
  height: 50px;
  padding: 0 24px;
  border-radius: 16px;
  background: var(--at-neutral-900);
  border: 1px solid rgba(var(--at-neutral-0-rgb), 0.08);
  color: var(--at-neutral-0);
  outline: none;
  font-size: 16px;
  letter-spacing: -0.05em;
}
.footer-11__input::-moz-placeholder {
  color: rgba(var(--at-neutral-0-rgb), 0.5);
}
.footer-11__input::placeholder {
  color: rgba(var(--at-neutral-0-rgb), 0.5);
}
.footer-11__input:focus {
  border-color: rgba(10,10,10,0.65);
}
.footer-11__submit {
  height: 50px;
  border-radius: 16px;
  background: var(--at-neutral-900);
  border: 1px solid rgba(var(--at-neutral-0-rgb), 0.08);
  color: var(--at-neutral-0);
  font-size: 16px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.footer-11__submit > span {
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
  line-height: 1.2;
}
.footer-11__submit > span span.text-1 {
  position: relative;
  display: block;
  transition: transform 0.3s ease;
}
.footer-11__submit > span span.text-2 {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: block;
  transition: top 0.3s ease, transform 0.3s ease;
}
.footer-11__submit > i {
  position: relative;
  overflow: hidden;
  width: 16px;
  height: 16px;
  display: inline-flex;
  flex-shrink: 0;
  font-style: normal;
}
.footer-11__submit > i svg {
  transform: translateY(-2px);
  position: absolute;
  bottom: -1px;
  left: 1px;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
}
.footer-11__submit > i svg:last-child {
  left: -12px;
  bottom: -12px;
  transform: translate(0, 0);
  opacity: 0;
}
.footer-11__submit:hover {
  background: color-mix(in srgb, var(--at-neutral-900) 82%, var(--at-neutral-0));
  border-color: rgba(var(--at-neutral-0-rgb), 0.14);
  transform: translateY(-1px);
  color: var(--at-neutral-0);
}
.footer-11__submit:hover > span span.text-1 {
  transform: translateY(-150%);
}
.footer-11__submit:hover > span span.text-2 {
  top: 50%;
  transform: translateY(-50%);
}
.footer-11__submit:hover > i svg:first-child {
  transform: translate(16px, -16px);
}
.footer-11__submit:hover > i svg:last-child {
  opacity: 1;
  visibility: visible;
  transform: translate(13px, -13px);
}
.footer-11 {
  /* ---- Social links ---- */
}
.footer-11__socials-label {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.05em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--at-neutral-0);
  margin-bottom: 12px;
}
.footer-11__social-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-11__social-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 16px;
  letter-spacing: -0.02em;
  color: var(--at-neutral-300);
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-11__social-link svg {
  flex-shrink: 0;
  opacity: 0.7;
  transition: opacity 0.3s ease;
}
.footer-11__social-link:hover {
  color: var(--at-neutral-0);
}
.footer-11__social-link:hover svg {
  opacity: 1;
}
.footer-11__social-link:focus-visible {
  outline: 2px solid var(--at-theme-primary);
  outline-offset: 3px;
}
.footer-11 {
  /* ---- Bottom bar ---- */
}
.footer-11__bottom {
  padding-top: 0;
}
.footer-11__bottom-inner {
  border-top: 1px solid rgba(var(--at-neutral-0-rgb), 0.12);
  padding-top: clamp(14px, 2vw, 18px);
}
.footer-11__copy, .footer-11__since, .footer-11__tagline {
  font-family: var(--at-ff-body);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0);
  opacity: 0.5;
}
.footer-11__tagline {
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

/* 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: 500;
  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: #1a1a1a;
}

/* ── 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: 500;
  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;
  }
}
/* Footer 13 — Architecture */
.footer-13 {
  background-color: var(--at-neutral-0);
  border-top: 1px solid var(--at-neutral-200);
  color: var(--at-neutral-950);
}

/* ── Meta bar ────────────────────────────────── */
.footer-13__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 96px;
  border-bottom: 1px solid var(--at-neutral-200);
}

.footer-13__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  white-space: nowrap;
}

.footer-13__meta-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}

.footer-13__meta-key {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
}

.footer-13__meta-val {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}

/* ── Body ────────────────────────────────────── */
.footer-13__body {
  display: flex;
  flex-direction: column;
  gap: 96px;
  padding: 80px 96px 0;
  background-image: url("../imgs/pages/home-13/footer13-bg.webp");
  background-repeat: no-repeat;
  background-position: right bottom;
}

/* ── Top row ─────────────────────────────────── */
.footer-13__top {
  display: grid;
  grid-template-columns: 640px 1fr;
  gap: 64px;
  align-items: start;
}

/* Brand */
.footer-13__brand {
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: flex-start;
}

.footer-13__logo {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  text-decoration: none;
  color: var(--at-neutral-950);
}
.footer-13__logo img {
  width: 27px;
  height: 30px;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}

.footer-13__logo-text {
  font-family: var(--at-ff-heading);
  font-weight: 700;
  font-size: 24px;
  line-height: 1.25;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

.footer-13__intro {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.555;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
  max-width: 100%;
}

/* Newsletter form */
.footer-13__form {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
  padding-top: 16px;
}

.footer-13__form-label {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
}

.footer-13__form-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
  border-bottom: 1px solid var(--at-neutral-200);
}

.footer-13__form-input {
  flex: 1 1 auto;
  min-width: 0;
  background: transparent;
  border: 0;
  padding: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}
.footer-13__form-input::-moz-placeholder {
  color: var(--at-neutral-500);
}
.footer-13__form-input::placeholder {
  color: var(--at-neutral-500);
}
.footer-13__form-input:focus {
  outline: none;
}

.footer-13__form-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-950);
  transition: color 0.3s ease;
}
.footer-13__form-btn:hover, .footer-13__form-btn:focus-visible {
  color: var(--at-theme-primary);
}

.footer-13__form-arrow {
  color: var(--at-theme-primary);
  font-size: 14px;
  line-height: 1;
  transition: transform 0.3s ease;
}

.footer-13__form-btn:hover .footer-13__form-arrow,
.footer-13__form-btn:focus-visible .footer-13__form-arrow {
  transform: translateX(4px);
}

/* Link columns */
.footer-13__cols {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
  align-items: start;
}

.footer-13__col {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}

.footer-13__col-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
}

.footer-13__col-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 0;
}
.footer-13__col-list a {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-13__col-list a:hover, .footer-13__col-list a:focus-visible {
  color: var(--at-theme-primary);
}

/* ── Studios row ─────────────────────────────── */
.footer-13__studios {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  padding: 48px 0 0;
  border-top: 1px solid var(--at-neutral-200);
  margin: 0;
  max-width: 80%;
}

.footer-13__studio {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0 32px;
  border-right: 1px solid var(--at-neutral-200);
}
.footer-13__studio:first-child {
  padding-left: 0;
}
.footer-13__studio:last-child {
  border-right: none;
}

.footer-13__studio-head {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.footer-13__studio-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-300);
  flex-shrink: 0;
}

.footer-13__studio-dot--active {
  background-color: var(--at-theme-primary);
  box-shadow: 0 0 0 3px rgba(10,10,10,0.18);
}

.footer-13__studio-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 24px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.footer-13__studio-addr {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.571;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  font-style: normal;
}

.footer-13__studio-status {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
}

.footer-13__studio-status--open {
  color: var(--at-neutral-700);
}

/* ── Big brand text ──────────────────────────── */
.footer-13__bigbrand {
  padding-top: 48px;
  width: 100%;
  overflow: hidden;
}

.footer-13__bigbrand-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(64px, 11vw, 188px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  white-space: nowrap;
}
.footer-13__bigbrand-text sup {
  font-size: 0.5em;
  top: -0.55em;
  font-weight: 500;
}

/* ── Legal bar ───────────────────────────────── */
.footer-13__legal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 96px;
  border-top: 1px solid var(--at-neutral-200);
  flex-wrap: wrap;
}

.footer-13__copy {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

.footer-13__social,
.footer-13__legal-links {
  display: inline-flex;
  align-items: center;
  gap: 24px;
  padding: 0;
  flex-wrap: wrap;
}
.footer-13__social a,
.footer-13__legal-links a {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-13__social a {
  color: var(--at-neutral-950);
}
.footer-13__social a:hover, .footer-13__social a:focus-visible {
  color: var(--at-theme-primary);
}

.footer-13__legal-links a {
  color: var(--at-neutral-500);
}
.footer-13__legal-links a:hover, .footer-13__legal-links a:focus-visible {
  color: var(--at-neutral-950);
}

/* ── Responsive ──────────────────────────────── */
/* Desktop fine-tuning (range-based) */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .footer-13__meta,
  .footer-13__legal {
    padding-inline: 32px;
  }
  .footer-13__body {
    padding: 64px 32px 0;
  }
  .footer-13__top {
    grid-template-columns: 480px 1fr;
    gap: 48px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .footer-13__meta,
  .footer-13__legal {
    padding-inline: 24px;
  }
  .footer-13__body {
    padding: 56px 24px 0;
    gap: 64px;
  }
  .footer-13__top {
    grid-template-columns: 380px 1fr;
    gap: 32px;
  }
  .footer-13__cols {
    gap: 24px;
  }
  .footer-13__intro {
    font-size: 16px;
  }
}
/* Tablet & phone (≤1199px): stack top row, shrink paddings */
@media (max-width: 1199.98px) {
  .footer-13__meta {
    flex-wrap: wrap;
    gap: 16px;
    padding: 16px 20px;
  }
  .footer-13__body {
    padding: 48px 20px 0;
    gap: 48px;
  }
  .footer-13__top {
    display: flex;
    flex-direction: column;
    gap: 48px;
  }
  .footer-13__legal {
    padding: 24px 20px;
    gap: 16px;
  }
  .footer-13__studios {
    padding-top: 32px;
    max-width: 100%;
  }
  .footer-13__intro {
    font-size: 16px;
  }
}
/* Tablet portrait & phone (≤991px): 2-col link cols, single-col studios, stacked legal */
@media (max-width: 991.98px) {
  .footer-13__meta,
  .footer-13__legal {
    padding-inline: 16px;
  }
  .footer-13__body {
    padding: 40px 16px 0;
    gap: 40px;
  }
  .footer-13__cols {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }
  .footer-13__studios {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  .footer-13__studio {
    padding: 24px 0 0;
    border-right: none;
    border-top: 1px solid var(--at-neutral-200);
  }
  .footer-13__studio:first-child {
    padding-top: 0;
    border-top: none;
  }
  .footer-13__legal {
    padding: 20px 16px;
    flex-direction: column;
    align-items: flex-start;
  }
}
/* Phone (≤767px): single-col link cols, form wraps */
@media (max-width: 767.98px) {
  .footer-13__meta-item--lead {
    flex: 1 1 100%;
  }
  .footer-13__body {
    background-image: none;
  }
  .footer-13__cols {
    grid-template-columns: 1fr;
  }
  .footer-13__form-row {
    flex-wrap: wrap;
    gap: 12px;
  }
  .footer-13__form-input {
    flex: 1 1 100%;
  }
}
/* Small phone (≤574px) */
@media (max-width: 574.98px) {
  .footer-13__intro {
    font-size: 15px;
  }
  .footer-13__studio-name {
    font-size: 20px;
  }
  .footer-13__bigbrand-text {
    font-size: clamp(44px, 8vw, 188px);
  }
}
/* ===========================================================
   Footer 14 — Photography Studio

   Designed dark in light mode. Inverts to light-on-dark via
   the --at-neutral-* token swap in dark mode (handled centrally
   in components/_dark-mode.scss).
   =========================================================== */
.footer-14 {
  background-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
  /* Meta strip */
}
.footer-14__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px 32px;
  padding: 16px 100px;
  border-bottom: 1px solid var(--at-neutral-800);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .footer-14__meta {
    padding: 16px 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .footer-14__meta {
    padding: 16px 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-14__meta {
    padding: 14px 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .footer-14__meta {
    padding: 12px 16px;
    gap: 10px 20px;
  }
}
.footer-14__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
}
.footer-14__meta-key {
  font-weight: 500;
  letter-spacing: 2px;
  color: var(--at-neutral-0);
  text-transform: uppercase;
}
.footer-14__meta-val {
  font-weight: 400;
  letter-spacing: 0.4px;
  color: var(--at-neutral-500);
}
.footer-14 {
  /* Body */
}
.footer-14__body {
  padding: 80px 100px 60px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .footer-14__body {
    padding: 72px 60px 56px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .footer-14__body {
    padding: 64px 40px 48px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-14__body {
    padding: 56px 30px 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .footer-14__body {
    padding: 40px 16px 32px;
  }
}
.footer-14 {
  /* Studios row */
}
.footer-14__studios {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .footer-14__studios {
    grid-template-columns: 1fr;
    margin: 32px 0 48px;
    padding: 24px 0;
  }
}
.footer-14__studio {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0 24px;
  border-left: 1px solid var(--at-neutral-800);
}
.footer-14__studio:first-child {
  padding-left: 0;
  border-left: 0;
}
.footer-14__studio:last-child {
  padding-right: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .footer-14__studio {
    padding: 16px 0 !important;
    border-left: 0 !important;
    border-top: 1px solid var(--at-neutral-500);
  }
  .footer-14__studio:first-child {
    border-top: 0;
    padding-top: 0 !important;
  }
}
.footer-14__studio-head {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.footer-14__studio-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-500);
}
.footer-14__studio-dot--active {
  background-color: var(--at-theme-primary);
}
.footer-14__studio-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 20px;
  letter-spacing: -0.3px;
  line-height: 1;
  color: var(--at-neutral-0);
}
.footer-14__studio-addr {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: 0.2px;
  color: var(--at-neutral-500);
  font-style: normal;
}
.footer-14__studio-status {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 1.6px;
  color: var(--at-neutral-500);
}
.footer-14__studio-status--open {
  color: var(--at-theme-primary);
}
.footer-14 {
  /* Big brand */
}
.footer-14__bigbrand {
  position: relative;
  overflow: hidden;
  padding-top: 100px;
}
.footer-14__bigbrand-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(54px, 11.5vw, 220px);
  line-height: 0.95;
  letter-spacing: -0.027em;
  color: var(--at-neutral-0);
  white-space: nowrap;
}
.footer-14__bigbrand-badge {
  position: absolute;
  top: 30%;
  right: 6%;
  display: inline-block;
  padding: 5px 14px;
  background: var(--at-theme-primary);
  color: var(--at-neutral-900);
  font-family: var(--at-ff-body);
  font-weight: 700;
  font-size: 14px;
  line-height: 1.25;
  letter-spacing: 0.04em;
  transform: rotate(-8.36deg);
  white-space: nowrap;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-14__bigbrand-badge {
    font-size: 12px;
    padding: 4px 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .footer-14__bigbrand-badge {
    font-size: 10px;
    padding: 3px 8px;
    right: 4%;
  }
}
.footer-14 {
  /* Legal bar */
}
.footer-14__legal {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 24px 100px;
  border-top: 1px solid var(--at-neutral-800);
  flex-wrap: wrap;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .footer-14__legal {
    padding: 24px 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .footer-14__legal {
    padding: 24px 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-14__legal {
    padding: 24px 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .footer-14__legal {
    padding: 20px 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
}
.footer-14__copy {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.2px;
  color: var(--at-neutral-500);
}
.footer-14__social, .footer-14__policy {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
.footer-14__policy {
  gap: 16px;
}
.footer-14__social a {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.2px;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.25s ease;
}
.footer-14__social a:hover {
  opacity: 0.7;
  color: var(--at-neutral-0);
}
.footer-14__policy a {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.2px;
  color: var(--at-neutral-500);
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-14__policy a:hover {
  color: var(--at-neutral-0);
}

/* ===========================================================
   Footer 15 — Fashion Agency

   Layout: 2x2 panel grid of dark rounded cards.
   Row 1: nav+social (64.5%)  |  newsletter (35.5%)
   Row 2: brand+services (35.5%) | contact+legal (64.5%)

   Always-dark surface (does not swap in dark mode) — uses
   literal hex tokens to match Figma frame intent.
   =========================================================== */
.footer-15 {
  --footer15-panel-bg: #0f0f0f;
  --footer15-panel-radius: 32px;
  --footer15-panel-pad: 64px;
  --footer15-panel-min-h: 369px;
  --footer15-gap: 8px;
  --footer15-text: #fefefe;
  --footer15-muted: #b7b7b7;
  --footer15-faint: #585959;
  --footer15-input-bg: #1d1d1d;
  --footer15-stroke: rgba(255, 255, 255, 0.3);
  padding: 80px 8px 80px 5px;
  background-color: var(--at-neutral-0);
  color: var(--footer15-text);
}

/* ── Grid ────────────────────────────────────────────────── */
/* 3-col grid with staggered spans: row 1 = 2/3 + 1/3,
   row 2 = 1/3 + 2/3 (zigzag panel layout). */
.footer-15__grid {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--footer15-gap);
}

.footer-15__panel {
  position: relative;
  overflow: hidden;
  min-height: var(--footer15-panel-min-h);
  padding: var(--footer15-panel-pad);
  background-color: var(--footer15-panel-bg);
  border-radius: var(--footer15-panel-radius);
  display: flex;
  flex-direction: column;
}

.footer-15__panel--nav {
  grid-column: span 2;
}

.footer-15__panel--news {
  grid-column: span 1;
  justify-content: center;
}

.footer-15__panel--brand {
  grid-column: span 1;
  justify-content: space-between;
  gap: 48px;
}

.footer-15__panel--contact {
  grid-column: span 2;
  justify-content: space-between;
  gap: 32px;
}

/* ── Panel 1 — Nav + social ─────────────────────────────── */
.footer-15__panel--nav {
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: 48px;
}

.footer-15__nav-wrap {
  display: flex;
  align-items: flex-start;
  gap: 56px;
  flex: 0 0 auto;
}

.footer-15__nav {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer-15__nav li {
  position: relative;
}
.footer-15__nav a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--at-ff-heading);
  font-weight: 400;
  font-size: 22px;
  line-height: 1.1;
  letter-spacing: -0.05em;
  color: var(--footer15-muted);
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-15__nav a:hover, .footer-15__nav a:focus-visible, .footer-15__nav a.is-current {
  color: var(--footer15-text);
}

.footer-15__nav-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: currentColor;
  transition: transform 0.3s ease;
}
a:hover .footer-15__nav-icon, a:focus-visible .footer-15__nav-icon {
  transform: translate(2px, -2px);
}

.footer-15__social {
  flex: 1 1 auto;
  max-width: 360px;
  display: flex;
  flex-direction: column;
  gap: 26px;
  align-items: flex-start;
}

.footer-15__eyebrow {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.16em;
  color: var(--footer15-text);
  text-transform: uppercase;
  opacity: 0.5;
}

.footer-15__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.footer-15__tags a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 19px;
  border: 1px solid var(--footer15-stroke);
  border-radius: 32px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--footer15-text);
  text-decoration: none;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.footer-15__tags a svg {
  transition: transform 0.3s ease;
}
.footer-15__tags a:hover, .footer-15__tags a:focus-visible {
  background-color: var(--at-theme-primary);
  border-color: var(--at-theme-primary);
  color: var(--footer15-text);
}
.footer-15__tags a:hover svg, .footer-15__tags a:focus-visible svg {
  transform: translate(2px, -2px);
}

/* ── Panel 2 — Newsletter ───────────────────────────────── */
.footer-15__news-bg {
  position: absolute;
  inset: 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.42;
  pointer-events: none;
  z-index: 0;
}

.footer-15__news-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
  max-width: 410px;
  margin-top: auto;
  margin-bottom: auto;
}

.footer-15__news-label {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.25;
  letter-spacing: -0.05em;
  color: var(--footer15-text);
  text-transform: uppercase;
}

.footer-15__form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

input.footer-15__form-input {
  width: 100%;
  height: 50px;
  padding: 0 24px;
  background-color: var(--footer15-input-bg);
  border: 1px solid transparent;
  border-radius: 16px;
  font-family: var(--at-ff-heading);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.05em;
  color: var(--footer15-text);
  outline: none;
  transition: border-color 0.3s ease;
}
input.footer-15__form-input::-moz-placeholder {
  color: rgba(254, 254, 254, 0.5);
}
input.footer-15__form-input::placeholder {
  color: rgba(254, 254, 254, 0.5);
}
input.footer-15__form-input:focus {
  border-color: rgba(255, 255, 255, 0.25);
}

.footer-15__form-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  height: 50px;
  padding: 0 24px;
  background-color: var(--footer15-input-bg);
  border: 0;
  border-radius: 16px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--footer15-text);
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.footer-15__form-btn svg {
  transition: transform 0.3s ease;
}
.footer-15__form-btn:hover, .footer-15__form-btn:focus-visible {
  background-color: var(--at-theme-primary);
}
.footer-15__form-btn:hover svg, .footer-15__form-btn:focus-visible svg {
  transform: translate(2px, -2px);
}

/* ── Panel 3 — Brand + services ─────────────────────────── */
.footer-15__brand-head {
  display: flex;
  align-items: flex-start;
  gap: 22px;
}

.footer-15__brand-mark {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: auto;
  text-decoration: none;
}

.footer-15__brand-icon {
  display: block;
  max-width: 100%;
  height: auto;
}

.footer-15__brand-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(36px, 3.4vw, 48px);
  line-height: 1.08;
  letter-spacing: -0.05em;
  margin: 0;
}

.footer-15__brand-title-strong {
  color: var(--footer15-text);
}

.footer-15__brand-title-muted {
  color: var(--footer15-faint);
}

.footer-15__services {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 32px;
       column-gap: 32px;
  row-gap: 14px;
}
.footer-15__services a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--footer15-muted);
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-15__services a:hover, .footer-15__services a:focus-visible {
  color: var(--footer15-text);
}
.footer-15__services a:hover .footer-15__service-icon, .footer-15__services a:focus-visible .footer-15__service-icon {
  transform: translate(2px, -2px);
}
.footer-15__services .is-current a {
  color: var(--footer15-text);
}

.footer-15__service-dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
}

.footer-15__service-icon {
  display: inline-flex;
  align-items: center;
  color: currentColor;
  transition: transform 0.3s ease;
}

/* ── Panel 4 — Contact + legal ──────────────────────────── */
.footer-15__contact-row {
  display: grid;
  grid-template-columns: 1.45fr 1fr;
  gap: 48px;
  align-items: start;
}

.footer-15__intro {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--footer15-text);
  max-width: 460px;
}

.footer-15__contact {
  display: flex;
  flex-direction: column;
  gap: 24px;
  font-style: normal;
}

.footer-15__contact-line {
  display: inline-block;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--footer15-text);
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-15__contact-line[href]:hover, .footer-15__contact-line[href]:focus-visible {
  color: var(--at-theme-primary);
}

.footer-15__legal {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.footer-15__copy {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: rgba(254, 254, 254, 0.5);
}

.footer-15__legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.footer-15__legal-links a {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: rgba(254, 254, 254, 0.5);
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-15__legal-links a:hover, .footer-15__legal-links a:focus-visible {
  color: var(--footer15-text);
}

/* ── Responsive ─────────────────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .footer-15 {
    --footer15-panel-pad: 52px;
    --footer15-panel-min-h: 340px;
  }
  .footer-15__nav-wrap {
    gap: 44px;
  }
  .footer-15__nav a {
    font-size: 20px;
  }
  .footer-15__intro {
    font-size: 18px;
  }
  .footer-15__contact-line {
    font-size: 22px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .footer-15 {
    --footer15-panel-pad: 44px;
    --footer15-panel-min-h: 320px;
  }
  .footer-15__nav-wrap {
    gap: 36px;
  }
  .footer-15__nav a {
    font-size: 18px;
  }
  .footer-15__brand-title {
    font-size: 38px;
  }
  .footer-15__intro {
    font-size: 17px;
  }
  .footer-15__contact-line {
    font-size: 20px;
  }
  .footer-15__contact-row {
    gap: 32px;
  }
}
/* Tablet landscape — stack panel 1 (nav + social) vertically */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .footer-15 {
    padding: 56px 8px 56px 5px;
    --footer15-panel-pad: 40px;
    --footer15-panel-min-h: 0;
  }
  .footer-15__panel--nav {
    flex-direction: column;
    align-items: flex-start;
    gap: 36px;
  }
  .footer-15__nav-wrap {
    gap: 56px;
  }
  .footer-15__nav a {
    font-size: 18px;
  }
  .footer-15__brand-title {
    font-size: 36px;
  }
  .footer-15__intro {
    font-size: 16px;
  }
  .footer-15__contact-line {
    font-size: 20px;
  }
  .footer-15__contact-row {
    gap: 24px;
  }
}
/* Tablet portrait — single column stack */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .footer-15 {
    padding: 48px 8px 48px 5px;
    --footer15-panel-pad: 32px;
    --footer15-panel-min-h: 0;
  }
  .footer-15__grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .footer-15__panel--nav,
  .footer-15__panel--news,
  .footer-15__panel--brand,
  .footer-15__panel--contact {
    grid-column: 1/-1;
  }
  .footer-15__panel--nav {
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
  }
  .footer-15__nav-wrap {
    gap: 56px;
  }
  .footer-15__nav a {
    font-size: 18px;
  }
  .footer-15__panel--news {
    min-height: 280px;
  }
  .footer-15__news-inner {
    max-width: 100%;
  }
  .footer-15__brand-title {
    font-size: 36px;
  }
  .footer-15__contact-row {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .footer-15__intro {
    font-size: 18px;
    max-width: 100%;
  }
  .footer-15__contact-line {
    font-size: 22px;
  }
}
/* Phone */
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .footer-15 {
    padding: 40px 8px 40px 5px;
    --footer15-panel-pad: 24px;
    --footer15-gap: 6px;
  }
  .footer-15__grid {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .footer-15__panel--nav,
  .footer-15__panel--news,
  .footer-15__panel--brand,
  .footer-15__panel--contact {
    grid-column: 1/-1;
  }
  .footer-15__panel--nav {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
  .footer-15__nav-wrap {
    gap: 40px;
  }
  .footer-15__nav a {
    font-size: 17px;
  }
  .footer-15__panel--news {
    min-height: 260px;
  }
  .footer-15__news-inner {
    max-width: 100%;
    gap: 16px;
  }
  .footer-15__brand-head {
    gap: 16px;
  }
  .footer-15__brand-title {
    font-size: 32px;
  }
  .footer-15__contact-row {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .footer-15__intro {
    font-size: 16px;
    max-width: 100%;
  }
  .footer-15__contact-line {
    font-size: 20px;
  }
  .footer-15__legal {
    gap: 16px;
  }
}
/* Small phone (≤574.98px) — explicit rules; ranges do NOT cascade */
@media (max-width: 574.98px) {
  .footer-15 {
    padding: 32px 8px 32px 5px;
    --footer15-panel-pad: 20px;
    --footer15-panel-radius: 24px;
    --footer15-gap: 5px;
  }
  .footer-15__grid {
    grid-template-columns: 1fr;
    gap: 5px;
  }
  .footer-15__panel--nav,
  .footer-15__panel--news,
  .footer-15__panel--brand,
  .footer-15__panel--contact {
    grid-column: 1/-1;
  }
  .footer-15__panel--nav {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
  }
  .footer-15__nav-wrap {
    flex-direction: column;
    gap: 18px;
  }
  .footer-15__nav {
    gap: 10px;
  }
  .footer-15__nav a {
    font-size: 18px;
  }
  .footer-15__tags {
    gap: 6px;
  }
  .footer-15__tags a {
    padding: 8px 14px;
    font-size: 13px;
  }
  .footer-15__panel--news {
    min-height: 240px;
  }
  .footer-15__news-inner {
    max-width: 100%;
    gap: 14px;
  }
  input.footer-15__form-input,
  .footer-15__form-btn {
    height: 46px;
    font-size: 14px;
    padding: 0 18px;
  }
  .footer-15__brand-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }
  .footer-15__brand-mark {
    width: 40px;
  }
  .footer-15__brand-title {
    font-size: 28px;
  }
  .footer-15__services {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  .footer-15__services a {
    font-size: 15px;
  }
  .footer-15__contact-row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .footer-15__intro {
    font-size: 15px;
  }
  .footer-15__contact {
    gap: 16px;
  }
  .footer-15__contact-line {
    font-size: 18px;
  }
  .footer-15__legal {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .footer-15__copy {
    font-size: 14px;
  }
  .footer-15__legal-links {
    gap: 12px;
  }
  .footer-15__legal-links a {
    font-size: 13px;
  }
}
/*----------------------------------------*/
/*  7.1 about css
/*----------------------------------------*/
.at-about-subtitle {
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.32px;
  color: var(--at-common-black);
  line-height: 20px;
}
.at-about-subtitle svg {
  transform: translateY(-3px);
  margin-right: 4px;
}
.at-about-item {
  border-radius: 16px;
}
.at-about-svg-wrap {
  position: relative;
  transform: translateY(-100px);
}
.at-about-svg-wrap > svg:nth-child(1) {
  position: absolute;
  top: 0;
  left: 0;
  top: 34px;
}
.at-about-svg-wrap > svg:nth-child(3) {
  position: absolute;
  left: 56px;
  top: 34px;
}
.at-about-thumb {
  border-radius: 16px;
  overflow: hidden;
  height: 410px;
}
.at-about-thumb img {
  border-radius: 16px;
  width: 100%;
  height: 600px;
  -o-object-fit: cover;
     object-fit: cover;
  margin-top: -50px;
}
@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-about-thumb-wrap {
    margin-left: 0;
  }
}
.at-about-title {
  font-size: 28px;
  letter-spacing: -0.05em;
}
.at-about-dec {
  line-height: 162%;
  letter-spacing: -0.05em;
  color: var(--at-common-black);
}
@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-about-dec br {
    display: none;
  }
}
.at-about-btn-transform {
  transform: translateY(-10px);
}
@media (max-width: 574.98px) {
  .at-about-btn-transform {
    transform: translateY(0);
    margin-left: 0;
    width: 100%;
    margin-top: 15px;
  }
}

/*----------------------------------------*/
/*  sec-4 about contact form 
/*----------------------------------------*/
.sec-4-about-form__field {
  margin-bottom: 0;
}
.sec-4-about-form__input {
  display: block;
  width: 100%;
  padding: 16px 0;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--at-neutral-900);
  border-radius: 0;
  outline: none;
  transition: border-color 0.2s ease;
}
.sec-4-about-form__input::-moz-placeholder {
  color: var(--at-neutral-500);
}
.sec-4-about-form__input::placeholder {
  color: var(--at-neutral-500);
}
.sec-4-about-form__input:focus {
  border-bottom-color: var(--at-neutral-900);
}
.sec-4-about-form__textarea {
  min-height: 120px;
  resize: vertical;
  padding-top: 16px;
}
.sec-4-about-form__actions {
  margin-top: 40px;
  margin-bottom: 16px;
}
.sec-4-about-form__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-4-about-form__btn-icon svg {
  flex-shrink: 0;
}
.sec-4-about-form__disclaimer {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--at-neutral-500);
}
.sec-4-about-form__link {
  color: var(--at-neutral-900);
}

/*----------------------------------------*/
/*  About 2 - Sec 3 Our Journey / card-award-2
/*----------------------------------------*/
.sec-3-about .card-award-2-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.card-award-2 {
  border-bottom: 1px solid var(--at-neutral-100, #e5e5e5);
  transition: border-color 0.35s ease;
}
.card-award-2:last-child {
  border-bottom: none;
}
.card-award-2-link {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 24px 32px;
  padding: 28px 0;
  text-decoration: none;
  color: inherit;
  position: relative;
}
@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) {
  .card-award-2-link {
    flex-wrap: wrap;
    gap: 16px;
    padding: 20px 0;
  }
}
.card-award-2-year {
  flex: 0 0 220px;
  font-size: 20px;
  font-weight: 500;
  color: var(--at-neutral-900);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .card-award-2-year {
    flex: 0 0 180px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .card-award-2-year {
    flex: 0 0 100%;
    font-size: 13px;
  }
}
.card-award-2-content {
  flex: 1;
  min-width: 0;
}
.card-award-2-title {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  margin-bottom: 8px;
}
@media (max-width: 574.98px) {
  .card-award-2-title {
    font-size: 17px;
  }
}
.card-award-2-desc {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--at-neutral-900);
  opacity: 0.5;
  font-family: var(--at-ff-body);
  max-width: 520px;
}
.card-award-2-image-wrap {
  flex: 0 0 0;
  width: 0;
  max-height: 0;
  overflow: hidden;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1), max-height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  margin: 0 auto;
  align-self: 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) {
  .card-award-2-image-wrap {
    order: 10;
    flex-basis: 100%;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    align-self: stretch;
  }
}
.card-award-2:hover .card-award-2-image-wrap {
  flex: 1;
  width: 500px;
  max-height: 310px;
}
@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) {
  .card-award-2:hover .card-award-2-image-wrap {
    flex: 0 0 auto;
    flex-basis: 100%;
    width: 100%;
    max-height: 280px;
  }
}
.card-award-2-image {
  width: 500px;
  min-width: 500px;
  height: 310px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}
.card-award-2-image img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  transform: translateY(-100%);
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 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) {
  .card-award-2-image {
    width: 100%;
    min-width: 0;
    height: auto;
    max-width: 480px;
    margin-left: auto;
  }
  .card-award-2-image img {
    height: auto;
  }
}
.card-award-2:hover .card-award-2-image img {
  transform: translateY(0);
}
.card-award-2-icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  color: var(--at-neutral-700);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.25s ease, transform 0.25s ease;
}
.card-award-2-icon svg {
  width: 16px;
  height: 15px;
}
.card-award-2:hover .card-award-2-icon {
  color: var(--at-common-black);
  transform: translate(3px, -2px);
}

.wrapper-gallery {
  display: inline-flex;
  align-items: flex-end;
  padding: 0;
}

.moving-gallery li {
  width: 40vw;
  padding-left: 10px;
  padding-right: 10px;
  box-sizing: border-box;
  list-style: none;
}

@media only screen and (max-width: 1199px) {
  .moving-gallery li {
    padding-left: 4px;
    padding-right: 4px;
  }
}
.moving-gallery li img {
  height: auto;
  margin: 0px;
  width: 100%;
}

.moving-gallery li:nth-child(1) {
  width: 20vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(1) {
    width: 40vw;
  }
}
.moving-gallery li:nth-child(2) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(2) {
    width: 50vw;
  }
}
.moving-gallery li:nth-child(3) {
  width: 30vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(3) {
    width: 60vw;
  }
}
.moving-gallery li:nth-child(4) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(4) {
    width: 50vw;
  }
}
.moving-gallery li:nth-child(5) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(5) {
    width: 50vw;
  }
}
.moving-gallery li:nth-child(6) {
  width: 30vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(6) {
    width: 60vw;
  }
}
.moving-gallery li:nth-child(7) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(7) {
    width: 50vw;
  }
}
.moving-gallery li:nth-child(8) {
  width: 20vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(8) {
    width: 40vw;
  }
}
.moving-gallery li:nth-child(9) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(9) {
    width: 50vw;
  }
}
.moving-gallery li:nth-child(10) {
  width: 30vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(10) {
    width: 60vw;
  }
}
.moving-gallery li:nth-child(11) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(11) {
    width: 50vw;
  }
}
.moving-gallery li:nth-child(12) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(12) {
    width: 50vw;
  }
}
.moving-gallery li:nth-child(13) {
  width: 30vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(13) {
    width: 60vw;
  }
}
.moving-gallery li:nth-child(14) {
  width: 25vw;
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .moving-gallery li:nth-child(14) {
    width: 50vw;
  }
}
/*----------------------------------------*/
/*  sec-2-about: process cards (scroll-section)
/*----------------------------------------*/
.process-scroll .process-card {
  padding: 40px;
  background: var(--at-neutral-0);
}
.process-scroll .process-card__img-wrap img {
  width: 100%;
  height: 100%;
}
.process-scroll .process-card__content {
  padding-left: 0;
}
.process-scroll .process-card__header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 16px;
  margin-bottom: 26px;
  border-bottom: 1px solid var(--at-neutral-100);
}
.process-scroll .process-card__title {
  font-weight: 500;
  line-height: normal;
  margin-bottom: 0;
  letter-spacing: -1.8px;
  color: var(--at-neutral-900);
}
.process-scroll .process-card__desc {
  line-height: 1.6;
  letter-spacing: -0.01em;
  color: var(--at-neutral-500);
  margin-bottom: 20px;
  max-width: 75%;
}
.process-scroll .process-card__meta {
  padding-top: 8px;
}
.process-scroll .process-card__meta-text {
  font-size: 16px;
  color: var(--at-neutral-900);
  font-weight: 500;
}
.process-scroll .process-card__meta-label {
  display: inline-block;
  margin-left: 4px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .process-scroll .process-card__title {
    font-size: 24px;
  }
  .process-scroll .process-card__desc {
    font-size: 16px;
  }
  .process-scroll .process-card__img-wrap {
    min-height: 240px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .process-scroll .process-card__img-wrap {
    aspect-ratio: 16/10;
    min-height: 220px;
  }
  .process-scroll .process-card__header {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .process-scroll .process-card {
    padding-left: 15px;
    padding-right: 15px;
  }
  .process-scroll .process-card__title {
    font-size: 22px;
  }
  .process-scroll .process-card__desc {
    font-size: 15px;
  }
  .process-scroll .process-card__meta {
    flex-wrap: wrap;
    gap: 12px;
  }
  .process-scroll .process-card__img-wrap {
    min-height: 200px;
  }
  .process-scroll .process-card__content {
    padding-top: 0;
  }
}
@media (max-width: 574.98px) {
  .process-scroll .process-card__title {
    font-size: 20px;
  }
  .process-scroll .process-card__desc {
    font-size: 14px;
  }
  .process-scroll .process-card__img-wrap {
    min-height: 180px;
  }
}

/*----------------------------------------*/
/*  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #FEFEFE;
  margin-bottom: 20px;
}
.card_case__studies-title {
  font-weight: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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: 500;
  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;
}

/*----------------------------------------*/
/*  7.22 service css
/*----------------------------------------*/
.at-service-card {
  max-height: 480px;
  min-height: 480px;
}
@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-service-card {
    min-height: 400px;
  }
}
.at-service-card.card-1 {
  position: relative;
}
.at-service-card.card-1::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.65;
  background: linear-gradient(99deg, #000 5.05%, rgba(0, 0, 0, 0.44) 49.84%, #000 94.63%);
  z-index: 0;
}
.at-service-card.no-before::before {
  display: none;
}
.at-service-card.card-2,
.at-service-card .card-4 {
  background: var(--at-common-white);
  margin-top: 120px;
}
@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-service-card.card-2,
  .at-service-card .card-4 {
    margin-top: 0;
  }
}
.at-service-card.card-3 {
  background: #0f0f0f;
}
.at-service-card.style-2 {
  background: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-950);
  position: relative;
  z-index: 1;
  transition: all 0.5s;
}
.at-service-card.style-2::after {
  content: "";
  position: absolute;
  bottom: 5px;
  right: 5px;
  z-index: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--at-neutral-950);
  background: var(--at-neutral-0);
  transition: all 0.5s;
}
.at-service-card.style-2:hover {
  transform: translate(5px, 5px);
}
.at-service-item {
  background-color: var(--at-neutral-0);
  border-bottom: 1px solid var(--at-neutral-100);
  padding-top: 21px;
  padding-bottom: 29px;
  display: grid;
  align-items: center;
  gap: 15px 30px;
  grid-template-columns: 100px 1fr 280px;
  pointer-events: auto;
}
@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-service-item {
    grid-template-columns: 70px 1fr 295px;
  }
}
@media (max-width: 574.98px) {
  .at-service-item {
    grid-template-columns: 1fr;
  }
}
.at-service-item .number {
  color: var(--at-neutral-500);
  font-size: 36px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: -1.8px;
  opacity: 0.3;
  transition: all 0.5s;
}
.at-service-item .content .title {
  color: var(--at-neutral-900);
  font-weight: 500;
  opacity: 0.3;
  transition: all 0.5s;
  margin-bottom: 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) {
  .at-service-item .content .title {
    font-size: 42px;
    line-height: 42px;
    letter-spacing: -2.4px;
  }
}
@media screen and (max-width: 1725px) {
  .at-service-item .content .title {
    font-size: 50px;
  }
}
.at-service-item .content .text {
  opacity: 0;
  max-height: 0px;
  transition: all 0.5s;
  max-width: 370px;
  margin-bottom: 0;
}
.at-service-item .thumb {
  text-align: right;
}
.at-service-item .thumb img {
  width: 100%;
  max-width: 190px;
  height: auto;
  transition: all 0.5s;
  border-radius: 8px;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.at-service-item:hover .number {
  color: var(--at-theme-primary);
  opacity: 1;
}
.at-service-item:hover .title {
  opacity: 1;
  transition: all 0.5s;
}
.at-service-item:hover .text {
  opacity: 1;
  max-height: 100px;
  transition: all 0.5s;
}
.at-service-item:hover .thumb img {
  max-width: 284px;
}
@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-service-content {
    margin-right: 0;
  }
}
.at-service-img-wrapper {
  height: 450px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .at-service-img-wrapper {
    height: 440px;
  }
}
@media (max-width: 574.98px) {
  .at-service-img-wrapper {
    height: 300px;
  }
}
.at-service-img-wrapper.image-container {
  position: relative;
  overflow: hidden;
}
.at-service-img-wrapper .hover-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}
.at-service-img-wrapper .hover-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}
@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-service-list-wrap {
    margin-left: 0;
  }
}

/*----------------------------------------*/
/*  7.17 portfolio
/*----------------------------------------*/
:root {
  --numOfSlides: 5;
  --slidingAT: 1.3s;
  --controlSize: 60px;
}

.alt-portfolio-content {
  background: var(--at-neutral-0);
  border-radius: 16px;
  padding: 16px 20px;
}
.alt-portfolio-date {
  font-size: 14px;
  letter-spacing: 0.07em;
  color: #848282;
}
.alt-portfolio-thumb {
  border-radius: 16px;
}
.alt-portfolio-thumb::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, rgba(26, 26, 26, 0) 11.93%, rgba(26, 26, 26, 0.76) 100%);
  z-index: 1;
}
.alt-portfolio-item {
  position: relative;
  z-index: 3;
}
@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-portfolio-item {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}
.alt-portfolio-item:hover .alt-portfolio-btn {
  transition: all 0.4s ease;
  transform: translateY(0);
}
.alt-portfolio-item:hover .alt-portfolio-btn .des {
  opacity: 1;
  visibility: visible;
  transition: all 0.4s ease;
}
.alt-portfolio-item-2 {
  margin-top: -105px;
}
.alt-portfolio-item-3 {
  margin-top: -200px;
}
.alt-portfolio-item-4 {
  margin-top: 200px;
}
.alt-portfolio-item-6 {
  margin-top: -200px;
}
.alt-portfolio-btn {
  position: absolute;
  left: 54px;
  bottom: 45px;
  right: 80px;
  z-index: 2;
  transition: all 0.4s ease;
  transform: translateY(40%);
}
@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-portfolio-btn {
    left: 20px;
    bottom: 20px;
    right: 10px;
  }
  .alt-portfolio-btn .h2 {
    font-size: 28px;
  }
}
.alt-portfolio-btn .des {
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
}
.alt-portfolio-btn .text {
  font-weight: 700;
  font-size: 14px;
  letter-spacing: -0.05em;
  text-align: center;
  color: var(--at-common-white);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  margin: 0 auto;
}
.alt-portfolio-main-title span {
  font-style: italic;
  font-weight: 800;
  font-size: 42px;
  line-height: 1;
  letter-spacing: -0.05em;
}
.alt-portfolio-main-title span svg {
  margin-top: -60px;
  margin-left: 5px;
}
.alt-portfolio-main-title-wrap {
  margin-bottom: -270px;
}
@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-portfolio-main-title-wrap {
    margin-bottom: 30px;
  }
}

.at-hover-img canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cs-portfolio-tag ul li {
  list-style: none;
  display: inline-block;
}
.cs-portfolio-tag ul li:not(:first-child) {
  margin-left: 5px;
}
.cs-portfolio-tag ul li a {
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-common-white);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50px;
  padding: 8px 19px;
  line-height: 1;
  margin-bottom: 10px;
  display: inline-block;
}
.cs-portfolio-tag ul li a:hover {
  background: var(--at-common-white);
  color: var(--at-common-black);
  border-color: var(--at-common-white);
}

.mg-portfolio-dec {
  letter-spacing: -0.03em;
  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), 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-portfolio-dec br {
    display: none;
  }
}
.mg-portfolio-content {
  padding: 23px 0 0 0;
}
.mg-portfolio-content .cs-portfolio-tag {
  width: 40%;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mg-portfolio-content .cs-portfolio-tag {
    width: 50%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .mg-portfolio-content .cs-portfolio-tag {
    width: 100%;
  }
}
.mg-portfolio-content .cs-portfolio-tag ul li a {
  font-size: 12px;
  color: var(--at-common-black);
  border: 1px solid var(--at-neutral-100);
}
.mg-portfolio-content .cs-portfolio-tag ul li a:hover {
  border-color: var(--at-common-black);
  background: var(--at-common-black);
  color: var(--at-common-white);
}
.mg-portfolio-item {
  border-radius: 10px;
  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) {
  .mg-portfolio-item-wrap {
    margin-left: 0;
  }
}
.mg-portfolio-thumb.style-2 {
  position: relative;
  border-radius: 0 !important;
  overflow: hidden;
}
.mg-portfolio-thumb.style-2::before {
  content: "";
  position: absolute;
  top: 26px;
  right: 26px;
  width: 40px;
  height: 40px;
  background-color: var(--at-neutral-0);
  z-index: 4;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M10.9562 3.73293L1.54623 13.1429L0 11.5967L9.41002 2.1867H1.11611V0H13.1429V12.0269H10.9562V3.73293Z" fill="%231D1D1D"/></svg>');
  background-size: 14px;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 50px;
}
.mg-portfolio-thumb.style-2 img {
  border-radius: 0;
  filter: grayscale(100%);
  transition: all 0.6s ease;
}
.mg-portfolio-thumb {
  border-radius: 10px;
  overflow: hidden;
}
.mg-portfolio-thumb img {
  border-radius: 10px;
  transition: all 0.6s ease;
  transform-origin: center center;
}

.mg-portfolio-item {
  transition: all 0.6s ease;
}
.mg-portfolio-item:hover .mg-portfolio-thumb.style-2 img {
  filter: grayscale(0%);
}

/*----------------------------------------*/
/*  Award Card Styles
/*----------------------------------------*/
.card-award.style-2 {
  background-color: var(--at-neutral-50);
  border: none;
  border-bottom: 1px solid var(--at-neutral-950);
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 0;
  padding: 15px 0;
}
.card-award.style-2:hover {
  border-color: var(--at-neutral-950);
  transition: all 0.3s ease;
  background-color: var(--at-neutral-950);
  padding: 15px 20px;
}
.card-award.style-1 {
  background-color: var(--at-common-white, #ffffff);
  border-radius: 16px;
  border: 1px solid var(--at-neutral-100);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  padding: 20px 42px;
  transition: all 0.3s ease;
  margin-bottom: 24px;
}
.card-award:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border-color: var(--at-neutral-900);
  transition: all 0.3s ease;
  background-color: var(--at-neutral-900);
}
.card-award:hover .card-award-date {
  color: var(--at-neutral-300);
  transition: all 0.3s ease;
}
.card-award:hover .card-award-image img {
  transform: scale(1.2);
  transition: all 0.3s ease;
}
.card-award:hover .card-award-title {
  transition: all 0.3s ease;
  color: var(--at-common-white);
}
.card-award:hover .card-award-web-excellence {
  transition: all 0.3s ease;
  color: var(--at-neutral-300);
}
.card-award:hover .card-award-url {
  transition: all 0.3s ease;
  color: var(--at-neutral-300);
}
.card-award:hover .card-award-icon {
  color: var(--at-common-white);
  transition: all 0.3s ease;
}
.card-award-link {
  text-decoration: none;
  color: inherit;
  gap: 0px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .card-award-link {
    flex-wrap: wrap;
    gap: 5px;
  }
}
@media (min-width: 1401px) {
  .card-award-link {
    gap: 20px;
  }
}
.card-award-date {
  flex: 0 0 200px;
  font-size: 14px;
  font-weight: 400;
  color: var(--at-neutral-500);
  white-space: nowrap;
  transition: all 0.3s ease;
  font-family: var(--at-ff-body);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .card-award-date {
    flex: 0 0 130px;
  }
}
@media (max-width: 574.98px) {
  .card-award-date {
    font-size: 12px;
  }
}
.card-award-meta {
  flex: 1;
}
.card-award-image {
  width: 90px;
  height: 62px;
  border-radius: 8px;
  overflow: hidden;
}
.card-award-image img {
  width: 100%;
  height: 100%;
  transition: all 0.3s ease;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 574.98px) {
  .card-award-image {
    width: 60px;
    height: 42px;
  }
}
.card-award-content {
  flex: 0 0 450px;
  display: flex;
  gap: 16px;
  align-items: center;
  min-width: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .card-award-content {
    flex: 0 0 450px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .card-award-content {
    flex: 1 1 100%;
  }
}
@media (min-width: 1400px) {
  .card-award-content .container {
    flex: 0 0 600px;
  }
}
.card-award-title {
  color: var(--at-common-black, #1d1d1d);
  line-height: 1.4;
  margin-bottom: 4px;
  font-family: var(--at-ff-body);
  transition: all 0.3s ease;
  letter-spacing: -0.01em;
}
@media (max-width: 574.98px) {
  .card-award-title {
    font-size: 14px;
  }
}
.card-award-web-excellence {
  flex: 0 0 400px;
  color: var(--at-neutral-500);
  gap: 8px;
  transition: all 0.3s ease;
  flex-wrap: wrap;
  font-family: var(--at-ff-body);
}
@media (max-width: 574.98px) {
  .card-award-web-excellence {
    font-size: 12px;
  }
}
.card-award-url {
  color: var(--at-common-black, #1d1d1d);
}
.card-award-icon {
  flex-shrink: 0;
  transition: all 0.3s ease;
  width: 14px;
  height: 14px;
  color: var(--at-common-black, #1d1d1d);
  display: flex;
  align-items: center;
  justify-content: center;
}
.card-award-icon svg {
  width: 100%;
  height: 100%;
}
@media (max-width: 574.98px) {
  .card-award-icon {
    width: 12px;
    height: 12px;
  }
}
.card-award-link:hover .card-award-icon {
  transform: rotate(45deg);
}

/* Card award expanded image preview (follows cursor, top-right of cursor, rotated -15deg) */
.card-award-preview {
  position: fixed;
  left: 0;
  top: 0;
  width: 280px;
  pointer-events: none;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
  will-change: transform;
  transform-origin: left bottom;
}
.card-award-preview img {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .card-award-preview {
    display: none !important;
  }
}

/*  testimonial css start */
.testimonial-cart-wrap {
  position: relative;
  border-radius: 16px;
  border: 1px solid var(--at-neutral-700);
  background: var(--at-neutral-800);
}
.testimonial-cart-wrap .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;
}
.testimonial-cart-wrap .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;
}
.testimonial-cart-wrap:hover .testimonial-content-author::before {
  transition: all 0.3s ease;
  width: 100px;
  background: var(--at-theme-primary);
}
.testimonial-cart-wrap:hover .rectangular::after {
  opacity: 1;
  width: 99px;
  height: 99px;
  transition: all 0.3s ease;
}
.testimonial-cart-wrap.style-2 {
  border: 1px solid var(--at-neutral-100, #DFDFDF);
  background: var(--at-neutral-0, #FEFEFE);
}
.testimonial-cart-wrap.style-2 .rectangular {
  border: 1px solid var(--at-neutral-100, #DFDFDF);
  background: var(--at-neutral-0, #FEFEFE);
}
.testimonial-cart-wrap.style-2 .testimonial-left-img {
  margin-right: 20px;
  width: 50px;
  height: 50px;
  border-radius: 10px;
  overflow: hidden;
}
.testimonial-cart-wrap.style-2 .testimonial-left-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.testimonial-cart-wrap.style-2 .testimonial-author {
  margin-top: 100px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .testimonial-cart-wrap.style-2 .testimonial-author {
    margin-top: 60px;
  }
}
@media (max-width: 574.98px) {
  .testimonial-cart-wrap.style-2 .testimonial-author {
    margin-top: 40px;
  }
}
.testimonial-top {
  margin-bottom: 45px;
}
.testimonial-top-left-img {
  margin-right: 20px;
  width: 85px;
  height: 85px;
  border-radius: 16px;
  overflow: hidden;
}
.testimonial-top-left-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.testimonial-top-right-logo {
  margin-left: 20px;
}
.testimonial-content-author {
  position: relative;
  margin-top: 80px;
}
.testimonial-content-author::before {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  width: 57px;
  height: 1px;
  background: var(--at-neutral-500);
  transition: all 0.3s ease;
}

.slider-testimonial {
  padding-bottom: 12px;
}
.slider-testimonial .swiper-slide-active .testimonial-cart-wrap .rectangular::after {
  opacity: 1;
  width: 99px;
  height: 99px;
  transition: all 0.5s ease;
}
.slider-testimonial .swiper-slide-active .testimonial-cart-wrap .rectangular::before {
  bottom: -12px;
  transition: all 0.3s ease;
}

.scroll-section .wrapper {
  position: relative;
  height: auto;
}
.scroll-section .list {
  height: 100%;
  position: relative;
}
.scroll-section .item {
  min-height: 100vh;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  height: auto;
}
.scroll-section .item:first-child {
  min-height: 100%;
  height: 100%;
}
.scroll-section .item:not(:first-child) {
  position: absolute;
}

/*  testimonial css end */
/*----------------------------------------*/
/*  Team Card Styles
/*----------------------------------------*/
.team-grid-wrap {
  position: relative;
}

.team-card {
  position: relative;
  display: flex;
  flex-direction: column;
}
.team-card-image {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 12px;
  background-color: #f5f5f5;
}
.team-card-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.5s ease;
}
.team-card-icon {
  color: var(--at-common-black);
  position: absolute;
  top: 22px;
  right: 20px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background-color: var(--at-common-white);
  display: flex;
  justify-content: center;
  transition: all 0.5s ease;
  align-items: center;
}
.team-card-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(26, 26, 26, 0) 11.93%, #1A1A1A 100%);
  backdrop-filter: blur(1.9500000477px);
  padding: 25px 81px 33px 30px;
  overflow: hidden;
}
.team-card-name .h6 {
  color: var(--at-common-white);
  font-weight: 500;
  letter-spacing: -0.02em;
  transition: color 0.3s ease;
  line-height: 24px;
}
.team-card-position {
  letter-spacing: -0.28px;
  margin-top: 4px;
}

.team-card:hover .team-card-image img {
  transition: all 0.5s ease;
  filter: blur(5px);
  scale: 1.05;
}
.team-card:hover .team-card-icon {
  background: var(--at-common-black);
  color: var(--at-common-white);
}

@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) {
  .team-card-content {
    margin-top: 16px;
  }
}
/*----------------------------------------*/
/*  Team Card 2 (Home 4 Sec 6) - Social overlay on hover
/*----------------------------------------*/
.team-card-2__image {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid var(--at-neutral-100, #DFDFDF);
  background: var(--at-neutral-100, #DFDFDF);
}
.team-card-2__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
}
.team-card-2__social {
  position: absolute;
  left: 50px;
  right: 50px;
  bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 0.35s ease, visibility 0.35s ease, transform 0.35s ease;
  z-index: 2;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .team-card-2__social {
    left: 20px;
    right: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .team-card-2__social {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}
@media (max-width: 574.98px) {
  .team-card-2__social {
    left: 20px;
    right: 20px;
    bottom: 10px;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}
.team-card-2:hover .team-card-2__image img {
  transform: scale(1.05);
}
.team-card-2:hover .team-card-2__social {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.team-card-2__social-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 16px;
  background: rgba(26, 26, 26, 0.1);
  border: 1px solid rgba(254, 254, 254, 0.3);
  border-radius: 100px;
  color: #FEFEFE;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.25s ease, color 0.25s ease;
}
.team-card-2__social-link svg {
  flex-shrink: 0;
}
.team-card-2__social-link:hover {
  background: rgba(255, 255, 255, 0.9);
  color: #1D1D1D;
}
.team-card-2__content {
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 26px 45px;
  min-height: 72px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  border-radius: 16px;
  background: var(--at-neutral-0, #FEFEFE);
}
@media (max-width: 574.98px) {
  .team-card-2__content {
    padding: 20px;
  }
}
.team-card-2__name {
  text-decoration: none;
  color: var(--at-common-black);
}
.team-card-2__name .h6 {
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.3;
  transition: color 0.25s ease;
}
.team-card-2__name:hover .h6 {
  color: var(--at-theme-primary, #6366f1);
}
.team-card-2__position {
  flex-shrink: 0;
  padding: 6px 16px;
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--at-common-black);
  background: transparent;
  border: 1px solid var(--at-common-black);
  border-radius: 100px;
}

/*----------------------------------------*/
/*  7.11 faq css
/*----------------------------------------*/
@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-faq {
    margin-left: 0;
  }
}
.at-faq-dec {
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.04em;
}
.at-faq-item {
  border-radius: 0;
  box-shadow: 0 0 2px 0 rgba(39, 39, 46, 0.04);
  background: var(--at-neutral-50);
  padding: 10px 30px 10px 30px;
  margin-bottom: 16px;
}
.at-faq-body {
  font-size: 16px;
  line-height: 26px;
  padding-bottom: 14px;
  padding-right: 112px;
  padding-left: 45px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-faq-body {
    padding-right: 0;
  }
}
.at-faq-body p {
  font-weight: 400;
  font-size: 15px;
  line-height: 167%;
  color: var(--at-neutral-700);
}
@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-faq-body p br {
    display: none;
  }
}
.at-faq-number {
  font-size: 16px;
  font-weight: 500;
  display: flex;
  width: 30px;
  height: 30px;
  justify-content: center;
  align-items: center;
  border-radius: 42px;
  background: var(--at-neutral-900);
  color: var(--at-common-white);
}
.at-faq-header {
  padding: 15px 0;
}
.at-faq-button {
  background: transparent;
  font-weight: 500;
  font-size: 24px;
  color: var(--at-common-black);
  font-family: var(--at-ff-body);
  position: relative;
  width: 100%;
  text-align: left;
  padding-right: 50px;
}
@media (max-width: 574.98px) {
  .at-faq-button {
    font-size: 18px;
  }
}
.at-faq-button span {
  font-weight: 500;
  margin-right: 70px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-faq-button span {
    margin-right: 30px;
  }
}
.at-faq-button::before, .at-faq-button:after {
  content: "\f068";
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  right: 0;
  top: -3px;
  width: 36px;
  height: 36px;
  text-align: center;
  border-radius: 30px;
  line-height: 35px;
  font-size: 16px;
  font-weight: 400;
  color: var(--at-common-black);
  transition: all 0.5s ease;
}
.at-faq-button.collapsed:after {
  content: "\f067";
}

/*----------------------------------------*/
/*  7.3 banner
/*----------------------------------------*/
.at-banner-thumb {
  height: 800px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .at-banner-thumb {
    height: 600px;
  }
}
@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-banner-thumb {
    height: 400px;
  }
}

/*----------------------------------------*/
/*  7.13 gallery css
/*----------------------------------------*/
.at-gallery-wrapper {
  background: var(--at-common-black);
  height: 1110px;
  overflow: hidden;
  border-radius: 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) {
  .at-gallery-wrapper {
    height: 630px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .at-gallery-wrapper {
    height: 430px;
  }
}
.at-gallery-item {
  overflow: hidden;
  border-radius: 20px;
}
.at-gallery-item:hover img {
  transform: scale(1.1);
}
.at-gallery-item img {
  border-radius: 20px;
  transition: all 0.6s ease;
}

/*----------------------------------------*/
/*  Content product right – shop details 
/*----------------------------------------*/
.content-product-right {
  position: relative;
}
.content-product-right__top {
  margin-bottom: 4px;
}
.content-product-right__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 30px;
  background-color: #6D9765;
  color: #fefefe;
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: -0.24px;
  text-transform: capitalize;
}
.content-product-right__brand {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: var(--at-neutral-500, #585959);
}
.content-product-right__title {
  font-weight: 500;
  line-height: 1;
  letter-spacing: -1.8px;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0 0 12px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .content-product-right__title {
    font-size: 28px;
    letter-spacing: -1.2px;
  }
}
.content-product-right__price {
  font-weight: 500;
  line-height: 1;
  letter-spacing: -1.2px;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0 0 8px;
}
.content-product-right__shipping {
  font-size: 14px;
  font-weight: 500;
  font-style: italic;
  letter-spacing: -0.28px;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0 0 16px;
}
.content-product-right__excerpt-text {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.32px;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0 0 8px;
  line-height: 1.4;
}
.content-product-right__read-more {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  text-decoration: underline;
  color: var(--at-neutral-900, #1d1d1d);
  transition: color 0.3s ease;
}
.content-product-right__read-more:hover {
  color: var(--at-theme-primary);
}
.content-product-right__option--qty {
  width: 75%;
}
@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: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .content-product-right__option--qty {
    width: 100%;
  }
}
.content-product-right__option-label {
  display: block;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.8px;
  color: var(--at-neutral-900, #1d1d1d);
  margin-bottom: 12px;
}
.content-product-right__sizes {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}
.content-product-right__size {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
  border-radius: 4px;
  background-color: var(--at-neutral-50, #f2f2f2);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-900, #1d1d1d);
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.content-product-right__size:hover {
  background-color: var(--at-neutral-100, #e5e5e5);
}
.content-product-right__size.active {
  border-color: var(--at-neutral-900, #1d1d1d);
}
.content-product-right__colors {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}
.content-product-right__color {
  width: 32px;
  height: 32px;
  border: 2px solid var(--at-neutral-0, #fefefe);
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.content-product-right__color:hover {
  box-shadow: 0 0 0 1px var(--at-neutral-400);
}
.content-product-right__color.active {
  border-color: var(--at-neutral-900, #1d1d1d);
  border-width: 2px;
}
.content-product-right__qty {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 155px;
  height: 50px;
  padding: 0 16px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 100px;
  background: var(--at-neutral-0, #fefefe);
}
.content-product-right__qty-btn {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.36px;
  color: var(--at-neutral-900, #1d1d1d);
  cursor: pointer;
  transition: color 0.2s ease, opacity 0.2s ease;
}
.content-product-right__qty-btn:hover {
  opacity: 0.7;
}
.content-product-right__qty-val {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.36px;
  color: var(--at-neutral-900, #1d1d1d);
  min-width: 24px;
  text-align: center;
}
.content-product-right__btn--outline {
  background-color: var(--at-neutral-0, #fefefe) !important;
  color: var(--at-neutral-900, #1d1d1d) !important;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  flex: 1;
}
.content-product-right__btn--outline:hover {
  color: var(--at-neutral-900);
  border-color: var(--at-neutral-900);
}
.content-product-right__btn--primary {
  background-color: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
  border: none;
}
.content-product-right__meta {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-500, #585959);
}
.content-product-right__meta strong {
  color: var(--at-neutral-900, #1d1d1d);
  font-weight: 700;
}
.content-product-right__meta-item {
  margin: 0 0 8px;
}
.content-product-right__benefits {
  list-style: disc;
  padding-left: 21px;
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-950, #0f0f0f);
}
.content-product-right__benefits li {
  margin-bottom: 4px;
}
.content-product-right__share-label {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: -0.24px;
  text-transform: uppercase;
  color: var(--at-neutral-500, #585959);
}
.content-product-right__share-icon {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: var(--at-neutral-900);
  transition: color 0.2s ease;
}
.content-product-right__share-icon:hover {
  color: var(--at-theme-primary);
}
.content-product-right__tab-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 23px;
  border-bottom: 0;
  padding-bottom: 0;
}
.content-product-right__tab-nav .nav-link {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -1px;
  color: var(--at-neutral-500, #585959);
  border: none;
  padding: 0 0 12px;
  background: none;
  border-radius: 0;
  position: relative;
}
.content-product-right__tab-nav .nav-link.active {
  color: var(--at-neutral-900, #1d1d1d);
  text-decoration: underline;
}
.content-product-right__tab-nav .nav-link:hover {
  color: var(--at-neutral-900);
}
.content-product-right__tab-content {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.32px;
  color: var(--at-neutral-900, #1d1d1d);
  line-height: 1.5;
}
.content-product-right__tab-lead {
  font-size: 20px;
  letter-spacing: -0.4px;
  margin-bottom: 24px;
}
.content-product-right__tab-content p {
  margin-bottom: 16px;
}
.content-product-right__tab-content p:last-child {
  margin-bottom: 0;
}
.content-product-right__spec-table {
  width: 100%;
  border-collapse: collapse;
}
.content-product-right__spec-table th,
.content-product-right__spec-table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--at-neutral-100);
  text-align: left;
}
.content-product-right__spec-table th {
  font-weight: 500;
  color: var(--at-neutral-900);
  width: 140px;
}
.content-product-right__no-reviews {
  margin: 0;
  color: var(--at-neutral-500);
}

/*----------------------------------------*/
/*  Shop cart – list & items 
/*----------------------------------------*/
.cart-list {
  display: flex;
  flex-direction: column;
  gap: 25px;
  width: 100%;
  font-family: var(--at-ff-body);
}
.cart-list__header {
  width: 100%;
}
.cart-list__select-all {
  cursor: pointer;
  gap: 5px;
}
.cart-list__check-wrap {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 4px;
  background: var(--at-neutral-0, #fefefe);
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.cart-list__check-icon {
  width: 10px;
  height: 9px;
  opacity: 0;
  transition: opacity 0.2s ease;
  -o-object-fit: contain;
     object-fit: contain;
}
.cart-select-all:checked + .cart-list__check-wrap {
  background: var(--at-neutral-900, #1d1d1d);
  border-color: var(--at-neutral-900, #1d1d1d);
}
.cart-select-all:checked + .cart-list__check-wrap .cart-list__check-icon {
  opacity: 1;
  filter: brightness(0) invert(1);
}
.cart-list__select-all-text {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.8px;
  color: var(--at-neutral-900, #1d1d1d);
}
.cart-list__items {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.cart-remove-selected {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.8px;
  color: var(--at-neutral-900, #1d1d1d);
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.cart-remove-selected:hover {
  opacity: 0.7;
}

/* Cart item card */
.cart-item {
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 16px;
  min-height: 177px;
  overflow: hidden;
  background: var(--at-neutral-0, #fefefe);
  transition: box-shadow 0.2s ease;
}
.cart-item:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.cart-item__inner {
  padding: 9px 39px;
  min-height: 177px;
}
.cart-item__left {
  gap: 29px;
}
.cart-item__check-label {
  cursor: pointer;
  flex-shrink: 0;
}
.cart-item__check-wrap {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 4px;
  background: var(--at-neutral-0, #fefefe);
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.cart-item__check-icon {
  width: 10px;
  height: 9px;
  opacity: 0;
  transition: opacity 0.2s ease;
  -o-object-fit: contain;
     object-fit: contain;
}
.cart-item .cart-item-check:checked + .cart-item__check-wrap {
  background: var(--at-neutral-900, #1d1d1d);
  border-color: var(--at-neutral-900, #1d1d1d);
}
.cart-item .cart-item-check:checked + .cart-item__check-wrap .cart-item__check-icon {
  opacity: 1;
  filter: brightness(0) invert(1);
}
.cart-item__main {
  gap: 23px;
}
.cart-item__img-wrap {
  width: 140px;
  height: 159px;
  flex-shrink: 0;
  border-radius: 8px;
  background: var(--at-neutral-50, #f2f2f2);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cart-item__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.cart-item__info {
  display: flex;
  flex-direction: column;
  gap: 13px;
  min-width: 0;
  max-width: 306px;
}
.cart-item__title {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -1.2px;
  line-height: 1;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0;
}
.cart-item__meta {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-500, #585959);
  margin: 0;
}
.cart-item__price {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.9px;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0;
}
.cart-item__right {
  width: 298px;
  flex-shrink: 0;
}
.cart-item__qty {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 155px;
  height: 50px;
  padding: 0 19.5px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 100px;
  background: var(--at-neutral-0, #fefefe);
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.36px;
  color: var(--at-neutral-900, #1d1d1d);
}
.cart-item-qty-minus, .cart-item-qty-plus {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  cursor: pointer;
  transition: opacity 0.2s ease;
  padding: 0;
  line-height: 1;
}
.cart-item-qty-minus:hover, .cart-item-qty-plus:hover {
  opacity: 0.7;
}
.cart-item-qty-val {
  min-width: 24px;
  text-align: center;
}
.cart-item-delete {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  color: var(--at-neutral-900, #1d1d1d);
  cursor: pointer;
  padding: 0;
  transition: color 0.2s ease, opacity 0.2s ease;
}
.cart-item-delete:hover {
  opacity: 0.7;
  color: var(--at-neutral-700);
}
.cart-item-delete i {
  font-size: 18px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .cart-item__inner {
    padding: 16px 20px;
    flex-wrap: wrap;
    gap: 16px;
  }
  .cart-item__right {
    width: 100%;
    justify-content: flex-start;
    gap: 16px;
  }
  .cart-item__info {
    max-width: 100%;
  }
  .cart-item__title {
    font-size: 20px;
  }
}
@media (max-width: 574.98px) {
  .cart-item__inner {
    padding: 12px 16px;
  }
  .cart-item__img-wrap {
    width: 100px;
    height: 114px;
  }
  .cart-item__left {
    gap: 16px;
  }
  .cart-item__main {
    gap: 12px;
  }
}

/*----------------------------------------*/
/*  Shop cart – summary 
/*----------------------------------------*/
.cart-summary {
  background: var(--at-neutral-50, #f2f2f2);
  border-radius: 16px;
  overflow: hidden;
  padding: 52px 49px 60px;
  font-family: var(--at-ff-body);
  width: 100%;
  align-self: flex-start;
}
@media (min-width: 992px) {
  .cart-summary {
    position: sticky;
    top: 120px;
  }
}
.cart-summary__title {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -1.2px;
  line-height: 1;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0 0 24px;
}
.cart-summary__coupon {
  margin-bottom: 24px;
  gap: 4px;
}
.cart-summary__coupon-input {
  flex: 1;
  min-width: 0;
  max-width: 328px;
  height: 52px;
  padding: 0 24px;
  border: 1px solid var(--at-neutral-100, #dfdfdf) !important;
  border-radius: 50px;
  background: var(--at-neutral-0, #fefefe);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-900, #1d1d1d);
}
.cart-summary__coupon-input::-moz-placeholder {
  color: var(--at-neutral-500, #585959);
}
.cart-summary__coupon-input::placeholder {
  color: var(--at-neutral-500, #585959);
}
.cart-summary__coupon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 52px;
  padding: 0 24px;
  min-width: 118px;
  border: none;
  border-radius: 42px;
  background: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.8px;
  color: var(--at-neutral-0, #fefefe);
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.cart-summary__coupon-btn:hover {
  opacity: 0.9;
}
.cart-summary__coupon-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.cart-summary__coupon-icon svg {
  display: block;
}
.cart-summary__divider {
  height: 1px;
  background: var(--at-neutral-100, #dfdfdf);
  margin: 0 0 24px;
  width: 100%;
}
.cart-summary__rows {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 32px;
}
.cart-summary__row {
  width: 100%;
}
.cart-summary__label {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.32px;
  color: var(--at-neutral-900, #1d1d1d);
}
.cart-summary__value {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.32px;
  color: var(--at-neutral-900, #1d1d1d);
}
.cart-summary__checkout-btn:hover {
  color: var(--at-neutral-0, #fefefe);
  opacity: 0.9;
}
.cart-summary__checkout-btn .icon-arrow-up-right {
  display: inline-flex;
  font-size: 0;
}
.cart-summary__checkout-btn .icon-arrow-up-right svg {
  width: 14px;
  height: 14px;
}
.cart-summary__delivery {
  margin: 24px 0 0;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-700, #303030);
}
.cart-summary__delivery-date {
  font-weight: 700;
  color: var(--at-neutral-900, #1d1d1d);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .cart-summary {
    padding: 40px 24px 48px;
  }
  .cart-summary__coupon-input {
    max-width: 100%;
  }
}
@media (max-width: 574.98px) {
  .cart-summary {
    padding: 32px 20px 40px;
  }
  .cart-summary__title {
    font-size: 20px;
  }
  .cart-summary__checkout-btn {
    max-width: 100%;
  }
}

/*----------------------------------------*/
/*  Shop checkout – Billing Details & Payment 
/*----------------------------------------*/
/* Billing Details */
.checkout-billing {
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-0, #fefefe);
  padding: 46px 62px 52px;
  font-family: var(--at-ff-body);
  margin-bottom: 32px;
}
.checkout-billing__title {
  font-size: 36px;
  font-weight: 500;
  letter-spacing: -1.8px;
  line-height: 1;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0 0 11px;
}
.checkout-billing__desc {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  color: var(--at-neutral-700, #303030);
  margin: 0 0 38px;
  max-width: 584px;
}
.checkout-billing__form {
  display: flex;
  flex-direction: column;
  gap: 38px;
}
.checkout-billing__row {
  display: flex;
  flex-wrap: wrap;
  gap: 26px 26px;
  width: 100%;
}
.checkout-billing__row--half .checkout-billing__field {
  flex: 1 1 calc(50% - 13px);
  min-width: 0;
}
.checkout-billing__field {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}
.checkout-billing__field--full {
  flex: 1 1 100%;
}
.checkout-billing__label {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.32px;
  color: var(--at-neutral-900, #1d1d1d);
  line-height: normal;
}
.checkout-billing__input {
  height: 52px;
  padding: 0 24px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 50px;
  background: var(--at-neutral-0, #fefefe);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-900, #1d1d1d);
  width: 100%;
  transition: border-color 0.2s ease;
}
.checkout-billing__input::-moz-placeholder {
  color: var(--at-neutral-500, #585959);
}
.checkout-billing__input::placeholder {
  color: var(--at-neutral-500, #585959);
}
.checkout-billing__input:focus {
  outline: none;
  border-color: var(--at-neutral-300, #a3a3a3);
}
.checkout-billing__input--full {
  max-width: 100%;
}
.checkout-billing__input--phone {
  max-width: 100%;
  padding-left: 120px;
}
.checkout-billing__phone-wrap {
  position: relative;
  max-width: 493px;
  width: 100%;
  height: 52px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 50px;
  background: var(--at-neutral-0, #fefefe);
  display: flex;
  align-items: center;
}
.checkout-billing__country-select {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  min-width: 100px;
  padding: 0 36px 0 26px;
  border: none;
  border-radius: 50px 0 0 50px;
  background: transparent;
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M7.81864 8.58158L11.0436 5.35669L11.965 6.27809L7.81864 10.4244L3.67236 6.27809L4.59376 5.35669L7.81864 8.58158Z' fill='%231d1d1d'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
}
.checkout-billing__country-select:focus {
  outline: none;
}
.checkout-billing__country-select option {
  padding: 8px 12px;
  background: var(--at-neutral-0, #fefefe);
  color: var(--at-neutral-900, #1d1d1d);
}
@media (max-width: 991px) {
  .checkout-billing {
    padding: 40px 24px 48px;
  }
  .checkout-billing__row--half .checkout-billing__field {
    flex: 1 1 100%;
  }
  .checkout-billing__input {
    max-width: 100%;
  }
  .checkout-billing__phone-wrap {
    max-width: 100%;
  }
}
@media (max-width: 574.98px) {
  .checkout-billing {
    padding: 32px 20px 40px;
  }
  .checkout-billing__title {
    font-size: 28px;
    letter-spacing: -1.4px;
  }
  .checkout-billing__desc {
    font-size: 14px;
    margin-bottom: 28px;
  }
  .checkout-billing__form {
    gap: 28px;
  }
}

/* Payment */
.checkout-payment {
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-0, #fefefe);
  padding: 47px 62px 52px;
  font-family: var(--at-ff-body);
}
.checkout-payment__title {
  font-size: 36px;
  font-weight: 500;
  letter-spacing: -1.8px;
  line-height: 1;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0 0 11px;
}
.checkout-payment__desc {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  color: var(--at-neutral-700, #303030);
  margin: 0 0 38px;
  max-width: 584px;
}
.checkout-payment__form {
  display: flex;
  flex-direction: column;
  gap: 38px;
}
.checkout-payment__row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 20px;
  width: 100%;
  align-items: flex-end;
}
.checkout-payment__row--cards .checkout-payment__field--card-number {
  flex: 1 1 369px;
  min-width: 0;
}
.checkout-payment__row--cards .checkout-payment__field:not(.checkout-payment__field--card-number) {
  flex: 0 1 299px;
  min-width: 200px;
}
.checkout-payment__row--half .checkout-payment__field {
  flex: 1 1 calc(50% - 13px);
  min-width: 0;
}
.checkout-payment__field {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}
.checkout-payment__label {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.32px;
  color: var(--at-neutral-900, #1d1d1d);
  line-height: normal;
}
.checkout-payment__input {
  height: 52px;
  padding: 0 24px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 50px;
  background: var(--at-neutral-0, #fefefe);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-900, #1d1d1d);
  width: 100%;
  transition: border-color 0.2s ease;
}
.checkout-payment__input::-moz-placeholder {
  color: var(--at-neutral-500, #585959);
}
.checkout-payment__input::placeholder {
  color: var(--at-neutral-500, #585959);
}
.checkout-payment__input:focus {
  outline: none;
  border-color: var(--at-neutral-300, #a3a3a3);
}
.checkout-payment__input--card {
  max-width: 100%;
  padding-right: 160px;
}
.checkout-payment__card-input-wrap {
  position: relative;
  max-width: 369px;
  width: 100%;
}
.checkout-payment__card-icons {
  position: absolute;
  right: 21px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  pointer-events: none;
}
.checkout-payment__card-icon {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--at-neutral-500, #585959);
  line-height: 1;
}
@media (max-width: 991px) {
  .checkout-payment {
    padding: 40px 24px 48px;
  }
  .checkout-payment__row--cards .checkout-payment__field--card-number,
  .checkout-payment__row--cards .checkout-payment__field:not(.checkout-payment__field--card-number) {
    flex: 1 1 100%;
  }
  .checkout-payment__row--half .checkout-payment__field {
    flex: 1 1 100%;
  }
  .checkout-payment__input {
    max-width: 100%;
  }
  .checkout-payment__card-input-wrap {
    max-width: 100%;
  }
  .checkout-payment__input--card {
    padding-right: 15px;
  }
}
@media (max-width: 574.98px) {
  .checkout-payment {
    padding: 32px 20px 40px;
  }
  .checkout-payment__title {
    font-size: 28px;
    letter-spacing: -1.4px;
  }
  .checkout-payment__desc {
    font-size: 14px;
    margin-bottom: 28px;
  }
  .checkout-payment__form {
    gap: 28px;
  }
}

/*----------------------------------------*/
/*  7.23 skill css
/*----------------------------------------*/
.at-skill-item {
  background: #f8f8f8;
  border-radius: 24px;
  padding: 71px 20px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .at-skill-item {
    padding: 40px 20px;
  }
}
.at-skill-icon {
  width: 70px;
  height: 70px;
}
.at-skill-text {
  font-weight: 500;
  font-size: 28px;
  letter-spacing: -0.04em;
  color: var(--at-common-black);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .at-skill-text {
    font-size: 24px;
  }
}

/*----------------------------------------*/
/*  sec-6-about: skill cards
/*----------------------------------------*/
.skill-cards {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.skill-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 24px;
  background: var(--at-neutral-0);
  border-radius: 16px;
  border: 1px solid var(--at-neutral-100);
}
.skill-card__thumb {
  flex-shrink: 0;
  width: 90px;
  height: 62px;
  border-radius: 8px;
  overflow: hidden;
}
.skill-card__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.skill-card__content {
  flex: 1;
  min-width: 0;
}
.skill-card__title {
  flex: 0 0 500px;
  font-weight: 500;
  letter-spacing: -1.2px;
  color: var(--at-neutral-900);
  margin-bottom: 0px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .skill-card__title {
    flex: 0 0 200px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .skill-card__title {
    flex: 0 0 100px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .skill-card__title {
    flex: 0 0 100px;
  }
}
@media (max-width: 574.98px) {
  .skill-card__title {
    flex: 1;
  }
}
.skill-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.skill-card__tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 27px;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -1.2px;
  color: var(--at-neutral-900, #171717);
  background: var(--at-neutral-50, #fafafa);
  border: 1px solid var(--at-neutral-100, #e5e5e5);
  border-radius: 100px;
  transition: all 0.3s ease;
}
.skill-card__tag:hover {
  background: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-900);
}
.skill-card__tag-icon {
  flex-shrink: 0;
  -o-object-fit: contain;
     object-fit: contain;
}
.skill-card__score {
  flex-shrink: 0;
  font-size: 24px;
  font-weight: 500;
  color: var(--at-neutral-900);
}
.skill-card__score .skill-card__score-value {
  font-size: 36px;
}
.skill-card__score .skill-card__score-value .odometer {
  letter-spacing: 0px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .skill-card {
    gap: 20px;
    padding: 14px 20px;
  }
  .skill-card__tag {
    font-size: 20px;
    padding: 5px 10px;
  }
  .skill-card__tag-icon {
    width: 18px;
    height: 18px;
  }
  .skill-card__score {
    font-size: 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .skill-card {
    gap: 16px;
    padding: 14px 20px;
  }
  .skill-card__tag {
    font-size: 16px;
    padding: 5px 10px;
  }
  .skill-card__tag-icon {
    width: 18px;
    height: 18px;
  }
  .skill-card__score {
    font-size: 14px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .skill-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
  }
  .skill-card__tags {
    gap: 6px;
  }
  .skill-card__tag {
    font-size: 16px;
    padding: 5px 10px;
  }
  .skill-card__tag-icon {
    width: 16px;
    height: 16px;
  }
  .skill-card__score {
    font-size: 14px;
    align-self: flex-end;
  }
}
@media (max-width: 574.98px) {
  .skill-card {
    padding: 14px;
  }
  .skill-card__tag {
    font-size: 16px;
    padding: 4px 8px;
  }
  .skill-card__tag-icon {
    width: 14px;
    height: 14px;
  }
}

/*----------------------------------------*/
/*  Home 2 Section 11 - Price plan toggle
/*----------------------------------------*/
.change-price-plan {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

.price-plan-toggle-label {
  font-size: 16px;
  font-weight: 500;
  color: var(--at-neutral-900);
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: color 0.2s ease;
}

.price-plan-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  flex-shrink: 0;
}

.price-plan-toggle__input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.price-plan-toggle__track {
  display: block;
  width: 70px;
  height: 33px;
  background: var(--at-common-white);
  border: 1px solid var(--at-neutral-100);
  border-radius: 9999px;
  transition: background 0.25s ease;
}

.price-plan-toggle__thumb {
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background: var(--at-neutral-900);
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  transition: transform 0.25s ease, left 0.25s ease;
  pointer-events: none;
}

.price-plan-toggle__input:checked + .price-plan-toggle__track + .price-plan-toggle__thumb {
  left: 42px;
}

.price-plan-toggle__input:focus-visible + .price-plan-toggle__track {
  outline: 2px solid #1A1A1A;
  outline-offset: 2px;
}

/*----------------------------------------*/
/*  Home 2 Section 11 - Pricing cards
/*----------------------------------------*/
.home-2-pricing-card {
  position: relative;
  background: var(--at-neutral-0);
  border-radius: 16px;
  padding: 15px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
  height: 100%;
  display: flex;
  flex-direction: column;
}
.home-2-pricing-card__badge {
  position: absolute;
  top: 24px;
  right: 24px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: -0.2px;
  text-transform: uppercase;
  color: #fff;
  background: var(--at-theme-primary);
  padding: 6px 10px;
  border-radius: 9999px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .home-2-pricing-card__badge {
    top: 45px;
    right: 45px;
  }
}
.home-2-pricing-card__body {
  flex: 0 0 auto;
  padding: 25px;
  background: var(--at-neutral-50);
  border-radius: 14px;
}
.home-2-pricing-card--popular .home-2-pricing-card__body {
  background: rgba(10,10,10,0.1);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
}
.home-2-pricing-card__title {
  font-size: 18px;
  font-weight: 500;
  color: var(--at-neutral-900);
  margin-bottom: 16px;
}
.home-2-pricing-card__price {
  margin-bottom: 16px;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
}
.home-2-pricing-card__price-value {
  font-size: 48px;
  font-weight: 500;
  line-height: 1;
  color: var(--at-neutral-900);
  font-family: var(--at-ff-body);
  letter-spacing: -2.4px;
}
.home-2-pricing-card__price-period {
  font-size: 16px;
  font-weight: 500;
  color: var(--at-neutral-500);
  margin-left: 2px;
}
.home-2-pricing-card__desc {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  color: var(--at-neutral-500);
  margin-bottom: 28px;
}
.home-2-pricing-card__features {
  list-style: none;
  padding: 0;
  margin: 40px 25px 25px 25px;
  flex: 1 1 auto;
}
.home-2-pricing-card__features li {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
  color: var(--at-neutral-700);
  margin-bottom: 14px;
  font-family: var(--at-ff-body);
}
.home-2-pricing-card__features li:last-child {
  margin-bottom: 0;
}
.home-2-pricing-card__feature-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  min-width: 18px;
  border-radius: 50%;
  margin-right: 12px;
}
.home-2-pricing-card__feature-icon svg {
  flex-shrink: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .home-2-pricing-card__price-value {
    font-size: 42px;
  }
  .home-2-pricing-card__title {
    font-size: 20px;
  }
  .home-2-pricing-card__features li {
    font-size: 16px;
  }
}
@media (max-width: 574.98px) {
  .home-2-pricing-card {
    padding: 8px;
  }
}

/*----------------------------------------*/
/*  sec-2-home-5 - Why Orisa 3 columns
/*----------------------------------------*/
.sec-2-home-5__grid {
  align-items: stretch;
}
.sec-2-home-5__col {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.sec-2-home-5__card--hero {
  position: relative;
  min-height: 370px;
  background: var(--at-neutral-900, #1a1a1a);
}
@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-2-home-5__card--hero {
    min-height: 320px;
  }
}
.sec-2-home-5__card--list {
  flex: 1;
}
.sec-2-home-5__card--testimonial {
  flex: 1;
}
.sec-2-home-5__card--product {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.sec-2-home-5__card--small:not(:first-child) {
  border-radius: 16px;
  background: var(--at-neutral-0, #FEFEFE);
}
@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-2-home-5__card--small {
    margin-top: 1rem;
  }
}
.sec-2-home-5__card--img {
  padding: 11px 0 0 30px;
  border-radius: 16px;
  background: var(--at-neutral-0, #FEFEFE);
  position: relative;
  min-height: 260px;
}
.sec-2-home-5__card--img .img {
  position: absolute;
  bottom: 0;
  right: 0;
}
.sec-2-home-5__card--quote {
  min-height: 180px;
  padding: 57px 34px;
  border-radius: 16px;
}
.sec-2-home-5 {
  /* Hero block */
}
.sec-2-home-5__hero-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(99deg, #000 5%, rgba(0, 0, 0, 0.44) 50%, #000 95%);
  opacity: 0.65;
  z-index: 1;
}
.sec-2-home-5__hero-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
}
.sec-2-home-5__hero-overlay {
  z-index: 2;
}
.sec-2-home-5__hero-title {
  font-size: clamp(1.125rem, 2.5vw, 1.5rem);
  line-height: 1.3;
  max-width: 85%;
  letter-spacing: -0.02em;
}
@media (max-width: 574.98px) {
  .sec-2-home-5__hero-title {
    font-size: 1rem;
    max-width: 100%;
  }
}
.sec-2-home-5 {
  /* List with plus icon */
}
.sec-2-home-5__list-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
  color: var(--at-neutral-900, #1a1a1a);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
}
.sec-2-home-5__list-item::before {
  content: "+";
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--at-neutral-900, #1a1a1a);
  color: var(--at-neutral-0);
  font-size: 14px;
  font-weight: 700;
  line-height: 24px;
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-2-home-5 {
  /* Testimonial */
}
.sec-2-home-5__avatar {
  width: 48px;
  height: 48px;
}
.sec-2-home-5__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-2-home-5__avatars-row {
  flex-wrap: wrap;
}
.sec-2-home-5__avatar-sm {
  width: 65px;
  height: 65px;
  border-radius: 8px;
  overflow: hidden;
  padding: 4px;
  background: var(--at-neutral-50);
}
.sec-2-home-5__avatar-sm img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 4px;
  filter: grayscale(100%);
}
.sec-2-home-5__stars {
  display: flex;
  gap: 2px;
  font-size: 14px;
}
.sec-2-home-5__star {
  color: var(--at-neutral-500, #e5e5e5);
}
.sec-2-home-5__star--filled {
  color: var(--at-neutral-900, #1a1a1a);
}
.sec-2-home-5 {
  /* Stat */
}
.sec-2-home-5__stat {
  font-size: clamp(2.5rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900, #1a1a1a);
}

/*----------------------------------------*/
/*  at-brand-scroll - Vertical random scroll of 3 logos in each brand cell
/*----------------------------------------*/
.at-brand-scroll .at-brand-item .brand {
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 100%;
}
.at-brand-scroll {
  /* Viewport: show only 1 logo, fixed height = 1 slide */
}
.at-brand-scroll .brand-logo-viewport {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 70px;
  flex-shrink: 0;
  margin: auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .at-brand-scroll .brand-logo-viewport {
    height: 50px;
  }
}
.at-brand-scroll .brand-logo-track {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  will-change: transform;
}
.at-brand-scroll .brand-logo-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 70px;
  min-height: 70px;
  flex-shrink: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 574.98px) {
  .at-brand-scroll .brand-logo-slide {
    height: 60px;
    min-height: 60px;
  }
}
.at-brand-scroll .brand-logo-slide img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}

/*----------------------------------------*/
/*  block-journey - Career Path & Expertise
/*  Header CTA: Book A Call Now | Hero card: SINCE 2012 + overlay | Journey list
/*----------------------------------------*/
.block-journey {
  /* CTA: Book A Call Now + white circle arrow */
}
.block-journey__cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 24px;
  border-radius: 100px;
  border: 1px solid var(--at-neutral-600, #4d4d4d);
  background: transparent;
  color: var(--at-neutral-0);
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.block-journey__cta:hover {
  border-color: var(--at-neutral-500, #585959);
  background: rgba(255, 255, 255, 0.05);
  color: var(--at-neutral-0);
}
.block-journey__cta-text {
  letter-spacing: 0.01em;
}
.block-journey__cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--at-neutral-0);
  color: var(--at-neutral-900, #1a1a1a);
  flex-shrink: 0;
}
.block-journey {
  /* Hero card: image + SINCE 2012 badge + overlay title */
}
.block-journey__hero {
  border-radius: 16px;
  overflow: hidden;
}
.block-journey__hero-thumb {
  position: relative;
  display: block;
}
.block-journey__hero-badge {
  position: absolute;
  left: 20px;
  bottom: 80px;
  display: inline-block;
  padding: 6px 12px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.2);
  color: var(--at-neutral-0);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  z-index: 2;
}
.block-journey__hero-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 24px 20px 20px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  z-index: 1;
}
.block-journey__hero-title {
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: -0.02em;
  max-width: 14ch;
}
@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) {
  .block-journey__hero-title {
    font-size: 18px;
  }
}
.block-journey .journey-list-wrap {
  position: relative;
  padding-left: 80px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .block-journey .journey-list-wrap {
    padding-left: 30px;
  }
}
.block-journey .journey-list-line {
  position: absolute;
  left: 0;
  top: 0;
  width: 3px;
  height: 0;
  background: var(--at-neutral-700, #3d3d3d);
  will-change: height;
}
.block-journey .journey-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.block-journey .journey-list__item {
  display: grid;
  grid-template-columns: minmax(140px, 180px) 1fr auto;
  gap: 24px 32px;
  align-items: flex-start;
  padding: 24px 0;
  border-bottom: 1px solid var(--at-neutral-700, #3d3d3d);
}
.block-journey .journey-list__item:first-child {
  padding-top: 0;
}
.block-journey .journey-list__item:last-child {
  border-bottom: none !important;
  padding-bottom: 0;
}
.block-journey .journey-list__item:last-child .journey-list__desc {
  margin-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) {
  .block-journey .journey-list__item {
    grid-template-columns: 1fr auto;
    gap: 8px 16px;
    padding: 20px 0;
  }
  .block-journey .journey-list__item .journey-list__date {
    grid-column: 1;
  }
  .block-journey .journey-list__item .journey-list__body {
    grid-column: 1;
    grid-row: 2;
  }
  .block-journey .journey-list__item .journey-list__link {
    grid-column: 2;
    grid-row: 1/3;
    align-self: center;
  }
}
.block-journey .journey-list__date {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.01em;
  color: var(--at-neutral-0);
  flex-shrink: 0;
  padding-top: 2px;
}
@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) {
  .block-journey .journey-list__date {
    font-size: 13px;
  }
}
.block-journey .journey-list__body {
  max-width: 75%;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .block-journey .journey-list__body {
    max-width: 100%;
  }
}
.block-journey .journey-list__title {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.35;
  color: var(--at-neutral-0);
  margin: 0 0 6px 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) {
  .block-journey .journey-list__title {
    font-size: 18px;
  }
}
.block-journey .journey-list__company {
  font-weight: 500;
  opacity: 0.9;
}
.block-journey .journey-list__desc {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.65);
  margin-bottom: 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) {
  .block-journey .journey-list__desc {
    font-size: 14px;
  }
}
.block-journey .journey-list__link {
  display: inline-flex;
  align-items: flex-start;
  align-self: flex-start;
  justify-content: flex-start;
  color: var(--at-neutral-0);
  padding: 8px;
  margin: -8px;
  transition: opacity 0.2s ease;
}
.block-journey .journey-list__link:hover {
  opacity: 0.8;
}
.block-journey .journey-list__link svg {
  display: block;
}

/*----------------------------------------*/
/*  sec-1-home-7 (Advancing Startup Innovation Hero)
/*----------------------------------------*/
.sec-1-home-7 {
  min-height: 100vh;
  color: #fff;
  padding-top: 130px;
}
@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-7 {
    min-height: auto;
    padding-top: 110px;
  }
}
.sec-1-home-7__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
}
.sec-1-home-7__bg-left, .sec-1-home-7__bg-right {
  flex: 1 1 50%;
}
.sec-1-home-7__bg-left {
  background: #c7260a;
}
.sec-1-home-7__bg-right {
  background: #800b01;
}
@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-7__bg {
    flex-direction: column;
  }
  .sec-1-home-7__bg-left {
    flex: 0 0 45%;
  }
  .sec-1-home-7__bg-right {
    flex: 1 1 auto;
  }
}
.sec-1-home-7__star {
  position: absolute;
  top: 58%;
  left: 50%;
  width: 150px;
  height: 150px;
  transform: translate(-50%, -50%) rotate(22deg);
  z-index: 2;
  pointer-events: none;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home-7__star {
    width: 130px;
    height: 130px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-7__star {
    width: 110px;
    height: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-7__star {
    width: 90px;
    height: 90px;
  }
}
.sec-1-home-7__star img {
  width: 100%;
  height: 100%;
}
.sec-1-home-7__left {
  min-height: 760px;
  padding: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-7__left {
    min-height: 640px;
  }
}
@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-7__left {
    min-height: auto;
    padding-bottom: 40px;
  }
}
.sec-1-home-7__img-wrap {
  position: absolute;
  inset: 0 0 0 0;
  overflow: hidden;
  max-width: 45%;
  margin-top: 80px;
}
@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-7__img-wrap {
    position: relative;
    height: 520px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-7__img-wrap {
    height: 420px;
  }
}
.sec-1-home-7__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
}
.sec-1-home-7__coords {
  position: absolute;
  top: 140px;
  left: 130px;
  z-index: 2;
  color: #fff;
  font-size: 16px;
  letter-spacing: -0.05em;
}
.sec-1-home-7__coords .text-scramble {
  cursor: default;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home-7__coords {
    left: 90px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-7__coords {
    top: 120px;
    left: 60px;
  }
}
@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-7__coords {
    top: 110px;
    left: 30px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-7__coords {
    font-size: 14px;
  }
}
.sec-1-home-7__tags {
  position: absolute;
  left: 100px;
  bottom: 60px;
  z-index: 2;
  max-width: 540px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home-7__tags {
    left: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-7__tags {
    left: 40px;
    bottom: 40px;
    max-width: 460px;
  }
}
@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-7__tags {
    position: relative;
    left: auto;
    bottom: auto;
    padding: 24px 20px 0;
    max-width: 100%;
  }
}
.sec-1-home-7__tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.02em;
  color: #fff;
  padding: 12px 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;
}
.sec-1-home-7__tag:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff;
}
.sec-1-home-7__tag svg {
  flex-shrink: 0;
  opacity: 0.9;
}
@media (max-width: 574.98px) {
  .sec-1-home-7__tag {
    font-size: 14px;
    padding: 10px 16px;
  }
}
.sec-1-home-7__right {
  display: flex;
  align-items: center;
  padding: 0;
}
.sec-1-home-7__content {
  width: 100%;
  max-width: 640px;
  padding: 30px 60px 60px 125px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-7__content {
    padding: 30px 50px 60px;
    max-width: 600px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-7__content {
    padding: 30px 40px 60px;
  }
}
@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-7__content {
    padding: 40px 24px 60px;
    max-width: 100%;
  }
}
.sec-1-home-7__brackets {
  font-weight: 400;
  font-size: 16px;
  color: #fff;
  letter-spacing: -0.02em;
}
.sec-1-home-7__brackets li {
  opacity: 0.9;
}
@media (max-width: 574.98px) {
  .sec-1-home-7__brackets {
    font-size: 14px;
    gap: 18px !important;
  }
}
.sec-1-home-7__headline-wrap {
  display: inline-block;
  max-width: 100%;
}
.sec-1-home-7__headline {
  font-family: var(--at-ff-heading);
  font-size: 92px;
  line-height: 1;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home-7__headline {
    font-size: 82px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-7__headline {
    font-size: 72px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-7__headline {
    font-size: 62px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-7__headline {
    font-size: 64px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-home-7__headline {
    font-size: 52px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-7__headline {
    font-size: 40px;
  }
}
.sec-1-home-7__headline-arrow-cover {
  position: absolute;
  top: 110px;
  right: 0px;
  transform: rotate(-45deg);
}
.sec-1-home-7__headline-arrow-cover__headline-arrow {
  position: absolute;
  top: 10px;
  right: -30px;
  color: var(--at-common-white);
  transform: rotate(0deg);
  width: 70px;
  height: 53px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-7__headline-arrow-cover__headline-arrow {
    width: 56px;
    height: 42px;
    right: -10px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-7__headline-arrow-cover__headline-arrow {
    width: 44px;
    height: 34px;
    right: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-7__headline-arrow-cover__headline-arrow {
    width: 50px;
    height: 38px;
    right: 0;
  }
}
.sec-1-home-7__headline-arrow-cover__headline-arrow svg {
  width: 100%;
  height: 100%;
}
.sec-1-home-7__desc {
  font-weight: 500;
  font-size: 20px;
  line-height: 1.45;
  letter-spacing: -0.02em;
  max-width: 560px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-7__desc {
    font-size: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-7__desc {
    font-size: 16px;
  }
}
.sec-1-home-7__cta-btn, .sec-1-home-7__cta-arrow {
  background: var(--at-theme-primary);
  color: var(--at-common-white);
  transition: all 0.3s ease;
  text-decoration: none;
}
.sec-1-home-7__cta-btn:hover, .sec-1-home-7__cta-arrow:hover {
  background: var(--at-common-white);
  color: var(--at-theme-primary);
}
.sec-1-home-7__cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  padding: 0 27px;
  border-radius: 50px;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  white-space: nowrap;
}
.sec-1-home-7__cta-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  flex-shrink: 0;
}
.sec-1-home-7__cta-arrow svg {
  width: 18px;
  height: 18px;
}
@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-7__proof {
    justify-content: flex-start;
  }
}
.sec-1-home-7__avatars {
  display: inline-flex;
  align-items: center;
}
.sec-1-home-7__avatar {
  width: 65px;
  height: 65px;
  border-radius: 50%;
  border: 4px solid #fff;
  overflow: hidden;
  display: inline-block;
  flex-shrink: 0;
}
.sec-1-home-7__avatar:not(:first-child) {
  margin-left: -25px;
}
.sec-1-home-7__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 574.98px) {
  .sec-1-home-7__avatar {
    width: 52px;
    height: 52px;
    border-width: 3px;
  }
  .sec-1-home-7__avatar:not(:first-child) {
    margin-left: -20px;
  }
}
.sec-1-home-7__proof-text {
  font-size: 16px;
  letter-spacing: -0.02em;
  max-width: 220px;
}
@media (max-width: 574.98px) {
  .sec-1-home-7__proof-text {
    font-size: 14px;
    max-width: 100%;
  }
}

/*----------------------------------------*/
/*  sec-2-home-7 (We Power the World's Fastest Growing Startups)
/*----------------------------------------*/
.sec-2-home-7 {
  position: relative;
  border-bottom: 1px solid var(--at-neutral-100, #dfdfdf);
  overflow: hidden;
}
.sec-2-home-7__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-2-home-7__eyebrow svg {
  transition: transform 0.35s ease;
}
.sec-2-home-7__eyebrow:hover {
  color: var(--at-theme-primary);
}
.sec-2-home-7__eyebrow:hover svg {
  transform: translate(2px, -2px);
}
.sec-2-home-7__headline {
  font-family: var(--at-heading-font);
  color: var(--at-neutral-950, #0f0f0f);
  font-size: clamp(2.25rem, 5vw, 4.5rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.05em;
}
.sec-2-home-7__headline-strong {
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-2-home-7__headline-muted {
  color: var(--at-neutral-300, #b7b7b7);
}
.sec-2-home-7__desc {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 22px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -0.025em;
}
.sec-2-home-7__desc strong {
  font-weight: 700;
}
@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-2-home-7__desc {
    font-size: 18px;
  }
}
.sec-2-home-7__grid {
  border-top: 1px solid var(--at-neutral-100, #dfdfdf);
  background-image: linear-gradient(to right, transparent 0, transparent calc(20% - 1px), var(--at-neutral-100, #dfdfdf) calc(20% - 1px), var(--at-neutral-100, #dfdfdf) 20%, transparent 20%, transparent calc(40% - 1px), var(--at-neutral-100, #dfdfdf) calc(40% - 1px), var(--at-neutral-100, #dfdfdf) 40%, transparent 40%, transparent calc(60% - 1px), var(--at-neutral-100, #dfdfdf) calc(60% - 1px), var(--at-neutral-100, #dfdfdf) 60%, transparent 60%, transparent calc(80% - 1px), var(--at-neutral-100, #dfdfdf) calc(80% - 1px), var(--at-neutral-100, #dfdfdf) 80%, transparent 80%);
}
@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-2-home-7__grid {
    background-image: none;
    border-top: 0;
  }
}
.sec-2-home-7__row {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: 30px;
       column-gap: 30px;
  align-items: center;
  padding: 40px 0;
  border-bottom: 1px solid var(--at-neutral-100, #dfdfdf);
}
.sec-2-home-7__row:last-child {
  border-bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-7__row {
    -moz-column-gap: 24px;
         column-gap: 24px;
    padding: 32px 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-7__row {
    -moz-column-gap: 20px;
         column-gap: 20px;
    padding: 28px 0;
    grid-template-columns: repeat(5, 1fr);
  }
}
@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-2-home-7__row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
    padding: 40px 0;
  }
}
.sec-2-home-7__col-1 {
  grid-column: 1/span 1;
}
.sec-2-home-7__col-2 {
  grid-column: 2/span 1;
}
.sec-2-home-7__col-3 {
  grid-column: 3/span 1;
}
.sec-2-home-7__col-4 {
  grid-column: 4/span 1;
}
.sec-2-home-7__col-5 {
  grid-column: 5/span 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) {
  .sec-2-home-7__col-1, .sec-2-home-7__col-2, .sec-2-home-7__col-3, .sec-2-home-7__col-4, .sec-2-home-7__col-5 {
    grid-column: auto;
    width: 100%;
  }
}
.sec-2-home-7__cell {
  min-width: 0;
}
.sec-2-home-7__cell--img .sec-2-home-7__img-wrap {
  position: relative;
  width: 100%;
  max-width: 270px;
  aspect-ratio: 270/329;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-0, #fefefe);
}
.sec-2-home-7__cell--img .sec-2-home-7__img-wrap .thumb {
  height: 330px;
}
.sec-2-home-7__cell--img .sec-2-home-7__img-wrap img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
  border-radius: 16px;
}
.sec-2-home-7__cell--img .sec-2-home-7__img-wrap:hover img {
  transform: scale(1.05);
}
@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-2-home-7__cell--img .sec-2-home-7__img-wrap {
    max-width: 100%;
    aspect-ratio: 16/10;
  }
}
.sec-2-home-7__cell--feature {
  max-width: 260px;
}
@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-2-home-7__cell--feature {
    max-width: 100%;
  }
}
.sec-2-home-7__cell--stat {
  max-width: 320px;
}
@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-2-home-7__cell--stat {
    max-width: 100%;
  }
}
.sec-2-home-7__feature-icon {
  width: 40px;
  height: 40px;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-2-home-7__feature-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
.sec-2-home-7__feature-title {
  color: var(--at-neutral-900, #1d1d1d);
  font-family: var(--at-heading-font);
  font-size: 36px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.05em;
  margin-bottom: 16px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-7__feature-title {
    font-size: 30px;
  }
}
@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-2-home-7__feature-title {
    font-size: 28px;
  }
}
.sec-2-home-7__feature-desc {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: -0.02em;
}
.sec-2-home-7__stat-value {
  color: var(--at-neutral-900, #1d1d1d);
  font-family: var(--at-heading-font);
  font-size: 84px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.05em;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-2-home-7__stat-value {
    font-size: 76px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-7__stat-value {
    font-size: 64px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-7__stat-value {
    font-size: 54px;
  }
}
@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-2-home-7__stat-value {
    font-size: 64px;
  }
}
.sec-2-home-7__stat-label {
  color: var(--at-neutral-500, #585959);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: -0.02em;
}

.at-item-anime.marque {
  overflow: hidden;
  border-radius: 16px;
}
.at-item-anime.marque img {
  transition: transform 0.6s ease;
}
.at-item-anime.marque:hover img {
  transform: scale(1.05);
  filter: brightness(1.1);
  transition: transform 0.6s ease;
}

/*----------------------------------------*/
/*  sec-4-home-7 (Our mission — dual reveal-text headline + locations)
/*----------------------------------------*/
.sec-4-home-7__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-4-home-7__frame {
  position: relative;
  max-width: 319px;
  aspect-ratio: 319/368;
  margin-inline: auto;
  overflow: hidden;
}
.sec-4-home-7__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.sec-4-home-7__img--bg {
  -o-object-position: 65% center;
     object-position: 65% center;
  transform: scale(1.08);
}
.sec-4-home-7__img--helmet {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 18%;
     object-position: 50% 18%;
  width: 118%;
  height: 128%;
  left: -9%;
  top: -6%;
}
.sec-4-home-7__title {
  font-family: var(--at-heading-font);
  font-size: clamp(2.25rem, 4vw, 4rem);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.05em;
  max-width: 1040px;
}
.sec-4-home-7__title-part {
  display: inline;
  font: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  vertical-align: baseline;
}
.sec-4-home-7__title-part--950 {
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-4-home-7__title-part--300 {
  color: var(--at-neutral-300, #b7b7b7);
}
.sec-4-home-7__cta-btn {
  border-radius: 50px 0 0 50px;
  padding-inline: 27px;
  min-height: 50px;
}
.sec-4-home-7__cta-circle {
  width: 50px;
  min-width: 50px;
  height: 50px;
  background: #1D1D1D;
  border-radius: 50%;
  margin-left: 0;
  text-decoration: none;
  transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease;
}
.sec-4-home-7__cta-circle:hover {
  background: var(--at-theme-primary);
  color: var(--at-common-white);
  transform: translateY(-2px);
}
.sec-4-home-7__loc-title {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-4-home-7__loc-body {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500, #585959);
}
@media (min-width: 992px) {
  .sec-4-home-7__loc-body--solo {
    padding-top: 44px;
  }
}
.sec-4-home-7__loc-strong {
  font-weight: 500;
  color: var(--at-neutral-900, #1d1d1d);
  text-decoration: none;
  transition: color 0.25s ease;
}
.sec-4-home-7__loc-strong:hover {
  color: var(--at-theme-primary);
}

/*----------------------------------------*/
/*  sec-5-home-7 (Specialized services + accordion + throwable logos)
/*----------------------------------------*/
.sec-5-home-7__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-5-home-7__title {
  font-family: var(--at-heading-font);
  font-size: clamp(2.25rem, 4.5vw, 4.5rem);
  font-weight: 500;
  line-height: 1.06;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
  max-width: 560px;
}
.sec-5-home-7__cta-btn {
  border-radius: 50px 0 0 50px;
  padding-inline: 27px;
  min-height: 50px;
}
.sec-5-home-7__cta-circle {
  width: 50px;
  min-width: 50px;
  height: 50px;
  background: #1D1D1D;
  border-radius: 50%;
  margin-left: 0;
  text-decoration: none;
  transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease;
}
.sec-5-home-7__cta-circle:hover {
  background: var(--at-theme-primary);
  color: var(--at-common-white);
  transform: translateY(-2px);
}
.sec-5-home-7__photo {
  max-width: 493px;
  margin-inline: auto;
  aspect-ratio: 493/582;
  overflow: hidden;
  background: var(--at-neutral-300, #b7b7b7);
}
.sec-5-home-7__photo img {
  display: block;
}
.sec-5-home-7__accordion {
  --sec5-acc-gap: 39px;
}
.sec-5-home-7__acc-item {
  margin-bottom: var(--sec5-acc-gap);
  background: transparent;
  border: 0;
}
.sec-5-home-7__acc-item:last-child {
  margin-bottom: 0;
}
.sec-5-home-7__acc-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
  background: var(--at-neutral-0, #fefefe);
  border: solid var(--at-neutral-100, #dfdfdf);
  border-width: 1px 0;
  border-radius: 0;
  box-shadow: none;
}
.sec-5-home-7__acc-btn::after {
  display: none;
}
.sec-5-home-7__acc-btn:not(.collapsed) {
  background: var(--at-neutral-100, #dfdfdf);
  border-color: var(--at-neutral-100, #dfdfdf);
  color: var(--at-neutral-950, #0f0f0f);
  box-shadow: none;
}
.sec-5-home-7__acc-btn:focus {
  box-shadow: none;
  border-color: var(--at-neutral-100, #dfdfdf);
}
.sec-5-home-7__acc-btn.collapsed {
  background: var(--at-neutral-0, #fefefe);
}
.sec-5-home-7__acc-title {
  flex: 1 1 auto;
  text-align: left;
  min-width: 0;
}
.sec-5-home-7__acc-toggle {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-5-home-7__acc-plus {
  display: block;
  transition: transform 0.3s ease;
}
.sec-5-home-7__acc-btn:not(.collapsed) .sec-5-home-7__acc-plus {
  transform: rotate(45deg);
}
.sec-5-home-7__acc-body {
  padding: 0 10px 0;
  border: 0;
  background: transparent;
}
.sec-5-home-7__acc-text {
  max-width: 420px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-5-home-7__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10.5px 19px;
  border-radius: 32px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-5-home-7__throw .client-capsule-wrapper {
  margin-top: 0;
  height: 420px;
}
@media (min-width: 992px) {
  .sec-5-home-7__throw .client-capsule-wrapper {
    height: 520px;
  }
}
@media (min-width: 1400px) {
  .sec-5-home-7__throw .client-capsule-wrapper {
    height: 580px;
  }
}
.sec-5-home-7__throw .client-box--brand-h7 {
  background-color: var(--at-theme-primary);
}

/*----------------------------------------*/
/*  sec-6-home-7 (The Process — Growth Engine)
/*----------------------------------------*/
.sec-6-home-7 {
  position: relative;
  border-top: 1px solid var(--at-neutral-100, #dfdfdf);
}
.sec-6-home-7__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-6-home-7__eyebrow svg {
  transition: transform 0.35s ease;
}
.sec-6-home-7__eyebrow:hover {
  color: var(--at-theme-primary);
}
.sec-6-home-7__eyebrow:hover svg {
  transform: translate(2px, -2px);
}
.sec-6-home-7__title {
  font-family: var(--at-heading-font);
  color: var(--at-neutral-900, #1d1d1d);
  font-size: clamp(2.5rem, 5.5vw, 4.5rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.05em;
}
.sec-6-home-7__desc {
  max-width: 494px;
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: -0.05em;
}
@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-6-home-7__desc {
    font-size: 16px;
    max-width: 100%;
  }
}
.sec-6-home-7__chips {
  gap: 10px;
  width: 100%;
}
.sec-6-home-7__chip {
  display: inline-flex;
  align-items: center;
  height: 55px;
  padding: 0 30px;
  background: var(--at-neutral-950, #0f0f0f);
  color: var(--at-neutral-0, #fefefe);
  overflow: hidden;
  transition: transform 0.35s ease, background 0.35s ease;
}
.sec-6-home-7__chip:hover {
  background: var(--at-theme-primary);
  transform: translateX(4px);
}
.sec-6-home-7__chip--1 {
  margin-left: 0;
  width: 20.06%;
  min-width: 280px;
}
.sec-6-home-7__chip--2 {
  margin-left: 14.13%;
  width: 29.94%;
  min-width: 300px;
}
.sec-6-home-7__chip--3 {
  margin-left: 35.99%;
  width: 45.58%;
  min-width: 340px;
}
.sec-6-home-7__chip--4 {
  margin-left: 64.42%;
  width: 35.58%;
  min-width: 300px;
}
.sec-6-home-7__chip-text {
  font-family: var(--at-heading-font);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}
.sec-6-home-7__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-6-home-7__cards {
    gap: 24px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home-7__cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home-7__cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-home-7__cards {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.sec-6-home-7__card-wrap {
  min-width: 0;
}
.sec-6-home-7__card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  min-height: 487px;
  padding: 51px 52px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 8px;
  background: var(--at-neutral-0, #fefefe);
  overflow: hidden;
  transition: border-color 0.4s ease, transform 0.4s ease, box-shadow 0.4s ease;
}
.sec-6-home-7__card:hover {
  border-color: var(--at-neutral-300, #b7b7b7);
  transform: translateY(-4px);
  box-shadow: 0 20px 40px -20px rgba(15, 15, 15, 0.12);
}
.sec-6-home-7__card:hover .sec-6-home-7__card-media img {
  transform: scale(1.06);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home-7__card {
    min-height: 440px;
    padding: 40px 36px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-6-home-7__card {
    min-height: 420px;
    padding: 36px 32px;
  }
}
@media (max-width: 574.98px) {
  .sec-6-home-7__card {
    min-height: auto;
    padding: 32px 24px;
  }
}
.sec-6-home-7__card-body {
  display: flex;
  flex-direction: column;
  gap: 17px;
  margin-bottom: 24px;
}
.sec-6-home-7__card-num {
  font-family: var(--at-heading-font);
  font-size: 24px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-300, #b7b7b7);
}
.sec-6-home-7__card-title {
  font-family: var(--at-heading-font);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-7__card-desc {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-7__card-media {
  position: relative;
  width: 100%;
  aspect-ratio: 305/185;
  border-radius: 8px;
  overflow: hidden;
  background: var(--at-neutral-100, #dfdfdf);
}
.sec-6-home-7__card-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: grayscale(0%);
  transition: transform 0.6s ease, filter 0.4s ease;
}
.sec-6-home-7__card-media:hover img {
  filter: grayscale(100%);
  transition: transform 0.6s ease, filter 0.4s ease;
}

/*----------------------------------------*/
/*  sec-7-home-7 (CTA — Ready to Build the Future?)
/*----------------------------------------*/
.sec-7-home-7 {
  position: relative;
  background: #7f0b01;
  color: #fefefe;
}
.sec-7-home-7__media {
  width: 100%;
  max-width: 798px;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.sec-7-home-7__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-7-home-7__eyebrow {
  color: #fefefe;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-7-home-7__headline {
  font-family: var(--at-heading-font);
  font-size: 48px;
  font-weight: 500;
  line-height: 52px;
  letter-spacing: -0.05em;
  color: #fefefe;
  max-width: 650px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-7__headline {
    font-size: 40px;
    line-height: 1.15;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-7__headline {
    font-size: 32px;
    line-height: 1.2;
  }
}
.sec-7-home-7__features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 39px;
  max-width: 560px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-7__features {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}
.sec-7-home-7__feature {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: #fefefe;
  margin: 0;
}
.sec-7-home-7__cta-btn {
  background: var(--at-theme-primary, #0a0a0a);
  border-radius: 50px 0 0 50px;
  padding-inline: 27px;
  min-height: 50px;
}
.sec-7-home-7__cta-circle {
  width: 50px;
  min-width: 50px;
  height: 50px;
  background: var(--at-theme-primary, #0a0a0a);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.35s ease, background 0.35s ease;
}
.sec-7-home-7__cta-circle:hover {
  transform: translateY(-2px);
}
.sec-7-home-7__cta-circle img {
  display: block;
}
.sec-7-home-7__star {
  position: absolute;
  right: 100px;
  bottom: 120px;
  width: 100px;
  height: 100px;
  pointer-events: none;
}
.sec-7-home-7__star img {
  width: 100%;
  height: 100%;
  display: block;
  animation: sec7Home7Spin 12s linear infinite;
}
@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-7-home-7__star {
    right: 24px;
    bottom: 24px;
    opacity: 0.9;
  }
}

@keyframes sec7Home7Spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/*----------------------------------------*/
/*  sec-8-home-7 (Team — Dedicated Team + Staggered Portrait Grid)
/*----------------------------------------*/
.sec-8-home-7 {
  position: relative;
  padding: 120px 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) {
  .sec-8-home-7 {
    padding: 90px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-7 {
    padding: 60px 0;
  }
}
.sec-8-home-7__lead {
  padding-top: 60px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-7__lead {
    padding-top: 40px;
  }
}
@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-8-home-7__lead {
    padding-top: 0;
  }
}
.sec-8-home-7__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-8-home-7__eyebrow svg {
  transition: transform 0.35s ease;
}
.sec-8-home-7__eyebrow:hover {
  color: var(--at-theme-primary);
}
.sec-8-home-7__eyebrow:hover svg {
  transform: translate(2px, -2px);
}
.sec-8-home-7__heading {
  font-family: var(--at-heading-font);
  color: var(--at-neutral-900, #1d1d1d);
  font-size: clamp(3.5rem, 8.5vw, 7.75rem);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.05em;
  max-width: 600px;
}
@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-8-home-7__heading {
    max-width: 100%;
  }
}
.sec-8-home-7__desc {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 32px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.05em;
  max-width: 605px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-7__desc {
    font-size: 26px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-7__desc {
    font-size: 22px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-7__desc {
    font-size: 18px;
    max-width: 100%;
  }
}
.sec-8-home-7__cta-btn {
  display: inline-flex;
  align-items: center;
  height: 50px;
  padding: 0 27px;
  border-radius: 50px;
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
  font-family: var(--at-heading-font);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-decoration: none;
  transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease;
}
.sec-8-home-7__cta-btn:hover {
  background: var(--at-theme-primary);
  color: var(--at-common-white);
  transform: translateX(2px);
}
.sec-8-home-7__cta-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
  transition: background 0.35s ease, transform 0.35s ease;
}
.sec-8-home-7__cta-arrow svg {
  width: 20px;
  height: 20px;
  display: block;
  transition: transform 0.35s ease;
}
.sec-8-home-7__cta-arrow:hover {
  background: var(--at-theme-primary);
  transform: rotate(-15deg);
}
.sec-8-home-7__cta-arrow:hover svg {
  transform: scale(1.1);
}
.sec-8-home-7__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  align-items: start;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-7__grid {
    gap: 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-7__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.sec-8-home-7__col {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-7__col {
    gap: 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-7__col {
    gap: 24px;
  }
}
@media (min-width: 992px) {
  .sec-8-home-7__col--offset {
    margin-top: 100px;
  }
}
.sec-8-home-7__card {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 407/549;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-100, #dfdfdf);
  text-decoration: none;
  isolation: isolate;
}
.sec-8-home-7__card:hover .sec-8-home-7__photo img {
  transform: scale(1.05);
}
.sec-8-home-7__card:hover .sec-8-home-7__badge {
  transform: translate(2px, -2px);
}
.sec-8-home-7__photo {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.sec-8-home-7__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  transition: transform 0.7s ease;
}
.sec-8-home-7__info {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 38px 40px 40px;
  height: 38%;
  color: var(--at-common-white, #fefefe);
  background: linear-gradient(to bottom, rgba(26, 26, 26, 0) 0%, rgba(26, 26, 26, 0.55) 45%, rgb(26, 26, 26) 100%);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  mask-image: linear-gradient(to bottom, transparent 0%, #000 35%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 35%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 12px;
  pointer-events: none;
}
@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-8-home-7__info {
    padding: 28px 30px 30px;
  }
}
.sec-8-home-7__name {
  font-family: var(--at-heading-font);
  font-size: 32px;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.05em;
  color: #fefefe;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home-7__name {
    font-size: 28px;
  }
}
@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-8-home-7__name {
    font-size: 26px;
  }
}
.sec-8-home-7__role {
  font-family: var(--at-heading-font);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.02em;
  opacity: 0.8;
  color: #fefefe;
}
.sec-8-home-7__badge {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-0, #fefefe);
  color: var(--at-neutral-900, #1d1d1d);
  transition: transform 0.35s ease, background 0.35s ease, color 0.35s ease;
  z-index: 2;
}
.sec-8-home-7__badge svg {
  width: 15px;
  height: 14px;
  display: block;
}
.sec-8-home-7__badge--dark {
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
}

/*----------------------------------------*/
/*  sec-9-home-7 (Marquee — carouselTicker + GSAP scroll-move)
/*  Structure mirrors Home 3 sec-2: .carouselTicker > ul.carouselTicker__list
/*----------------------------------------*/
.sec-9-home-7 {
  background: #0f0f0f;
  padding: 40px 0;
  overflow: hidden;
}
@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-9-home-7 {
    padding: 28px 0;
  }
}
.sec-9-home-7__ticker {
  background: #0f0f0f;
}
.sec-9-home-7__row {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.sec-9-home-7__list {
  gap: 31px !important;
  white-space: nowrap;
}
@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-9-home-7__list {
    gap: 18px !important;
  }
}
.sec-9-home-7__item {
  font-family: var(--at-heading-font);
  font-size: 48px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-0, #fefefe);
  flex-shrink: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-9-home-7__item {
    font-size: 42px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-7__item {
    font-size: 32px;
    line-height: 1;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-7__item {
    font-size: 24px;
    line-height: 40px;
  }
}
.sec-9-home-7__item--sm {
  font-size: 36px;
  letter-spacing: -0.05em;
  text-transform: none;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-9-home-7__item--sm {
    font-size: 32px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-7__item--sm {
    font-size: 26px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-7__item--sm {
    font-size: 20px;
  }
}
.sec-9-home-7__sep {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-9-home-7__sep img {
  width: 100%;
  height: 100%;
  display: block;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-7__sep {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
  }
}

/*----------------------------------------*/
/*  sec-10-home-7 (Insights for Founders — blog grid)
/*----------------------------------------*/
.sec-10-home-7__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-10-home-7__eyebrow svg {
  transition: transform 0.35s ease;
}
.sec-10-home-7__eyebrow:hover {
  color: var(--at-theme-primary);
}
.sec-10-home-7__eyebrow:hover svg {
  transform: translate(2px, -2px);
}
.sec-10-home-7__title {
  font-family: var(--at-heading-font);
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
  max-width: 400px;
}
.sec-10-home-7__lead {
  font-family: var(--at-heading-font);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900, #1d1d1d);
  max-width: 720px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-10-home-7__lead {
    font-size: 18px;
  }
}
.sec-10-home-7__btn-all {
  height: 50px;
  padding: 0 27px;
  border-radius: 50px;
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease;
}
.sec-10-home-7__btn-all:hover {
  background: var(--at-theme-primary);
  color: var(--at-common-white);
  transform: translateY(-2px);
}
.sec-10-home-7__grid .blog-card__thumb {
  overflow: hidden;
}
.sec-10-home-7__grid .blog-card__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
@media (min-width: 992px) {
  .sec-10-home-7__grid > div:nth-child(1) .blog-card__thumb {
    height: 360px;
  }
  .sec-10-home-7__grid > div:nth-child(2) .blog-card__thumb {
    height: 298px;
  }
  .sec-10-home-7__grid > div:nth-child(3) .blog-card__thumb {
    height: 396px;
  }
  .sec-10-home-7__grid > div:nth-child(4) .blog-card__thumb {
    height: 329px;
  }
}
@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-10-home-7__grid .blog-card__thumb {
    height: 280px;
  }
}
.sec-10-home-7__grid > div:nth-child(4) .blog-card__author {
  color: var(--at-theme-primary);
}
.sec-10-home-7__grid > div:nth-child(4) .blog-card__author:hover {
  color: var(--at-neutral-900);
}

/*----------------------------------------*/
/*  sec-11-home-7 (Get in touch — contact form)
/*----------------------------------------*/
.sec-11-home-7 {
  background: var(--at-neutral-50, #f2f2f2);
}
.sec-11-home-7__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
}
.sec-11-home-7__title {
  font-family: var(--at-heading-font);
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
  max-width: 520px;
}
.sec-11-home-7__form {
  max-width: 720px;
}
.sec-11-home-7__form .sec-4-about-form__textarea {
  min-height: 192px;
  resize: vertical;
}

/*------------------------------------------------------------------
  Home 8 — Section 1: Hero
------------------------------------------------------------------*/
.sec-1-home-8 {
  background-color: var(--at-neutral-0);
}
.sec-1-home-8 .h8-grid-lines {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: repeating-linear-gradient(to right, var(--at-neutral-100) 0px, var(--at-neutral-100) 1px, transparent 1px, transparent 5px, var(--at-neutral-100) 5px, var(--at-neutral-100) 6px, transparent 6px, transparent 278px);
  background-size: 278px 100%;
  background-position: 265px 0;
}
.sec-1-home-8 .h8-container {
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
  position: relative;
  z-index: 1;
}
.sec-1-home-8 .h8-row-1 {
  padding-top: clamp(130px, 9.5vw, 185px);
  padding-bottom: clamp(30px, 3vw, 55px);
}
.sec-1-home-8 .h8-col-left {
  display: flex;
  align-items: flex-start;
}
.sec-1-home-8 .h8-headline-group {
  gap: clamp(20px, 2.9vw, 55px);
  align-items: flex-start;
}
.sec-1-home-8 .h8-badge {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(80px, 7.34vw, 141px);
  height: clamp(80px, 7.34vw, 141px);
  flex-shrink: 0;
  text-decoration: none;
  transition: transform 0.3s ease;
}
.sec-1-home-8 .h8-badge:hover {
  transform: scale(1.06);
}
.sec-1-home-8 .h8-badge__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.sec-1-home-8 .h8-badge__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: #fff;
}
.sec-1-home-8 .h8-badge__inner span {
  font-size: clamp(10px, 0.83vw, 16px);
  font-weight: 700;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}
.sec-1-home-8 .h8-badge__inner svg {
  width: clamp(10px, 0.73vw, 14px);
  height: auto;
}
.sec-1-home-8 .h8-headline {
  font-size: clamp(32px, 3.33vw, 64px);
  font-weight: 500;
  line-height: 1.125;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--at-neutral-0);
  -webkit-text-stroke: 1.5px var(--at-neutral-950);
  paint-order: stroke fill;
  max-width: clamp(280px, 35.7vw, 686px);
}
.sec-1-home-8 .h8-col-right {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
}
.sec-1-home-8 .h8-photos {
  gap: clamp(16px, 4.3vw, 82px);
  align-items: flex-start;
}
.sec-1-home-8 .h8-photo-box {
  width: clamp(100px, 10.1vw, 194px);
  overflow: hidden;
  flex-shrink: 0;
  will-change: transform;
}
.sec-1-home-8 .h8-photo-box img {
  width: 100%;
  height: clamp(130px, 12.76vw, 245px);
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-1-home-8 .h8-photo-box.h8-photo-down img {
  height: clamp(112px, 11.2vw, 215px);
  margin-top: clamp(8px, 0.78vw, 15px);
}
.sec-1-home-8 .h8-row-2 {
  padding-bottom: clamp(50px, 5vw, 0px);
}
.sec-1-home-8 .h8-col-left-2 {
  display: flex;
  align-items: flex-start;
}
.sec-1-home-8 .h8-col-right-2 {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding-top: clamp(20px, 2vw, 30px);
}
.sec-1-home-8 .h8-stats {
  gap: clamp(24px, 3.8vw, 73px);
}
.sec-1-home-8 .h8-stat-num {
  font-size: clamp(56px, 6.46vw, 124px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  margin-bottom: clamp(8px, 0.5vw, 12px);
}
.sec-1-home-8 .h8-stat-num .odometer {
  letter-spacing: -0.05em;
}
.sec-1-home-8 .h8-stat-desc {
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 500;
  letter-spacing: -0.05em;
  line-height: 1.4;
  color: var(--at-neutral-900);
  max-width: clamp(180px, 17vw, 326px);
  margin-bottom: 0;
}
.sec-1-home-8 .h8-bottom-band {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-top: 70px;
}
.sec-1-home-8 .h8-big-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(6px, 1.5vw, 24px);
  font-size: clamp(52px, 12.5vw, 240px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.07em;
  text-transform: uppercase;
  color: var(--at-theme-primary);
  white-space: nowrap;
  padding: clamp(8px, 1vw, 20px) 0 clamp(10px, 1.2vw, 24px);
  margin-bottom: 0;
}
.sec-1-home-8 .h8-registered {
  font-size: 0.22em;
  vertical-align: super;
  line-height: 1;
  color: var(--at-theme-primary);
  font-style: normal;
}
.sec-1-home-8 .h8-portrait-frame {
  display: inline-block;
  width: clamp(60px, 10.6vw, 204px);
  height: clamp(55px, 9.74vw, 187px);
  overflow: hidden;
  flex-shrink: 0;
  clip-path: polygon(25.35% 0%, 100% 0%, 74.65% 100%, 0% 100%);
}
.sec-1-home-8 .h8-portrait-frame img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  display: block;
  pointer-events: none;
}
.sec-1-home-8 .h8-bottom-meta {
  padding: clamp(8px, 0.8vw, 16px) clamp(20px, 5.2vw, 100px) clamp(24px, 2vw, 40px);
}
.sec-1-home-8 .h8-bottom-meta svg {
  color: var(--at-neutral-900);
  flex-shrink: 0;
}
.sec-1-home-8 .h8-meta-text {
  font-size: clamp(12px, 1.46vw, 28px);
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
  white-space: nowrap;
}
@media (max-width: 1199px) {
  .sec-1-home-8 .h8-col-right,
  .sec-1-home-8 .h8-col-right-2 {
    justify-content: flex-start;
    margin-top: 30px;
  }
  .sec-1-home-8 .h8-photos {
    flex-wrap: wrap;
    overflow: visible;
  }
  .sec-1-home-8 .h8-big-title {
    flex-wrap: wrap;
    white-space: normal;
    text-align: center;
    justify-content: center;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .sec-1-home-8 .h8-photos {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    width: 100%;
  }
  .sec-1-home-8 .h8-photo-box {
    width: auto;
  }
  .sec-1-home-8 .h8-photo-box img {
    height: clamp(160px, 22vw, 210px);
  }
  .sec-1-home-8 .h8-photo-box.h8-photo-down img {
    height: clamp(150px, 20vw, 198px);
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .sec-1-home-8 .h8-headline-group {
    flex-direction: column;
    gap: 20px;
  }
  .sec-1-home-8 .h8-stats {
    flex-direction: column;
    gap: 30px;
  }
  .sec-1-home-8 .h8-photos {
    gap: 12px;
  }
  .sec-1-home-8 .h8-big-title {
    font-size: clamp(40px, 10vw, 80px);
    letter-spacing: -0.05em;
  }
  .sec-1-home-8 .h8-portrait-frame {
    display: none;
  }
  .sec-1-home-8 .h8-bottom-meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}

/*----------------------------------------*/
/*  Home 8 — Section 2 (Orange marquee — carouselTicker-left)
/*  Brand-1 bar, 32px semibold white, 20px gap, 16px star
/*----------------------------------------*/
.sec-2-home-8 {
  overflow: hidden;
}
.sec-2-home-8__row {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.sec-2-home-8__ticker {
  background-color: var(--at-theme-primary);
}
.sec-2-home-8__list {
  gap: 20px !important;
  white-space: nowrap;
}
@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-2-home-8__list {
    gap: 16px !important;
  }
}
.sec-2-home-8__item {
  font-family: var(--at-heading-font);
  font-size: 32px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0);
  flex-shrink: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-8__item {
    font-size: 26px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-8__item {
    font-size: 20px;
  }
}
.sec-2-home-8__sep {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-2-home-8__sep img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-8__sep {
    width: 14px;
    height: 14px;
    flex-basis: 14px;
  }
}
.sec-2-home-8__rules {
  height: 28px;
  width: 100%;
  background-color: var(--at-neutral-0);
  background-image: linear-gradient(to bottom, var(--at-theme-primary) 0, var(--at-theme-primary) 1px, transparent 1px, transparent 6px, var(--at-theme-primary) 6px, var(--at-theme-primary) 7px, transparent 7px, transparent 11px, var(--at-theme-primary) 11px, var(--at-theme-primary) 12px, transparent 12px, transparent 15px, var(--at-theme-primary) 15px, var(--at-theme-primary) 16px, transparent 16px, transparent 19px, var(--at-theme-primary) 19px, var(--at-theme-primary) 20px, transparent 20px);
}

/*------------------------------------------------------------------
  Home 8 — Section 3 (About block + staggered photos)
------------------------------------------------------------------*/
.sec-3-home-8 {
  background-color: var(--at-neutral-0);
  padding-top: clamp(60px, 5.9vw, 113px);
  padding-bottom: clamp(60px, 7.5vw, 145px);
}
.sec-3-home-8__container {
  padding-left: clamp(20px, 4.5vw, 86px);
  padding-right: clamp(20px, 4.5vw, 86px);
}
.sec-3-home-8__title {
  font-size: clamp(40px, 4.375vw, 84px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  max-width: 644px;
  margin-bottom: clamp(24px, 2.1vw, 40px);
}
.sec-3-home-8__title-accent {
  color: var(--at-theme-primary);
}
.sec-3-home-8__lead {
  font-size: clamp(18px, 1.25vw, 24px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  max-width: 600px;
  margin-bottom: clamp(28px, 2.2vw, 40px);
}
.sec-3-home-8__tags {
  gap: 6px;
  max-width: 360px;
}
.sec-3-home-8__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-size: 12px;
  font-weight: 500;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
  line-height: 1;
}
.sec-3-home-8__media {
  gap: clamp(16px, 1.56vw, 30px);
}
.sec-3-home-8__photo {
  overflow: hidden;
  flex-shrink: 0;
}
.sec-3-home-8__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-3-home-8__photo--narrow {
  width: min(100%, 334px);
  height: clamp(220px, 19.4vw, 373px);
  margin-top: clamp(32px, 4.8vw, 92px);
}
.sec-3-home-8__photo--wide {
  width: min(100%, 407px);
  height: clamp(280px, 24.2vw, 465px);
}
@media (max-width: 991px) {
  .sec-3-home-8 .sec-3-home-8__media {
    flex-wrap: wrap;
  }
  .sec-3-home-8 .sec-3-home-8__photo--narrow {
    margin-top: 0;
  }
}

/*----------------------------------------*/
/*  Home 8 — Section 4 (Services + Home 1 sec-4 GSAP hover stack)
/*----------------------------------------*/
.sec-4-home-8 {
  background-color: var(--at-neutral-0);
  border-top: 1px solid var(--at-neutral-100);
  position: relative;
}
.sec-4-home-8__top {
  width: 100%;
}
.sec-4-home-8__kicker {
  font-size: 16px;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
.sec-4-home-8__kicker-icon {
  display: inline-flex;
  color: var(--at-neutral-900);
  line-height: 0;
}
.sec-4-home-8__since {
  color: var(--at-neutral-900);
}
.sec-4-home-8__card {
  overflow: hidden;
  padding-bottom: clamp(20px, 2vw, 28px);
}
.sec-4-home-8__img-stack {
  height: 410px;
  margin-bottom: clamp(16px, 1.8vw, 24px);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-8__img-stack {
    height: 300px;
  }
}
.sec-4-home-8__img-stack .hover-image img {
  border-radius: 0;
}
.sec-4-home-8__caption {
  color: var(--at-neutral-950);
  letter-spacing: -0.02em;
  line-height: 1.4;
  padding-left: clamp(16px, 2vw, 24px);
  padding-right: clamp(16px, 2vw, 24px);
}
.sec-4-home-8__deco {
  display: flex;
  justify-content: flex-end;
  padding-right: clamp(16px, 4vw, 48px);
  position: absolute;
  top: 60%;
  left: 30%;
}
.sec-4-home-8__deco .at-about-svg-wrap {
  transform: translateY(0);
}
.sec-4-home-8__list-wrap .at-service-item {
  padding-top: 34px;
  padding-bottom: 34px;
  grid-template-columns: 80px 1fr 300px;
  gap: 15px 45px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-8__list-wrap .at-service-item {
    grid-template-columns: 70px 1fr 240px;
    gap: 12px 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-8__list-wrap .at-service-item {
    grid-template-columns: 1fr;
    padding-top: 24px;
    padding-bottom: 24px;
  }
}
.sec-4-home-8__list-wrap .at-service-item .number {
  font-size: 24px;
  letter-spacing: -0.05em;
}
.sec-4-home-8__list-wrap .at-service-item .content .title {
  font-size: clamp(40px, 4.6vw, 72px);
  line-height: 1.05;
  letter-spacing: -0.05em;
  opacity: 1;
}
.sec-4-home-8__list-wrap .at-service-item .content .text {
  opacity: 1;
  max-height: none;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.02em;
  max-width: 480px;
  color: var(--at-neutral-900);
}
.sec-4-home-8__list-wrap .at-service-item .thumb img {
  border-radius: 0;
  max-width: 190px;
  width: 190px;
  height: 115px;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.35s ease, filter 0.35s ease;
}
.sec-4-home-8__list-wrap .at-service-item:not(.active):not(:hover) .number {
  color: var(--at-neutral-500);
  opacity: 0.3;
}
.sec-4-home-8__list-wrap .at-service-item.active .number, .sec-4-home-8__list-wrap .at-service-item:hover .number {
  color: var(--at-theme-primary);
  opacity: 1;
}
.sec-4-home-8__list-wrap .at-service-item:first-child .thumb img, .sec-4-home-8__list-wrap .at-service-item:first-child:hover .thumb img {
  max-width: 284px;
  width: 284px;
  height: 174px;
}
.sec-4-home-8__list-wrap .at-service-item:not(:first-child):hover .thumb img {
  max-width: 190px;
  width: 190px;
  height: 115px;
}
.sec-4-home-8__list-wrap a:hover .at-service-item .thumb {
  overflow: hidden;
}
.sec-4-home-8__list-wrap a:hover .at-service-item .thumb img {
  transform: scale(1.06);
  filter: brightness(1.08);
  will-change: transform, filter;
}

/*------------------------------------------------------------------
  Home 8 — Section 6 (Selected works)
------------------------------------------------------------------*/
.sec-6-home-8 {
  background-color: var(--at-neutral-50);
  padding-top: clamp(70px, 6vw, 110px);
  padding-bottom: clamp(70px, 6vw, 110px);
}
.sec-6-home-8__container {
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-6-home-8__top {
  margin-bottom: clamp(28px, 3.2vw, 60px);
}
.sec-6-home-8__kicker {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
}
.sec-6-home-8__kicker-icon {
  display: inline-flex;
  color: var(--at-neutral-900);
  line-height: 0;
}
.sec-6-home-8__view-all {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.sec-6-home-8__grid {
  display: grid;
  gap: 30px;
  grid-template-columns: 408px 1fr 408px;
  grid-auto-rows: min-content;
  align-items: start;
}
@media (max-width: 1399px) {
  .sec-6-home-8__grid {
    grid-template-columns: 1fr;
  }
}
.sec-6-home-8__card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-decoration: none;
  color: inherit;
  will-change: transform;
}
.sec-6-home-8__card:hover .sec-6-home-8__img img {
  transform: scale(1.06);
  filter: brightness(1.05);
}
.sec-6-home-8__img {
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-200);
}
.sec-6-home-8__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.35s ease, filter 0.35s ease;
}
.sec-6-home-8__meta {
  height: 88px;
  border-radius: 16px;
  background: var(--at-neutral-0);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 45px;
  overflow: hidden;
}
.sec-6-home-8__title {
  font-size: 36px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
.sec-6-home-8__plus {
  display: inline-flex;
  color: var(--at-neutral-900);
  line-height: 0;
}
.sec-6-home-8__card--sm .sec-6-home-8__img {
  height: 320px;
}
.sec-6-home-8__card--md .sec-6-home-8__img {
  height: 350px;
}
.sec-6-home-8__card--lg .sec-6-home-8__img {
  height: 450px;
}
@media (min-width: 1441px) {
  .sec-6-home-8__card--sm .sec-6-home-8__img {
    height: 358px;
  }
  .sec-6-home-8__card--md .sec-6-home-8__img {
    height: 632px;
  }
  .sec-6-home-8__card--lg .sec-6-home-8__img {
    height: 751px;
  }
}
@media (min-width: 1400px) {
  .sec-6-home-8__card--lt {
    grid-column: 1;
    grid-row: 1;
    margin-top: 67px;
  }
  .sec-6-home-8__card--lb {
    grid-column: 1;
    grid-row: 3;
    margin-top: 0;
  }
  .sec-6-home-8__card--ct {
    grid-column: 2;
    grid-row: 1;
  }
  .sec-6-home-8__card--cm {
    grid-column: 2;
    grid-row: 2;
    margin-top: 52px;
  }
  .sec-6-home-8__card--cb {
    grid-column: 2;
    grid-row: 3;
  }
  .sec-6-home-8__card--rt {
    grid-column: 3;
    grid-row: 1;
    margin-top: 260px;
  }
  .sec-6-home-8__card--rb {
    grid-column: 3;
    grid-row: 3;
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .sec-6-home-8__grid {
    gap: 18px;
  }
  .sec-6-home-8__meta {
    padding: 0 18px;
    height: 70px;
  }
  .sec-6-home-8__title {
    font-size: 24px;
  }
}

/*------------------------------------------------------------------
  Home 8 — Section 7 (Image rails with scroll-move-right/left)
------------------------------------------------------------------*/
.sec-7-home-8 {
  background-color: var(--at-neutral-0);
  padding-top: clamp(70px, 6vw, 130px);
  padding-bottom: clamp(70px, 6vw, 130px);
}
.sec-7-home-8__container {
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-7-home-8__title {
  font-size: clamp(36px, 3.75vw, 72px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  max-width: 920px;
}
.sec-7-home-8__cta {
  background: var(--at-neutral-900);
}
.sec-7-home-8__rails {
  margin-top: clamp(28px, 3.2vw, 55px);
  overflow: hidden;
}
.sec-7-home-8__rail {
  padding: 0;
}
.sec-7-home-8__rail .swiper {
  width: 100%;
}
.sec-7-home-8__rail .swiper-slide {
  width: auto;
}
.sec-7-home-8__rail .about-me-slider-thumb {
  overflow: hidden;
  border-radius: 16px;
  background: var(--at-neutral-300);
}
.sec-7-home-8__rail .about-me-slider-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-7-home-8__rail--reverse {
  margin-top: 30px;
  transform: scaleX(-1);
}
.sec-7-home-8__rail--reverse .swiper,
.sec-7-home-8__rail--reverse .swiper-slide,
.sec-7-home-8__rail--reverse .about-me-slider-thumb,
.sec-7-home-8__rail--reverse img {
  transform: scaleX(-1);
}
.sec-7-home-8__about {
  margin-top: clamp(34px, 3.8vw, 72px);
  justify-content: flex-end;
  max-width: 820px;
  margin-left: auto;
}
.sec-7-home-8__mark {
  flex: 0 0 83px;
  width: 83px;
  height: 83px;
  color: var(--at-neutral-900);
}
.sec-7-home-8__desc {
  font-size: 36px;
  font-weight: 500;
  letter-spacing: -0.05em;
  line-height: 1.35;
  color: var(--at-neutral-900);
  max-width: 700px;
}
.sec-7-home-8__desc-muted {
  color: var(--at-neutral-300);
  font-weight: 500;
}
@media (max-width: 1399px) {
  .sec-7-home-8__rail .about-me-slider-thumb {
    height: 420px;
  }
  .sec-7-home-8__rail--reverse .about-me-slider-thumb {
    height: 520px;
  }
  .sec-7-home-8__desc {
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  .sec-7-home-8__rail .about-me-slider-thumb {
    height: 300px;
  }
  .sec-7-home-8__rail--reverse .about-me-slider-thumb {
    height: 360px;
  }
  .sec-7-home-8__mark {
    width: 58px;
    height: 58px;
    flex-basis: 58px;
  }
}

/*------------------------------------------------------------------
  Home 8 — Section 8 (Testimonials)
------------------------------------------------------------------*/
.sec-8-home-8 {
  background: var(--at-neutral-50);
  padding-top: clamp(70px, 6vw, 130px);
  padding-bottom: clamp(70px, 6vw, 130px);
}
.sec-8-home-8__container {
  padding-left: clamp(20px, 5.2vw, 102px);
  padding-right: clamp(20px, 5.2vw, 102px);
}
.sec-8-home-8__kicker {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
  white-space: nowrap;
}
.sec-8-home-8__kicker-icon {
  width: 14px;
  height: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-8-home-8__kicker-icon img {
  width: 100%;
  height: 100%;
  display: block;
}
.sec-8-home-8__trusted {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  white-space: nowrap;
  text-underline-offset: 3px;
}
.sec-8-home-8__stage {
  position: relative;
  min-height: 1150px;
}
.sec-8-home-8__center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -58%);
  text-align: center;
  width: min(595px, 92vw);
}
.sec-8-home-8__asterisk {
  width: 122px;
  height: auto;
  display: block;
  margin: 0 auto 22px;
  transform-origin: 50% 50%;
}
.sec-8-home-8__title {
  font-size: clamp(44px, 4.375vw, 84px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
.sec-8-home-8__group {
  position: absolute;
  width: 408px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sec-8-home-8__namebar {
  height: 88px;
  background: var(--at-neutral-0);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 45px;
  overflow: hidden;
}
.sec-8-home-8__name {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  white-space: nowrap;
}
.sec-8-home-8__plus {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: var(--at-neutral-500);
  flex-shrink: 0;
}
.sec-8-home-8__card {
  height: 450px;
  background: var(--at-neutral-0);
  border-radius: 16px;
  position: relative;
  overflow: hidden;
}
.sec-8-home-8__role {
  position: absolute;
  top: 52px;
  right: 37px;
  text-align: right;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  line-height: 1.2;
}
.sec-8-home-8__role span {
  display: block;
}
.sec-8-home-8__body {
  position: absolute;
  left: 48px;
  top: 117px;
  width: 323px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.sec-8-home-8__avatar {
  width: 65px;
  height: 65px;
  border-radius: 8px;
  border: 4px solid var(--at-neutral-50);
  overflow: hidden;
}
.sec-8-home-8__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-8-home-8__quote {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  line-height: 1.4;
}
.sec-8-home-8__stars {
  position: absolute;
  left: 48px;
  bottom: 62px;
  display: flex;
  gap: 4px;
}
.sec-8-home-8__stars img {
  width: 18px;
  height: 17px;
  display: block;
}
.sec-8-home-8__group--a {
  left: 0;
  top: 30px;
}
.sec-8-home-8__group--b {
  right: 0;
  top: 324px;
}
.sec-8-home-8__group--c {
  left: 145px;
  top: 827px;
}
.sec-8-home-8__group--d {
  left: 50%;
  top: 1028px;
}
@media (max-width: 1399px) {
  .sec-8-home-8__stage {
    min-height: auto;
  }
  .sec-8-home-8__center {
    position: static;
    transform: none;
    margin: 0 auto 40px;
  }
  .sec-8-home-8__group {
    position: static;
    width: 100%;
    max-width: 560px;
    margin: 0 auto 24px;
  }
  .sec-8-home-8__card {
    height: auto;
    padding: 40px 24px 90px;
  }
  .sec-8-home-8__role {
    position: static;
    text-align: left;
    margin-bottom: 18px;
  }
  .sec-8-home-8__body {
    position: static;
    width: auto;
  }
  .sec-8-home-8__stars {
    left: 24px;
    bottom: 32px;
  }
}

/*------------------------------------------------------------------
  Home 8 — Section 9 (CTA)
------------------------------------------------------------------*/
.sec-9-home-8 {
  position: relative;
  background: var(--at-neutral-900);
  overflow: hidden;
  padding-top: clamp(80px, 7vw, 140px);
  padding-bottom: clamp(80px, 7vw, 140px);
}
.sec-9-home-8__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.sec-9-home-8__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  filter: blur(69px);
  transform: scale(1.08);
  opacity: 0.65;
}
.sec-9-home-8__container {
  position: relative;
  z-index: 1;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-9-home-8__title {
  font-size: clamp(36px, 3.75vw, 72px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0);
  max-width: 660px;
  margin-bottom: 18px;
}
.sec-9-home-8__lead {
  font-size: clamp(16px, 1.15vw, 22px);
  font-weight: 500;
  letter-spacing: -0.05em;
  color: rgba(var(--at-neutral-0-rgb), 0.92);
  max-width: 430px;
  margin-bottom: 38px;
}
.sec-9-home-8__cta {
  display: inline-flex;
  align-items: center;
}
.sec-9-home-8__cta-btn {
  height: 50px;
  display: inline-flex;
  align-items: center;
  padding: 0 27px;
  border-radius: 50px;
  background: var(--at-neutral-0);
  color: var(--at-neutral-900);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-decoration: none;
  transition: transform 0.25s ease, background 0.25s ease;
}
.sec-9-home-8__cta-btn:hover {
  transform: translateY(-2px);
}
.sec-9-home-8__cta-icon {
  width: 50px;
  height: 50px;
  border-radius: 100px;
  background: var(--at-neutral-0);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 0;
  text-decoration: none;
  transition: transform 0.25s ease;
}
.sec-9-home-8__cta-icon:hover {
  transform: translateY(-2px);
}
.sec-9-home-8__cta-icon img {
  width: 24px;
  height: 24px;
  display: block;
}
.sec-9-home-8__card {
  display: block;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-100);
  position: relative;
  height: 457px;
  text-decoration: none;
}
.sec-9-home-8__card-media {
  position: absolute;
  inset: 0;
}
.sec-9-home-8__card-figure {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 610px;
  height: 457px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  pointer-events: none;
}
.sec-9-home-8__card-visors {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  pointer-events: none;
  mix-blend-mode: multiply;
  opacity: 1;
}
.sec-9-home-8__card-overlay {
  position: absolute;
  left: 43px;
  right: 43px;
  bottom: 38px;
  z-index: 2;
  color: #fff;
}
.sec-9-home-8__card-kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.sec-9-home-8__card-kicker img {
  width: 14px;
  height: 13px;
  display: block;
}
.sec-9-home-8__card-text {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.05em;
  max-width: 360px;
  line-height: 1.25;
  color: #fff;
}
@media (max-width: 1199px) {
  .sec-9-home-8__card {
    height: auto;
    min-height: 380px;
  }
}

/*----------------------------------------*/
/*  sec-1-home-9 (Modern Agency Hero)
/*----------------------------------------*/
.sec-1-home-9 {
  position: relative;
  background: var(--at-neutral-900);
  color: var(--at-common-white);
  padding-top: clamp(110px, 9.9vw, 190px);
  padding-bottom: clamp(50px, 4.95vw, 95px);
  overflow: hidden;
}
@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-9 {
    padding-top: 140px;
    padding-bottom: 70px;
  }
}
.sec-1-home-9 .text-theme {
  color: var(--at-theme-primary);
}
.sec-1-home-9__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-1-home-9__row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: clamp(16px, 1.56vw, 30px);
}
@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-9__row {
    flex-wrap: wrap;
    align-items: flex-start;
  }
}
@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-9__row--top {
    gap: 30px;
  }
}
@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-9__row--middle {
    gap: 30px;
    margin-top: 10px;
  }
}
.sec-1-home-9__row--bottom {
  align-items: flex-end;
  margin-top: clamp(60px, 6.15vw, 118px);
}
@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-9__row--bottom {
    margin-top: 50px;
    gap: 40px;
  }
}
.sec-1-home-9__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(52px, 10.3vw, 198px);
  line-height: 0.93;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-common-white);
  margin: 0;
  white-space: nowrap;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-home-9__title {
    font-size: clamp(64px, 13vw, 120px);
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-9__title {
    font-size: clamp(44px, 18vw, 84px);
  }
}
.sec-1-home-9__title--modern {
  flex: 0 0 auto;
}
.sec-1-home-9__title--agency {
  flex: 0 0 auto;
}
@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-9__title--agency {
    order: -1;
  }
}
.sec-1-home-9__intro {
  display: flex;
  align-items: flex-start;
  gap: clamp(8px, 0.78vw, 15px);
  flex: 0 1 auto;
  max-width: clamp(300px, 35vw, 678px);
  padding-bottom: clamp(14px, 1.5vw, 28px);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(13px, 1.25vw, 24px);
  line-height: 1.5;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-common-white);
}
@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-9__intro {
    max-width: 100%;
    font-size: 16px;
    padding-bottom: 0;
    flex-basis: 100%;
  }
}
.sec-1-home-9__intro p {
  margin: 0;
  max-width: 450px;
}
.sec-1-home-9__intro-icon {
  flex: 0 0 auto;
  width: clamp(16px, 1.6vw, 31px);
  line-height: 0;
  margin-top: clamp(4px, 0.4vw, 8px);
  color: var(--at-common-white);
}
.sec-1-home-9__intro-icon svg {
  display: block;
  width: 100%;
  height: auto;
}
.sec-1-home-9__left {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 1.1vw, 21px);
  width: clamp(210px, 16.3vw, 313px);
  padding-bottom: clamp(18px, 2.25vw, 43px);
}
@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-9__left {
    width: 100%;
    max-width: 420px;
    padding-bottom: 0;
    gap: 18px;
  }
}
.sec-1-home-9__kicker {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(14px, 1.25vw, 24px);
  line-height: 1.5;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-common-white);
  margin: 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) {
  .sec-1-home-9__kicker {
    font-size: 20px;
  }
}
.sec-1-home-9__btn.at-btn {
  width: 100%;
  max-width: clamp(200px, 15.9vw, 305px);
  padding: clamp(10px, 0.73vw, 14px) clamp(16px, 1.4vw, 27px);
  justify-content: center;
  gap: 12px;
  background-color: var(--at-neutral-700);
  color: var(--at-neutral-50);
  border-radius: 0;
  font-weight: 500;
  font-size: clamp(12px, 0.83vw, 16px);
  letter-spacing: -0.05em;
  text-transform: uppercase;
  line-height: 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) {
  .sec-1-home-9__btn.at-btn {
    max-width: 260px;
    padding: 14px 22px;
    font-size: 14px;
  }
}
.sec-1-home-9__btn.at-btn:hover {
  background-color: var(--at-theme-primary);
  color: var(--at-common-white);
}
.sec-1-home-9__thumbs {
  display: flex;
  align-items: center;
  gap: clamp(10px, 0.94vw, 18px);
  flex: 0 0 auto;
  padding-bottom: clamp(0px, 0vw, 0px);
}
@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-9__thumbs {
    width: 100%;
    flex-basis: 100%;
    justify-content: flex-start;
    gap: 12px;
  }
}
.sec-1-home-9__thumb {
  width: clamp(86px, 7.55vw, 145px);
  height: clamp(60px, 5.2vw, 100px);
  background: var(--at-common-white);
  border-radius: 4px;
  overflow: hidden;
  flex: 0 0 auto;
}
.sec-1-home-9__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.35s ease;
}
.sec-1-home-9__thumb:hover img {
  transform: scale(1.04);
}
@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-9__thumb {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    height: auto;
    aspect-ratio: 145/100;
  }
}
.sec-1-home-9__divider {
  position: relative;
  width: clamp(360px, 58.6vw, 1124px);
  max-width: 100%;
  margin-top: clamp(14px, 1.5vw, 29px);
  height: 4px;
}
@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-9__divider {
    width: 100%;
    margin-top: 40px;
  }
}
.sec-1-home-9__divider-line {
  position: absolute;
  left: 0;
  right: auto;
  width: 0;
  max-width: 100%;
  height: 1px;
  background: color-mix(in srgb, var(--at-neutral-0) 28%, transparent);
  will-change: width;
}
.sec-1-home-9__divider-line:nth-child(1) {
  top: 0;
}
.sec-1-home-9__divider-line:nth-child(2) {
  top: 4px;
}
@media (prefers-reduced-motion: reduce) {
  .sec-1-home-9__divider-line {
    width: 100%;
    will-change: auto;
  }
}
.sec-1-home-9__partners {
  flex: 0 1 auto;
  max-width: clamp(360px, 41.5vw, 797px);
}
@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-9__partners {
    max-width: 100%;
    flex-basis: 100%;
  }
}
.sec-1-home-9__brands-title {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(10px, 0.83vw, 16px);
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-50);
  text-decoration: underline;
  margin: 0 0 clamp(16px, 1.4vw, 27px);
}
.sec-1-home-9__brands-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(14px, 1.56vw, 30px) clamp(24px, 2.7vw, 52px);
  align-items: center;
}
.sec-1-home-9__brand {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  height: clamp(28px, 2.5vw, 48px);
}
.sec-1-home-9__brand img {
  display: block;
  height: 100%;
  width: auto;
  max-width: none;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 574.98px) {
  .sec-1-home-9__brand {
    height: 26px;
  }
}
.sec-1-home-9__services-wrap {
  flex: 0 1 auto;
  display: flex;
  align-items: flex-start;
  gap: clamp(22px, 2.65vw, 51px);
}
@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-9__services-wrap {
    flex-basis: 100%;
    gap: 28px;
  }
}
.sec-1-home-9__star {
  flex: 0 0 auto;
  width: clamp(48px, 5.16vw, 99px);
  height: clamp(48px, 5.16vw, 99px);
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 574.98px) {
  .sec-1-home-9__star {
    display: none;
  }
}
.sec-1-home-9__services {
  flex: 1 1 auto;
  width: 100%;
  max-width: clamp(280px, 24.1vw, 462px);
}
@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-9__services {
    max-width: 100%;
  }
}

/*----------------------------------------*/
/*  sec-2-home-9 (Home 9 — stats / odometer row)
/*----------------------------------------*/
.sec-2-home-9 {
  position: relative;
  overflow: hidden;
}
.sec-2-home-9__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-2-home-9__stats {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  -moz-column-gap: clamp(16px, 2vw, 32px);
       column-gap: clamp(16px, 2vw, 32px);
  row-gap: clamp(28px, 2.2vw, 32px);
  align-items: start;
  justify-items: start;
  padding-top: clamp(48px, 5.1vw, 98px);
  padding-bottom: clamp(28px, 3.2vw, 62px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-9__stats {
    -moz-column-gap: 20px;
         column-gap: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-2-home-9__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 574.98px) {
  .sec-2-home-9__stats {
    grid-template-columns: 1fr;
  }
}
.sec-2-home-9__stat {
  max-width: 232px;
  width: 100%;
}
@media (max-width: 574.98px) {
  .sec-2-home-9__stat {
    max-width: 100%;
  }
}
.sec-2-home-9__value {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 4.4vw, 84px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  margin-bottom: clamp(20px, 1.9vw, 29px);
}
.sec-2-home-9__value .odometer {
  letter-spacing: -0.05em;
}
.sec-2-home-9__label {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}
.sec-2-home-9__lines {
  width: 100%;
  line-height: 0;
}
.sec-2-home-9__lines img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 1720px;
}

/*----------------------------------------*/
/*  sec-3-home-9 (Home 9 — about + 3 pillars)
/*----------------------------------------*/
.sec-3-home-9 {
  position: relative;
  overflow: hidden;
  padding-top: clamp(60px, 6.5vw, 130px);
  padding-bottom: clamp(60px, 6.5vw, 130px);
}
.sec-3-home-9__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-3-home-9__visual {
  max-width: 699px;
}
.sec-3-home-9__hero-thumb {
  position: relative;
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-100);
  aspect-ratio: 699/415;
}
.sec-3-home-9__hero-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-3-home-9__intro {
  padding-top: 0;
  max-width: 872px;
  margin-left: auto;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-3-home-9__intro {
    padding-top: 0;
  }
}
.sec-3-home-9__eyebrow {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  text-decoration: none;
  margin-bottom: 22px;
  transition: color 0.3s ease;
}
.sec-3-home-9__eyebrow:hover {
  color: var(--at-theme-primary);
}
.sec-3-home-9__eyebrow-icon {
  display: inline-flex;
  line-height: 0;
}
.sec-3-home-9__eyebrow-icon img {
  display: block;
}
.sec-3-home-9__headline {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(32px, 3.35vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  margin-bottom: 22px;
}
.sec-3-home-9__lede {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(16px, 1.05vw, 20px);
  line-height: 1.5;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
.sec-3-home-9__features {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-top: 42px;
  max-width: 872px;
}
.sec-3-home-9__feature {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
}
@media (max-width: 574.98px) {
  .sec-3-home-9__feature {
    flex-direction: column;
    align-items: flex-start;
  }
}
.sec-3-home-9__feature-thumb {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  max-width: 348px;
  height: 139px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--at-neutral-100);
}
@media (max-width: 574.98px) {
  .sec-3-home-9__feature-thumb {
    max-width: 100%;
  }
}
.sec-3-home-9__feature-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-3-home-9__feature-text {
  flex: 1 1 0;
  min-width: 0;
  max-width: 448px;
}
.sec-3-home-9__feature-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(24px, 1.9vw, 36px);
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  margin-bottom: 16px;
}
.sec-3-home-9__feature-desc {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
}

/*----------------------------------------*/
/*  sec-4-home-9 (Home 9 — Selected work)
/*----------------------------------------*/
.sec-4-home-9 {
  position: relative;
  padding-top: clamp(48px, 4.2vw, 80px);
  padding-bottom: clamp(60px, 6.5vw, 130px);
  border-top: 1px solid var(--at-neutral-200, #cdcccc);
}
.sec-4-home-9__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-4-home-9__title {
  margin: 0 auto clamp(28px, 3vw, 48px);
  max-width: 100%;
  font-family: var(--at-ff-heading);
  font-weight: 800;
  font-size: clamp(52px, 10.3vw, 198px);
  line-height: 0.95;
  letter-spacing: -0.07em;
  text-align: center;
  text-transform: uppercase;
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-4-home-9__filters {
  margin-bottom: clamp(36px, 3.6vw, 72px);
}
.sec-4-home-9__filters .at-btn.filter-btn {
  padding: 12px 24px;
  font-size: 16px;
  letter-spacing: -0.05em;
}
.sec-4-home-9__grid {
  --sec4-gap: clamp(20px, 1.56vw, 30px);
  display: grid;
  gap: var(--sec4-gap);
  grid-template-columns: 1fr;
}
@media (min-width: 992px) {
  .sec-4-home-9__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }
}
.sec-4-home-9__col {
  display: flex;
  flex-direction: column;
  gap: var(--sec4-gap);
  min-width: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-4-home-9__col--offset {
    margin-top: -20px;
  }
}
.sec-4-home-9__card {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sec-4-home-9__visual {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-0, #fefefe);
  aspect-ratio: 845/542;
}
.sec-4-home-9__visual-link {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
.sec-4-home-9__visual-link img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-4-home-9__badge {
  position: absolute;
  top: clamp(16px, 1.2vw, 23px);
  right: clamp(16px, 1.2vw, 23px);
  z-index: 2;
  padding: 8px 10px;
  border-radius: 20px;
  background: var(--at-theme-primary, #0a0a0a);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 10px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-0, #fefefe);
  pointer-events: none;
}
.sec-4-home-9__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  min-height: 49.5%;
  padding: clamp(28px, 2.8vw, 45px) clamp(24px, 2.8vw, 53px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  gap: clamp(14px, 1.15vw, 22px);
  background: linear-gradient(180deg, rgba(26, 26, 26, 0) 11.9%, rgba(26, 26, 26, 0.76) 100%);
  pointer-events: none;
}
.sec-4-home-9__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10.5px 19px;
  border-radius: 32px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-0, #fefefe);
}
.sec-4-home-9__metric {
  margin: 0;
  max-width: 100%;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(28px, 2.5vw, 48px);
  line-height: 1.08;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-4-home-9__excerpt {
  margin: 0;
  max-width: min(473px, 100%);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(16px, 1.05vw, 20px);
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-4-home-9__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 88px;
  padding: 16px clamp(24px, 2.35vw, 45px);
  border-radius: 16px;
  background: var(--at-neutral-0, #fefefe);
}
.sec-4-home-9__project {
  margin: 0;
  flex: 1;
  min-width: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(22px, 1.9vw, 36px);
  line-height: 1.1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-4-home-9__case {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--at-neutral-900, #1d1d1d);
  transition: color 0.25s ease;
}
.sec-4-home-9__case img {
  display: block;
  width: 12px;
  height: auto;
}
.sec-4-home-9__case:hover {
  color: var(--at-theme-primary);
}
.sec-4-home-9__cta {
  margin-top: clamp(40px, 4vw, 72px);
  margin-left: auto;
  max-width: 627px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(20px, 1.56vw, 30px);
}
.sec-4-home-9__cta-text {
  margin: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(22px, 1.9vw, 36px);
  line-height: 1.25;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-4-home-9__cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 50px;
  padding: 14px 27px;
  border-radius: 50px;
  border: none;
  background: #1d1d1d;
  color: #fefefe !important;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  text-transform: none;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease;
}
.sec-4-home-9__cta-btn img {
  display: block;
  flex-shrink: 0;
}
.sec-4-home-9__cta-btn:hover {
  background: var(--at-theme-primary);
  color: var(--at-neutral-0) !important;
}

/*----------------------------------------*/
/*  sec-5-home-9 (Home 9 — Marquee / contact)
/*----------------------------------------*/
.sec-5-home-9 {
  --sec5-text: var(--at-neutral-0, #fefefe);
  position: relative;
  min-height: clamp(520px, 78vh, 920px);
  padding-top: clamp(72px, 8.2vw, 158px);
  padding-bottom: clamp(56px, 6vw, 120px);
  background: var(--at-neutral-200, #cdcccc);
}
[data-bs-theme=dark] .sec-5-home-9 {
  --sec5-text: var(--at-neutral-950, #f4f4f4);
}
.sec-5-home-9__bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}
.sec-5-home-9__bg-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  /* Source asset is 1024×512; avoid extra CSS scale — export @2x for retina. */
}
.sec-5-home-9__container {
  position: relative;
  z-index: 1;
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
  mix-blend-mode: difference;
}
.sec-5-home-9__meta {
  margin-bottom: clamp(32px, 4vw, 72px);
}
.sec-5-home-9__block {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 1.25vw, 24px);
}
.sec-5-home-9__label {
  margin: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--sec5-text);
  opacity: 0.5;
}
.sec-5-home-9__value {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(18px, 1.25vw, 24px);
  line-height: 1.35;
  letter-spacing: -0.05em;
  color: var(--sec5-text);
  /* Global `p {}` uses --at-neutral-500; override for stacked contact lines */
}
.sec-5-home-9__value p {
  margin-bottom: 0;
  color: inherit;
}
.sec-5-home-9__value--stack {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.sec-5-home-9__mailto {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.25s ease;
}
.sec-5-home-9__mailto:hover {
  opacity: 0.85;
}
.sec-5-home-9__marquee-shell {
  overflow-x: hidden;
  overflow-y: visible;
  width: 100%;
  margin-bottom: clamp(28px, 3vw, 48px);
  position: relative;
  z-index: 2;
  min-height: clamp(4.5rem, 15vw, 14rem);
  padding-block: clamp(0.25rem, 0.6vw, 0.75rem);
}
.sec-5-home-9 {
  /* Blend on wrapper only — children must not create separate blend layers with GSAP/CSS transform conflicts */
}
.sec-5-home-9__marquee {
  mix-blend-mode: difference;
  color: var(--at-neutral-0, #fefefe);
}
.sec-5-home-9__marquee .at-marquee__track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  will-change: transform;
  animation: sec5-home-9-marquee 55s linear infinite;
}
.sec-5-home-9__marquee .at-marquee__group {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  white-space: nowrap;
}
.sec-5-home-9__marquee-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(42px, 10.3vw, 198px);
  line-height: 1.05;
  letter-spacing: -0.05em;
  color: inherit;
  -webkit-font-smoothing: antialiased;
}
.sec-5-home-9__marquee-sep {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(42px, 10.3vw, 198px);
  line-height: 1.05;
  letter-spacing: -0.05em;
  opacity: 0.85;
  color: inherit;
  -webkit-font-smoothing: antialiased;
}
.sec-5-home-9__cta-wrap {
  display: flex;
  justify-content: center;
}
.sec-5-home-9__cta {
  display: inline-flex;
  align-items: center;
  height: 50px;
  padding: 0 5px 0 27px;
  border-radius: 50px;
  background: var(--at-theme-primary);
  text-decoration: none;
  color: var(--at-neutral-0, #fefefe) !important;
  gap: 10px;
  transition: filter 0.25s ease;
}
.sec-5-home-9__cta:hover {
  filter: brightness(1.05);
  color: var(--at-neutral-0, #fefefe) !important;
}
.sec-5-home-9__cta-label {
  display: inline-flex;
  align-items: center;
  padding: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
}
.sec-5-home-9__cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
.sec-5-home-9__cta-icon img {
  display: block;
  width: 24px;
  height: 24px;
}

@keyframes sec5-home-9-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .sec-5-home-9__marquee .sec-5-home-9__marquee-track {
    animation: none;
    transform: none;
  }
}
/*----------------------------------------*/
/*  sec-6-home-9 (Home 9 — Meet our team)
/*----------------------------------------*/
.sec-6-home-9 {
  position: relative;
  padding-top: clamp(56px, 6vw, 120px);
  padding-bottom: clamp(64px, 7vw, 160px);
}
.sec-6-home-9__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-6-home-9__header {
  text-align: center;
  max-width: 1100px;
  margin: 0 auto clamp(40px, 5vw, 88px);
}
.sec-6-home-9__tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: clamp(20px, 2.5vw, 38px);
}
.sec-6-home-9__tag-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-9__title {
  margin: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(48px, 8.6vw, 124px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-6-home-9__title-accent {
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-6-home-9__body {
  position: relative;
}
.sec-6-home-9__list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 1718px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .sec-6-home-9__card {
    cursor: pointer;
  }
}
.sec-6-home-9__card {
  display: grid;
  gap: clamp(16px, 2vw, 24px);
  align-items: center;
  padding: clamp(16px, 2vw, 20px) clamp(20px, 3vw, 42px);
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  background: var(--at-neutral-0, #fefefe);
  border-radius: 0;
  transition: all 0.3s ease;
}
@media (min-width: 992px) {
  .sec-6-home-9__card {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.95fr) minmax(0, 1.1fr);
    gap: clamp(20px, 2vw, 32px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .sec-6-home-9__card:hover {
    border-radius: 24px;
    padding: clamp(16px, 2vw, 20px) clamp(30px, 5vw, 52px);
    transition: all 0.3s ease;
  }
}
.sec-6-home-9__card--accent {
  border-color: var(--at-neutral-200, #cdcccc);
}
.sec-6-home-9__quote {
  margin: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.35;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-800, #212121);
}
.sec-6-home-9__person {
  display: flex;
  align-items: center;
  gap: 16px;
}
.sec-6-home-9__avatar {
  flex-shrink: 0;
  width: 68px;
  height: 68px;
  border-radius: 100px;
  overflow: hidden;
  background: var(--at-neutral-100, #dfdfdf);
}
.sec-6-home-9__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-6-home-9__meta {
  min-width: 0;
}
.sec-6-home-9__name {
  margin: 0 0 4px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(26px, 2.5vw, 36px);
  line-height: 1.1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-9__role {
  margin: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-500, #585959);
}
.sec-6-home-9__skills {
  margin: 0;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.35;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-800, #212121);
}
@media (min-width: 992px) {
  .sec-6-home-9__skills {
    text-align: right;
    justify-self: end;
  }
}
.sec-6-home-9__footer {
  display: grid;
  gap: clamp(32px, 4vw, 48px);
  max-width: 1100px;
  margin: clamp(48px, 6vw, 100px) auto 0;
}
@media (min-width: 768px) {
  .sec-6-home-9__footer {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
}
.sec-6-home-9__footer-primary {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}
.sec-6-home-9__footer-icon {
  flex-shrink: 0;
}
.sec-6-home-9__footer-icon img {
  display: block;
  width: 40px;
  height: auto;
}
.sec-6-home-9__footer-heading {
  margin: 0 0 18px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-9__footer-lines {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500, #585959);
}
.sec-6-home-9__footer-lines p {
  margin: 0 0 0.35em;
  color: inherit;
}
.sec-6-home-9__footer-lines p:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .sec-6-home-9__footer-secondary {
    margin-top: 44px;
  }
}
.sec-6-home-9__footer-link {
  color: var(--at-neutral-900, #1d1d1d);
  text-decoration: none;
  transition: color 0.2s ease;
}
.sec-6-home-9__footer-link:hover {
  color: var(--at-theme-primary);
}

/*----------------------------------------*/
/*  sec-7-home-9 (Home 9 — Collective)
/*----------------------------------------*/
.sec-7-home-9 {
  position: relative;
  padding-top: clamp(56px, 7vw, 148px);
  padding-bottom: clamp(64px, 8vw, 120px);
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
}
.sec-7-home-9__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 105px);
  padding-right: clamp(20px, 5.2vw, 105px);
}
.sec-7-home-9__lead {
  margin: 0 0 clamp(40px, 5vw, 72px);
  max-width: 1194px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(28px, 4.2vw, 48px);
  line-height: 1.08;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-7-home-9__main {
  align-items: flex-start;
}
.sec-7-home-9__visual {
  position: relative;
  width: 100%;
  max-width: 714px;
  aspect-ratio: 714/438;
  overflow: hidden;
  background: var(--at-neutral-0, #fefefe);
}
.sec-7-home-9__visual-base {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  z-index: 1;
}
.sec-7-home-9__visual-layer {
  position: absolute;
  z-index: 2;
  left: -7%;
  top: -12%;
  width: 128%;
  height: 139%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  opacity: 0.88;
  pointer-events: none;
}
.sec-7-home-9__aside {
  position: relative;
  padding-top: clamp(8px, 1.5vw, 24px);
}
.sec-7-home-9__deco {
  display: none;
  position: absolute;
  right: clamp(-20px, -2vw, 0px);
  top: clamp(-40px, -3vw, -20px);
  width: 99px;
  height: 99px;
  pointer-events: none;
  opacity: 0.45;
}
.sec-7-home-9__deco img {
  display: block;
  width: 100%;
  height: auto;
  transform-origin: center center;
  animation: sec-7-home-9-deco-spin 14s linear infinite;
}
@media (min-width: 992px) {
  .sec-7-home-9__deco {
    display: block;
  }
}
.sec-7-home-9__quote {
  margin: 0 0 clamp(28px, 3.5vw, 40px);
  padding: 0;
  border: none;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(17px, 1.56vw, 20px);
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-7-home-9__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  max-width: 534px;
}
.sec-7-home-9__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 15px 19px;
  border-radius: 32px;
  text-decoration: none;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0, #fefefe);
  border: 1px solid color-mix(in srgb, var(--at-neutral-0, #fefefe) 30%, transparent);
  background: color-mix(in srgb, var(--at-neutral-700, #303030) 35%, transparent);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.sec-7-home-9__tag img {
  display: block;
  flex-shrink: 0;
  width: 9px;
  height: 9px;
}
.sec-7-home-9__tag:hover {
  color: var(--at-neutral-0, #fefefe);
  border-color: color-mix(in srgb, var(--at-neutral-0, #fefefe) 55%, transparent);
  background: color-mix(in srgb, var(--at-neutral-700, #303030) 55%, transparent);
  transform: translateY(-2px);
}

@keyframes sec-7-home-9-deco-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .sec-7-home-9__deco img {
    animation: none;
  }
}
.home-9-testimonial-area {
  overflow: hidden;
}
.home-9-testimonial-area .testimonial-9-title-wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 50px;
}
@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) {
  .home-9-testimonial-area .testimonial-9-title-wrap {
    margin-bottom: 60px;
  }
}
.home-9-testimonial-area .testimonial-9-card {
  display: flex;
  gap: 75px;
  align-items: flex-start;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .home-9-testimonial-area .testimonial-9-card {
    gap: 50px;
  }
}
@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) {
  .home-9-testimonial-area .testimonial-9-card {
    flex-direction: column;
    gap: 30px;
  }
}
.home-9-testimonial-area .testimonial-9-card .testimonial-img {
  width: 192px;
  height: 192px;
  position: relative;
  background: var(--at-neutral-100);
  overflow: hidden;
  flex-shrink: 0;
}
.home-9-testimonial-area .testimonial-9-card .testimonial-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home-9-testimonial-area .testimonial-9-card .testimonial-content {
  max-width: 803px;
}
.home-9-testimonial-area .testimonial-9-card .testimonial-content .testimonial-quote {
  font-family: var(--at-ff-heading);
  font-size: 48px;
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -2.4px;
  color: var(--at-neutral-950);
  margin-bottom: 37px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .home-9-testimonial-area .testimonial-9-card .testimonial-content .testimonial-quote {
    font-size: var(--at-fz-font-3xl);
    letter-spacing: -1.5px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .home-9-testimonial-area .testimonial-9-card .testimonial-content .testimonial-quote {
    font-size: var(--at-fz-font-2xl);
    letter-spacing: -1px;
  }
}
.home-9-testimonial-area .testimonial-9-card .testimonial-content .author-logo {
  height: 25px;
  margin-bottom: 12px;
}
.home-9-testimonial-area .testimonial-9-card .testimonial-content .author-logo img {
  height: 100%;
  width: auto;
}
.home-9-testimonial-area .testimonial-9-card .testimonial-content .author-name {
  font-size: 24px;
  letter-spacing: -1.2px;
  margin-bottom: 4px;
}
.home-9-testimonial-area .testimonial-9-card .testimonial-content .author-position {
  font-size: var(--at-fz-font-md);
  letter-spacing: -0.32px;
}

@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) {
  .home-9-contact-area .contact-title {
    font-size: var(--at-fz-font-3xl) !important;
    letter-spacing: -1.5px !important;
    line-height: 1.2 !important;
  }
}
.home-9-contact-area .home-9-contact-btn {
  transition: all 0.3s ease;
}
.home-9-contact-area .home-9-contact-btn:hover {
  transform: translateY(-3px);
}
.home-9-contact-area .home-9-contact-btn:hover .btn-icon {
  background-color: var(--at-common-white) !important;
}
.home-9-contact-area .home-9-contact-btn:hover .btn-icon img {
  filter: invert(1);
}
.home-9-contact-area .home-9-contact-btn .btn-text {
  background-color: var(--at-theme-primary);
  transition: all 0.3s ease;
}
.home-9-contact-area .home-9-contact-btn .btn-icon {
  background-color: var(--at-theme-primary);
  transition: all 0.3s ease;
}
.home-9-contact-area .moving-gallery-wrap .moving-gallery ul.wrapper-gallery {
  display: flex;
  align-items: flex-end;
}
.home-9-contact-area .moving-gallery-wrap .moving-gallery ul.wrapper-gallery li {
  margin: 0 15px;
}
.home-9-contact-area .moving-gallery-wrap .moving-gallery ul.wrapper-gallery li img {
  height: auto;
}

/*----------------------------------------*/
/*  Home 10 — placeholder section spacing
/*----------------------------------------*/
.home-10-sec {
  padding-top: clamp(72px, 10vw, 120px);
  padding-bottom: clamp(72px, 10vw, 120px);
}
.home-10-sec__label {
  font-family: var(--at-ff-body);
  font-size: clamp(16px, 1.2vw, 18px);
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-600, #6b6b6b);
}
.home-10-sec--alt {
  background: var(--at-neutral-50, #f2f2f2);
}

/*------------------------------------------------------------------
  Home 10 — Section 1: Creative 3D Studio Hero
------------------------------------------------------------------*/
@keyframes h10-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
.sec-1-home-10 {
  position: relative;
  background-color: var(--at-neutral-0);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.sec-1-home-10__cursor-trail {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
}
.sec-1-home-10__cursor-trail-img {
  position: absolute;
  width: auto;
  height: auto;
  max-width: clamp(110px, 10vw, 180px);
  max-height: clamp(110px, 10vw, 180px);
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 6px;
  transform-origin: center;
  pointer-events: none;
  will-change: transform;
  filter: saturate(1.02) contrast(1.02);
  opacity: 0.95;
}
.sec-1-home-10__bg-lines {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.04;
}
.sec-1-home-10__bg-lines img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-1-home-10__headline-wrap {
  position: relative;
  z-index: 1;
  padding-top: clamp(120px, 14vw, 250px);
  padding-bottom: clamp(32px, 3.5vw, 56px);
}
.sec-1-home-10__headline-track {
  display: flex;
  white-space: nowrap;
  animation: h10-marquee 24s linear infinite;
}
.sec-1-home-10__big-title {
  font-size: clamp(56px, 13.75vw, 198px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-950);
  white-space: nowrap;
  display: inline-block;
  flex-shrink: 0;
  margin-bottom: 0;
}
.sec-1-home-10__mid {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 0 clamp(20px, 6.7vw, 96px);
  gap: clamp(20px, 2vw, 32px);
  flex: 1;
}
.sec-1-home-10__left {
  flex: 0 0 auto;
  max-width: clamp(280px, 38.6vw, 555px);
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 1.5vw, 22px);
}
.sec-1-home-10__desc {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  margin-bottom: 0;
}
.sec-1-home-10__btns {
  display: flex;
  align-items: center;
  gap: clamp(20px, 2.4vw, 34px);
  flex-wrap: wrap;
}
.sec-1-home-10__btn-launch {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.sec-1-home-10__btn-launch:hover .sec-1-home-10__btn-label, .sec-1-home-10__btn-launch:hover .sec-1-home-10__btn-circle {
  background-color: var(--at-neutral-700);
}
.sec-1-home-10__btn-label {
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  height: 50px;
  padding: 0 clamp(18px, 1.88vw, 27px);
  border-radius: 50px;
  font-size: clamp(14px, 1.11vw, 16px);
  font-weight: 500;
  letter-spacing: -0.05em;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  transition: background-color 0.3s ease;
}
.sec-1-home-10__btn-circle {
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-left: 4px;
  transition: background-color 0.3s ease;
}
.sec-1-home-10__btn-circle svg {
  width: 20px;
  height: 20px;
}
.sec-1-home-10__btn-cases {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  border-bottom: 1px solid var(--at-neutral-900);
  padding-bottom: 8px;
  color: var(--at-neutral-900);
  font-size: clamp(14px, 1.11vw, 16px);
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color 0.3s ease, border-color 0.3s ease;
}
.sec-1-home-10__btn-cases:hover {
  color: var(--at-theme-primary);
  border-color: var(--at-theme-primary);
}
.sec-1-home-10__location {
  display: none;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  align-self: flex-start;
}
@media (min-width: 1441px) {
  .sec-1-home-10__location {
    display: flex;
  }
}
.sec-1-home-10__globe {
  color: var(--at-neutral-950);
  flex-shrink: 0;
  width: clamp(20px, 1.88vw, 27px);
  height: auto;
}
.sec-1-home-10__coords {
  font-size: clamp(16px, 1.67vw, 24px);
  font-weight: 500;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-950);
  white-space: nowrap;
}
.sec-1-home-10__right {
  display: flex;
  align-items: flex-end;
  gap: clamp(16px, 1.8vw, 26px);
  flex-shrink: 0;
}
.sec-1-home-10__glass-card {
  background: rgba(181, 181, 181, 0.3);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  border-radius: 14px;
  width: clamp(220px, 20.3vw, 292px);
  height: clamp(200px, 17.5vw, 252px);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
}
.sec-1-home-10__glass-img {
  background-color: var(--at-neutral-950);
  border-radius: 8px;
  overflow: hidden;
  margin: 11px auto 0;
  width: calc(100% - 22px);
  flex: 1;
}
.sec-1-home-10__glass-img img,
.sec-1-home-10__glass-img video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-1-home-10__glass-footer {
  padding: 12px 16px 16px;
}
.sec-1-home-10__glass-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: var(--at-neutral-950);
  font-size: clamp(14px, 1.11vw, 16px);
  font-weight: 500;
  letter-spacing: -0.05em;
  white-space: nowrap;
  transition: color 0.3s ease;
}
.sec-1-home-10__glass-link:hover {
  color: var(--at-theme-primary);
}
.sec-1-home-10__info-card {
  display: flex;
  flex-direction: column;
  gap: 15px;
  max-width: clamp(180px, 16vw, 230px);
  align-self: flex-end;
  padding-bottom: 19px;
  flex-shrink: 0;
}
.sec-1-home-10__info-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
}
.sec-1-home-10__info-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.sec-1-home-10__info-text {
  font-size: clamp(13px, 1.11vw, 16px);
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  margin-bottom: 0;
}
.sec-1-home-10__terms {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(40px, 5vw, 80px) clamp(20px, 6.7vw, 96px) clamp(24px, 2.5vw, 40px);
}
.sec-1-home-10__terms span {
  font-size: clamp(13px, 1.11vw, 16px);
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  white-space: nowrap;
}
@media (max-width: 1399px) {
  .sec-1-home-10__right {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .sec-1-home-10__glass-card {
    width: 100%;
    max-width: 280px;
  }
  .sec-1-home-10__info-card {
    max-width: 280px;
    padding-bottom: 0;
  }
}
@media (max-width: 1199px) {
  .sec-1-home-10__mid {
    flex-wrap: wrap;
    gap: 32px;
  }
  .sec-1-home-10__location {
    order: -1;
    width: 100%;
  }
  .sec-1-home-10__right {
    flex-direction: row;
    align-items: flex-end;
    width: 100%;
  }
  .sec-1-home-10__glass-card {
    width: 260px;
    max-width: 260px;
  }
  .sec-1-home-10__info-card {
    flex: 1;
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .sec-1-home-10 {
    min-height: auto;
  }
  .sec-1-home-10__mid {
    flex-direction: column;
    gap: 24px;
  }
  .sec-1-home-10__left {
    max-width: 100%;
  }
  .sec-1-home-10__location {
    flex-wrap: wrap;
  }
  .sec-1-home-10__coords {
    font-size: 16px;
  }
  .sec-1-home-10__right {
    flex-direction: column;
    width: 100%;
  }
  .sec-1-home-10__glass-card {
    width: 100%;
    max-width: 100%;
    height: 200px;
  }
  .sec-1-home-10__info-card {
    max-width: 100%;
    padding-bottom: 0;
  }
  .sec-1-home-10__terms {
    flex-wrap: wrap;
    gap: 10px 20px;
    justify-content: flex-start;
  }
}

/*----------------------------------------*/
/*  sec-2-home-10 (Home 10 — Panoramic scene)
/*----------------------------------------*/
.sec-2-home-10 {
  position: relative;
  background: transparent;
  height: 500px;
}
@media (min-width: 1441px) {
  .sec-2-home-10 {
    height: 750px;
  }
}
.sec-2-home-10__img {
  width: 100%;
}

/*----------------------------------------*/
/*  sec-3-home-10 (Home 10 — Selected projects / masonry)
/*----------------------------------------*/
.sec-3-home-10 {
  position: relative;
  padding-top: clamp(56px, 7vw, 120px);
  padding-bottom: clamp(64px, 9vw, 140px);
  background: var(--at-neutral-0);
}
.sec-3-home-10__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-3-home-10__header {
  margin-bottom: clamp(40px, 6vw, 80px) !important;
}
.sec-3-home-10__eyebrow-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
.sec-3-home-10__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(36px, 5.5vw, 72px);
  line-height: 1.05;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-950);
  text-wrap: balance;
}
.sec-3-home-10__intro {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(18px, 1.5vw, 22px);
  line-height: 1.45;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
.sec-3-home-10__intro strong {
  font-weight: 700;
  color: var(--at-neutral-950);
}
.sec-3-home-10__grid {
  display: grid;
  gap: clamp(28px, 4vw, 40px);
}
@media (min-width: 992px) {
  .sec-3-home-10__grid {
    grid-template-columns: minmax(0, 0.372fr) minmax(0, 0.628fr);
    align-items: start;
  }
}
.sec-3-home-10__card {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 2.2vw, 28px);
}
@media (min-width: 992px) {
  .sec-3-home-10__card--pos1 {
    grid-column: 1;
    grid-row: 1;
  }
  .sec-3-home-10__card--pos2 {
    grid-column: 2;
    grid-row: 1;
  }
  .sec-3-home-10__card--pos3 {
    grid-column: 1;
    grid-row: 2;
  }
  .sec-3-home-10__card--pos4 {
    grid-column: 2;
    grid-row: 2;
  }
  .sec-3-home-10__card--pos5 {
    grid-column: 2;
    grid-row: 3;
  }
}
.sec-3-home-10__media {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  background: transparent;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-3-home-10__media:hover {
  opacity: 0.92;
}
.sec-3-home-10__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-3-home-10__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 380px;
}
.sec-3-home-10__name {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(20px, 1.8vw, 24px);
  line-height: 1.2;
  letter-spacing: -0.05em;
  text-transform: uppercase;
}
.sec-3-home-10__name a {
  color: var(--at-neutral-900);
  text-decoration: none;
  transition: color 0.25s ease;
}
.sec-3-home-10__name a:hover {
  color: var(--at-theme-primary);
}
.sec-3-home-10__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 19px;
  border-radius: 32px;
  border: 1px solid var(--at-neutral-100);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
}

/*----------------------------------------*/
/*  sec-4-home-10 (Home 10 — Our services)
/*----------------------------------------*/
.sec-4-home-10 {
  position: relative;
  padding-top: clamp(56px, 7vw, 120px);
  padding-bottom: clamp(64px, 9vw, 140px);
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
}
.sec-4-home-10__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-4-home-10__stage {
  display: flex;
  flex-direction: column;
  gap: clamp(32px, 4vw, 48px);
}
@media (min-width: 992px) {
  .sec-4-home-10__stage {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 0.82fr) minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: clamp(20px, 2vw, 32px);
    align-items: start;
  }
}
.sec-4-home-10__title-block {
  text-align: center;
}
@media (min-width: 992px) {
  .sec-4-home-10__title-block {
    grid-column: 2;
    grid-row: 1/span 2;
    align-self: center;
    justify-self: center;
    z-index: 1;
    max-width: min(520px, 100%);
    padding: clamp(12px, 2vw, 28px) 0;
    pointer-events: none;
  }
  .sec-4-home-10__title-block .sec-4-home-10__eyebrow,
  .sec-4-home-10__title-block .sec-4-home-10__title {
    pointer-events: auto;
  }
}
.sec-4-home-10__eyebrow-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-4-home-10__eyebrow-arrow {
  flex-shrink: 0;
  color: var(--at-neutral-0, #fefefe);
}
.sec-4-home-10__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(28px, 3.6vw, 56px);
  line-height: 1.08;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-0, #fefefe);
  text-wrap: balance;
}
.sec-4-home-10__card {
  position: relative;
  z-index: 2;
  min-width: 0;
  width: 100%;
}
@media (min-width: 992px) {
  .sec-4-home-10__card--pos1 {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    max-width: 550px;
  }
  .sec-4-home-10__card--pos2 {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    max-width: 410px;
  }
  .sec-4-home-10__card--pos3 {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    max-width: 410px;
  }
  .sec-4-home-10__card--pos4 {
    grid-column: 3;
    grid-row: 2;
    justify-self: end;
    max-width: 560px;
  }
}
.sec-4-home-10__card-inner {
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 100%;
}
.sec-4-home-10__visual {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-800, #2a2a2a);
}
@media (max-width: 991.98px) {
  .sec-4-home-10__visual {
    aspect-ratio: 16/10;
  }
}
.sec-4-home-10__visual-link {
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-4-home-10__visual-link:hover {
  opacity: 0.94;
}
.sec-4-home-10__visual-link img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-4-home-10__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  min-height: 46%;
  padding: clamp(22px, 2.4vw, 40px) clamp(20px, 2.4vw, 44px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: linear-gradient(180deg, rgba(26, 26, 26, 0) 8%, rgba(26, 26, 26, 0.78) 100%);
  pointer-events: none;
}
.sec-4-home-10__excerpt {
  max-width: min(420px, 100%);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(15px, 1.05vw, 18px);
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-4-home-10__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 88px;
  padding: 16px clamp(20px, 2.2vw, 40px);
  border-radius: 16px;
  background: var(--at-neutral-0, #fefefe);
}
.sec-4-home-10__service-name {
  flex: 1;
  min-width: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(20px, 1.75vw, 32px);
  line-height: 1.1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-4-home-10__expand {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid var(--at-neutral-200, #e0e0e0);
  border-radius: 50%;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.25s ease, background 0.25s ease;
}
.sec-4-home-10__expand:hover {
  border-color: var(--at-neutral-900, #1d1d1d);
  background: var(--at-neutral-50, #f7f7f7);
}
.sec-4-home-10__expand-icon {
  position: relative;
  width: 14px;
  height: 14px;
  display: block;
}
.sec-4-home-10__expand-icon::before, .sec-4-home-10__expand-icon::after {
  content: "";
  position: absolute;
  background: var(--at-neutral-900, #1d1d1d);
  border-radius: 1px;
}
.sec-4-home-10__expand-icon::before {
  left: 0;
  right: 0;
  top: 50%;
  height: 2px;
  transform: translateY(-50%);
}
.sec-4-home-10__expand-icon::after {
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  transform: translateX(-50%);
}

/*----------------------------------------*/
/*  sec-5-home-10 (Home 10 — About + metrics)
/*----------------------------------------*/
.sec-5-home-10 {
  position: relative;
  padding-top: clamp(48px, 6vw, 100px);
  padding-bottom: clamp(56px, 8vw, 140px);
  background: var(--at-neutral-50, #f2f2f2);
}
.sec-5-home-10__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-5-home-10__intro-row {
  margin-bottom: clamp(40px, 6vw, 88px);
  position: relative;
  z-index: 3;
}
.sec-5-home-10__eyebrow-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-5-home-10__eyebrow {
  transition: opacity 0.25s ease;
}
.sec-5-home-10__eyebrow:hover {
  opacity: 0.75;
}
.sec-5-home-10__title {
  max-width: 1250px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(28px, 3.4vw, 48px);
  line-height: 1.15;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-950, #0f0f0f);
  text-wrap: balance;
}
.sec-5-home-10__cta {
  height: 50px;
  padding: 14px 27px;
  border-radius: 50px;
  background: var(--at-neutral-900, #1d1d1d);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe) !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background 0.25s ease, color 0.25s ease;
}
.sec-5-home-10__cta:hover {
  background: var(--at-theme-primary);
  color: var(--at-neutral-0) !important;
}
.sec-5-home-10__cta-arrow {
  flex-shrink: 0;
  color: currentColor;
}
.sec-5-home-10__figure {
  position: relative;
  z-index: 1;
  margin-bottom: clamp(48px, 7vw, 120px);
  max-width: min(480px, 72vw);
  width: 100%;
}
.sec-5-home-10__figure-img {
  display: block;
  width: 100%;
  height: auto;
}
.sec-5-home-10__stats {
  position: relative;
  z-index: 1;
  align-items: flex-start;
}
.sec-5-home-10__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 370px;
}
@media (min-width: 768px) {
  .sec-5-home-10__stat--1 {
    align-items: flex-start;
    text-align: left;
    margin-right: auto;
  }
  .sec-5-home-10__stat--2 {
    margin-left: auto;
    margin-right: auto;
    margin-top: clamp(48px, 9vw, 160px);
  }
  .sec-5-home-10__stat--3 {
    align-items: flex-end;
    text-align: right;
    margin-left: auto;
    margin-top: clamp(96px, 16vw, 280px);
  }
}
.sec-5-home-10__stat-value {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(64px, 10vw, 124px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-5-home-10__stat-label {
  margin-top: clamp(8px, 1.2vw, 16px);
  max-width: 284px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(18px, 1.6vw, 24px);
  line-height: 1.25;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}

/*----------------------------------------*/
/*  sec-6-home-10 (Home 10 — Meet the team)
/*----------------------------------------*/
.sec-6-home-10 {
  position: relative;
  padding-top: clamp(48px, 6vw, 100px);
  padding-bottom: clamp(56px, 8vw, 140px);
  background: var(--at-neutral-0, #fefefe);
  overflow: hidden;
}
.sec-6-home-10__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-6-home-10__layout {
  display: flex;
  flex-direction: column;
  gap: clamp(28px, 4vw, 40px);
}
@media (min-width: 1200px) {
  .sec-6-home-10__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, min(28vw, 407px)) minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: clamp(20px, 2.5vw, 32px);
    align-items: start;
  }
}
.sec-6-home-10__title-block {
  text-align: center;
}
@media (min-width: 1200px) {
  .sec-6-home-10__title-block {
    grid-column: 2;
    grid-row: 1/span 2;
    align-self: center;
    justify-self: center;
    z-index: 2;
    max-width: min(765px, 100%);
    padding: clamp(16px, 3vw, 48px) 0;
    pointer-events: none;
  }
  .sec-6-home-10__title-block .sec-6-home-10__eyebrow,
  .sec-6-home-10__title-block .sec-6-home-10__title {
    pointer-events: auto;
  }
}
.sec-6-home-10__eyebrow-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-10__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 6vw, 84px);
  line-height: 0.95;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
  text-wrap: balance;
}
.sec-6-home-10__member {
  min-width: 0;
}
@media (min-width: 1200px) {
  .sec-6-home-10__member {
    max-width: 407px;
  }
  .sec-6-home-10__member--1 {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }
  .sec-6-home-10__member--2 {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    margin-top: clamp(48px, 12vw, 200px);
  }
  .sec-6-home-10__member--3 {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    margin-top: clamp(24px, 6vw, 80px);
  }
  .sec-6-home-10__member--4 {
    grid-column: 3;
    grid-row: 2;
    justify-self: end;
    margin-top: clamp(40px, 8vw, 120px);
  }
}
.sec-6-home-10__member-link {
  display: block;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-6-home-10__member-link:hover {
  opacity: 0.92;
}
.sec-6-home-10__member-frame {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-100, #dfdfdf);
  aspect-ratio: 407/550;
}
.sec-6-home-10__member-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
}
.sec-6-home-10__member-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  min-height: 34.5%;
  padding: clamp(28px, 3vw, 40px) clamp(24px, 3.5vw, 46px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  background: linear-gradient(180deg, rgba(26, 26, 26, 0) 11.9%, rgba(26, 26, 26, 0.92) 100%);
  backdrop-filter: blur(3px);
  pointer-events: none;
}
.sec-6-home-10__member-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(26px, 2.2vw, 32px);
  line-height: 1.1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-6-home-10__member-role {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0, #fefefe);
  opacity: 0.8;
}
.sec-6-home-10__member-fab {
  position: absolute;
  top: clamp(20px, 2vw, 26px);
  right: clamp(20px, 2vw, 26px);
  z-index: 2;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.sec-6-home-10__member-fab--light {
  background: var(--at-neutral-0, #fefefe);
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-10__member-fab--dark {
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
}
@media (min-width: 1200px) {
  .sec-6-home-10__foot {
    grid-column: 2/-1;
    grid-row: 3;
    justify-self: end;
    max-width: min(775px, 100%);
    text-align: left;
  }
}
.sec-6-home-10__foot-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(22px, 2.2vw, 36px);
  line-height: 1.2;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-950, #0f0f0f);
}
.sec-6-home-10__cta {
  height: 50px;
  padding: 14px 27px;
  border-radius: 50px;
  background: var(--at-neutral-900, #1d1d1d);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe) !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background 0.25s ease, color 0.25s ease;
}
.sec-6-home-10__cta:hover {
  background: var(--at-theme-primary);
  color: var(--at-neutral-0) !important;
}
.sec-6-home-10__cta-arrow {
  flex-shrink: 0;
  color: currentColor;
}

/*==================================================================
  Home 11 — Motion & Video Creative Studio
==================================================================*/
.sec-1-home-11__eyebrow-dot,
.sec-2-home-11__eyebrow-dot,
.sec-3-home-11__eyebrow-dot,
.sec-4-home-11__eyebrow-dot,
.sec-5-home-11__eyebrow-dot,
.sec-6-home-11__eyebrow-dot,
.sec-7-home-11__eyebrow-dot,
.sec-8-home-11__eyebrow-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}
.sec-1-home-11__eyebrow-text,
.sec-2-home-11__eyebrow-text,
.sec-3-home-11__eyebrow-text,
.sec-4-home-11__eyebrow-text,
.sec-5-home-11__eyebrow-text,
.sec-6-home-11__eyebrow-text,
.sec-7-home-11__eyebrow-text,
.sec-8-home-11__eyebrow-text {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--at-neutral-500);
}

/*------------------------------------------------------------------
  Section 1 — Cinematic Hero
------------------------------------------------------------------*/
.sec-1-home-11 {
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: var(--at-neutral-950);
  color: var(--at-common-white);
  overflow: hidden;
}
.sec-1-home-11__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.sec-1-home-11__bg-video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  pointer-events: none;
}
.sec-1-home-11__bg-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(15, 15, 15, 0.55) 0%, rgba(15, 15, 15, 0.3) 40%, rgba(15, 15, 15, 0.75) 100%);
}
.sec-1-home-11__topbar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: clamp(20px, 2vw, 32px) clamp(20px, 5.5vw, 96px);
  padding-top: clamp(100px, 12vw, 140px);
}
.sec-1-home-11__topbar-label {
  font-size: 12px;
  letter-spacing: 0.12em;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.65);
}
.sec-1-home-11__topbar-divider {
  width: 28px;
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
  flex-shrink: 0;
}
.sec-1-home-11__headline {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  align-items: flex-start;
  padding: 0 clamp(20px, 5.5vw, 96px);
}
.sec-1-home-11__title {
  font-size: clamp(64px, 14vw, 200px);
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  color: var(--at-common-white);
  margin-bottom: 0;
}
.sec-1-home-11__footer {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 24px;
  padding: clamp(32px, 4vw, 56px) clamp(20px, 5.5vw, 96px);
}
.sec-1-home-11__desc {
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.7);
  max-width: 340px;
  margin-bottom: 0;
}
.sec-1-home-11__reel {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
  color: var(--at-common-white);
  transition: gap 0.3s ease;
}
.sec-1-home-11__reel:hover {
  gap: 20px;
  color: var(--at-common-white);
}
.sec-1-home-11__reel:hover .sec-1-home-11__reel-ring {
  background-color: var(--at-theme-primary);
}
.sec-1-home-11__reel-ring {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease, border-color 0.3s ease;
  flex-shrink: 0;
}
.sec-1-home-11__reel-icon {
  color: var(--at-common-white);
  margin-left: 2px;
}
.sec-1-home-11__reel-label {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.sec-1-home-11__scroll {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.sec-1-home-11__scroll-line {
  display: block;
  width: 1px;
  height: 48px;
  position: relative;
  background: rgba(255, 255, 255, 0.2);
  overflow: hidden;
}
.sec-1-home-11__scroll-line::after {
  content: "";
  position: absolute;
  top: -100%;
  left: 0;
  width: 100%;
  height: 40%;
  background: linear-gradient(to bottom, transparent, var(--at-theme-primary) 50%, transparent);
  animation: scroll-line-drop 1.6s ease-in-out infinite;
}
@keyframes scroll-line-drop {
  0% {
    top: -40%;
  }
  100% {
    top: 140%;
  }
}
.sec-1-home-11__scroll-text {
  font-size: 10px;
  letter-spacing: 0.14em;
  color: rgba(255, 255, 255, 0.5);
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
.sec-1-home-11__badge {
  position: absolute;
  top: 50%;
  right: clamp(20px, 5.5vw, 96px);
  transform: translateY(-50%);
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
@media (max-width: 767px) {
  .sec-1-home-11__badge {
    display: none;
  }
}
.sec-1-home-11__badge-value {
  font-size: 10px;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: var(--at-theme-primary);
  text-transform: uppercase;
}
.sec-1-home-11__badge-label {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.7);
  display: block;
  margin-top: 4px;
}
.sec-1-home-11__badge-year {
  font-size: 24px;
  font-weight: 700;
  color: var(--at-common-white);
  line-height: 1;
  display: block;
  margin-top: 2px;
}

.sec-1-home-11__reel-modal .modal-dialog {
  max-width: min(1100px, 96vw);
}
.sec-1-home-11__reel-modal .sec-1-home-11__reel-modal-close {
  z-index: 2;
  opacity: 0.85;
}
.sec-1-home-11__reel-modal .sec-1-home-11__reel-modal-close:hover {
  opacity: 1;
}
.sec-1-home-11__reel-modal .sec-1-home-11__reel-modal-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/*------------------------------------------------------------------
  Section 2 — Trusted Clients Marquee
------------------------------------------------------------------*/
.sec-2-home-11 {
  background-color: var(--at-neutral-50);
  overflow: hidden;
}
.sec-2-home-11__inner {
  padding: clamp(48px, 6vw, 80px) 0;
}
.sec-2-home-11__label {
  text-align: center;
  font-size: 12px;
  letter-spacing: 0.12em;
  color: var(--at-neutral-500);
  margin-bottom: 32px;
}
.sec-2-home-11__track-wrap {
  overflow: hidden;
  margin-bottom: 16px;
}
.sec-2-home-11__track-wrap--reverse {
  margin-bottom: 0;
}
.sec-2-home-11__track {
  display: flex;
  align-items: center;
  gap: clamp(32px, 5vw, 64px);
  width: -moz-max-content;
  width: max-content;
}
.sec-2-home-11__logo-item {
  flex-shrink: 0;
  opacity: 0.45;
  transition: opacity 0.3s ease;
}
.sec-2-home-11__logo-item:hover {
  opacity: 0.9;
}
.sec-2-home-11__logo-item img {
  max-height: 36px;
  width: auto;
  display: block;
  filter: grayscale(1);
  transition: filter 0.3s ease;
}
.sec-2-home-11__logo-item img:hover {
  filter: grayscale(0);
}

/*------------------------------------------------------------------
  Section 3 — About Studio
------------------------------------------------------------------*/
.sec-3-home-11__container {
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(80px, 10vw, 140px) clamp(20px, 5.5vw, 96px);
}
.sec-3-home-11__head {
  padding-bottom: clamp(48px, 6vw, 80px);
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-3-home-11__eyebrow-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}
.sec-3-home-11__eyebrow-text {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--at-neutral-500);
}
.sec-3-home-11__title {
  font-size: clamp(40px, 5.5vw, 80px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.04em;
  color: var(--at-neutral-950);
}
.sec-3-home-11__intro {
  font-size: clamp(15px, 1.1vw, 17px);
  line-height: 1.75;
  color: var(--at-neutral-500);
  max-width: 440px;
  margin-left: auto;
}
@media (max-width: 991px) {
  .sec-3-home-11__intro {
    max-width: 100%;
    margin-left: 0;
  }
}
.sec-3-home-11__media-a, .sec-3-home-11__side {
  position: relative;
}
.sec-3-home-11__img-frame {
  border-radius: 4px;
  overflow: hidden;
}
.sec-3-home-11__img-frame--sq {
  aspect-ratio: 4/5;
}
.sec-3-home-11__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-3-home-11__metric {
  position: absolute;
  bottom: -24px;
  right: -20px;
  background: var(--at-theme-primary);
  color: var(--at-common-white);
  padding: 20px 24px;
  text-align: center;
  z-index: 2;
}
@media (max-width: 575px) {
  .sec-3-home-11__metric {
    right: 0;
    bottom: 0;
  }
}
.sec-3-home-11__metric-value {
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.03em;
}
.sec-3-home-11__metric-label {
  font-size: 12px;
  letter-spacing: 0.06em;
  margin-top: 6px;
  line-height: 1.4;
  text-transform: uppercase;
}
.sec-3-home-11__year-badge {
  position: absolute;
  top: 24px;
  left: -16px;
  background: var(--at-neutral-950);
  color: var(--at-common-white);
  padding: 12px 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  z-index: 2;
}
@media (max-width: 991px) {
  .sec-3-home-11__year-badge {
    left: 16px;
  }
}
.sec-3-home-11__year-badge-est {
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.6;
}
.sec-3-home-11__year-badge-num {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1;
}
.sec-3-home-11__content {
  padding-top: clamp(16px, 2.5vw, 28px);
}
.sec-3-home-11__body {
  font-size: clamp(15px, 1.1vw, 17px);
  line-height: 1.75;
  color: var(--at-neutral-500);
}
.sec-3-home-11__divider {
  height: 1px;
  background: var(--at-neutral-100);
  margin: clamp(24px, 3vw, 40px) 0;
}
.sec-3-home-11__steps {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.sec-3-home-11__step {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.sec-3-home-11__step-num {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--at-theme-primary);
  padding-top: 3px;
  min-width: 22px;
}
.sec-3-home-11__step-copy {
  font-size: 14px;
  line-height: 1.65;
  color: var(--at-neutral-500);
}
.sec-3-home-11__step-copy p {
  font-size: inherit;
  line-height: inherit;
}
.sec-3-home-11__step-title {
  display: block;
  font-size: 15px;
  font-weight: 500;
  color: var(--at-neutral-950);
  margin-bottom: 4px;
}
.sec-3-home-11__quote {
  margin: 24px 0 0;
  padding: 20px 24px;
  border-left: 2px solid var(--at-theme-primary);
  background: var(--at-neutral-50);
}
.sec-3-home-11__quote-text {
  font-size: 15px;
  font-style: italic;
  color: var(--at-neutral-700);
  line-height: 1.65;
}
.sec-3-home-11__quote-attr {
  display: block;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--at-neutral-400);
  text-transform: uppercase;
}
.sec-3-home-11__cta {
  font-size: 15px;
  font-weight: 500;
  color: var(--at-neutral-950);
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
  transition: color 0.3s ease, gap 0.3s ease;
}
.sec-3-home-11__cta:hover {
  color: var(--at-theme-primary);
}
.sec-3-home-11__stats-bar {
  border-top: 1px solid var(--at-neutral-100);
  margin-top: clamp(48px, 7vw, 96px);
}
.sec-3-home-11__stat {
  padding: clamp(28px, 4vw, 48px) clamp(20px, 3vw, 40px);
  border-right: 1px solid var(--at-neutral-100);
}
.sec-3-home-11__stat:last-child {
  border-right: none;
}
@media (max-width: 767px) {
  .sec-3-home-11__stat {
    border-bottom: 1px solid var(--at-neutral-100);
  }
  .sec-3-home-11__stat:nth-child(2n) {
    border-right: none;
  }
}
.sec-3-home-11__stat-num {
  font-size: clamp(36px, 4vw, 56px);
  font-weight: 700;
  letter-spacing: -0.04em;
  color: var(--at-neutral-950);
  line-height: 1;
}
.sec-3-home-11__stat-label {
  font-size: 13px;
  color: var(--at-neutral-500);
  letter-spacing: 0.04em;
  margin-top: 6px;
  text-transform: uppercase;
}

/*------------------------------------------------------------------
  Section 4 — Featured Works
------------------------------------------------------------------*/
.sec-4-home-11 {
  background-color: var(--at-neutral-50);
}
.sec-4-home-11__container {
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(80px, 10vw, 140px) clamp(20px, 5.5vw, 96px);
}
.sec-4-home-11__title {
  font-size: clamp(36px, 5vw, 72px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.04em;
  color: var(--at-neutral-950);
  margin-bottom: 0;
}
.sec-4-home-11__intro {
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.7;
  color: var(--at-neutral-500);
}
.sec-4-home-11__view-all {
  font-size: 14px;
  font-weight: 500;
  color: var(--at-neutral-950);
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
  transition: color 0.3s ease;
}
.sec-4-home-11__view-all:hover {
  color: var(--at-theme-primary);
}
.sec-4-home-11__list .mg-portfolio-item {
  padding-top: clamp(24px, 3vw, 40px);
}
.sec-4-home-11__list .mg-portfolio-thumb {
  border-radius: 4px;
  overflow: hidden;
}
.sec-4-home-11__list .mg-portfolio-thumb a.cursor-hide {
  position: relative;
  display: block;
}
.sec-4-home-11__list .sec-4-home-11__thumb-title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  width: -moz-max-content;
  width: max-content;
  max-width: calc(100% - clamp(24px, 6vw, 48px));
  padding: clamp(12px, 2vw, 20px) clamp(16px, 3vw, 28px);
  font-size: clamp(54px, 6.6vw, 84px);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-align: center;
  color: var(--at-common-white);
  pointer-events: none;
  z-index: 2;
}
.sec-4-home-11__list .cs-portfolio-title {
  font-size: clamp(20px, 2.5vw, 32px);
  font-weight: 500;
  letter-spacing: -0.02em;
}

/*------------------------------------------------------------------
  Section 5 — Services (modernized)
------------------------------------------------------------------*/
.sec-5-home-11 {
  position: relative;
  background-color: var(--at-neutral-0);
  overflow: hidden;
}
.sec-5-home-11__bg-deco {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: radial-gradient(circle at 20% 30%, rgba(var(--at-theme-primary-rgb, 240, 70, 14), 0.03) 0%, transparent 50%), radial-gradient(circle at 80% 70%, rgba(var(--at-theme-primary-rgb, 240, 70, 14), 0.02) 0%, transparent 50%);
}
.sec-5-home-11__container {
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(80px, 10vw, 140px) clamp(20px, 5.5vw, 96px);
  position: relative;
  z-index: 1;
}
.sec-5-home-11__title {
  font-size: clamp(36px, 5vw, 72px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.04em;
  color: var(--at-neutral-950);
  margin-bottom: 0;
}
.sec-5-home-11__card {
  position: relative;
  background-color: var(--at-common-white);
  border: 1px solid var(--at-neutral-100);
  border-radius: 6px;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.4s ease, border-color 0.4s ease;
}
.sec-5-home-11__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.08);
  border-color: transparent;
}
.sec-5-home-11__card:hover .sec-5-home-11__card-accent {
  transform: scaleY(1);
}
.sec-5-home-11__card:hover .sec-5-home-11__card-num {
  color: var(--at-theme-primary);
  transform: translateX(2px);
}
.sec-5-home-11__card--lg .sec-5-home-11__card-body {
  padding: clamp(24px, 3vw, 36px);
}
.sec-5-home-11__card--sm .sec-5-home-11__card-body {
  padding: clamp(28px, 3.5vw, 44px);
}
.sec-5-home-11__card-accent {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--at-theme-primary);
  transform: scaleY(0.3);
  transform-origin: top;
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 2;
}
.sec-5-home-11__card-media {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/9;
}
.sec-5-home-11__card-media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.sec-5-home-11__card-tag {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  padding: 4px 12px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--at-common-white);
  background: var(--at-theme-primary);
  border-radius: 2px;
  pointer-events: none;
}
.sec-5-home-11__card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(15, 15, 15, 0.45) 0%, rgba(15, 15, 15, 0.1) 50%, transparent 100%);
  pointer-events: none;
  transition: opacity 0.4s ease;
}
.sec-5-home-11__card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.sec-5-home-11__card-head {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 12px;
}
.sec-5-home-11__card-num {
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 700;
  line-height: 0.85;
  letter-spacing: -0.04em;
  color: var(--at-neutral-100);
  flex-shrink: 0;
  transition: color 0.4s ease, transform 0.4s ease;
  min-width: clamp(40px, 5vw, 56px);
}
.sec-5-home-11__card-name {
  font-size: clamp(18px, 1.8vw, 24px);
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  margin-bottom: 0;
  padding-top: 4px;
}
.sec-5-home-11__card-desc {
  font-size: 14px;
  line-height: 1.7;
  color: var(--at-neutral-500);
}
.sec-5-home-11__card-link {
  font-size: 13px;
  font-weight: 500;
  color: var(--at-neutral-950);
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px;
  margin-top: auto;
  transition: color 0.3s ease, gap 0.3s ease;
  align-self: flex-start;
}
.sec-5-home-11__card-link:hover {
  color: var(--at-theme-primary);
  gap: 10px;
}

/*------------------------------------------------------------------
  Section 6 — Studio Process
------------------------------------------------------------------*/
.sec-6-home-11 {
  background-color: var(--at-neutral-50);
}
.sec-6-home-11__container {
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(80px, 10vw, 140px) clamp(20px, 5.5vw, 96px);
}
.sec-6-home-11__title-block {
  padding-bottom: 40px;
}
.sec-6-home-11__title {
  font-size: clamp(36px, 5vw, 64px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.04em;
  color: var(--at-neutral-950);
  margin-bottom: 0;
}
.sec-6-home-11__intro {
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.7;
  color: var(--at-neutral-500);
  max-width: 380px;
}
.sec-6-home-11__cta {
  font-size: 14px;
  font-weight: 500;
  color: var(--at-neutral-950);
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
  transition: color 0.3s ease;
  align-self: flex-start;
}
.sec-6-home-11__cta:hover {
  color: var(--at-theme-primary);
}
.sec-6-home-11__steps {
  padding: 0;
}
.sec-6-home-11__scroll-stack.scroll-section .wrapper {
  position: relative;
}
.sec-6-home-11__scroll-stack.scroll-section .sec-6-home-11__steps.list {
  position: relative;
  height: 100%;
}
.sec-6-home-11__scroll-stack.scroll-section .sec-6-home-11__step.item {
  border-top: none;
  border-bottom: none;
  background-color: var(--at-neutral-50);
}
.sec-6-home-11__scroll-stack.scroll-section .item {
  min-height: min(88vh, 860px);
}
.sec-6-home-11__scroll-stack.scroll-section .item:first-child {
  min-height: min(88vh, 860px);
  height: auto;
}
.sec-6-home-11__step {
  padding: clamp(32px, 4vw, 56px) 0;
  border-top: 1px solid var(--at-neutral-100);
}
.sec-6-home-11__step:last-child {
  border-bottom: 1px solid var(--at-neutral-100);
}
@media (max-width: 991px) {
  .sec-6-home-11__scroll-stack.scroll-section .sec-6-home-11__steps.list {
    height: auto;
  }
  .sec-6-home-11__scroll-stack.scroll-section .sec-6-home-11__step.item {
    padding: clamp(24px, 5vw, 40px) 0;
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    border-top: 1px solid var(--at-neutral-100);
  }
  .sec-6-home-11__scroll-stack.scroll-section .sec-6-home-11__step.item:last-child {
    border-bottom: 1px solid var(--at-neutral-100);
  }
  .sec-6-home-11__scroll-stack.scroll-section .item {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    transform: none !important;
  }
  .sec-6-home-11__scroll-stack.scroll-section .item:first-child {
    min-height: 0 !important;
    height: auto !important;
  }
}
.sec-6-home-11__step-num {
  font-size: clamp(48px, 6vw, 72px);
  font-weight: 700;
  letter-spacing: -0.04em;
  color: var(--at-neutral-100);
  line-height: 1;
  flex-shrink: 0;
  min-width: clamp(64px, 8vw, 100px);
}
.sec-6-home-11__step-title {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}
.sec-6-home-11__step-body {
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.7;
  color: var(--at-neutral-500);
  max-width: 480px;
}
.sec-6-home-11__step-media {
  margin-top: 20px;
  border-radius: 4px;
  overflow: hidden;
  aspect-ratio: 16/10;
}
.sec-6-home-11__step-media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-6-home-11__tag {
  display: inline-flex;
  align-items: center;
  padding: 5px 12px;
  border: 1px solid var(--at-neutral-100);
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
  border-radius: 100px;
}

/*------------------------------------------------------------------
  Section 7 — Testimonials
------------------------------------------------------------------*/
.sec-7-home-11__container {
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(80px, 10vw, 140px) clamp(20px, 5.5vw, 96px);
}
.sec-7-home-11__title {
  font-size: clamp(36px, 5vw, 72px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.04em;
  color: var(--at-neutral-950);
  margin-bottom: 0;
}
.sec-7-home-11__nav {
  gap: 8px;
}
.sec-7-home-11__nav .swiper-btn-prev,
.sec-7-home-11__nav .swiper-btn-next {
  border: 1px solid var(--at-neutral-100);
  border-radius: 50%;
  background: transparent;
  color: var(--at-neutral-950);
  transition: background 0.3s ease, color 0.3s ease;
}
.sec-7-home-11__nav .swiper-btn-prev:hover,
.sec-7-home-11__nav .swiper-btn-next:hover {
  background: var(--at-theme-primary);
  border-color: var(--at-theme-primary);
  color: var(--at-common-white);
}
.sec-7-home-11__swiper .testimonial-cart-wrap {
  background: var(--at-neutral-50);
  border: 1px solid var(--at-neutral-100);
}

/*------------------------------------------------------------------
  Section 8 — Call to Action
------------------------------------------------------------------*/
.sec-8-home-11 {
  position: relative;
  overflow: hidden;
  background-color: var(--at-neutral-950);
  color: var(--at-common-white);
}
.sec-8-home-11__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.sec-8-home-11__bg-wrap {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.sec-8-home-11__bg-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.sec-8-home-11__bg-overlay {
  position: absolute;
  inset: 0;
  background: rgba(15, 15, 15, 0.82);
}
.sec-8-home-11__inner {
  position: relative;
  z-index: 1;
  padding: clamp(80px, 10vw, 140px) 0;
  padding-bottom: 0;
}
.sec-8-home-11__type-wrap {
  overflow: hidden;
}
.sec-8-home-11__big-line {
  font-size: clamp(48px, 10vw, 140px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.08);
  white-space: nowrap;
}
.sec-8-home-11__img-pill {
  display: inline-block;
  vertical-align: middle;
  height: 0.85em;
  overflow: hidden;
  border-radius: 16px;
  margin: 0 0.15em;
  position: relative;
  top: -0.04em;
}
.sec-8-home-11__img-pill img {
  height: 100%;
  width: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-8-home-11__type-wrap:nth-child(1) .sec-8-home-11__img-pill:nth-of-type(1) {
  transform: rotate(-5deg);
}
.sec-8-home-11__type-wrap:nth-child(1) .sec-8-home-11__img-pill:nth-of-type(2) {
  transform: rotate(6deg);
}
.sec-8-home-11__type-wrap:nth-child(2) .sec-8-home-11__img-pill:nth-of-type(1) {
  transform: rotate(7deg);
}
.sec-8-home-11__type-wrap:nth-child(2) .sec-8-home-11__img-pill:nth-of-type(2) {
  transform: rotate(-4deg);
}
.sec-8-home-11__type-wrap:nth-child(3) .sec-8-home-11__img-pill:nth-of-type(1) {
  transform: rotate(-6deg);
}
.sec-8-home-11__type-wrap:nth-child(3) .sec-8-home-11__img-pill:nth-of-type(2) {
  transform: rotate(5deg);
}
.sec-8-home-11__cta-block {
  padding: clamp(48px, 8vw, 120px) clamp(20px, 5.5vw, 96px);
}
.sec-8-home-11__cta-heading {
  font-size: clamp(40px, 7vw, 104px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-common-white);
  margin-bottom: 0;
}
.sec-8-home-11__cta-sub {
  font-size: clamp(15px, 1.2vw, 18px);
  color: rgba(255, 255, 255, 0.6);
  margin-top: 20px;
  margin-bottom: 0;
}
.sec-8-home-11__btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 32px;
  background: var(--at-theme-primary);
  color: var(--at-common-white);
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.02em;
  text-decoration: none;
  border: 1px solid var(--at-theme-primary);
  transition: background 0.3s ease, color 0.3s ease;
}
.sec-8-home-11__btn-primary:hover {
  background: transparent;
  color: var(--at-theme-primary);
}
.sec-8-home-11__btn-secondary {
  display: inline-flex;
  align-items: center;
  padding: 16px 32px;
  background: transparent;
  color: var(--at-common-white);
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.02em;
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, 0.25);
  transition: border-color 0.3s ease, color 0.3s ease;
}
.sec-8-home-11__btn-secondary:hover {
  border-color: var(--at-common-white);
  color: var(--at-common-white);
}
.sec-8-home-11__email {
  font-size: clamp(13px, 1vw, 15px);
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  letter-spacing: 0.05em;
  transition: color 0.3s ease;
}
.sec-8-home-11__email:hover {
  color: var(--at-common-white);
}

/* Home 12 / Section 1 — Hero (Pure Design. Potent Storytelling) */
.sec-1-home-12 {
  --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-12__hero {
  padding-top: 56px;
  padding-bottom: 64px;
}

.sec-1-home-12__hero-inner {
  row-gap: 24px;
}

/* ── Social proof pill ───────────────────────────── */
.sec-1-home-12__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-12__avatars {
  display: inline-flex;
  align-items: center;
}

.sec-1-home-12__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-12__avatar + .sec-1-home-12__avatar {
  margin-left: -10px;
}

.sec-1-home-12__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-12__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  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-12__title .split-line {
  overflow: hidden;
  padding-bottom: 0.12em;
}

/* ── Subline ─────────────────────────────────────── */
.sec-1-home-12__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-12__ctas {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding-top: 8px;
  flex-wrap: wrap;
  justify-content: center;
}

.sec-1-home-12__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: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  transition: opacity 0.3s ease;
}
.sec-1-home-12__btn-primary:hover, .sec-1-home-12__btn-primary:focus-visible {
  color: var(--at-neutral-0);
  opacity: 0.9;
}
.sec-1-home-12__btn-primary:hover .sec-1-home-12__btn-primary-icon svg, .sec-1-home-12__btn-primary:focus-visible .sec-1-home-12__btn-primary-icon svg {
  transform: translate(2px, -2px);
}

.sec-1-home-12__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-12__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-12__btn-primary-icon svg {
  transition: transform 0.3s ease;
}

.sec-1-home-12__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: 500;
  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-12__btn-secondary:hover, .sec-1-home-12__btn-secondary:focus-visible {
  color: var(--at-neutral-950);
  opacity: 0.7;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.sec-2-home-12__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-12__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-12__cards {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
  margin-inline: auto;
  max-width: 1280px;
}

/* ── Project card ───────────────────────────────── */
.card-home-12-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-12-project:hover, .card-home-12-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-12-project:hover .card-home-12-project__img, .card-home-12-project:focus-visible .card-home-12-project__img {
  transform: scale(1.04);
}
.card-home-12-project:hover .card-home-12-project__title, .card-home-12-project:focus-visible .card-home-12-project__title {
  color: var(--at-theme-primary);
}

.card-home-12-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-12-project__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}

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

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

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

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

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

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

.card-home-12-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-12-project__tags {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.card-home-12-project__tags li {
  display: inline-flex;
}

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

/* ── Section header ─────────────────────────────── */
.sec-3-home-12__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-12__header-left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 16px;
  flex: 1 1 0;
  min-width: 0;
}

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

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

.sec-3-home-12__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-12__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1280px;
  margin-inline: auto;
}

/* ── Service card ───────────────────────────────── */
.card-home-12-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-12-service:hover, .card-home-12-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-12-service:hover .card-home-12-service__title, .card-home-12-service:focus-visible .card-home-12-service__title {
  color: var(--at-theme-primary);
}
.card-home-12-service:hover .card-home-12-service__icon:not(.is-filled), .card-home-12-service:focus-visible .card-home-12-service__icon:not(.is-filled) {
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
}
.card-home-12-service:hover .card-home-12-service__icon svg, .card-home-12-service:focus-visible .card-home-12-service__icon svg {
  transform: translate(2px, -2px);
}

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

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

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

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

.card-home-12-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-12-service__icon svg {
  transition: transform 0.3s ease;
}
.card-home-12-service__icon.is-filled {
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
}

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

.card-home-12-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-12-service__tags {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.card-home-12-service__tags li {
  display: inline-flex;
}

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

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

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

.sec-4-home-12__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  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-12__row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1280px;
  margin-inline: auto;
}

/* ── Process card ───────────────────────────────── */
.card-home-12-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-12-process:hover, .card-home-12-process:focus-within {
  border-color: var(--at-neutral-300);
  box-shadow: 0 12px 32px -16px rgba(0, 0, 0, 0.12);
}
.card-home-12-process:hover .card-home-12-process__img, .card-home-12-process:focus-within .card-home-12-process__img {
  transform: scale(1.05);
}

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

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

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

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

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

/* ── Dot pattern background ─────────────────────── */
.sec-5-home-12__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-12__header {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 16px;
  margin-bottom: 64px;
}

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

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

/* ── Tables row ─────────────────────────────────── */
.sec-5-home-12__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-12-price {
  position: relative;
  background-color: var(--at-neutral-0);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.card-home-12-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-12-price.is-popular .card-home-12-price__top {
  background-color: rgba(10,10,10,0.1);
}

.card-home-12-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: 500;
  font-size: 10px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  white-space: nowrap;
}

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

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

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

.card-home-12-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-12-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-12-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: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.card-home-12-price__cta:hover, .card-home-12-price__cta:focus-visible {
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
}
.card-home-12-price__cta:hover .card-home-12-price__cta-icon svg, .card-home-12-price__cta:focus-visible .card-home-12-price__cta-icon svg {
  transform: translate(2px, -2px);
}

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

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

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

.card-home-12-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-12__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-12__custom-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-top: 4px;
}

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

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

.sec-5-home-12__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-12__custom-link {
  color: var(--at-neutral-700);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.3s ease;
}
.sec-5-home-12__custom-link:hover, .sec-5-home-12__custom-link:focus-visible {
  color: var(--at-theme-primary);
}

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

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

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

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

.sec-6-home-12__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-12__lede-wrap {
  padding: 96px 0;
}

.sec-6-home-12__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-12__brands-strip {
  position: relative;
  overflow: hidden;
  padding-inline: 24px;
  color: var(--at-neutral-0);
}

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

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

.sec-6-home-12__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-12__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: 500;
  font-size: 22px;
  line-height: 1;
  letter-spacing: -0.04em;
}

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

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

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

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

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

.sec-6-home-12__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-12__lede-wrap {
    padding: 80px 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-6-home-12__lede-wrap {
    padding: 72px 0;
  }
  .sec-6-home-12__brand-slide {
    height: 56px;
  }
  .sec-6-home-12__brand-img {
    height: 36px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home-12 {
    padding-bottom: 80px;
  }
  .sec-6-home-12__lede-wrap {
    padding: 56px 0;
  }
  .sec-6-home-12__brand-slide {
    height: 52px;
  }
  .sec-6-home-12__brand-img {
    height: 32px;
  }
  .sec-6-home-12__brand {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home-12 {
    padding-bottom: 64px;
  }
  .sec-6-home-12__lede-wrap {
    padding: 48px 0;
  }
  .sec-6-home-12__brand-slide {
    height: 48px;
  }
  .sec-6-home-12__brand-img {
    height: 28px;
  }
  .sec-6-home-12__brand {
    font-size: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-6-home-12 {
    padding-bottom: 56px;
  }
  .sec-6-home-12__topline {
    margin-bottom: 18px;
  }
  .sec-6-home-12__lede-wrap {
    padding: 36px 0;
  }
  .sec-6-home-12__brand-slide {
    height: 44px;
  }
  .sec-6-home-12__brand-img {
    height: 24px;
  }
  .sec-6-home-12__brand {
    font-size: 17px;
  }
  .sec-6-home-12__topbar-label {
    font-size: 13px;
  }
}
@media (max-width: 574.98px) {
  .sec-6-home-12 {
    padding-bottom: 48px;
    padding-top: 24px;
  }
  .sec-6-home-12__topline {
    margin-bottom: 14px;
  }
  .sec-6-home-12__lede-wrap {
    padding: 28px 0;
  }
  .sec-6-home-12__lede {
    font-size: 22px;
    line-height: 1.25;
  }
  .sec-6-home-12__brand-slide {
    height: 40px;
  }
  .sec-6-home-12__brand-img {
    height: 22px;
  }
  .sec-6-home-12__brand {
    font-size: 16px;
  }
  .sec-6-home-12__topbar-label {
    font-size: 12px;
  }
}
/* Home 12 / Section 7 — Testimonials */
.sec-7-home-12 {
  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-12__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 16px;
  margin-bottom: 80px;
}

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

.sec-7-home-12__title {
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  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-12__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-12__col {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}

.sec-7-home-12__col--offset-lg {
  padding-top: 48px;
}

.sec-7-home-12__col--offset-sm {
  padding-top: 16px;
}

/* ── Testimonial card ───────────────────────────── */
.card-home-12-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-12-testimonial:hover, .card-home-12-testimonial:focus-within {
  border-color: var(--at-neutral-300);
  box-shadow: 0 12px 32px -16px rgba(0, 0, 0, 0.12);
}

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

.card-home-12-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-12-testimonial__author {
  display: flex;
  align-items: center;
  -moz-column-gap: 12px;
       column-gap: 12px;
}

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

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

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

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

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

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

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

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

/* ── Accordion item (native <details>) ──────────── */
.sec-8-home-12__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-12__item[open] {
  border-color: var(--at-neutral-300);
}

.sec-8-home-12__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-12__summary::-webkit-details-marker {
  display: none;
}
.sec-8-home-12__summary::marker {
  content: "";
}

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

.sec-8-home-12__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-12__bar {
  position: absolute;
  background-color: currentColor;
  border-radius: 1px;
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.sec-8-home-12__bar--h {
  width: 14px;
  height: 1.6px;
}

.sec-8-home-12__bar--v {
  width: 1.6px;
  height: 14px;
}

.sec-8-home-12__item[open] .sec-8-home-12__toggle {
  background-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
}

.sec-8-home-12__item[open] .sec-8-home-12__bar--v {
  opacity: 0;
  transform: scaleY(0);
}

.sec-8-home-12__answer {
  padding: 0 24px 22px 28px;
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}
.sec-8-home-12__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-12__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-12 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-12 {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home-12 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-8-home-12__header {
    margin-bottom: 48px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-12 {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .sec-8-home-12__header {
    margin-bottom: 40px;
  }
  .sec-8-home-12__summary {
    padding: 20px 22px 20px 24px;
  }
  .sec-8-home-12__answer {
    padding: 0 22px 20px 24px;
  }
  .sec-8-home-12__question {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-12 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .sec-8-home-12__header {
    margin-bottom: 32px;
    row-gap: 12px;
  }
  .sec-8-home-12__list {
    row-gap: 10px;
  }
  .sec-8-home-12__summary {
    padding: 18px 20px 18px 22px;
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .sec-8-home-12__answer {
    padding: 0 20px 20px 22px;
    row-gap: 14px;
  }
  .sec-8-home-12__answer p {
    font-size: 15px;
  }
  .sec-8-home-12__question {
    font-size: 15px;
    line-height: 1.35;
  }
  .sec-8-home-12__toggle {
    width: 28px;
    height: 28px;
  }
  .sec-8-home-12__bar--h {
    width: 12px;
  }
  .sec-8-home-12__bar--v {
    height: 12px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-12 {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .sec-8-home-12__header {
    margin-bottom: 28px;
  }
  .sec-8-home-12__list {
    row-gap: 8px;
  }
  .sec-8-home-12__item {
    border-radius: 14px;
  }
  .sec-8-home-12__summary {
    padding: 16px 18px 16px 20px;
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .sec-8-home-12__answer {
    padding: 0 18px 18px 20px;
    row-gap: 12px;
  }
  .sec-8-home-12__answer p {
    font-size: 14.5px;
  }
  .sec-8-home-12__question {
    font-size: 14.5px;
    line-height: 1.4;
  }
  .sec-8-home-12__toggle {
    width: 26px;
    height: 26px;
  }
  .sec-8-home-12__bar--h {
    width: 11px;
  }
  .sec-8-home-12__bar--v {
    height: 11px;
  }
}
/* Home 13 / Section 1 — Hero (Orisa® Architecture) */
.sec-1-home-13 {
  background-color: var(--at-neutral-50);
  padding: 160px 32px 32px;
}

.sec-1-home-13__inner {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
  margin-inline: auto;
}

/* ── Top row ─────────────────────────────────── */
.sec-1-home-13__top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}

.sec-1-home-13__brand {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(48px, 11vw, 188px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  white-space: nowrap;
}
.sec-1-home-13__brand sup {
  font-size: 0.5em;
  top: -0.55em;
  font-weight: 500;
}

.sec-1-home-13__since {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  text-decoration: underline;
  text-underline-offset: 4px;
  white-space: nowrap;
  flex-shrink: 0;
  transition: opacity 0.3s ease;
}
.sec-1-home-13__since:hover, .sec-1-home-13__since:focus-visible {
  color: var(--at-neutral-900);
  opacity: 0.7;
}

/* ── Hero card ───────────────────────────────── */
.sec-1-home-13__card {
  position: relative;
  width: 100%;
  height: 760px;
  border-radius: 32px;
  overflow: hidden;
  isolation: isolate;
}

/* ── Main slider ─────────────────────────────── */
.sec-1-home-13__main {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.sec-1-home-13__main .swiper-wrapper,
.sec-1-home-13__main .swiper-slide {
  height: 100%;
}

.sec-1-home-13__slide {
  position: relative;
  overflow: hidden;
}

.sec-1-home-13__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  z-index: 0;
}

.sec-1-home-13__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.18) 0%, rgba(0, 0, 0, 0.55) 100%);
  z-index: 1;
}

.sec-1-home-13__content {
  position: absolute;
  inset: 0;
  padding: 48px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 19px;
  z-index: 2;
  /* leave room for the thumbs strip */
  padding-bottom: 200px;
}

.sec-1-home-13__tagline {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.2;
  color: var(--at-common-white);
  letter-spacing: 0;
}
.sec-1-home-13__tagline span {
  display: inline-block;
}

.sec-1-home-13__headline {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(28px, 4vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-common-white);
  max-width: 871px;
}

/* ── Vertical nav buttons ────────────────────── */
.sec-1-home-13__nav {
  position: absolute;
  top: 50%;
  right: 48px;
  transform: translateY(-50%);
  z-index: 4;
  flex-direction: column;
  gap: 12px;
  /* prev arrow points up, next arrow points down */
}
.sec-1-home-13__nav .swiper-btn-prev svg,
.sec-1-home-13__nav .swiper-btn-next svg {
  transform: rotate(90deg);
}

/* ── Thumbs slider ───────────────────────────── */
.sec-1-home-13__thumbs {
  position: absolute;
  left: 48px;
  right: 48px;
  bottom: 48px;
  z-index: 3;
}
.sec-1-home-13__thumbs .swiper-slide {
  height: auto;
}

.sec-1-home-13__service {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 20px 12px 12px;
  background-color: var(--at-common-white);
  border: 0;
  border-radius: 16px;
  box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.1);
  min-width: 0;
  cursor: pointer;
  text-align: left;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.sec-1-home-13__service::after {
  content: "";
  position: absolute;
  top: 8px;
  right: 8px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  opacity: 0;
  transform: scale(0.4);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
}
.sec-1-home-13__service:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px 0 rgba(0, 0, 0, 0.14);
}
.sec-1-home-13__service.swiper-slide-thumb-active {
  box-shadow: 0 12px 28px 0 rgba(0, 0, 0, 0.18);
}
.sec-1-home-13__service.swiper-slide-thumb-active::after {
  opacity: 1;
  transform: scale(1);
}
.sec-1-home-13__service.swiper-slide-thumb-active .sec-1-home-13__service-img {
  border-radius: 16px;
}

.sec-1-home-13__service-img {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 4px;
  overflow: hidden;
  display: block;
  transition: border-radius 0.3s ease;
}
.sec-1-home-13__service-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.sec-1-home-13__service-meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

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

.sec-1-home-13__service-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home-13__card {
    height: 680px;
  }
  .sec-1-home-13__content {
    padding: 40px;
    padding-bottom: 180px;
  }
  .sec-1-home-13__thumbs {
    left: 40px;
    right: 40px;
    bottom: 40px;
  }
  .sec-1-home-13__nav {
    right: 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-13 {
    padding: 48px 24px 24px;
  }
  .sec-1-home-13__card {
    height: 620px;
  }
  .sec-1-home-13__content {
    padding: 32px;
    padding-bottom: 200px;
  }
  .sec-1-home-13__thumbs {
    left: 32px;
    right: 32px;
    bottom: 32px;
  }
  .sec-1-home-13__nav {
    right: 32px;
    gap: 10px;
  }
  .sec-1-home-13__service {
    padding: 10px 14px 10px 10px;
    gap: 10px;
  }
  .sec-1-home-13__service-img {
    width: 52px;
    height: 52px;
  }
  .sec-1-home-13__service-name {
    font-size: 16px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-13 {
    padding: 36px 20px 20px;
  }
  .sec-1-home-13__card {
    height: 560px;
  }
  .sec-1-home-13__content {
    padding: 28px;
    padding-bottom: 180px;
  }
  .sec-1-home-13__thumbs {
    left: 24px;
    right: 24px;
    bottom: 24px;
  }
  .sec-1-home-13__nav {
    right: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-13 {
    padding: 128px 16px 16px;
  }
  .sec-1-home-13__top {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .sec-1-home-13__brand {
    white-space: normal;
  }
  .sec-1-home-13__card {
    height: 540px;
    border-radius: 24px;
  }
  .sec-1-home-13__content {
    padding: 24px;
    padding-bottom: 220px;
  }
  .sec-1-home-13__thumbs {
    left: 16px;
    right: 16px;
    bottom: 16px;
  }
  .sec-1-home-13__nav {
    right: 16px;
    gap: 8px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-home-13__card {
    height: 520px;
  }
  .sec-1-home-13__content {
    padding-bottom: 200px;
  }
  .sec-1-home-13__service-name {
    font-size: 14px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-13 {
    padding: 100px 12px 12px;
  }
  .sec-1-home-13__card {
    height: 500px;
    border-radius: 20px;
  }
  .sec-1-home-13__content {
    padding: 18px;
    padding-bottom: 180px;
  }
  .sec-1-home-13__headline {
    font-size: 26px;
  }
  .sec-1-home-13__thumbs {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }
  .sec-1-home-13__nav {
    right: 12px;
  }
}
/* Cascading mobile pivot: stack top row + wrap brand from tablet down */
@media (max-width: 991.98px) {
  .sec-1-home-13__top {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .sec-1-home-13__brand {
    white-space: normal;
  }
}
/* Home 13 / Section 2 — About Us */
.sec-2-home-13 {
  background-color: var(--at-neutral-50);
  padding: 120px 96px 0;
}

.sec-2-home-13__inner {
  display: flex;
  flex-direction: column;
  gap: 80px;
  width: 100%;
}

/* ── Top row ─────────────────────────────────── */
.sec-2-home-13__top {
  display: grid;
  grid-template-columns: 380px 1fr;
  gap: 96px;
  align-items: start;
}

/* ── Left column ─────────────────────────────── */
.sec-2-home-13__left {
  display: flex;
  flex-direction: column;
  gap: 184px;
}

.sec-2-home-13__label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.sec-2-home-13__label-dot {
  width: 8px;
  height: 8px;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}

.sec-2-home-13__label-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}

.sec-2-home-13__intro {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
}

.sec-2-home-13__intro-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
}
.sec-2-home-13__intro-text strong {
  font-weight: 700;
}

.sec-2-home-13__team {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
}

.sec-2-home-13__team-avatar {
  width: 65px;
  height: 65px;
  border-radius: 50%;
  overflow: hidden;
  border: 4px solid var(--at-neutral-0);
  box-sizing: border-box;
  background-color: var(--at-neutral-100);
}
.sec-2-home-13__team-avatar + .sec-2-home-13__team-avatar {
  margin-left: -25px;
}
.sec-2-home-13__team-avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.sec-2-home-13__cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 50px;
  padding: 14px 27px;
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  border-radius: 50px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  text-decoration: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.sec-2-home-13__cta:hover, .sec-2-home-13__cta:focus-visible {
  color: var(--at-neutral-0);
  opacity: 0.9;
}
.sec-2-home-13__cta svg {
  transition: transform 0.3s ease;
}
.sec-2-home-13__cta:hover svg, .sec-2-home-13__cta:focus-visible svg {
  transform: translate(2px, -2px);
}

/* ── Right column ────────────────────────────── */
.sec-2-home-13__right {
  display: flex;
  flex-direction: column;
  gap: 64px;
  min-width: 0;
}

.sec-2-home-13__head {
  display: flex;
  flex-direction: column;
  gap: 11px;
  align-items: flex-start;
}

.sec-2-home-13__pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  border-radius: 999px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}

.sec-2-home-13__pill-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #22c55e;
  flex-shrink: 0;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.18);
}

.sec-2-home-13__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(32px, 3.2vw, 56px);
  line-height: 1.143;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.sec-2-home-13__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-items: start;
}

.sec-2-home-13__col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

.sec-2-home-13__media {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}
.sec-2-home-13__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.sec-2-home-13__caption-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 36px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  margin-bottom: 16px !important;
}

.sec-2-home-13__caption-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
}

/* ── Stats row ───────────────────────────────── */
.sec-2-home-13__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--at-neutral-100);
  padding: 64px 0 96px;
  margin: 0;
}

.sec-2-home-13__stat {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0 32px;
}
.sec-2-home-13__stat:first-child {
  padding-left: 0;
}
.sec-2-home-13__stat:last-child {
  padding-right: 0;
}

.sec-2-home-13__stat-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.sec-2-home-13__stat-icon {
  width: 42px;
  height: 42px;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-2-home-13__stat-icon img {
  width: 26px;
  height: 26px;
  -o-object-fit: contain;
     object-fit: contain;
}

.sec-2-home-13__stat-tag {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  background-color: rgba(10,10,10,0.12);
  color: var(--at-theme-primary);
  border-radius: 999px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

.sec-2-home-13__stat-num {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(48px, 5.5vw, 84px);
  line-height: 1.05;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

.sec-2-home-13__stat-cap {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-2-home-13 {
    padding: 96px 32px 0;
  }
  .sec-2-home-13__top {
    grid-template-columns: 320px 1fr;
    gap: 64px;
  }
  .sec-2-home-13__left {
    gap: 96px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-13 {
    padding: 80px 24px 0;
  }
  .sec-2-home-13__inner {
    gap: 64px;
  }
  .sec-2-home-13__top {
    grid-template-columns: 280px 1fr;
    gap: 48px;
  }
  .sec-2-home-13__left {
    gap: 64px;
  }
  .sec-2-home-13__right {
    gap: 48px;
  }
  .sec-2-home-13__media {
    height: 280px;
  }
  .sec-2-home-13__media--tall {
    height: 460px;
  }
  .sec-2-home-13__stats {
    padding: 48px 0 64px;
  }
  .sec-2-home-13__stat {
    padding: 0 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-13 {
    padding: 64px 20px 0;
  }
  .sec-2-home-13__top {
    grid-template-columns: 1fr;
    gap: 48px;
  }
  .sec-2-home-13__left {
    gap: 32px;
  }
  .sec-2-home-13__media {
    height: 240px;
  }
  .sec-2-home-13__media--tall {
    height: 380px;
  }
  .sec-2-home-13__caption-title {
    font-size: 28px;
  }
  .sec-2-home-13__stats {
    grid-template-columns: repeat(2, 1fr);
    padding: 48px 0 64px;
    gap: 48px 0;
  }
  .sec-2-home-13__stat {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-13 {
    padding: 48px 30px 0;
  }
  .sec-2-home-13__inner {
    gap: 48px;
  }
  .sec-2-home-13__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-2-home-13 {
    padding: 36px 30px 0;
  }
  .sec-2-home-13__intro-text {
    font-size: 15px;
  }
  .sec-2-home-13__team-avatar {
    width: 56px;
    height: 56px;
  }
  .sec-2-home-13__title {
    font-size: 28px;
  }
  .sec-2-home-13__stats {
    grid-template-columns: 1fr;
    gap: 32px 0;
    padding: 36px 0 48px;
  }
  .sec-2-home-13__stat {
    padding: 0;
  }
}
@media (max-width: 574.98px) {
  .sec-2-home-13 {
    padding: 36px 30px 0;
  }
  .sec-2-home-13__media--tall {
    height: 280px;
  }
  .sec-2-home-13__caption-title {
    font-size: 24px;
  }
  .sec-2-home-13__stats {
    grid-template-columns: 1fr;
    gap: 32px 0;
    padding: 36px 0 48px;
  }
  .sec-2-home-13__stat {
    padding: 0;
  }
}
/* Cascading mobile pivot: stack top grid for tablet & phone */
@media (max-width: 991.98px) {
  .sec-2-home-13__top {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .sec-2-home-13__left {
    gap: 32px;
  }
  .sec-2-home-13__right {
    gap: 32px;
  }
}
/* Cascading mobile pivot: single-column media grid for phone */
@media (max-width: 767.98px) {
  .sec-2-home-13__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
/* Home 13 / Section 3 — Selected Projects */
.sec-3-home-13 {
  background-color: var(--at-neutral-50);
  padding: 120px 96px;
}

.sec-3-home-13__inner {
  display: flex;
  flex-direction: column;
  gap: 80px;
}

/* ── Header ──────────────────────────────────── */
.sec-3-home-13__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
}

.sec-3-home-13__head-text {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.sec-3-home-13__label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.sec-3-home-13__label-dot {
  width: 8px;
  height: 8px;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}

.sec-3-home-13__label-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-700);
}

.sec-3-home-13__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(36px, 4.4vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
  max-width: 100%;
}

.sec-3-home-13__title-italic {
  display: block;
  font-style: italic;
}

.sec-3-home-13__cta {
  display: inline-flex;
  align-items: center;
  gap: 0;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-3-home-13__cta:hover, .sec-3-home-13__cta:focus-visible {
  opacity: 0.9;
}
.sec-3-home-13__cta:hover .sec-3-home-13__cta-icon svg, .sec-3-home-13__cta:focus-visible .sec-3-home-13__cta-icon svg {
  transform: translate(2px, -2px);
}

.sec-3-home-13__cta-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;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  white-space: nowrap;
}

.sec-3-home-13__cta-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%;
  margin-left: -1px;
}
.sec-3-home-13__cta-icon svg {
  transition: transform 0.3s ease;
}

/* ── Project list ────────────────────────────── */
.sec-3-home-13__list {
  display: flex;
  flex-direction: column;
}

.sec-3-home-13__card {
  display: grid;
  grid-template-columns: 360px 680px 1fr;
  gap: 48px;
  padding: 40px 8px;
  border-top: 1px solid var(--at-neutral-100);
  align-items: start;
}
.sec-3-home-13__card:last-child {
  border-bottom: 1px solid var(--at-neutral-100);
}

/* ── Card meta (left) ────────────────────────── */
.sec-3-home-13__card-meta {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 12px 0;
}

.sec-3-home-13__card-loc {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
  white-space: nowrap;
}

.sec-3-home-13__card-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 32px;
  line-height: 1.1875;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.sec-3-home-13__card-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-950);
  text-decoration: none;
  transition: color 0.3s ease;
}
.sec-3-home-13__card-link:hover, .sec-3-home-13__card-link:focus-visible {
  color: var(--at-theme-primary);
}

.sec-3-home-13__card-link-dots {
  color: var(--at-neutral-500);
  font-size: 11px;
  letter-spacing: 0.08em;
  line-height: 1;
}

/* ── Card media (middle) ─────────────────────── */
.sec-3-home-13__card-media {
  display: block;
  width: 100%;
  overflow: hidden;
}
.sec-3-home-13__card-media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}
.sec-3-home-13__card-media:hover img, .sec-3-home-13__card-media:focus-visible img {
  transform: scale(1.04);
}

/* ── Card info (right) ───────────────────────── */
.sec-3-home-13__card-info {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-top: 12px;
  min-width: 0;
}

.sec-3-home-13__card-desc {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

.sec-3-home-13__card-specs {
  display: flex;
  flex-direction: column;
  margin: 0;
}

.sec-3-home-13__card-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 0;
  border-bottom: 1px solid var(--at-neutral-100);
  gap: 16px;
}
.sec-3-home-13__card-row:first-child {
  border-top: 1px solid transparent;
}
.sec-3-home-13__card-row:last-child {
  border-bottom: none;
}
.sec-3-home-13__card-row dt {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
  margin: 0;
}
.sec-3-home-13__card-row dd {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  margin: 0;
  text-align: right;
}

/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-3-home-13 {
    padding: 96px 32px;
  }
  .sec-3-home-13__card {
    grid-template-columns: 280px 540px 1fr;
    gap: 32px;
  }
  .sec-3-home-13__card-media,
  .sec-3-home-13__card-meta {
    height: 380px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-3-home-13 {
    padding: 80px 24px;
  }
  .sec-3-home-13__inner {
    gap: 56px;
  }
  .sec-3-home-13__card {
    grid-template-columns: 240px 420px 1fr;
    gap: 24px;
    padding: 32px 0;
  }
  .sec-3-home-13__card-media,
  .sec-3-home-13__card-meta {
    height: 320px;
  }
  .sec-3-home-13__card-title {
    font-size: 26px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-3-home-13 {
    padding: 64px 20px;
  }
  .sec-3-home-13__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
  }
  .sec-3-home-13__card {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "media media" "meta info";
    gap: 24px;
    padding: 32px 0;
  }
  .sec-3-home-13__card-media {
    grid-area: media;
    height: 340px;
  }
  .sec-3-home-13__card-meta {
    grid-area: meta;
    height: auto;
    gap: 16px;
    justify-content: flex-start;
  }
  .sec-3-home-13__card-info {
    grid-area: info;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-home-13 {
    padding: 48px 30px;
  }
  .sec-3-home-13__inner {
    gap: 40px;
  }
  .sec-3-home-13__card {
    grid-template-columns: 1fr;
    grid-template-areas: "media" "meta" "info";
    gap: 20px;
    padding: 24px 0;
  }
  .sec-3-home-13__card-media {
    height: 280px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-3-home-13 {
    padding: 36px 30px;
  }
  .sec-3-home-13__cta-label {
    padding: 14px 20px;
  }
  .sec-3-home-13__card-media {
    height: 240px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-home-13 {
    padding: 36px 30px;
  }
  .sec-3-home-13__card-title {
    font-size: 22px;
  }
  .sec-3-home-13__card-row dd {
    font-size: 14px;
  }
}
/* Cascading mobile pivot: stack header for tablet & phone */
@media (max-width: 1199.98px) {
  .sec-3-home-13__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
  }
}
/* Cascading mobile pivot: single-column card layout for phone */
@media (max-width: 767.98px) {
  .sec-3-home-13__card {
    grid-template-columns: 1fr;
    grid-template-areas: "media" "meta" "info";
    gap: 20px;
    padding: 24px 0;
  }
  .sec-3-home-13__card-media {
    grid-area: media;
    height: auto;
  }
  .sec-3-home-13__card-meta {
    grid-area: meta;
    height: auto;
    gap: 16px;
    justify-content: flex-start;
  }
  .sec-3-home-13__card-info {
    grid-area: info;
  }
}
/* Home 13 / Section 4 — Build with us CTA */
.sec-4-home-13 {
  background-color: var(--at-neutral-50);
  padding: 32px;
}

.sec-4-home-13__card {
  position: relative;
  width: 100%;
  min-height: 800px;
  background-color: #0f0f0f;
  background-image: linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 48px 48px;
  background-position: 0 0;
  border-radius: 32px;
  overflow: hidden;
  isolation: isolate;
  padding: 48px 56px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--at-common-white);
}

.sec-4-home-13__glow {
  position: absolute !important;
  width: 1200px;
  height: 800px;
  bottom: 0;
  right: 0;
  transform: translateY(20%) translateX(20%);
  background: radial-gradient(closest-side, rgba(10,10,10,0.7) 0%, rgba(10,10,10,0.28) 45%, rgba(10,10,10,0) 75%);
  pointer-events: none;
  z-index: 0;
  opacity: 0.5;
}

.sec-4-home-13__card > * {
  position: relative;
  z-index: 1;
}

/* ── Top meta bar ────────────────────────────── */
.sec-4-home-13__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.55);
}

.sec-4-home-13__bar-left {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: rgba(255, 255, 255, 0.85);
}

.sec-4-home-13__bar-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  box-shadow: 0 0 10px rgba(10,10,10,0.6);
  flex-shrink: 0;
}

/* ── Heading ─────────────────────────────────── */
.sec-4-home-13__head {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-top: 56px;
}

.sec-4-home-13__tag {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--at-theme-primary);
  text-transform: uppercase;
}

.sec-4-home-13__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(64px, 14vw, 240px);
  line-height: 0.95;
  letter-spacing: -0.05em;
  color: var(--at-common-white);
}
.sec-4-home-13__title em {
  font-style: italic;
  font-weight: 500;
}

/* ── Bottom row ──────────────────────────────── */
.sec-4-home-13__bottom {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 64px;
}

.sec-4-home-13__copy {
  flex: 0 1 560px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 1440px) {
  .sec-4-home-13__copy {
    flex: 0 1 260px;
  }
}

.sec-4-home-13__lede {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: rgba(255, 255, 255, 0.65);
}

.sec-4-home-13__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0;
}

.sec-4-home-13__chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  color: var(--at-common-white);
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-decoration: none;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.sec-4-home-13__chip:hover, .sec-4-home-13__chip:focus-visible {
  background-color: var(--at-common-white);
  color: #0f0f0f;
  border-color: var(--at-common-white);
}

.sec-4-home-13__contact {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  text-align: right;
}

.sec-4-home-13__contact-label {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.55);
}

.sec-4-home-13__contact-row {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  color: var(--at-common-white);
  text-decoration: none;
  transition: color 0.3s ease;
}
.sec-4-home-13__contact-row:hover, .sec-4-home-13__contact-row:focus-visible {
  color: var(--at-theme-primary);
}

.sec-4-home-13__contact-mail {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.sec-4-home-13__contact-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  color: var(--at-common-white);
  transition: transform 0.3s ease;
}
.sec-4-home-13__contact-row:hover .sec-4-home-13__contact-arrow, .sec-4-home-13__contact-row:focus-visible .sec-4-home-13__contact-arrow {
  transform: rotate(-12deg);
}

/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-4-home-13 {
    padding: 24px;
  }
  .sec-4-home-13__card {
    min-height: 700px;
    padding: 40px 48px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-13__card {
    min-height: 600px;
    padding: 32px 40px;
    border-radius: 24px;
  }
  .sec-4-home-13__head {
    gap: 24px;
    padding-top: 32px;
  }
  .sec-4-home-13__bottom {
    gap: 32px;
  }
  .sec-4-home-13__contact-mail {
    font-size: 18px;
  }
  .sec-4-home-13__glow {
    width: 900px;
    height: 600px;
    right: -80px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-4-home-13 {
    padding: 16px;
  }
  .sec-4-home-13__card {
    min-height: 540px;
    padding: 28px 32px;
  }
  .sec-4-home-13__bar-center {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-13__card {
    min-height: 500px;
    padding: 24px;
    border-radius: 20px;
    gap: 56px;
  }
  .sec-4-home-13__head {
    padding-top: 40px;
  }
  .sec-4-home-13__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
  }
  .sec-4-home-13__contact {
    align-items: flex-start;
    text-align: left;
  }
  .sec-4-home-13__bar-right {
    display: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-home-13 {
    padding: 12px;
  }
  .sec-4-home-13__card {
    min-height: 500px;
    padding: 20px;
  }
  .sec-4-home-13__bar {
    font-size: 10px;
    gap: 12px;
  }
  .sec-4-home-13__contact-mail {
    font-size: 16px;
  }
  .sec-4-home-13__contact-arrow {
    width: 48px;
    height: 48px;
  }
}
@media (max-width: 574.98px) {
  .sec-4-home-13__card {
    min-height: 500px;
    padding: 18px;
  }
  .sec-4-home-13__title {
    font-size: 56px;
  }
  .sec-4-home-13__chip {
    font-size: 12px;
  }
}
/* Cascading mobile pivot: stack bottom row + left-align contact for tablet & phone */
@media (max-width: 991.98px) {
  .sec-4-home-13__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
  }
  .sec-4-home-13__copy {
    flex: 0 1 auto;
  }
  .sec-4-home-13__contact {
    align-items: flex-start;
    text-align: left;
  }
  .sec-4-home-13__bar-right {
    display: none;
  }
}
/* Phone: hide center coord bar; loosen card */
@media (max-width: 574.98px) {
  .sec-4-home-13__bar-center {
    display: none;
  }
  .sec-4-home-13__card {
    gap: 40px;
  }
}
/* Home 13 / Section 5 — Our Expertise */
.sec-5-home-13 {
  background-color: var(--at-neutral-50);
  padding: 120px 96px;
}

.sec-5-home-13__inner {
  display: flex;
  flex-direction: column;
  gap: 42px;
}

/* ── Header ──────────────────────────────────── */
.sec-5-home-13__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
}

.sec-5-home-13__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(48px, 5.5vw, 84px);
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}

.sec-5-home-13__hint {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
  text-transform: uppercase;
  max-width: 600px;
}

.sec-5-home-13__hint-dot {
  width: 8px;
  height: 8px;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}

/* ── List ────────────────────────────────────── */
.sec-5-home-13__list {
  display: flex;
  flex-direction: column;
  gap: 47px;
}

/* ── Card ────────────────────────────────────── */
.sec-5-home-13__card {
  display: grid;
  grid-template-columns: 583px 1fr;
  gap: 60px;
  background-color: var(--at-neutral-0);
  padding: 42px;
  align-items: center;
  border-radius: 4px;
}

.sec-5-home-13__card-media {
  width: 100%;
  height: 310px;
  overflow: hidden;
}
.sec-5-home-13__card-media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}
.sec-5-home-13__card:hover .sec-5-home-13__card-media img {
  transform: scale(1.04);
}

.sec-5-home-13__card-body {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
  padding-right: 16px;
}

.sec-5-home-13__card-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 1px solid var(--at-neutral-100);
  padding-bottom: 19px;
}

.sec-5-home-13__card-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 36px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}

.sec-5-home-13__card-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.sec-5-home-13__card-tag-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  white-space: nowrap;
}

.sec-5-home-13__card-toggle {
  width: 18px;
  height: 18px;
  background: transparent;
  border: 0;
  padding: 0;
  color: var(--at-neutral-900);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.3s ease, color 0.3s ease;
}
.sec-5-home-13__card-toggle:hover, .sec-5-home-13__card-toggle:focus-visible {
  color: var(--at-theme-primary);
  transform: rotate(90deg);
}

.sec-5-home-13__card-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 22px;
  line-height: 1.45;
  letter-spacing: -0.05em;
  color: var(--at-neutral-500);
  max-width: 803px;
}

/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-5-home-13 {
    padding: 96px 32px;
  }
  .sec-5-home-13__card {
    grid-template-columns: 460px 1fr;
    gap: 40px;
    padding: 32px;
  }
  .sec-5-home-13__card-media {
    height: 260px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-13 {
    padding: 80px 24px;
  }
  .sec-5-home-13__list {
    gap: 32px;
  }
  .sec-5-home-13__card {
    grid-template-columns: 380px 1fr;
    gap: 32px;
    padding: 24px;
  }
  .sec-5-home-13__card-media {
    height: 240px;
  }
  .sec-5-home-13__card-title {
    font-size: 28px;
  }
  .sec-5-home-13__card-text {
    font-size: 18px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-home-13 {
    padding: 64px 20px;
  }
  .sec-5-home-13__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .sec-5-home-13__card {
    grid-template-columns: 320px 1fr;
    gap: 24px;
    padding: 20px;
  }
  .sec-5-home-13__card-media {
    height: 220px;
  }
  .sec-5-home-13__card-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .sec-5-home-13__card-title {
    font-size: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-home-13 {
    padding: 48px 30px;
  }
  .sec-5-home-13__list {
    gap: 24px;
  }
  .sec-5-home-13__card {
    grid-template-columns: 1fr;
    padding: 20px;
  }
  .sec-5-home-13__card-media {
    height: 240px;
  }
  .sec-5-home-13__card-text {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-5-home-13 {
    padding: 36px 30px;
  }
  .sec-5-home-13__card-media {
    height: 200px;
  }
  .sec-5-home-13__card-title {
    font-size: 22px;
  }
  .sec-5-home-13__card-tag-text {
    font-size: 13px;
  }
}
@media (max-width: 574.98px) {
  .sec-5-home-13 {
    padding: 36px 30px;
  }
  .sec-5-home-13__card {
    padding: 16px;
  }
  .sec-5-home-13__card-media {
    height: 180px;
  }
  .sec-5-home-13__card-title {
    font-size: 20px;
  }
  .sec-5-home-13__card-text {
    font-size: 15px;
  }
}
/* Cascading mobile pivot: stack header + card-head for tablet & phone */
@media (max-width: 1199.98px) {
  .sec-5-home-13__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .sec-5-home-13__card-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
/* Cascading mobile pivot: single-column card layout for phone */
@media (max-width: 767.98px) {
  .sec-5-home-13__card {
    grid-template-columns: 1fr;
  }
}
/* Home 13 / Section 6 — Our Process Timeline */
.sec-6-home-13 {
  background-color: var(--at-neutral-50);
  padding: 0 96px 120px 96px;
  position: relative;
  overflow: hidden;
}

.sec-6-home-13__dots {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(to right, rgb(12 12 12 / 5%) 1px, transparent 1px), linear-gradient(to bottom, rgb(12 12 12 / 5%) 1px, transparent 1px);
  background-size: 96px 96px;
  pointer-events: none;
  z-index: 0;
  mask-image: radial-gradient(ellipse 80% 60% at center, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.1));
  -webkit-mask-image: radial-gradient(ellipse 80% 60% at center, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.1));
}

.sec-6-home-13__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 80px;
}

/* ── Header ──────────────────────────────────── */
.sec-6-home-13__header {
  display: grid;
  grid-template-columns: minmax(0, 900px) 440px;
  gap: 96px;
  align-items: start;
}

.sec-6-home-13__head-left {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.sec-6-home-13__label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.sec-6-home-13__label-dot {
  width: 8px;
  height: 8px;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}

.sec-6-home-13__label-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-700);
}

.sec-6-home-13__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 4.4vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.sec-6-home-13__head-right {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-top: 16px;
}

.sec-6-home-13__desc {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}

.sec-6-home-13__metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  padding: 0;
}

.sec-6-home-13__metric {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.sec-6-home-13__metric-num {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 32px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.sec-6-home-13__metric-label {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
}

/* ── Timeline ────────────────────────────────── */
.sec-6-home-13__timeline {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  border-top: 1px solid var(--at-neutral-100);
  padding-top: 24px;
}

.sec-6-home-13__phase {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0 0 0 28px;
  border-left: 1px solid var(--at-neutral-100);
  position: relative;
}
.sec-6-home-13__phase:first-child {
  border-left: none;
  padding-left: 0;
}
.sec-6-home-13__phase:first-child .sec-6-home-13__phase-head {
  padding-left: 28px;
}
.sec-6-home-13__phase:first-child .sec-6-home-13__phase-body,
.sec-6-home-13__phase:first-child .sec-6-home-13__phase-deliv {
  padding-left: 28px;
}

.sec-6-home-13__phase-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 80px;
}

.sec-6-home-13__phase-id {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.sec-6-home-13__phase-dot {
  position: relative;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-300);
  flex-shrink: 0;
  transition: width 0.3s ease, height 0.3s ease, background-color 0.3s ease;
}
.sec-6-home-13__phase-dot::before, .sec-6-home-13__phase-dot::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  opacity: 0;
  pointer-events: none;
}

.sec-6-home-13__phase-num {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}

.sec-6-home-13__phase-week {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--at-neutral-500);
  white-space: nowrap;
  padding-right: 28px;
}

.sec-6-home-13__phase-body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-bottom: 32px;
  padding-right: 28px;
}

.sec-6-home-13__phase-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 32px;
  line-height: 1.125;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.sec-6-home-13__phase-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

.sec-6-home-13__phase-deliv {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 20px;
  padding-right: 28px;
  border-top: 1px solid var(--at-neutral-100);
}

.sec-6-home-13__phase-deliv-label {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--at-neutral-500);
}

.sec-6-home-13__phase-deliv-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0;
}
.sec-6-home-13__phase-deliv-list li {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
}
.sec-6-home-13__phase-deliv-list li span:first-child {
  color: var(--at-theme-primary);
  font-weight: 500;
  width: 8px;
  text-align: center;
}

/* Active phase state */
.sec-6-home-13__phase--active .sec-6-home-13__phase-dot {
  width: 12px;
  height: 12px;
  background-color: var(--at-theme-primary);
}
.sec-6-home-13__phase--active .sec-6-home-13__phase-dot::before, .sec-6-home-13__phase--active .sec-6-home-13__phase-dot::after {
  animation: sec-6-home-13-ripple 1.8s cubic-bezier(0.22, 0.61, 0.36, 1) infinite;
}
.sec-6-home-13__phase--active .sec-6-home-13__phase-dot::after {
  animation-delay: 0.9s;
}

@keyframes sec-6-home-13-ripple {
  0% {
    opacity: 0.55;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(4);
  }
}
/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-6-home-13 {
    padding: 96px 32px;
  }
  .sec-6-home-13__header {
    grid-template-columns: 1fr 360px;
    gap: 48px;
  }
  .sec-6-home-13__phase-title {
    font-size: 26px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-6-home-13 {
    padding: 80px 24px;
  }
  .sec-6-home-13__inner {
    gap: 56px;
  }
  .sec-6-home-13__header {
    grid-template-columns: 1fr 320px;
    gap: 32px;
  }
  .sec-6-home-13__phase {
    padding-left: 16px;
  }
  .sec-6-home-13__phase:first-child .sec-6-home-13__phase-head,
  .sec-6-home-13__phase:first-child .sec-6-home-13__phase-body,
  .sec-6-home-13__phase:first-child .sec-6-home-13__phase-deliv {
    padding-left: 16px;
  }
  .sec-6-home-13__phase-head,
  .sec-6-home-13__phase-body,
  .sec-6-home-13__phase-deliv {
    padding-right: 16px;
  }
  .sec-6-home-13__phase-title {
    font-size: 22px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home-13 {
    padding: 64px 20px;
  }
  .sec-6-home-13__header {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .sec-6-home-13__head-right {
    padding-top: 0;
  }
  .sec-6-home-13__timeline {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 0;
  }
  .sec-6-home-13__phase {
    padding-bottom: 0;
    border-bottom: 1px solid var(--at-neutral-100);
    border-left-width: 0;
  }
  .sec-6-home-13__phase:nth-child(2n+1) {
    border-left: none;
    padding-left: 16px;
  }
  .sec-6-home-13__phase:nth-child(2n+1) .sec-6-home-13__phase-head,
  .sec-6-home-13__phase:nth-child(2n+1) .sec-6-home-13__phase-body,
  .sec-6-home-13__phase:nth-child(2n+1) .sec-6-home-13__phase-deliv {
    padding-left: 16px;
  }
  .sec-6-home-13__phase:nth-child(2n) {
    border-left: 1px solid var(--at-neutral-100);
    padding-left: 16px;
  }
  .sec-6-home-13__phase:nth-child(2n) .sec-6-home-13__phase-head,
  .sec-6-home-13__phase:nth-child(2n) .sec-6-home-13__phase-body,
  .sec-6-home-13__phase:nth-child(2n) .sec-6-home-13__phase-deliv {
    padding-left: 16px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home-13 {
    padding: 48px 16px;
  }
  .sec-6-home-13__inner {
    gap: 40px;
  }
  .sec-6-home-13__timeline {
    grid-template-columns: 1fr;
  }
  .sec-6-home-13__phase {
    padding: 24px 16px !important;
    border-left: none !important;
    border-top: 1px solid var(--at-neutral-100);
  }
  .sec-6-home-13__phase .sec-6-home-13__phase-head,
  .sec-6-home-13__phase .sec-6-home-13__phase-body,
  .sec-6-home-13__phase .sec-6-home-13__phase-deliv {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .sec-6-home-13__phase-head {
    padding-bottom: 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-6-home-13 {
    padding: 36px 12px;
  }
  .sec-6-home-13__metric-num {
    font-size: 24px;
  }
  .sec-6-home-13__phase-title {
    font-size: 20px;
  }
}
@media (max-width: 574.98px) {
  .sec-6-home-13 {
    padding: 28px 30px;
  }
  .sec-6-home-13__inner {
    gap: 32px;
  }
  .sec-6-home-13__metric-num {
    font-size: 22px;
  }
  .sec-6-home-13__phase-title {
    font-size: 20px;
  }
}
/* Cascading mobile pivot: single-column header for tablet & phone */
@media (max-width: 1199.98px) {
  .sec-6-home-13__header {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .sec-6-home-13__head-right {
    padding-top: 0;
  }
  .sec-6-home-13__dots {
    background-size: 48px 48px;
  }
}
/* Cascading mobile pivot: single-column timeline for phone */
@media (max-width: 767.98px) {
  .sec-6-home-13__timeline {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .sec-6-home-13__phase {
    padding: 24px 16px !important;
    border-left: none !important;
    border-top: 1px solid var(--at-neutral-100);
  }
  .sec-6-home-13__phase:first-child .sec-6-home-13__phase-head,
  .sec-6-home-13__phase:first-child .sec-6-home-13__phase-body,
  .sec-6-home-13__phase:first-child .sec-6-home-13__phase-deliv {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .sec-6-home-13__phase:nth-child(2n+1), .sec-6-home-13__phase:nth-child(2n) {
    border-left: none !important;
    padding-left: 16px !important;
  }
  .sec-6-home-13__phase:nth-child(2n+1) .sec-6-home-13__phase-head,
  .sec-6-home-13__phase:nth-child(2n+1) .sec-6-home-13__phase-body,
  .sec-6-home-13__phase:nth-child(2n+1) .sec-6-home-13__phase-deliv, .sec-6-home-13__phase:nth-child(2n) .sec-6-home-13__phase-head,
  .sec-6-home-13__phase:nth-child(2n) .sec-6-home-13__phase-body,
  .sec-6-home-13__phase:nth-child(2n) .sec-6-home-13__phase-deliv {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .sec-6-home-13__phase-head {
    padding-bottom: 24px;
  }
}
/* Home 13 / Section 7 — Testimonial */
.sec-7-home-13 {
  background-color: var(--at-neutral-0);
  padding: 120px 96px;
}

.sec-7-home-13__inner {
  display: grid;
  grid-template-columns: 620px 1fr;
  gap: 64px;
  align-items: stretch;
}

/* ── Media ───────────────────────────────────── */
.sec-7-home-13__media {
  width: 100%;
  height: 760px;
  border-radius: 24px;
  overflow: hidden;
  background-color: var(--at-neutral-100);
}
.sec-7-home-13__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.sec-7-home-13__media-slider {
  width: 100%;
  height: 100%;
  cursor: grab;
}
.sec-7-home-13__media-slider:active {
  cursor: grabbing;
}
.sec-7-home-13__media-slider .swiper-wrapper,
.sec-7-home-13__media-slider .swiper-slide {
  height: 100%;
}

.sec-7-home-13__quote-slider {
  width: 100%;
  cursor: grab;
}
.sec-7-home-13__quote-slider:active {
  cursor: grabbing;
}
.sec-7-home-13__quote-slider .swiper-slide {
  height: auto;
}

/* ── Content ─────────────────────────────────── */
.sec-7-home-13__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 32px;
  min-width: 0;
}
@media (min-width: 1200px) {
  .sec-7-home-13__content {
    min-height: 760px;
  }
}

/* ── Head ────────────────────────────────────── */
.sec-7-home-13__head {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.sec-7-home-13__label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.sec-7-home-13__label-dot {
  width: 8px;
  height: 8px;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}

.sec-7-home-13__label-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}

.sec-7-home-13__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(32px, 3.2vw, 56px);
  line-height: 1.143;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.sec-7-home-13__lede {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  max-width: 773px;
}

/* ── Quote ───────────────────────────────────── */
.sec-7-home-13__quote {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: 0;
}

.sec-7-home-13__quote-mark {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 96px;
  line-height: 0.65;
  color: var(--at-theme-primary);
  display: inline-block;
}

.sec-7-home-13__quote-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 22px;
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
}

.sec-7-home-13__quote-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 16px;
  flex-wrap: wrap;
}

.sec-7-home-13__author {
  display: inline-flex;
  align-items: center;
  gap: 16px;
}

.sec-7-home-13__author-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  font-style: normal;
}

.sec-7-home-13__author-sep {
  width: 24px;
  height: 1px;
  background-color: var(--at-neutral-500);
}

.sec-7-home-13__author-project {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}

.sec-7-home-13__stars {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0;
}

/* ── CTA ─────────────────────────────────────── */
.sec-7-home-13__cta {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  align-self: flex-start;
  transition: opacity 0.3s ease;
}
.sec-7-home-13__cta:hover, .sec-7-home-13__cta:focus-visible {
  opacity: 0.85;
}

.sec-7-home-13__cta-label {
  display: inline-flex;
  align-items: center;
  height: 50px;
  padding: 14px 27px;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  color: var(--at-neutral-900);
  border-radius: 50px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  white-space: nowrap;
}

.sec-7-home-13__cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-100);
  color: var(--at-neutral-900);
  border-radius: 50%;
  margin-left: -1px;
}
.sec-7-home-13__cta-icon svg {
  transition: transform 0.3s ease;
}

.sec-7-home-13__cta:hover .sec-7-home-13__cta-icon svg,
.sec-7-home-13__cta:focus-visible .sec-7-home-13__cta-icon svg {
  transform: rotate(-12deg);
}

/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-7-home-13 {
    padding: 96px 32px;
  }
  .sec-7-home-13__inner {
    grid-template-columns: 480px 1fr;
    gap: 48px;
  }
  .sec-7-home-13__media,
  .sec-7-home-13__content {
    height: 640px;
    min-height: 640px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-7-home-13 {
    padding: 80px 24px;
  }
  .sec-7-home-13__inner {
    grid-template-columns: 400px 1fr;
    gap: 32px;
  }
  .sec-7-home-13__media,
  .sec-7-home-13__content {
    height: 560px;
    min-height: 560px;
  }
  .sec-7-home-13__quote-text {
    font-size: 18px;
  }
  .sec-7-home-13__lede {
    font-size: 18px;
  }
}
/* Stack inner as flex column on tablet & phone */
@media (max-width: 1199.98px) {
  .sec-7-home-13__inner {
    display: flex;
    flex-direction: column;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-7-home-13 {
    padding: 64px 20px;
  }
  .sec-7-home-13__inner {
    gap: 32px;
  }
  .sec-7-home-13__media {
    height: 480px;
  }
  .sec-7-home-13__content {
    min-height: auto;
    height: auto;
    gap: 32px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-13 {
    padding: 48px 30px;
  }
  .sec-7-home-13__media {
    height: 420px;
    border-radius: 16px;
  }
  .sec-7-home-13__title {
    font-size: 28px;
  }
  .sec-7-home-13__quote-mark {
    font-size: 72px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-7-home-13 {
    padding: 36px 30px;
  }
  .sec-7-home-13__media {
    height: 360px;
  }
  .sec-7-home-13__quote-foot {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
  }
}
@media (max-width: 574.98px) {
  .sec-7-home-13 {
    padding: 36px 30px;
  }
  .sec-7-home-13__media {
    height: 320px;
  }
  .sec-7-home-13__title {
    font-size: 24px;
  }
  .sec-7-home-13__quote-text {
    font-size: 16px;
  }
}
/* Home 13 / Section 8 — The Orisa Distinction */
.sec-8-home-13 {
  background-color: var(--at-neutral-50);
  padding: 120px 96px;
}

.sec-8-home-13__inner {
  display: flex;
  flex-direction: column;
  gap: 80px;
}

/* ── Top wrapper ─────────────────────────────── */
.sec-8-home-13__top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
}

.sec-8-home-13__head {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 1100px;
}

.sec-8-home-13__tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  text-decoration: none;
  transition: color 0.3s ease;
}
.sec-8-home-13__tag:hover, .sec-8-home-13__tag:focus-visible {
  color: var(--at-theme-primary);
}
.sec-8-home-13__tag svg {
  transition: transform 0.3s ease;
}
.sec-8-home-13__tag:hover svg, .sec-8-home-13__tag:focus-visible svg {
  transform: translate(2px, -2px);
}

.sec-8-home-13__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 5vw, 72px);
  line-height: 1.111;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
}

.sec-8-home-13__cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 50px;
  padding: 14px 27px;
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  border-radius: 50px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  text-decoration: none;
  flex-shrink: 0;
  transition: opacity 0.3s ease;
}
.sec-8-home-13__cta:hover, .sec-8-home-13__cta:focus-visible {
  color: var(--at-neutral-0);
  opacity: 0.9;
}
.sec-8-home-13__cta svg {
  transition: transform 0.3s ease;
}
.sec-8-home-13__cta:hover svg, .sec-8-home-13__cta:focus-visible svg {
  transform: translate(2px, -2px);
}

/* ── Body ────────────────────────────────────── */
.sec-8-home-13__body {
  display: grid;
  grid-template-columns: 620px 1fr;
  gap: 64px;
  align-items: start;
}

/* ── Left ────────────────────────────────────── */
.sec-8-home-13__left {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.sec-8-home-13__media {
  width: 100%;
  overflow: hidden;
}
.sec-8-home-13__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: opacity 0.3s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.sec-8-home-13__media.is-changing img {
  opacity: 0;
}

.sec-8-home-13__lede {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 22px;
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  transition: opacity 0.3s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.sec-8-home-13__lede.is-changing {
  opacity: 0;
}

/* ── List ────────────────────────────────────── */
.sec-8-home-13__list {
  display: flex;
  flex-direction: column;
  padding: 0;
  margin: 0;
  border-top: 1px solid var(--at-neutral-100);
}

.sec-8-home-13__item {
  border-bottom: 1px solid var(--at-neutral-100);
  transition: border-color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.sec-8-home-13__row {
  display: grid;
  grid-template-columns: 100px 1fr auto;
  gap: 32px;
  align-items: center;
  padding: 28px 8px;
  text-decoration: none;
  transition: background-color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.sec-8-home-13__row-num {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 32px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
  transition: color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.sec-8-home-13__row-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 28px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
  transition: color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), font-size 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.sec-8-home-13__row-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid var(--at-neutral-300);
  color: var(--at-neutral-950);
  background-color: transparent;
  flex-shrink: 0;
  transition: background-color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), width 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), height 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.sec-8-home-13__row-arrow svg {
  transition: width 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), height 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* Active / hover state */
.sec-8-home-13__item--active .sec-8-home-13__row .sec-8-home-13__row-name,
.sec-8-home-13__row:hover .sec-8-home-13__row-name,
.sec-8-home-13__row:focus-visible .sec-8-home-13__row-name {
  font-size: 36px;
}
.sec-8-home-13__item--active .sec-8-home-13__row .sec-8-home-13__row-arrow,
.sec-8-home-13__row:hover .sec-8-home-13__row-arrow,
.sec-8-home-13__row:focus-visible .sec-8-home-13__row-arrow {
  width: 56px;
  height: 56px;
  background-color: var(--at-theme-primary);
  border-color: var(--at-theme-primary);
  color: var(--at-common-white);
}
.sec-8-home-13__item--active .sec-8-home-13__row .sec-8-home-13__row-arrow svg,
.sec-8-home-13__row:hover .sec-8-home-13__row-arrow svg,
.sec-8-home-13__row:focus-visible .sec-8-home-13__row-arrow svg {
  width: 22px;
  height: 22px;
}

.sec-8-home-13__row:hover .sec-8-home-13__row-arrow,
.sec-8-home-13__row:focus-visible .sec-8-home-13__row-arrow {
  transform: rotate(-12deg);
}

/* ── Responsive ──────────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-8-home-13 {
    padding: 96px 32px;
  }
  .sec-8-home-13__body {
    grid-template-columns: 480px 1fr;
    gap: 48px;
  }
  .sec-8-home-13__media {
    height: 420px;
  }
  .sec-8-home-13__row-name {
    font-size: 22px;
  }
  .sec-8-home-13__item--active .sec-8-home-13__row .sec-8-home-13__row-name,
  .sec-8-home-13__row:hover .sec-8-home-13__row-name {
    font-size: 28px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-13 {
    padding: 80px 24px;
  }
  .sec-8-home-13__inner {
    gap: 56px;
  }
  .sec-8-home-13__body {
    grid-template-columns: 380px 1fr;
    gap: 32px;
  }
  .sec-8-home-13__media {
    height: 360px;
  }
  .sec-8-home-13__lede {
    font-size: 18px;
  }
  .sec-8-home-13__row {
    grid-template-columns: 80px 1fr auto;
    gap: 16px;
    padding: 20px 8px;
  }
  .sec-8-home-13__row-num {
    font-size: 24px;
  }
  .sec-8-home-13__row-name {
    font-size: 18px;
  }
  .sec-8-home-13__item--active .sec-8-home-13__row .sec-8-home-13__row-name,
  .sec-8-home-13__row:hover .sec-8-home-13__row-name {
    font-size: 22px;
  }
}
/* Stack body as flex column on tablet & phone */
@media (max-width: 1199.98px) {
  .sec-8-home-13__body {
    display: flex;
    flex-direction: column;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home-13 {
    padding: 64px 20px;
  }
  .sec-8-home-13__top {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
  }
  .sec-8-home-13__body {
    gap: 32px;
  }
  .sec-8-home-13__media {
    height: 380px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-13 {
    padding: 48px 30px;
  }
  .sec-8-home-13__inner {
    gap: 40px;
  }
  .sec-8-home-13__media {
    height: 320px;
  }
  .sec-8-home-13__row-arrow {
    width: 36px;
    height: 36px;
  }
  .sec-8-home-13__item--active .sec-8-home-13__row .sec-8-home-13__row-arrow,
  .sec-8-home-13__row:hover .sec-8-home-13__row-arrow {
    width: 44px;
    height: 44px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-13 {
    padding: 36px 30px;
  }
  .sec-8-home-13__media {
    height: 260px;
  }
  .sec-8-home-13__row {
    grid-template-columns: 60px 1fr auto;
    padding: 16px 4px;
  }
  .sec-8-home-13__row-num {
    font-size: 20px;
  }
  .sec-8-home-13__row-name {
    font-size: 16px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-13 {
    padding: 36px 30px;
  }
  .sec-8-home-13__title {
    font-size: 32px;
  }
  .sec-8-home-13__lede {
    font-size: 16px;
  }
  .sec-8-home-13__row-name {
    font-size: 14px;
  }
}
/* Cascading mobile pivot: stack top wrapper for tablet & phone */
@media (max-width: 1199.98px) {
  .sec-8-home-13__top {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
  }
}
/* Cascading mobile pivot: shrink row grid for small phones */
@media (max-width: 574.98px) {
  .sec-8-home-13__row {
    grid-template-columns: 56px 1fr auto;
    gap: 12px;
    padding: 16px 4px;
  }
  .sec-8-home-13__row-num {
    font-size: 18px;
  }
}
/* ===========================================================
   Section 1 — Home 14 (Photography Hero)
   =========================================================== */
.sec-1-home-14 {
  padding-top: 164px;
  padding-bottom: 80px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-14 {
    padding-top: 148px;
    padding-bottom: 64px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-14 {
    padding-top: 136px;
    padding-bottom: 48px;
  }
}
.sec-1-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-1-home-14 {
  /* Top row */
}
.sec-1-home-14__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 32px;
}
.sec-1-home-14__tagline {
  font-family: var(--at-ff-body);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--at-neutral-950);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-14__tagline {
    font-size: 10px;
    letter-spacing: 1.5px;
  }
}
.sec-1-home-14__counter {
  font-family: var(--at-ff-body);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
  color: var(--at-neutral-950);
}
.sec-1-home-14 {
  /* Headline */
}
.sec-1-home-14__headline {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 6.5vw, 110px);
  line-height: 1;
  letter-spacing: -0.045em;
  color: var(--at-neutral-950);
  margin-bottom: 28px;
}
@media (max-width: 574.98px) {
  .sec-1-home-14__headline br {
    display: none;
  }
}
.sec-1-home-14 {
  /* Sub row */
}
.sec-1-home-14__sub {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
  margin-bottom: 48px;
}
@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-14__sub {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
  }
}
.sec-1-home-14__copy {
  font-family: var(--at-ff-body);
  font-size: 18px;
  line-height: 1.5;
  color: var(--at-neutral-500);
  max-width: 720px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-14__copy {
    font-size: 17px;
  }
}
@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-14__copy {
    font-size: 16px;
  }
  .sec-1-home-14__copy br {
    display: none;
  }
}
.sec-1-home-14__cta {
  display: inline-flex;
  align-items: center;
  gap: 34px;
  flex-shrink: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-14__cta {
    flex-wrap: wrap;
    gap: 20px;
  }
}
.sec-1-home-14__btn-primary {
  display: inline-flex;
  align-items: stretch;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-1-home-14__btn-primary .sec-1-home-14__btn-label {
  display: inline-flex;
  align-items: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  padding: 14px 27px;
  border-radius: 50px 0 0 50px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  white-space: nowrap;
  line-height: 1;
}
.sec-1-home-14__btn-primary .sec-1-home-14__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-left: 2px;
}
.sec-1-home-14__btn-primary:hover {
  opacity: 0.85;
  color: var(--at-neutral-0);
}
.sec-1-home-14__btn-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--at-neutral-900);
  color: var(--at-neutral-900);
  text-decoration: none;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  line-height: 1;
  transition: opacity 0.3s ease;
}
.sec-1-home-14__btn-link:hover {
  opacity: 0.7;
  color: var(--at-neutral-900);
}
.sec-1-home-14 {
  /* Hero image card */
}
.sec-1-home-14__hero {
  position: relative;
  margin: 0 0 24px 0;
  overflow: hidden;
  border-radius: 16px;
  aspect-ratio: 1720/880;
}
@media (max-width: 574.98px) {
  .sec-1-home-14__hero {
    aspect-ratio: 4/5;
  }
}
.sec-1-home-14__hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.sec-1-home-14__hero-overlay {
  position: absolute;
  inset: 0;
  padding: 48px 56px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--at-common-white);
  pointer-events: none;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-14__hero-overlay {
    padding: 36px 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-14__hero-overlay {
    padding: 24px 20px;
  }
}
.sec-1-home-14__hero-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  font-size: 11px;
  color: var(--at-common-white);
}
@media (max-width: 574.98px) {
  .sec-1-home-14__hero-top {
    flex-direction: column;
    gap: 8px;
  }
}
.sec-1-home-14__hero-caption {
  font-family: var(--at-ff-body);
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.sec-1-home-14__hero-credit {
  font-family: var(--at-ff-body);
  font-weight: 400;
  opacity: 0.7;
  letter-spacing: 0.4px;
}
.sec-1-home-14__hero-bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  color: var(--at-common-white);
}
@media (max-width: 574.98px) {
  .sec-1-home-14__hero-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
}
.sec-1-home-14__hero-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sec-1-home-14__hero-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 28px;
  letter-spacing: -0.5px;
  line-height: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-14__hero-title {
    font-size: 22px;
  }
}
.sec-1-home-14__hero-sub {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.6px;
  opacity: 0.7;
}
.sec-1-home-14__hero-scroll {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
}
.sec-1-home-14__hero-scroll-label {
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 2px;
}
.sec-1-home-14__hero-scroll-arrow {
  font-weight: 500;
  font-size: 14px;
}
.sec-1-home-14 {
  /* Tags row */
}
.sec-1-home-14__tags {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 20px 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-14__tags {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 18px 24px;
  }
}
.sec-1-home-14__tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--at-ff-body);
  font-weight: 500;
}
.sec-1-home-14__tag-num {
  font-size: 11px;
  letter-spacing: 1.2px;
  color: var(--at-neutral-500);
}
.sec-1-home-14__tag-name {
  font-size: 14px;
  letter-spacing: 0.4px;
  color: var(--at-neutral-950);
}

/* ===========================================================
   Section 2 — Home 14 (The Studio)
   =========================================================== */
.sec-2-home-14 {
  padding-top: 80px;
  padding-bottom: 0;
  background-color: var(--at-neutral-0);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-14 {
    padding-top: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-14 {
    padding-top: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-14 {
    padding-top: 46px;
  }
}
.sec-2-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-2-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-2-home-14 {
  /* Eyebrow */
}
.sec-2-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.18em;
}
.sec-2-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
}
.sec-2-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-950);
  letter-spacing: 2px;
}
.sec-2-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-2-home-14 {
  /* Main row */
}
.sec-2-home-14__main {
  display: grid;
  grid-template-columns: 640px 1fr;
  gap: 80px;
  align-items: start;
}
@media only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-2-home-14__main {
    grid-template-columns: 540px 1fr;
    gap: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-14__main {
    grid-template-columns: 460px 1fr;
    gap: 48px;
  }
}
@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-2-home-14__main {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.sec-2-home-14 {
  /* Portrait column */
}
.sec-2-home-14__portrait-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.sec-2-home-14__portrait {
  position: relative;
  aspect-ratio: 640/800;
  overflow: hidden;
  border-radius: 4px;
  background-color: var(--at-neutral-900);
}
.sec-2-home-14__portrait-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.sec-2-home-14__portrait-overlay {
  position: absolute;
  inset: 0;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--at-common-white);
  pointer-events: none;
}
.sec-2-home-14__portrait-tag {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--at-common-white);
  opacity: 0.7;
}
.sec-2-home-14__portrait-caption {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  letter-spacing: 0.4px;
  color: var(--at-common-white);
}
.sec-2-home-14__portrait-name {
  font-weight: 500;
}
.sec-2-home-14__portrait-year {
  font-weight: 400;
  opacity: 0.7;
}
.sec-2-home-14__portrait-note {
  font-family: var(--at-ff-body);
  font-size: 13px;
  line-height: 1.5;
  color: var(--at-neutral-500);
}
.sec-2-home-14 {
  /* Manifesto column */
}
.sec-2-home-14__manifesto-col {
  display: flex;
  flex-direction: column;
}
.sec-2-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(36px, 5.2vw, 88px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-950);
  margin-bottom: 40px;
}
@media (max-width: 574.98px) {
  .sec-2-home-14__title br {
    display: none;
  }
}
.sec-2-home-14__body {
  font-family: var(--at-ff-body);
  font-size: 18px;
  line-height: 1.65;
  color: var(--at-neutral-950);
  margin-bottom: 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) {
  .sec-2-home-14__body {
    font-size: 16px;
  }
}
.sec-2-home-14__body p {
  margin-bottom: 1.5em;
}
.sec-2-home-14__body p:last-child {
  margin-bottom: 0;
}
.sec-2-home-14__signature {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.sec-2-home-14__signature-block {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sec-2-home-14__signature-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 28px;
  letter-spacing: -0.5px;
  line-height: 1;
  color: var(--at-neutral-950);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-14__signature-name {
    font-size: 24px;
  }
}
.sec-2-home-14__signature-role {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.4px;
  color: var(--at-neutral-500);
}
.sec-2-home-14__btn-primary {
  display: inline-flex;
  align-items: stretch;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-2-home-14__btn-primary .sec-2-home-14__btn-label {
  display: inline-flex;
  align-items: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  padding: 14px 27px;
  border-radius: 50px 0 0 50px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  line-height: 1;
  white-space: nowrap;
}
.sec-2-home-14__btn-primary .sec-2-home-14__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-left: 2px;
}
.sec-2-home-14__btn-primary:hover {
  opacity: 0.85;
  color: var(--at-neutral-0);
}
.sec-2-home-14 {
  /* Stats row */
}
.sec-2-home-14__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 100px;
  padding: 40px 0;
  border-top: 1px solid var(--at-neutral-200);
  border-bottom: 1px solid var(--at-neutral-200);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-14__stats {
    margin-top: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-14__stats {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 32px;
    margin-top: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-14__stats {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 24px;
    margin-top: 48px;
    padding: 32px 0;
  }
}
.sec-2-home-14__stat {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 0 24px;
  border-left: 1px solid var(--at-neutral-200);
}
.sec-2-home-14__stat:first-child {
  border-left: 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) {
  .sec-2-home-14__stat {
    padding: 0 16px;
    gap: 8px;
  }
  .sec-2-home-14__stat:nth-child(odd) {
    border-left: 0;
  }
}
.sec-2-home-14__stat-num {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 84px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-14__stat-num {
    font-size: 64px;
  }
}
@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-2-home-14__stat-num {
    font-size: 56px;
  }
}
.sec-2-home-14__stat-label {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.32px;
  color: var(--at-neutral-500);
}
.sec-2-home-14__stat-note {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.6px;
  color: var(--at-neutral-500);
  text-transform: uppercase;
}

/* ===========================================================
   Section 3 — Home 14 (Selected Series)
   =========================================================== */
.sec-3-home-14 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-0);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-3-home-14 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-home-14 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-home-14 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.sec-3-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-3-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-3-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-3-home-14 {
  /* Header row */
}
.sec-3-home-14__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  margin-bottom: 64px;
}
@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-3-home-14__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
}
.sec-3-home-14__head-left {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 1100px;
}
.sec-3-home-14__head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  max-width: 360px;
}
@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-3-home-14__head-right {
    align-items: flex-start;
    max-width: none;
  }
}
.sec-3-home-14__head-copy {
  font-family: var(--at-ff-body);
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-500);
  text-align: right;
}
@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-3-home-14__head-copy {
    text-align: left;
  }
  .sec-3-home-14__head-copy br {
    display: none;
  }
}
.sec-3-home-14 {
  /* Eyebrow */
}
.sec-3-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-3-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
}
.sec-3-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-950);
  letter-spacing: 2px;
}
.sec-3-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-3-home-14 {
  /* Title */
}
.sec-3-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(36px, 4.8vw, 80px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-950);
}
@media (max-width: 574.98px) {
  .sec-3-home-14__title br {
    display: none;
  }
}
.sec-3-home-14 {
  /* Primary button */
}
.sec-3-home-14__btn-primary {
  display: inline-flex;
  align-items: stretch;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-3-home-14__btn-primary .sec-3-home-14__btn-label {
  display: inline-flex;
  align-items: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  padding: 14px 27px;
  border-radius: 50px 0 0 50px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  line-height: 1;
  white-space: nowrap;
}
.sec-3-home-14__btn-primary .sec-3-home-14__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-left: 2px;
}
.sec-3-home-14__btn-primary:hover {
  opacity: 0.85;
  color: var(--at-neutral-0);
}
.sec-3-home-14 {
  /* Grid */
}
.sec-3-home-14__grid {
  display: grid;
  grid-template-columns: minmax(0, 960fr) minmax(0, 720fr);
  gap: 40px;
  align-items: start;
}
@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-3-home-14__grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}
.sec-3-home-14 {
  /* Featured */
}
.sec-3-home-14__featured {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.sec-3-home-14__featured-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.sec-3-home-14__featured-link:hover .sec-3-home-14__featured-img {
  transform: scale(1.08) rotate(-1.2deg);
  filter: saturate(1.12) contrast(1.04);
}
.sec-3-home-14__featured-link:hover .sec-3-home-14__featured-frame::after {
  opacity: 1;
}
.sec-3-home-14__featured-link:hover .sec-3-home-14__featured-arrow {
  background: var(--at-neutral-950);
  color: var(--at-common-white);
  transform: rotate(-45deg);
}
.sec-3-home-14__featured-link:hover .sec-3-home-14__featured-badge {
  background: var(--at-common-white);
  color: var(--at-neutral-950);
}
.sec-3-home-14__featured-frame {
  position: relative;
  aspect-ratio: 960/980;
  overflow: hidden;
  border-radius: 4px;
  background-color: var(--at-neutral-900);
}
.sec-3-home-14__featured-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, 0.45) 100%);
  opacity: 0;
  transition: opacity 0.6s ease;
  pointer-events: none;
  z-index: 1;
}
.sec-3-home-14__featured-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
  transform-origin: center;
  transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1), filter 0.6s ease;
}
.sec-3-home-14__featured-overlay {
  position: absolute;
  inset: 0;
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--at-common-white);
  pointer-events: none;
  z-index: 2;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-home-14__featured-overlay {
    padding: 20px;
  }
}
.sec-3-home-14__featured-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}
.sec-3-home-14__featured-num {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--at-common-white);
}
.sec-3-home-14__featured-badge {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--at-common-white);
  color: var(--at-common-white);
  padding: 6px 12px;
  border-radius: 999px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 2px;
  line-height: 1;
  transition: background-color 0.4s ease, color 0.4s ease;
}
.sec-3-home-14__featured-bot {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
}
.sec-3-home-14__featured-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sec-3-home-14__featured-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 48px;
  line-height: 1;
  letter-spacing: -1px;
  color: var(--at-common-white);
}
@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-3-home-14__featured-title {
    font-size: 36px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-home-14__featured-title {
    font-size: 28px;
  }
}
.sec-3-home-14__featured-sub {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 13px;
  letter-spacing: 0.4px;
  color: var(--at-common-white);
  opacity: 0.75;
}
.sec-3-home-14__featured-arrow {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--at-common-white);
  color: var(--at-neutral-950);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  transition: background-color 0.4s ease, color 0.4s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.sec-3-home-14__featured-desc {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-500);
}
.sec-3-home-14 {
  /* List */
}
.sec-3-home-14__list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.sec-3-home-14__item {
  border-bottom: 1px solid var(--at-neutral-200);
}
.sec-3-home-14__item:last-child {
  border-bottom: 0;
}
.sec-3-home-14__item-link {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 24px;
  align-items: center;
  padding: 24px 0;
  text-decoration: none;
  color: inherit;
}
@media (max-width: 574.98px) {
  .sec-3-home-14__item-link {
    grid-template-columns: 140px 1fr;
    gap: 16px;
  }
}
.sec-3-home-14__item-link:hover .sec-3-home-14__item-img img {
  transform: scale(1.08) rotate(-1.2deg);
  filter: saturate(1.12) contrast(1.04);
}
.sec-3-home-14__item-link:hover .sec-3-home-14__item-img::after {
  opacity: 1;
}
.sec-3-home-14__item-link:hover .sec-3-home-14__item-title {
  transform: translateX(6px);
}
.sec-3-home-14__item-link:hover .sec-3-home-14__item-view {
  transform: translateX(4px);
}
.sec-3-home-14__item-img {
  display: block;
  position: relative;
  aspect-ratio: 220/260;
  overflow: hidden;
}
.sec-3-home-14__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform-origin: center;
  transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1), filter 0.6s ease;
}
.sec-3-home-14__item-meta {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
.sec-3-home-14__item-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  font-family: var(--at-ff-body);
  font-size: 11px;
}
.sec-3-home-14__item-num {
  font-weight: 500;
  letter-spacing: 2px;
  color: var(--at-neutral-500);
}
.sec-3-home-14__item-view {
  font-weight: 500;
  letter-spacing: 0.4px;
  color: var(--at-neutral-950);
  transition: transform 0.4s ease;
}
.sec-3-home-14__item-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 42px;
  line-height: 1.05;
  letter-spacing: -0.8px;
  color: var(--at-neutral-950);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-3-home-14__item-title {
    font-size: 36px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-3-home-14__item-title {
    font-size: 32px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-home-14__item-title {
    font-size: 26px;
  }
}
.sec-3-home-14__item-sub {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: 0.2px;
  color: var(--at-neutral-500);
}

/* ===========================================================
   Section 4 — Home 14 (Gallery / Archive)
   =========================================================== */
.sec-4-home-14 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-0);
  border-top: 1px solid var(--at-neutral-200);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-14 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-14 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-14 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.sec-4-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-4-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-4-home-14 {
  /* Header */
}
.sec-4-home-14__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  margin-bottom: 48px;
}
@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-4-home-14__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
}
.sec-4-home-14__head-left {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.sec-4-home-14__head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  max-width: 380px;
}
@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-4-home-14__head-right {
    align-items: flex-start;
    max-width: none;
  }
}
.sec-4-home-14__head-copy {
  font-family: var(--at-ff-body);
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-500);
  text-align: right;
}
@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-4-home-14__head-copy {
    text-align: left;
  }
  .sec-4-home-14__head-copy br {
    display: none;
  }
}
.sec-4-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-4-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
}
.sec-4-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-950);
  letter-spacing: 2px;
}
.sec-4-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-4-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 5vw, 84px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-950);
}
@media (max-width: 574.98px) {
  .sec-4-home-14__title br {
    display: none;
  }
}
.sec-4-home-14__btn-primary {
  display: inline-flex;
  align-items: stretch;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-4-home-14__btn-primary .sec-4-home-14__btn-label {
  display: inline-flex;
  align-items: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  padding: 14px 27px;
  border-radius: 50px 0 0 50px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  line-height: 1;
  white-space: nowrap;
}
.sec-4-home-14__btn-primary .sec-4-home-14__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-left: 2px;
}
.sec-4-home-14__btn-primary:hover {
  opacity: 0.85;
  color: var(--at-neutral-0);
}
.sec-4-home-14 {
  /* Filter tabs */
}
.sec-4-home-14__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid var(--at-neutral-200);
  border-bottom: 1px solid var(--at-neutral-200);
  margin-bottom: 48px;
}
.sec-4-home-14__tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  border: 1px solid var(--at-neutral-200);
  background: transparent;
  border-radius: 999px;
  cursor: pointer;
  font-family: var(--at-ff-body);
  line-height: 1;
  color: var(--at-neutral-950);
  transition: all 0.25s ease;
}
.sec-4-home-14__tab.is-active {
  background-color: var(--at-neutral-950);
  border-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.sec-4-home-14__tab.is-active .sec-4-home-14__tab-count {
  color: var(--at-neutral-0);
  opacity: 0.7;
}
.sec-4-home-14__tab:hover:not(.is-active) {
  border-color: var(--at-neutral-950);
}
.sec-4-home-14__tab-label {
  font-weight: 500;
  font-size: 13px;
}
.sec-4-home-14__tab-count {
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.4px;
  color: var(--at-neutral-500);
}
.sec-4-home-14 {
  /* Masonry */
}
.sec-4-home-14__masonry {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-bottom: 48px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-14__masonry {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-14__masonry {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.sec-4-home-14__col {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.sec-4-home-14__col--offset-60 {
  padding-top: 60px;
}
@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-4-home-14__col--offset-60 {
    padding-top: 0;
  }
}
.sec-4-home-14__col--offset-30 {
  padding-top: 30px;
}
@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-4-home-14__col--offset-30 {
    padding-top: 0;
  }
}
.sec-4-home-14__tile {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px;
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none;
  color: var(--at-common-white);
  background-color: var(--at-neutral-900);
}
.sec-4-home-14__tile--h420 {
  aspect-ratio: 557/420;
}
.sec-4-home-14__tile--h440 {
  aspect-ratio: 557/440;
}
.sec-4-home-14__tile--h480 {
  aspect-ratio: 557/480;
}
.sec-4-home-14__tile--h500 {
  aspect-ratio: 557/500;
}
.sec-4-home-14__tile--h520 {
  aspect-ratio: 557/520;
}
.sec-4-home-14__tile--h540 {
  aspect-ratio: 557/540;
}
.sec-4-home-14__tile--h560 {
  aspect-ratio: 557/560;
}
.sec-4-home-14__tile--h600 {
  aspect-ratio: 557/600;
}
.sec-4-home-14__tile--h620 {
  aspect-ratio: 557/620;
}
.sec-4-home-14__tile--h700 {
  aspect-ratio: 557/700;
}
.sec-4-home-14__tile--h720 {
  aspect-ratio: 557/720;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-14__tile {
    aspect-ratio: 4/5 !important;
  }
}
.sec-4-home-14__tile:hover {
  color: var(--at-common-white);
}
.sec-4-home-14__tile:hover .sec-4-home-14__tile-img {
  transform: scale(1.08) rotate(-1.2deg);
  filter: saturate(1.12) contrast(1.04);
}
.sec-4-home-14__tile-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
  border-radius: 4px;
  transform-origin: center;
  transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1), filter 0.6s ease;
}
.sec-4-home-14__tile-top {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 10px;
  color: #fff;
  opacity: 0.6;
}
.sec-4-home-14__tile-num {
  letter-spacing: 2px;
}
.sec-4-home-14__tile-year {
  letter-spacing: 0.4px;
}
.sec-4-home-14__tile-meta {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-family: var(--at-ff-body);
  color: #fff;
}
.sec-4-home-14__tile-title {
  font-weight: 500;
  font-size: 18px;
  letter-spacing: -0.3px;
  line-height: 1.1;
}
.sec-4-home-14__tile-sub {
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.4px;
  opacity: 0.7;
}
.sec-4-home-14 {
  /* Bottom row */
}
.sec-4-home-14__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-14__bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}
.sec-4-home-14__bottom-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--at-neutral-500);
}

/* ===========================================================
   Section 5 — Home 14 (Services list)

   Note: this section uses an inverted (dark) palette in light mode.
   In dark mode it inherits inverse colors via the --at-neutral-*
   token swap, becoming light-on-dark.
   =========================================================== */
.sec-5-home-14 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-14 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-home-14 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-home-14 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.sec-5-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-5-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-5-home-14 {
  /* Header */
}
.sec-5-home-14__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  margin-bottom: 64px;
}
@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-5-home-14__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
}
.sec-5-home-14__head-left {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.sec-5-home-14__head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  max-width: 380px;
}
@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-5-home-14__head-right {
    align-items: flex-start;
    max-width: none;
  }
}
.sec-5-home-14__head-copy {
  font-family: var(--at-ff-body);
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-500);
  text-align: right;
}
@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-5-home-14__head-copy {
    text-align: left;
  }
  .sec-5-home-14__head-copy br {
    display: none;
  }
}
.sec-5-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-5-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-0);
}
.sec-5-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-0);
  letter-spacing: 2px;
}
.sec-5-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-5-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 5vw, 84px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-0);
}
@media (max-width: 574.98px) {
  .sec-5-home-14__title br {
    display: none;
  }
}
.sec-5-home-14 {
  /* Primary button on dark — neutral-700 (lighter than bg) */
}
.sec-5-home-14__btn-primary {
  display: inline-flex;
  align-items: stretch;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-5-home-14__btn-primary .sec-5-home-14__btn-label {
  display: inline-flex;
  align-items: center;
  background: var(--at-neutral-700);
  color: var(--at-neutral-0);
  padding: 14px 27px;
  border-radius: 50px 0 0 50px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  line-height: 1;
  white-space: nowrap;
}
.sec-5-home-14__btn-primary .sec-5-home-14__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-700);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-left: 2px;
}
.sec-5-home-14__btn-primary:hover {
  opacity: 0.85;
  color: var(--at-neutral-0);
}
.sec-5-home-14 {
  /* List */
}
.sec-5-home-14__list {
  display: flex;
  flex-direction: column;
}
.sec-5-home-14__row {
  border-bottom: 1px solid var(--at-neutral-500);
}
.sec-5-home-14__row:first-child {
  border-top: 1px solid var(--at-neutral-500);
}
.sec-5-home-14__row-link {
  display: grid;
  grid-template-columns: 80px 80px 1fr 280px auto;
  align-items: center;
  gap: 40px;
  padding: 40px 0;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.25s ease, padding 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.sec-5-home-14__row-link:hover {
  padding-left: 15px;
  padding-right: 15px;
}
.sec-5-home-14__row-link:hover .sec-5-home-14__row-icon img {
  transform: scale(1.12) rotate(-6deg);
  filter: saturate(1.12) contrast(1.04);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-14__row-link {
    grid-template-columns: 60px 80px 1fr 240px auto;
    gap: 32px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-home-14__row-link {
    grid-template-columns: 80px 1fr 200px auto;
    gap: 24px;
    row-gap: 16px;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-num {
    grid-column: 1/5;
    margin-bottom: -8px;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-icon {
    grid-column: 1;
    grid-row: 2;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-meta {
    grid-column: 2;
    grid-row: 2;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-price {
    grid-column: 3;
    grid-row: 2;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-arrow {
    grid-column: 4;
    grid-row: 2;
  }
}
@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-5-home-14__row-link {
    grid-template-columns: 64px 1fr auto;
    gap: 16px;
    row-gap: 12px;
    padding: 28px 0;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-num {
    grid-column: 1/4;
    margin-bottom: 0;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-icon {
    grid-column: 1;
    grid-row: 2;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-meta {
    grid-column: 2/4;
    grid-row: 2;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-price {
    grid-column: 2/4;
    grid-row: 3;
    align-items: flex-start;
    text-align: left;
  }
  .sec-5-home-14__row-link .sec-5-home-14__row-arrow {
    display: none;
  }
}
.sec-5-home-14__row-link:hover {
  opacity: 0.85;
}
.sec-5-home-14__row-link:hover .sec-5-home-14__row-arrow {
  transform: translateX(4px) translateY(-4px);
}
.sec-5-home-14__row-num {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 2px;
  color: var(--at-neutral-500);
}
.sec-5-home-14__row-icon {
  display: block;
  width: 80px;
  height: 80px;
  border-radius: 8px;
  overflow: hidden;
  background-color: var(--at-neutral-900);
  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) {
  .sec-5-home-14__row-icon {
    width: 64px;
    height: 64px;
    border-radius: 6px;
  }
}
.sec-5-home-14__row-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform-origin: center;
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1), filter 0.5s ease;
}
.sec-5-home-14__row-meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.sec-5-home-14__row-title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 32px;
  letter-spacing: -0.5px;
  line-height: 1.1;
  color: 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) {
  .sec-5-home-14__row-title {
    font-size: 28px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-5-home-14__row-title {
    font-size: 22px;
  }
}
@media (max-width: 574.98px) {
  .sec-5-home-14__row-title {
    font-size: 18px;
  }
}
.sec-5-home-14__row-desc {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-500);
}
.sec-5-home-14__row-price {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  text-align: right;
}
.sec-5-home-14__row-price-amount {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.2px;
  color: var(--at-neutral-0);
}
.sec-5-home-14__row-price-cta {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.4px;
  color: var(--at-neutral-500);
}
.sec-5-home-14__row-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--at-neutral-0);
  transition: transform 0.25s ease;
}

/* ===========================================================
   Section 6 — Home 14 (Our Process)
   =========================================================== */
.sec-6-home-14 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-0);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-6-home-14 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home-14 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-home-14 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.sec-6-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-6-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-6-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-6-home-14 {
  /* Header */
}
.sec-6-home-14__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  margin-bottom: 64px;
}
@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-6-home-14__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
}
.sec-6-home-14__head-left {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.sec-6-home-14__head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  max-width: 380px;
}
@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-6-home-14__head-right {
    align-items: flex-start;
    max-width: none;
  }
}
.sec-6-home-14__head-copy {
  font-family: var(--at-ff-body);
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-500);
  text-align: right;
}
@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-6-home-14__head-copy {
    text-align: left;
  }
  .sec-6-home-14__head-copy br {
    display: none;
  }
}
.sec-6-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-6-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
}
.sec-6-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-950);
  letter-spacing: 2px;
}
.sec-6-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-6-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 5vw, 84px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-950);
}
@media (max-width: 574.98px) {
  .sec-6-home-14__title br {
    display: none;
  }
}
.sec-6-home-14__btn-primary {
  display: inline-flex;
  align-items: stretch;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-6-home-14__btn-primary .sec-6-home-14__btn-label {
  display: inline-flex;
  align-items: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  padding: 14px 27px;
  border-radius: 50px 0 0 50px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  line-height: 1;
  white-space: nowrap;
}
.sec-6-home-14__btn-primary .sec-6-home-14__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-left: 2px;
}
.sec-6-home-14__btn-primary:hover {
  opacity: 0.85;
  color: var(--at-neutral-0);
}
.sec-6-home-14 {
  /* Phases */
}
.sec-6-home-14__phases {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  counter-reset: phase;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home-14__phases {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home-14__phases {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-home-14__phases {
    grid-template-columns: 1fr;
  }
}
.sec-6-home-14__phase {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 40px 32px;
  border-left: 1px solid var(--at-neutral-200);
  min-height: 420px;
}
.sec-6-home-14__phase:first-child {
  border-left: 0;
}
.sec-6-home-14__phase:hover .sec-6-home-14__phase-dot {
  border-radius: 0;
  background-color: var(--at-theme-primary);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home-14__phase {
    padding: 32px 24px;
    gap: 16px;
    min-height: 360px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-home-14__phase {
    min-height: 0;
    padding: 28px 20px;
  }
  .sec-6-home-14__phase:nth-child(odd) {
    border-left: 0;
  }
  .sec-6-home-14__phase:nth-child(n+3) {
    border-top: 1px solid var(--at-neutral-200);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-home-14__phase {
    min-height: 0;
    padding: 24px 0;
    border-left: 0;
    border-top: 1px solid var(--at-neutral-200);
  }
  .sec-6-home-14__phase:first-child {
    border-top: 0;
    padding-top: 0;
  }
}
.sec-6-home-14__phase-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
  transition: border-radius 0.3s ease, background-color 0.3s ease;
}
.sec-6-home-14__phase-num {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 64px;
  line-height: 1;
  letter-spacing: -2px;
  color: var(--at-neutral-950);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-home-14__phase-num {
    font-size: 52px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-home-14__phase-num {
    font-size: 44px;
  }
}
.sec-6-home-14__phase-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.3px;
  line-height: 1.1;
  color: var(--at-neutral-950);
  margin-top: -8px;
}
.sec-6-home-14__phase-desc {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 13px;
  line-height: 1.6;
  color: var(--at-neutral-500);
}
.sec-6-home-14__phase-time {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: var(--at-neutral-500);
  margin-top: auto;
}

/* ===========================================================
   Section 7 — Home 14 (Client Stories / Testimonial)
   =========================================================== */
.sec-7-home-14 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-0);
  border-top: 1px solid var(--at-neutral-200);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-7-home-14 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-14 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-14 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.sec-7-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-7-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-7-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-7-home-14 {
  /* Header */
}
.sec-7-home-14__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  margin-bottom: 64px;
}
@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-7-home-14__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
}
.sec-7-home-14__head-left {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.sec-7-home-14__head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
}
.sec-7-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-7-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
}
.sec-7-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-950);
  letter-spacing: 2px;
}
.sec-7-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-7-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(36px, 4.8vw, 80px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-950);
}
@media (max-width: 574.98px) {
  .sec-7-home-14__title br {
    display: none;
  }
}
.sec-7-home-14__nav {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.sec-7-home-14__nav-count {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1.4px;
  color: var(--at-neutral-950);
}
.sec-7-home-14__nav-btn {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.25s ease;
  background-color: var(--at-neutral-0);
  border: 1px solid var(--at-neutral-950);
  color: var(--at-neutral-950);
}
.sec-7-home-14__nav-btn--next {
  background-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
  border-color: var(--at-neutral-950);
}
.sec-7-home-14__nav-btn:hover {
  background-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.sec-7-home-14__head-link {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  color: var(--at-neutral-950);
  text-decoration: none;
  transition: opacity 0.25s ease;
}
.sec-7-home-14__head-link:hover {
  opacity: 0.7;
  color: var(--at-neutral-950);
}
.sec-7-home-14 {
  /* Main */
}
.sec-7-home-14__main {
  display: grid;
  grid-template-columns: 640px 1fr;
  gap: 80px;
  align-items: stretch;
}
@media only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-7-home-14__main {
    grid-template-columns: 520px 1fr;
    gap: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-7-home-14__main {
    grid-template-columns: 440px 1fr;
    gap: 48px;
  }
}
@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-7-home-14__main {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.sec-7-home-14 {
  /* Portrait */
}
.sec-7-home-14__portrait {
  position: relative;
  aspect-ratio: 640/720;
  overflow: hidden;
  border-radius: 4px;
  background-color: var(--at-neutral-900);
}
.sec-7-home-14__portrait-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.sec-7-home-14__portrait-overlay {
  position: absolute;
  inset: 0;
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--at-common-white);
  pointer-events: none;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-14__portrait-overlay {
    padding: 20px;
  }
}
.sec-7-home-14__portrait-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 10px;
  color: var(--at-common-white);
}
.sec-7-home-14__portrait-tag {
  letter-spacing: 2px;
}
.sec-7-home-14__portrait-counter {
  letter-spacing: 0.4px;
}
.sec-7-home-14__portrait-bot {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: var(--at-common-white);
}
.sec-7-home-14__portrait-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.3px;
  line-height: 1.1;
}
.sec-7-home-14__portrait-role {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.4px;
  opacity: 0.7;
}
.sec-7-home-14 {
  /* Quote */
}
.sec-7-home-14__quote {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.sec-7-home-14__quote-mark {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 200px;
  line-height: 0.8;
  color: var(--at-neutral-950);
  margin-bottom: 16px;
}
@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-7-home-14__quote-mark {
    font-size: 140px;
  }
}
.sec-7-home-14__stars {
  display: inline-flex;
  gap: 4px;
  margin-bottom: 28px;
}
.sec-7-home-14__star {
  width: 18px;
  height: 18px;
  background-color: var(--at-neutral-950);
  border-radius: 3px;
  clip-path: polygon(50% 0, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}
.sec-7-home-14__quote-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 34px;
  line-height: 1.35;
  letter-spacing: -0.5px;
  color: var(--at-neutral-950);
  padding: 0;
  border: 0;
  margin-bottom: 40px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-7-home-14__quote-text {
    font-size: 28px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-14__quote-text {
    font-size: 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-14__quote-text {
    font-size: 20px;
  }
}
.sec-7-home-14__project {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding-top: 24px;
  border-top: 1px solid var(--at-neutral-200);
  width: 100%;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-14__project {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
}
.sec-7-home-14__project-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sec-7-home-14__project-title {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.2px;
  color: var(--at-neutral-950);
}
.sec-7-home-14__project-sub {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.4px;
  color: var(--at-neutral-500);
}
.sec-7-home-14__project-link {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  color: var(--at-neutral-950);
  text-decoration: none;
  transition: opacity 0.25s ease;
}
.sec-7-home-14__project-link:hover {
  opacity: 0.7;
  color: var(--at-neutral-950);
}

/* ===========================================================
   Section 8 — Home 14 (Recognition Index: Press + Awards)
   =========================================================== */
.sec-8-home-14 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-50);
  overflow: hidden;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-14 {
    padding-top: 110px;
    padding-bottom: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-14 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.sec-8-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-8-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-8-home-14 {
  /* ---------- Header ---------- */
}
.sec-8-home-14__head {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 60px;
  align-items: end;
  margin-bottom: 56px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home-14__head {
    gap: 48px;
    padding-bottom: 48px;
    margin-bottom: 48px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-14__head {
    grid-template-columns: 1fr;
    gap: 32px;
    align-items: start;
    padding-bottom: 40px;
    margin-bottom: 40px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-14__head {
    grid-template-columns: 1fr;
    gap: 24px;
    padding-bottom: 32px;
    margin-bottom: 32px;
  }
}
.sec-8-home-14__head-left {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.sec-8-home-14__head-right {
  display: flex;
  flex-direction: column;
  gap: 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) {
  .sec-8-home-14__head-right {
    gap: 28px;
  }
}
.sec-8-home-14 {
  /* Shared eyebrow */
}
.sec-8-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-8-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
  flex-shrink: 0;
}
.sec-8-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-950);
  letter-spacing: 2px;
}
.sec-8-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-8-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 5vw, 84px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-950);
}
@media (max-width: 574.98px) {
  .sec-8-home-14__title br {
    display: none;
  }
}
.sec-8-home-14__head-copy {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.55;
  letter-spacing: -0.01em;
  color: var(--at-neutral-700);
}
@media (max-width: 574.98px) {
  .sec-8-home-14__head-copy br {
    display: none;
  }
}
.sec-8-home-14 {
  /* Metrics row (24 / 12 / 07) */
}
.sec-8-home-14__metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  padding-top: 32px;
}
@media (max-width: 574.98px) {
  .sec-8-home-14__metrics {
    gap: 16px;
    padding-top: 24px;
  }
}
.sec-8-home-14__metric {
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
}
.sec-8-home-14__metric-key {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--at-neutral-500);
}
.sec-8-home-14__metric-val {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(36px, 3.5vw, 56px);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950);
  font-feature-settings: "tnum" 1;
}
.sec-8-home-14 {
  /* ---------- Press ticker ---------- */
}
.sec-8-home-14__ticker {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 32px;
  padding: 28px 0;
  border-top: 1px solid var(--at-neutral-200);
  border-bottom: 1px solid var(--at-neutral-200);
  margin-bottom: 100px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home-14__ticker {
    margin-bottom: 80px;
    gap: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-14__ticker {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 24px 0;
    margin-bottom: 64px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14__ticker {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 20px 0;
    margin-bottom: 48px;
  }
}
.sec-8-home-14__ticker-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--at-neutral-950);
  white-space: nowrap;
}
.sec-8-home-14__ticker-label-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-theme-primary);
  flex-shrink: 0;
}
.sec-8-home-14__ticker-viewport {
  overflow: hidden;
  mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);
}
.sec-8-home-14__ticker-track {
  display: inline-flex;
  width: -moz-max-content;
  width: max-content;
  animation: sec8home14TickerScroll 32s linear infinite;
  will-change: transform;
}
.sec-8-home-14__ticker-track:hover {
  animation-play-state: paused;
}
.sec-8-home-14__ticker-list {
  display: inline-flex;
  align-items: center;
  gap: 48px;
  padding-right: 48px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-14__ticker-list {
    gap: 36px;
    padding-right: 36px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14__ticker-list {
    gap: 28px;
    padding-right: 28px;
  }
}
.sec-8-home-14__ticker-item {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 28px;
  line-height: 1;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--at-neutral-950);
  white-space: nowrap;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home-14__ticker-item {
    font-size: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-14__ticker-item {
    font-size: 22px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14__ticker-item {
    font-size: 18px;
    letter-spacing: 1.5px;
  }
}
.sec-8-home-14__ticker-item[aria-hidden=true] {
  color: var(--at-neutral-300);
  font-size: 14px;
}
@keyframes sec8home14TickerScroll {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .sec-8-home-14__ticker-track {
    animation: none;
  }
}
.sec-8-home-14 {
  /* ---------- Awards roster ---------- */
}
.sec-8-home-14__roster-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 20px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--at-neutral-300);
}
.sec-8-home-14__roster-key {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--at-neutral-950);
}
.sec-8-home-14__roster-cols {
  display: grid;
  grid-template-columns: 64px 96px 1fr 200px;
  gap: 32px;
  flex: 1;
  max-width: 70%;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-8-home-14__roster-cols {
    max-width: 66%;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-14__roster-cols {
    max-width: 60%;
    grid-template-columns: 56px 80px 1fr 160px;
    gap: 24px;
  }
}
@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-8-home-14__roster-cols {
    display: none;
  }
}
.sec-8-home-14__roster-col {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--at-neutral-500);
}
.sec-8-home-14__roster-col:last-child {
  text-align: right;
}
.sec-8-home-14 {
  /* Award rows */
}
.sec-8-home-14__awards {
  display: flex;
  flex-direction: column;
}
.sec-8-home-14__award {
  position: relative;
  display: grid;
  grid-template-columns: 64px 96px 1fr 200px;
  align-items: center;
  gap: 32px;
  padding: 28px 0;
  border-bottom: 1px solid var(--at-neutral-200);
  transition: padding-left 0.35s ease, background-color 0.35s ease;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-14__award {
    grid-template-columns: 56px 80px 1fr 160px;
    gap: 24px;
    padding: 24px 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-8-home-14__award {
    grid-template-columns: 48px 72px 1fr 140px;
    gap: 20px;
    padding: 22px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-14__award {
    grid-template-columns: 44px 64px 1fr 120px;
    gap: 18px;
    padding: 20px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-14__award {
    grid-template-columns: 40px 1fr auto;
    grid-template-areas: "idx body result" "yr  body result";
    row-gap: 4px;
    -moz-column-gap: 16px;
         column-gap: 16px;
    padding: 20px 0;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-14__award {
    grid-template-columns: auto 1fr;
    grid-template-areas: "idx yr" "body body" "result result";
    row-gap: 12px;
    -moz-column-gap: 12px;
         column-gap: 12px;
    padding: 20px 0;
  }
}
.sec-8-home-14__award:hover {
  padding-left: 16px;
  background-color: var(--at-neutral-0);
}
.sec-8-home-14__award:hover .sec-8-home-14__award-result {
  color: var(--at-theme-primary);
}
.sec-8-home-14__award:hover .sec-8-home-14__award-index {
  color: var(--at-neutral-950);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14__award:hover {
    padding-left: 0;
    background-color: transparent;
  }
}
.sec-8-home-14__award-badge {
  position: absolute;
  top: 12px;
  right: 0;
  display: inline-flex;
  align-items: center;
  height: 22px;
  padding: 0 10px;
  background-color: var(--at-theme-primary);
  color: var(--at-neutral-0);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  line-height: 1;
  border-radius: 999px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14__award-badge {
    position: static;
    order: -1;
    grid-column: 1/-1;
    align-self: flex-start;
    margin-bottom: 4px;
  }
}
.sec-8-home-14__award-index {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0;
  color: var(--at-neutral-300);
  font-feature-settings: "tnum" 1;
  transition: color 0.35s ease;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-14__award-index {
    grid-area: idx;
    font-size: 16px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-14__award-index {
    grid-area: idx;
    font-size: 14px;
    color: var(--at-neutral-500);
  }
}
.sec-8-home-14__award-year {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(28px, 2.6vw, 40px);
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950);
  font-feature-settings: "tnum" 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-14__award-year {
    grid-area: yr;
    font-size: 22px;
    color: var(--at-neutral-700);
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-14__award-year {
    grid-area: yr;
    font-size: 18px;
    color: var(--at-neutral-700);
    text-align: right;
    align-self: center;
  }
}
.sec-8-home-14__award-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-14__award-body {
    grid-area: body;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-14__award-body {
    grid-area: body;
  }
}
.sec-8-home-14__award-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(20px, 1.8vw, 26px);
  line-height: 1.2;
  letter-spacing: -0.015em;
  color: var(--at-neutral-950);
}
.sec-8-home-14__award-cat {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: 0.2px;
  color: var(--at-neutral-500);
}
.sec-8-home-14__award-result {
  justify-self: end;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--at-neutral-700);
  line-height: 1;
  transition: color 0.35s ease;
  text-align: right;
}
.sec-8-home-14__award-result--finalist {
  color: var(--at-neutral-950);
}
.sec-8-home-14__award-result--gold {
  color: var(--at-theme-primary);
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-14__award-result {
    grid-area: result;
    justify-self: end;
    align-self: center;
    font-size: 11px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-14__award-result {
    grid-area: result;
    justify-self: start;
    font-size: 12px;
  }
}
.sec-8-home-14 {
  /* Latest row — subtle emphasis (without breaking grid) */
}
.sec-8-home-14__award--latest {
  background-color: var(--at-neutral-0);
  padding-left: 16px;
  padding-right: 16px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-14__award--latest {
    padding-left: 12px;
    padding-right: 12px;
  }
}
.sec-8-home-14 {
  /* Roster footer */
}
.sec-8-home-14__roster-foot {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 32px;
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 13px;
  letter-spacing: 0.4px;
  color: var(--at-neutral-500);
}
@media (max-width: 574.98px) {
  .sec-8-home-14__roster-foot {
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 24px;
  }
}
.sec-8-home-14__roster-foot-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--at-neutral-300);
  flex-shrink: 0;
}
.sec-8-home-14__roster-foot-link {
  color: var(--at-neutral-950);
  text-decoration: none;
  font-weight: 500;
  border-bottom: 1px solid var(--at-neutral-300);
  padding-bottom: 1px;
  transition: color 0.25s ease, border-color 0.25s ease;
}
.sec-8-home-14__roster-foot-link:hover {
  color: var(--at-theme-primary);
  border-bottom-color: var(--at-theme-primary);
}

/* ===========================================================
   Section 9 — Home 14 (From the Feed)
   =========================================================== */
.sec-9-home-14 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-0);
  border-top: 1px solid var(--at-neutral-200);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-14 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-14 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-14 {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.sec-9-home-14__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-9-home-14__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-14__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-14__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-14__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-9-home-14 {
  /* Header */
}
.sec-9-home-14__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  margin-bottom: 64px;
}
@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-9-home-14__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
}
.sec-9-home-14__head-left {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.sec-9-home-14__head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  max-width: 380px;
}
@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-9-home-14__head-right {
    align-items: flex-start;
    max-width: none;
  }
}
.sec-9-home-14__head-copy {
  font-family: var(--at-ff-body);
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-500);
  text-align: right;
}
@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-9-home-14__head-copy {
    text-align: left;
  }
  .sec-9-home-14__head-copy br {
    display: none;
  }
}
.sec-9-home-14__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-9-home-14__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
}
.sec-9-home-14__eyebrow-key {
  font-weight: 500;
  color: var(--at-neutral-950);
  letter-spacing: 2px;
}
.sec-9-home-14__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-9-home-14__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 5vw, 84px);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-neutral-950);
}
@media (max-width: 574.98px) {
  .sec-9-home-14__title br {
    display: none;
  }
}
.sec-9-home-14__btn-primary {
  display: inline-flex;
  align-items: stretch;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-9-home-14__btn-primary .sec-9-home-14__btn-label {
  display: inline-flex;
  align-items: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  padding: 14px 27px;
  border-radius: 50px 0 0 50px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  line-height: 1;
  white-space: nowrap;
}
.sec-9-home-14__btn-primary .sec-9-home-14__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--at-neutral-900);
  color: var(--at-neutral-0);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-left: 2px;
}
.sec-9-home-14__btn-primary:hover {
  opacity: 0.85;
  color: var(--at-neutral-0);
}
.sec-9-home-14 {
  /* Gallery */
}
.sec-9-home-14__gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-14__gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-14__gallery {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.sec-9-home-14__col {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.sec-9-home-14__col--offset-80 {
  padding-top: 80px;
}
@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-9-home-14__col--offset-80 {
    padding-top: 0;
  }
}
.sec-9-home-14__col--offset-40 {
  padding-top: 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) {
  .sec-9-home-14__col--offset-40 {
    padding-top: 0;
  }
}
.sec-9-home-14__tile {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px;
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none;
  color: var(--at-common-white);
  background-color: var(--at-neutral-900);
}
.sec-9-home-14__tile--h380 {
  aspect-ratio: 557/380;
}
.sec-9-home-14__tile--h420 {
  aspect-ratio: 557/420;
}
.sec-9-home-14__tile--h480 {
  aspect-ratio: 557/480;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-14__tile {
    aspect-ratio: 4/5 !important;
  }
}
.sec-9-home-14__tile:hover {
  color: var(--at-common-white);
}
.sec-9-home-14__tile-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
  border-radius: 4px;
}
.sec-9-home-14__tile-top {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  font-family: var(--at-ff-body);
  font-size: 10px;
  letter-spacing: 0.4px;
  color: var(--at-common-white);
}
.sec-9-home-14__tile-handle {
  font-weight: 500;
  opacity: 0.6;
}
.sec-9-home-14__tile-tag {
  font-weight: 400;
  opacity: 0.4;
}
.sec-9-home-14__tile-meta {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-family: var(--at-ff-body);
  color: var(--at-common-white);
}
.sec-9-home-14__tile-title {
  font-weight: 500;
  font-size: 18px;
  letter-spacing: -0.3px;
  line-height: 1.1;
}
.sec-9-home-14__tile-sub {
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.4px;
  opacity: 0.7;
}

/* ===========================================================
   Section 1 — Home 15 (Agency Hero)
   =========================================================== */
.sec-1-home-15 {
  padding-top: 66px;
  padding-bottom: 80px;
  background-color: var(--at-neutral-0);
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-15 {
    padding-top: 60px;
    padding-bottom: 56px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15 {
    padding-top: 60px;
    padding-bottom: 40px;
  }
}
/* AK Sports hero is full-bleed into the section below it: the bottom
   padding above is template default and leaves a white gap that breaks
   the grid-line continuity, so it's zeroed here for every breakpoint. */
.ak-hero,
.ak-hero.pt-0 {
  padding-bottom: 0 !important;
}
.sec-1-home-15 {
  /* ---- Hero card ---- */
}
.sec-1-home-15__card {
  position: relative;
  width: 100%;
  height:100vh;
  /* height: 637px; */
  /* max-height: calc(100vh - 160px); */
  overflow: hidden;
  /* border-radius: 16px; */
  background-color: var(--at-neutral-900);
  isolation: isolate;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-15__card {
    height: 560px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-15__card {
    height: 520px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-15__card {
    height: 480px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-home-15__card {
    height: 560px;
    max-height: none;
  }
}
/* @media (max-width: 574.98px) {
  .sec-1-home-15__card {
    height: 520px;
    max-height: none;
    border-radius: 12px;
  }
} */
.sec-1-home-15__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  pointer-events: none;
}
.sec-1-home-15__grid {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 80% auto;
  opacity: 0.5;
  mix-blend-mode: screen;
}
@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-15__grid {
    opacity: 0.35;
    background-size: 130% auto;
  }
}

.sec-1-home-15 {
  /* ---- Top row (coordinates + email) ---- */
}
.sec-2-ak-overview__grid {
  position: relative; /* needed so the absolutely-positioned line span anchors here */
  display: grid;
  grid-template-columns: 28% 42% 30%;
  min-height: 640px;
  background-color: var(--at-neutral-0);
}

.sec-2-ak-overview__lines {
  z-index: 5;
  opacity: 0.12;
  mix-blend-mode: multiply;
}
.sec-1-home-15__top {
  position: absolute;
  top: 30px;
  left: 35px;
  right: 35px;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: var(--at-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15__top {
    top: 20px;
    left: 20px;
    right: 20px;
  }
}
.sec-1-home-15__coord {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15__coord {
    font-size: 12px;
    gap: 6px;
  }
}
.sec-1-home-15__coord-icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15__coord-icon {
    width: 16px;
    height: 16px;
  }
}
.sec-1-home-15__email {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-common-white);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-1-home-15__email:hover, .sec-1-home-15__email:focus-visible {
  color: var(--at-common-white);
  opacity: 0.7;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15__email {
    font-size: 12px;
  }
}
.sec-1-home-15 {
  /* ---- Scroll indicator (right side, mid-height) ---- */
}
.sec-1-home-15__scroll {
  position: absolute;
  right: 40px;
  top: 50%;
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  transform: translateY(-50%);
  color: var(--at-neutral-100);
}
@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-15__scroll {
    display: none;
  }
}
.sec-1-home-15__scroll-line {
  display: block;
  width: 1px;
  height: 70px;
  background-color: #fff;
  opacity: 0.7;
  animation: secOneHome15ScrollLine 2.4s ease-in-out infinite;
}
.sec-1-home-15__scroll-label {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
@keyframes secOneHome15ScrollLine {
  0%, 100% {
    transform: scaleY(0.4);
    transform-origin: top;
    opacity: 0.4;
  }
  50% {
    transform: scaleY(1);
    transform-origin: top;
    opacity: 0.9;
  }
}
.sec-1-home-15 {
  /* ---- Bottom row (tags + clients) ---- */
}
.sec-1-home-15__bottom {
  position: absolute;
  left: 35px;
  right: 35px;
  bottom: 40px;
  z-index: 4;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-15__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15__bottom {
    left: 20px;
    right: 20px;
    bottom: 24px;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }
}
.sec-1-home-15__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  max-width: 540px;
  padding: 0;
  margin: 0;
  list-style: none;
}
@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-15__tags {
    max-width: none;
  }
}
.sec-1-home-15__tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 15px 19px;
  background-color: rgba(70, 70, 70, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 32px;
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  color: #fff;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  white-space: nowrap;
}
.sec-1-home-15__tag svg {
  flex-shrink: 0;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15__tag {
    padding: 11px 14px;
    font-size: 13px;
    gap: 8px;
  }
}
.sec-1-home-15__clients {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 15px;
  color: var(--at-common-white);
}
@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-15__clients {
    align-items: flex-start;
  }
}
.sec-1-home-15__avatars {
  display: inline-flex;
  align-items: center;
}
.sec-1-home-15__avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid var(--at-common-white);
  -o-object-fit: cover;
     object-fit: cover;
  background-color: var(--at-neutral-700);
}
.sec-1-home-15__avatar + .sec-1-home-15__avatar {
  margin-left: -12px;
}
.sec-1-home-15__clients-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.02em;
  text-align: right;
  color: var(--at-common-white);
}
@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-15__clients-text {
    text-align: left;
  }
  .sec-1-home-15__clients-text br {
    display: none;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-15__clients-text {
    font-size: 14px;
  }
}
.sec-1-home-15 {
  /* ---- Title block under the hero card ---- */
}
.sec-1-home-15__title-block {
  position: relative;
  padding-top: 44px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-15__title-block {
    padding-top: 36px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-15__title-block {
    padding-top: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-home-15__title-block {
    padding-top: 22px;
  }
}
.sec-1-home-15__title {
  font-family: var(--at-ff-heading);
  font-weight: 700;
  font-size: 173px;
  line-height: 1;
  letter-spacing: -0.05em;
  text-align: center;
  color: var(--at-neutral-900);
  margin: 0;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px) {
  .sec-1-home-15__title {
    font-size: 150px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-1-home-15__title {
    font-size: 128px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-15__title {
    font-size: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-home-15__title {
    font-size: 92px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-15__title {
    font-size: 72px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-home-15__title {
    font-size: 56px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-15__title {
    font-size: 40px;
  }
}
.sec-1-home-15__title-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: -22px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-home-15__title-meta {
    margin-top: -16px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-home-15__title-meta {
    margin-top: -10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-home-15__title-meta {
    margin-top: 8px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-home-15__title-meta {
    margin-top: 10px;
    flex-wrap: wrap;
    gap: 8px;
  }
}
.sec-1-home-15__title-side {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  text-decoration: underline;
  text-underline-offset: 3px;
  color: var(--at-neutral-900);
}
@media (max-width: 574.98px) {
  .sec-1-home-15__title-side {
    font-size: 13px;
  }
}
/* ---- Logo, top-left over the photo ---- */
.ak-hero .sec-1-home-15__brand {
  position: absolute;
  left: 100px;
  top: 30px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--at-common-white);
  text-decoration: none;
}
/* .ak-hero .sec-1-home-15__brand img {
  width: 26px;
  height: 26px;
  filter: invert();
} */
.ak-hero .sec-1-home-15__brand span {
  font-family: var(--at-ff-body);
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--at-common-white);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .ak-hero .sec-1-home-15__brand {
    left: 20px;
    top: 20px;
  }
  .ak-hero .sec-1-home-15__brand span {
    font-size: 14px;
  }
}
/* ===========================================================
   AK Sports Infra — Hero overrides (built on top of sec-1-home-15)
   =========================================================== */
.ak-hero .sec-1-home-15__scrim {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  /* background: linear-gradient(0deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.25) 100%); */
  /* background: linear-gradient(0deg, rgba(0, 0, 0, -10.05) 0%, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%); */
  background: linear-gradient(0deg, rgb(0 0 0) 0%, rgb(0 0 0 / 90%) 0%, rgba(0, 0, 0, 0.75) 100%);
}

/* ---- Headline, lower-left over the photo ---- */
.ak-hero .sec-1-home-15__headline {
    position: absolute;
    left: 100px;
    /* bottom: 40px; */
    top: 40%;
    z-index: 4;
    margin: 0;
    max-width: 60%;
    font-family: var(--at-ff-heading);
    /* font-weight: 500; */
    font-size: 80px;
    line-height: 1.05;
    letter-spacing: -0.03em;
    text-transform: uppercase;
    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) {
  .ak-hero .sec-1-home-15__headline {
    font-size: 48px;
    left: 24px;
    bottom: 30px;
    max-width: 70%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .ak-hero .sec-1-home-15__headline {
    font-size: 32px;
    left: 20px;
    bottom: 24px;
    max-width: 85%;
  }
}
/* ===========================================================
   AK Sports Infra — Hero header: logo left | nav center | CTA right
   Replace your old ".sec-1-home-15__brand" position rules and the
   old bottom-right ".sec-1-home-15__nav" block with this.
   =========================================================== */

/* ---- Header bar over the photo ---- */
.ak-hero .sec-1-home-15__header {
  position: absolute;
  top: 10px;
  /* left: 100px;
  right: 100px; */
    left: 250px;
  right: 250px;
  z-index: 5;
  display: grid;
  /* grid-template-columns: 1fr auto 1fr;    */
  /* grid-template-columns: 5fr 1fr;    */
  grid-template-columns: 5fr 8fr;   
  align-items: center;
}

/* ---- Logo (same look as before, now flows inside the header) ---- */
.ak-hero .sec-1-home-15__header .sec-1-home-15__brand {
  position: static;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--at-common-white);
  text-decoration: none;
}
.ak-hero .sec-1-home-15__brand img {
  max-width: 120px;
  /* height: 26px; */
  /* filter: invert(); */
}
.ak-hero .sec-1-home-15__brand span {
  font-family: var(--at-ff-body);
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--at-common-white);
}

/* ---- Nav, centered ---- */
.ak-hero .sec-1-home-15__header .sec-1-home-15__nav {
  position: static;
  /* justify-self: center; */
  justify-self: end;
}
.ak-hero .sec-1-home-15__nav ul {
  display: flex;
  align-items: center;
  gap: 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ak-hero .sec-1-home-15__nav a {
  font-family: var(--at-ff-body);
  /* font-weight: 500; */
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--at-common-white);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.ak-hero .sec-1-home-15__nav a:hover,
.ak-hero .sec-1-home-15__nav a:focus-visible {
  opacity: 0.7;
}

/* ---- Request a Quote (Orisa .at-btn in brand orange) ---- */
.ak-hero .sec-1-home-15__cta.at-btn {
  justify-self: end;
  height: 50px;
  padding: 0 26px !important;
  background-color: var(--at-theme-primary, #0a0a0a);
  border-color: var(--at-theme-primary, #0a0a0a);
  color: #FEFEFE;
  text-decoration: none;
}

/* ---- Tablet: tighten spacing ---- */
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .ak-hero .sec-1-home-15__header {
    left: 24px;
    right: 24px;
  }
  .ak-hero .sec-1-home-15__nav ul {
    gap: 20px;
  }
}

/* ---- Mobile: logo + CTA on row 1, nav wraps below ---- */
@media only screen and (max-width: 767px) {
  .ak-hero .sec-1-home-15__header {
    top: 20px;
    left: 20px;
    right: 20px;
    grid-template-columns: 1fr auto;
    row-gap: 16px;
  }
  .ak-hero .sec-1-home-15__brand span {
    font-size: 14px;
  }
  .ak-hero .sec-1-home-15__header .sec-1-home-15__nav {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: start;
  }
  .ak-hero .sec-1-home-15__nav ul {
    flex-wrap: wrap;
    gap: 12px 18px;
  }
  .ak-hero .sec-1-home-15__nav a {
    font-size: 12px;
  }
  .ak-hero .sec-1-home-15__cta.at-btn {
    height: 44px;
    padding: 0 18px !important;
    font-size: 12px;
  }
}

/* ===========================================================
   AK Sports Infra — Hero additions (eyebrow, intro, link, systems card)
   Add AFTER your existing .ak-hero rules.
   =========================================================== */

/* ---- Content block (replaces the absolutely-positioned h1) ---- */
.ak-hero .ak-hero__content {
  position: absolute;
  left: 250px;
  top: calc(40% - 32px);      /* keeps the headline where it sits today */
  z-index: 4;
  max-width: 60%;
}
/* headline now flows inside the block; keep all its existing type styles */
.ak-hero .ak-hero__content .sec-1-home-15__headline {
  position: static;
  max-width: 100%;
}

/* ---- Eyebrow ---- */
.ak-hero .ak-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85);
}
.ak-hero .ak-hero__eyebrow i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--at-theme-primary, #0a0a0a);
  box-shadow: 0 0 0 4px rgba(255,255,255,0.075);
}

/* ---- Intro copy ---- */
.ak-hero .ak-hero__sub {
  max-width: 420px;
  margin: 24px 0 0;

  font-size: 16px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.82);
}

/* ---- Text link with underline + arrow ---- */
.ak-hero .ak-hero__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
  padding-bottom: 6px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--at-common-white);
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.35);
  transition: border-color 0.3s ease, gap 0.3s ease;
}
.ak-hero .ak-hero__link svg {
  color: var(--at-theme-primary, #0a0a0a);
}
.ak-hero .ak-hero__link:hover {
  gap: 16px;
  border-color: var(--at-theme-primary, #0a0a0a);
}

/* ---- Bottom-right: systems glass card ---- */
.ak-hero .ak-hero__systems {
  position: absolute;
  right: 100px;
  bottom: 48px;
  z-index: 4;
  width: 300px;
  padding: 18px 20px 8px;
  /* border: 1px solid rgba(255, 255, 255, 0.16); */
  border-radius: 16px;
  background: rgba(10, 10, 10, 0.42);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.ak-hero .ak-hero__systems-title {
  margin: 0 0 6px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #ffffff !important;
}
.ak-hero .ak-hero__systems ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ak-hero .ak-hero__systems li + li {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.ak-hero .ak-hero__systems a {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 13px 0;
  color: var(--at-common-white);
  text-decoration: none;
}
.ak-hero .ak-hero__systems-num {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.04em;
  color: var(--at-theme-primary, #0a0a0a);
}
.ak-hero .ak-hero__systems-name {
  flex: 1;
  font-family: var(--at-ff-body);
  font-weight: 600;
  font-size: 18px;
  /* line-height: 1.2; */
  /* letter-spacing: -0.01em; */
}
.ak-hero .ak-hero__systems-name small {
  display: block;
  margin-top: 4px;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.6);
}
.ak-hero .ak-hero__systems a svg {
  flex-shrink: 0;
  opacity: 0.7;
  transition: transform 0.25s ease, opacity 0.25s ease, color 0.25s ease;
}
.ak-hero .ak-hero__systems a:hover svg {
  opacity: 1;
  color: var(--at-theme-primary, #0a0a0a);
  transform: translate(3px, -3px);
}

/* ---- Shorter hero heights (≤1399px): anchor content to the bottom so it never overflows ---- */
@media only screen and (max-width: 1399px) {
  .ak-hero .ak-hero__content {
    top: auto;
    bottom: 48px;
  }
}

/* ---- Tablet ---- */
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .ak-hero .ak-hero__content {
    left: 24px;
    max-width: 55%;
  }
  .ak-hero .ak-hero__sub {
    font-size: 15px;
    max-width: 340px;
  }
  .ak-hero .ak-hero__systems {
    right: 24px;
    bottom: 32px;
    width: 260px;
  }
}

/* ---- Mobile: drop the card, keep eyebrow/headline/intro ---- */
@media only screen and (max-width: 767px) {
  .ak-hero .ak-hero__content {
    left: 20px;
    right: 20px;
    bottom: 24px;
    max-width: 100%;
  }
  .ak-hero .ak-hero__sub {
    font-size: 14px;
    margin-top: 16px;
  }
  .ak-hero .ak-hero__systems {
    display: none;
  }
}
/* ===========================================================
   AK Sports Infra — Header scroll animation (logo + nav -> centered pill)
   Add AFTER all your existing .ak-hero rules. Desktop/tablet only (>=768px).
   =========================================================== */
@media only screen and (min-width: 768px) {

  /* Header now stays on screen while scrolling; only its children move */
  .ak-hero .sec-1-home-15__header {
    position: fixed;
    z-index: 999;
    pointer-events: none;          /* empty bar area never blocks clicks */
  }
  .ak-hero .sec-1-home-15__header .sec-1-home-15__brand,
  .ak-hero .sec-1-home-15__header .sec-1-home-15__nav {
    pointer-events: auto;
    transform-origin: 0 0;
    will-change: translate, scale;
  }

  /* The dark glass pill that fades in behind logo + nav (size set by JS) */
  .ak-hero .ak-hero__pill {
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    opacity: 0;
    border-radius: 16px;
    background: rgba(12, 12, 12, 0.72);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25), inset 0 0 0 1px rgba(255, 255, 255, 0.08);
    pointer-events: none;
  }
}

@media only screen and (max-width: 767px) {
  .ak-hero .ak-hero__pill { display: none; }
}
.sec-2-ak-overview__grid {
  display: grid;
  grid-template-columns: 28% 50% 22%;
  grid-template-rows: auto auto 1fr;
  min-height: 800px;
  background-color: var(--at-neutral-0);
  /* border-top: 1px solid var(--at-neutral-200);
  border-bottom: 1px solid var(--at-neutral-200); */
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-ak-overview__grid { min-height: 560px; }
}
@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767.98px) {
  .sec-2-ak-overview__grid { grid-template-columns: 1fr; grid-template-rows: none; min-height: 0; }
}

.sec-2-ak-overview__col { position: relative; }

/* Column 1: full-bleed image */
.sec-2-ak-overview__col--media { grid-row: 1 / 4; overflow: hidden; min-height: 320px; }
.sec-2-ak-overview__img {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; filter: grayscale(1);
}

/* Column 2 — no side padding on the column itself anymore; each row
   carries its own padding so its border-bottom stretches edge-to-edge
   and meets the vertical dividers instead of stopping short of them */
.sec-2-ak-overview__col--content {
  grid-row: 1 / 4;
  display: grid;
  grid-template-rows: subgrid;
  background-color: var(--at-neutral-0);
  /* border-right: 1px solid var(--at-neutral-200);
  border-left: 1px solid var(--at-neutral-200); */
}
.sec-2-ak-overview__home-link {
  grid-row: 1;
  padding: 48px 56px 20px;
  /* border-bottom: 1px solid var(--at-neutral-200); */
  font-family: var(--at-ff-body); font-weight: 500; font-size: 15px;
  letter-spacing: 0.05em; text-transform: uppercase; text-decoration: underline;
  text-underline-offset: 3px; color: var(--at-neutral-900);
}
.sec-2-ak-overview__heading {
  grid-row: 2;
  margin: 0; padding: 28px 56px 20px;
  /* border-bottom: 1px solid var(--at-neutral-200); */
  font-family: var(--at-ff-heading); font-weight: 700;
  font-size: 56px; line-height: 1; letter-spacing: -0.03em;
  text-transform: uppercase; color: var(--at-neutral-950);
}
.sec-2-ak-overview__content-row {
  grid-row: 3;
  display: flex; align-items: flex-start; gap: 24px;
  /* padding: 32px 56px 48px; */
}
.sec-2-ak-overview__text-col { display: flex; flex-direction: column; flex: 0 0 46%; max-width: 46%;padding:32px 56px 48px;justify-content: space-between;
    gap: 100px; }
.sec-2-ak-overview__body { font-family: var(--at-ff-body); font-size: 16px; line-height: 1.6; color: var(--at-neutral-600); }
.sec-2-ak-overview__next {
    align-self: flex-start;
    margin-top: 24px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border: 1px solid var(--at-neutral-300, rgba(0, 0, 0, 0.25));
    border-radius: 32px;
    color: var(--at-neutral-950);
    font-family: var(--at-ff-body);
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0.02em;
    bottom: 5%;
    position: absolute;
    text-transform: uppercase;
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.sec-2-ak-overview__next:hover,
.sec-2-ak-overview__next:focus-visible {
  background-color: var(--at-neutral-950); color: var(--at-common-white); border-color: var(--at-neutral-950);
}
.sec-2-ak-overview__inset {
  flex: 1 1 auto; align-self: stretch;
  /* border-left: 1px solid var(--at-neutral-200); */
  /* padding-left: 20px; */
}
.sec-2-ak-overview__inset img { display: block; width: 100%; height: 100%; min-height: 260px; object-fit: cover;
   /* border-radius: 4px;  */
  }

/* Column 3 — same treatment: padding moved onto each row */
.sec-2-ak-overview__col--gallery {
  grid-row: 1 / 4;
  display: grid;
  grid-template-rows: subgrid;
  background-color: var(--at-neutral-0);
}
.sec-2-ak-overview__gallery-label {
  grid-row: 1;
  padding: 48px 40px 20px;
  /* border-bottom: 1px solid var(--at-neutral-200); */
  text-align: right;
  font-family: var(--at-ff-body); font-weight: 500; font-size: 15px;
  letter-spacing: 0.05em; text-transform: uppercase; color: var(--at-neutral-900);
}
.sec-2-ak-overview__gallery-media { 
  grid-row: 2;
   /* padding: 24px 40px; */
   /* border-bottom: 1px solid var(--at-neutral-200);  */
  }
.sec-2-ak-overview__gallery-media img { display: block; width: 100%; height: 200px; object-fit: cover;
   /* border-radius: 4px;  */
  }
.sec-2-ak-overview__info-group { 
  grid-row: 3;
   display: flex;
   flex-direction: column;
   /* justify-content: space-between; */
   /* padding: 24px 40px 48px; */
   /* padding: 50px; */
   }
.sec-2-ak-overview__info + .sec-2-ak-overview__info {
  /* margin: 24px -50px 0;
  padding: 50px; */
  /* border-top: 1px solid var(--at-neutral-200); */
}
.sec-2-ak-overview__info{
  height: 250px;
    display: flex;
    padding: 50px;
    justify-content: center;
    flex-direction: column;
}
.sec-2-ak-overview__info h3 { margin: 0 0 8px; font-family: var(--at-ff-body); font-weight: 700; font-size: 15px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--at-neutral-950); }
.sec-2-ak-overview__info p { margin: 0; font-family: var(--at-ff-body); font-size: 16px; line-height: 1.6; color: var(--at-neutral-600); }

@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767.98px) {
  .sec-2-ak-overview__col--media {        height: 320px;
        grid-row: auto;
        clip-path: unset !important; }
  .sec-2-ak-overview__col--content,
  .sec-2-ak-overview__col--gallery {
    grid-template-rows: none; grid-row: auto;
    border-left: none; border-right: none;
    /*border-top: 1px solid var(--at-neutral-200);*/
  }
  .sec-2-ak-overview__home-link,
  .sec-2-ak-overview__heading,
  .sec-2-ak-overview__content-row,
  .sec-2-ak-overview__gallery-label,
  .sec-2-ak-overview__gallery-media,
  .sec-2-ak-overview__info-group { padding-left: 15px; padding-right: 15px; clip-path: unset !important;}
  .sec-2-ak-overview__info + .sec-2-ak-overview__info { margin: 24px -24px 0; padding: 24px 24px 0; }
  .sec-2-ak-overview__heading { font-size: 40px; }
  .sec-2-ak-overview__content-row { 
    flex-direction: column;
     /* padding-top: 24px;  */
    }
  .sec-2-ak-overview__text-col { max-width: 100%; flex: 1 1 auto; }
  .sec-2-ak-overview__inset { width: 100%; margin-top: 0px; border-left: none; border-top: 1px solid var(--at-neutral-200); padding-left: 0; padding-top: 20px; }
  .sec-2-ak-overview__inset img { min-height: 220px; }
}


/* ---------- CLUB (dark) ---------- */
.club{
  /* padding-block:clamp(72px,10vw,140px); */
  /* background:
  radial-gradient(60% 50% at 30% 40%,rgba(212,223,59,.08),transparent 70%),var(--ink) */
}
:root {
  --page-bg-rgb: 254, 254, 254;
  --page-fg-rgb: 30, 30, 30;
}


/* text flips with the background so it never disappears on black */
.sec-2-ak-overview__home-link,
.sec-2-ak-overview__heading,
.sec-2-ak-overview__body,
.sec-2-ak-overview__next,
.sec-2-ak-overview__gallery-label,
.sec-2-ak-overview__info h3,
.sec-2-ak-overview__info p {
  color: rgb(var(--page-fg-rgb));
}
/* ===========================================================
   AK Sports Infra — About: scroll-driven white → black
   Add AFTER the existing ".club" rules in main.css.
   The colors are driven by 3 CSS variables that about-scroll.js
   updates on every frame; the defaults below = today's look
   (so nothing changes if JS is off).
   =========================================================== */
.club {
  --about-bg-rgb: 254, 254, 254;   /* section background   */
  --about-fg-rgb: 30, 30, 30;      /* main text / headline */
  --about-shadow: 0.55;            /* ball shadow strength */

  background-color: rgb(var(--about-bg-rgb));
  /* no CSS transition on purpose: scroll position is the only driver */
}

.club-intro p {
  color: rgb(var(--about-fg-rgb));
}
.club-intro .tag {
  color: rgba(var(--about-fg-rgb), 0.68);   /* ≈ #666 on white */
}

.club h2 {
  color: rgb(var(--about-fg-rgb));
}
.club h2 .dim {
  color: rgba(var(--about-fg-rgb), 0.52);   /* ≈ #878787 on white */
}
.club h2 .dash {
  background: rgba(var(--about-fg-rgb), 0.52);
}

/* .ball-stage {
  filter: drop-shadow(0 30px 40px rgba(0, 0, 0, var(--about-shadow)));
} */
.club-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:48px;align-items:start}
.club-intro{display:grid;gap:14px;max-width:34ch;font-size:15px;color:rgba(255,255,255,.72)}
/* .club-intro .tag{
  color:#666;
} */
/* .club-intro p{
  color: var(--at-neutral-900);
} */
.club-stage{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:clamp(16px,3vw,40px);margin-top:clamp(40px,6vw,80px)}

/* -- dynamic ball stack -- */
.ball-stage{
  position:relative;
  width:clamp(140px,22vw,300px);
  aspect-ratio:1;
  /* filter:drop-shadow(0 30px 40px rgba(0,0,0,.55)); */
}
.big-ball{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:0;
  animation:ballCycle 12s ease-in-out infinite;
  animation-delay:calc(var(--i) * -3s);
}
@keyframes ballCycle{
  0%, 20%   { opacity:0; transform:scale(.92) rotate(-6deg); }
  25%, 45%  { opacity:1; transform:scale(1) rotate(0deg); }
  50%, 100% { opacity:0; transform:scale(.92) rotate(6deg); }
}

.club h2{font-size:clamp(38px,6.4vw,92px);font-stretch:108%;text-transform:uppercase;text-align:right;letter-spacing:-.01em;line-height:.95}
.club h2 .dim{color:var(--about-dim,#878787)}
.club h2 .dash{display:inline-block;width:.8em;height:.07em;background:var(--about-dim,#878787);vertical-align:middle;margin-left:.15em}
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(56px,8vw,110px);border-top:1px solid var(--line-dark)}
.pillar{padding:28px 28px 8px 0;display:grid;gap:10px;align-content:start}
.pillar + .pillar{padding-left:28px;border-left:1px solid var(--line-dark)}
.pillar h3{font-size:22px;font-stretch:112%;text-transform:uppercase;font-weight:500}
.pillar p{font-size:15px;color:rgba(255,255,255,.7);max-width:36ch}

@media (max-width:860px){
  .club-grid{grid-template-columns:1fr}
  .club-stage{grid-template-columns:1fr}
  .club h2{text-align:left}
  .pillars{grid-template-columns:1fr}
  .pillar,.pillar + .pillar{padding:22px 0;border-left:0;border-top:1px solid var(--line-dark)}
  .pillar:first-child{border-top:0}
}

/* ===========================================================
   Section — Creative Story (slider)
   =========================================================== */
.sec-story {
  position: relative;
  overflow: hidden;
  background-color: var(--at-neutral-0);
  /* border-top: 1px solid var(--at-neutral-200); */
}
.sec-story__lines {
  /* .sec-1-home-15__grid gives inset/pointer-events. The source svg's
     native ratio is 2:1 (300x150) — tiling it square (e.g. 64x64)
     squashes the artwork until it's barely visible, which is why it
     wasn't showing. Also layers a plain CSS grid underneath as a
     guaranteed-visible fallback for the same square pattern. */
  position: absolute;
  z-index: 0;
  background-repeat: repeat, repeat, repeat;
  background-position: top left;
  background-size: 150px 75px, 60px 60px, 60px 60px;
  background-image:
    url('assets/imgs/pages/home-15/sec-1-lines.svg'),
    linear-gradient(to right, rgb(12 12 12 / 5%) 1px, transparent 1px),
    linear-gradient(to bottom, rgb(12 12 12 / 5%) 1px, transparent 1px);
  opacity: 0.5;
  mix-blend-mode: normal;
}
:root{
  --ink:#12140f;
  --pitch:#1d2a1b;
  --pitch-2:#243322;
  --olive:#0a0a0a;
  --olive-deep:#0a0a0a;
  --butter:#ffffff;
  --cream:#fff;
  --paper:#f5f5f5;
  --clay:#0a0a0a;
  --clay-deep:#0a0a0a;
  --ball:#0a0a0a;
  --mist:#a6ad95;
  --line-dark:rgba(255,255,255,.14);
  --line-light:rgba(18,20,15,.09);
  --display:var(--at-ff-heading, 'Inter', 'Inter Placeholder', sans-serif);
  --mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.sec-story__slider,
.sec-story__slide { position: relative; z-index: 1; }
.sec-story__slide { display: flex; flex-direction: column; }

.land{background-color:var(--paper);color:var(--ink);background-image:linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px),linear-gradient(90deg,rgb(12 12 12 / 5%) 1px, transparent 1px);background-size:48px 48px;padding-block:clamp(64px,8vw,110px);overflow:hidden;position:relative}
.land-top{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:start;
  /* margin-bottom:40px */
}
.land-top .k{font-size:11px !important;text-transform:uppercase;letter-spacing:.06em;line-height:1.3}
.land-top .yr{font-family:var(--display);font-size:clamp(34px,4vw,48px) !important;font-stretch:100%;margin:10px 0;color:#000;}
.land-top .arrow{font-size:28px;line-height:1}
.land-top .sw{justify-self:end;display:grid;grid-template-columns:repeat(2,22px);gap:5px;align-items:end}
.land-top .sw i{width:22px;height:22px;display:block}

.sec-story__inner { max-width: 1600px; margin: 0 auto; }

.sec-story__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding-top: 40px; padding-bottom: 24px; }
.sec-story__eyebrow { display: flex; flex-direction: column; gap: 14px; }
.sec-story__label { font-family: var(--at-ff-body); font-weight:500; font-size: 13px; line-height: 1.3; letter-spacing: 0.04em; text-transform: uppercase; color: var(--at-neutral-900); }
.sec-story__year { font-family: var(--at-ff-heading); font-weight: 500; font-size: 80px; line-height: 1; color: var(--at-neutral-950); }
.sec-story__tags { font-family: var(--at-ff-body); font-weight: 500; font-size: 13px; letter-spacing: 0.15em; text-transform: uppercase; color: var(--at-neutral-600); }

.sec-story__prev { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: none; background: none; color: var(--at-neutral-950); cursor: pointer; }

.sec-story__swatches { display: flex; align-items: flex-start; gap: 10px; }
.sec-story__swatch-grid { display: grid; grid-template-columns: repeat(2, 14px); grid-template-rows: repeat(2, 14px); gap: 3px; }
.sec-story__swatch-grid i { display: block; border-radius: 1px; }
.sec-story__swatch-label { font-family: var(--at-ff-body); font-weight: 500; font-size: 10px; line-height: 1.3; letter-spacing: 0.06em; text-transform: uppercase; color: var(--at-neutral-900); }

/* --- Media: now with parallax + hover glass overlay --- */
.sec-story__media {
  position: relative;
  width: 100%;
  aspect-ratio: 2.35 / 1;
  overflow: hidden;
}
.sec-story__media img {
  position: absolute;
  /* top: -15%; */
  left: 0;
  width: 100%;
  height: 130%;
  object-fit: cover;
  display: block;
  will-change: transform;
}

.sec-story__media-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  padding: 32px 40px;
  opacity: 1;
  transform: translateY(12px);
  transition: opacity 0.35s ease, transform 0.35s ease;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0,0,0,0.35), rgba(0,0,0,0) 55%);
}
.sec-story__media:hover .sec-story__media-overlay {
  opacity: 1;
  transform: translateY(0);
}
.sec-story__media-glass {
  max-width: 520px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px 24px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-radius: 4px;
}
.sec-story__media-label {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #ffffff;
}
.sec-story__media-heading {
margin: 0;
    font-family: var(--at-ff-heading);
    /* font-weight: 500; */
    font-size: 42px;
    line-height: 1.15;
    margin-bottom: 15px;
    color: #fff;
}
.sec-story__media-desc {
  margin: 0;
  font-family: var(--at-ff-body);
  font-size: 16px;
  /* line-height: 1.6; */
  color: rgba(255, 255, 255, 0.88);
}

@media (max-width:760px){
  .land-top{grid-template-columns:1fr 1fr}
  .land-top .arrow{display:none}
  .sec-story__inner { padding-left: 15px; padding-right: 15px; }
  .sec-story__media-overlay { padding: 20px; }
  .sec-story__media-heading { font-size: 20px; }
  .sec-story__media-desc { font-size: 13px; }
}
/* ===========================================================
   Section 2 — Home 15 (About Us)
   =========================================================== */
.sec-2-home-15 {
  background-color: var(--at-neutral-0);
  border-top: 1px solid var(--at-neutral-200);
  /* ---- Top heading ---- */
}
.sec-2-home-15__heading {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 48px;
  line-height: 1.08;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-15__heading {
    font-size: 42px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-15__heading {
    font-size: 38px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-15__heading {
    font-size: 34px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-2-home-15__heading {
    font-size: 30px;
  }
}
@media (max-width: 574.98px) {
  .sec-2-home-15__heading {
    font-size: 26px;
  }
}
.sec-2-home-15 {
  /* ---- Media (big image) ---- */
}
.sec-2-home-15__media-1 {
  position: relative;
  width: 100%;
  aspect-ratio: 553/533;
  overflow: hidden;
  border-radius: 16px;
  background-color: var(--at-neutral-200);
}
.sec-2-home-15__media-1-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-2-home-15 {
  /* ---- Floating glass badge on media-1 ---- */
}
.sec-2-home-15__media-1-badge {
  position: absolute;
  right: 20px;
  bottom: 20px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 12px 18px;
  border-radius: 14px;
  background-color: rgba(37, 99, 235, 0.32);
  border: 1px solid rgba(255, 255, 255, 0.28);
  backdrop-filter: blur(16px) saturate(1.2);
  -webkit-backdrop-filter: blur(16px) saturate(1.2);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.18);
  color: #fff;
  max-width: calc(100% - 32px);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-15__media-1-badge {
    right: 16px;
    bottom: 16px;
    padding: 10px 14px;
    gap: 12px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-15__media-1-badge {
    right: 12px;
    bottom: 12px;
    padding: 10px 12px;
    gap: 10px;
    border-radius: 12px;
  }
}
.sec-2-home-15__media-1-badge-dot {
  position: relative;
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #4ade80;
  box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7);
  animation: sec-2-home-15-pulse 1.8s ease-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .sec-2-home-15__media-1-badge-dot {
    animation: none;
  }
}
.sec-2-home-15__media-1-badge-text {
  display: inline-flex;
  flex-direction: column;
  line-height: 1.2;
  min-width: 0;
}
.sec-2-home-15__media-1-badge-title {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: -0.01em;
  color: #fff;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-15__media-1-badge-title {
    font-size: 13px;
  }
}
.sec-2-home-15__media-1-badge-meta {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.82);
}
@media (max-width: 574.98px) {
  .sec-2-home-15__media-1-badge-meta {
    font-size: 11px;
  }
}
.sec-2-home-15 {
  /* ---- Right column content ---- */
}
.sec-2-home-15__content {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-15__content {
    gap: 32px;
  }
}
@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-2-home-15__content {
    gap: 24px;
  }
}
.sec-2-home-15__body {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
  max-width: 620px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-15__body {
    font-size: 22px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-15__body {
    font-size: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-15__body {
    font-size: 18px;
  }
}
.sec-2-home-15 {
  /* ---- Features 2x2 ---- */
}
.sec-2-home-15__features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 39px;
  max-width: 620px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-15__features {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}
.sec-2-home-15__feature {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-700);
}
@media (max-width: 574.98px) {
  .sec-2-home-15__feature {
    font-size: 15px;
  }
}
.sec-2-home-15__feature-icon {
  flex-shrink: 0;
  color: var(--at-neutral-900);
}
.sec-2-home-15 {
  /* ---- Compact contact form ---- */
}
.sec-2-home-15__form {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 620px;
}
@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-2-home-15__form {
    gap: 16px;
  }
}
.sec-2-home-15__form-label {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-15__form-label {
    font-size: 16px;
  }
}
.sec-2-home-15__form-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 32px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-home-15__form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.sec-2-home-15__form-textarea {
  min-height: 96px;
}
.sec-2-home-15__form-actions {
  margin-top: 12px;
  margin-bottom: 0;
}
.sec-2-home-15 {
  /* ---- Floating 3D cube object ---- */
}
.sec-2-home-15__object {
  position: absolute;
  right: 24px;
  bottom: -40px;
  z-index: 1;
  pointer-events: none;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-15__object {
    right: 16px;
    transform: scale(0.85);
    transform-origin: right bottom;
  }
}
@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-2-home-15__object {
    display: none;
  }
}
.sec-2-home-15 {
  /* ---- Stats with odometer ---- */
}
.sec-2-home-15__stats {
  margin-left: 0;
  margin-right: 0;
}
.sec-2-home-15__stat {
  display: flex;
  flex-direction: column;
}
.sec-2-home-15__stat-num {
  display: inline-flex;
  align-items: baseline;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 84px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-15__stat-num {
    font-size: 72px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-2-home-15__stat-num {
    font-size: 64px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-home-15__stat-num {
    font-size: 56px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-2-home-15__stat-num {
    font-size: 56px;
  }
}
@media (max-width: 574.98px) {
  .sec-2-home-15__stat-num {
    font-size: 48px;
  }
}
.sec-2-home-15__stat-num .odometer {
  font: inherit;
  color: inherit;
}
.sec-2-home-15__stat-num .odometer-inside,
.sec-2-home-15__stat-num .odometer-digit,
.sec-2-home-15__stat-num .odometer-formatting-mark {
  font: inherit !important;
  color: inherit !important;
}
.sec-2-home-15__stat-suffix {
  display: inline-block;
  font: inherit;
  color: inherit;
}
.sec-2-home-15__stat-label {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
  max-width: 200px;
}
@media (max-width: 574.98px) {
  .sec-2-home-15__stat-label {
    font-size: 14px;
  }
}
.sec-2-home-15 {
  /* ---- Secondary image ---- */
}
.sec-2-home-15__media-2 {
  position: relative;
  width: 100%;
  aspect-ratio: 322/401;
  overflow: hidden;
  border-radius: 16px;
  background-color: var(--at-neutral-200);
}
.sec-2-home-15__media-2-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-2-home-15 {
  /* ---- Floating glass badge on media-2 (compact) ---- */
}
.sec-2-home-15__media-2-badge {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 12px;
  background-color: rgba(37, 99, 235, 0.32);
  border: 1px solid rgba(255, 255, 255, 0.28);
  backdrop-filter: blur(16px) saturate(1.2);
  -webkit-backdrop-filter: blur(16px) saturate(1.2);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.18);
  color: #fff;
  max-width: calc(100% - 28px);
}
@media (max-width: 574.98px) {
  .sec-2-home-15__media-2-badge {
    right: 10px;
    bottom: 10px;
    padding: 8px 11px;
    gap: 8px;
    border-radius: 10px;
  }
}
.sec-2-home-15__media-2-badge-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.18);
  color: var(--bw-accent);
}
@media (max-width: 574.98px) {
  .sec-2-home-15__media-2-badge-icon {
    width: 24px;
    height: 24px;
  }
  .sec-2-home-15__media-2-badge-icon svg {
    width: 14px;
    height: 14px;
  }
}
.sec-2-home-15__media-2-badge-text {
  display: inline-flex;
  flex-direction: column;
  line-height: 1.2;
  min-width: 0;
}
.sec-2-home-15__media-2-badge-title {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  letter-spacing: -0.01em;
  color: #fff;
}
@media (max-width: 574.98px) {
  .sec-2-home-15__media-2-badge-title {
    font-size: 12px;
  }
}
.sec-2-home-15__media-2-badge-meta {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.82);
}
.sec-2-home-15 {
  /* ---- Statement (shape icon + text) ---- */
}
.sec-2-home-15__statement {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
  max-width: 323px;
}
@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-2-home-15__statement {
    gap: 20px;
  }
}
.sec-2-home-15__statement-icon {
  width: 40px;
  height: 40px;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
}
.sec-2-home-15__statement-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-2-home-15__statement-text {
    font-size: 18px;
  }
}
@media (max-width: 574.98px) {
  .sec-2-home-15__statement-text {
    font-size: 16px;
  }
}

@keyframes sec-2-home-15-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7);
  }
  70% {
    box-shadow: 0 0 0 12px rgba(74, 222, 128, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(74, 222, 128, 0);
  }
}
/* ===========================================================
   Section 3 — Home 15 (Brand strip with auto-marquee)
   =========================================================== */
.sec-3-home-15 {
  overflow-x: hidden;
  background-color: var(--at-neutral-0);
  padding-top: 24px;
  padding-bottom: 24px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-home-15 {
    padding-top: 16px;
    padding-bottom: 16px;
  }
}
.sec-3-home-15 {
  /* carouselTicker plugin handles infinite horizontal scroll on the ul. */
}
.sec-3-home-15__strip {
  width: 100%;
}
.sec-3-home-15 {
  /* Match Figma fill + responsive card sizes. */
}
.sec-3-home-15 .at-brand-item {
  background-color: var(--at-neutral-50);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-3-home-15 .at-brand-item {
    width: 170px;
    height: 170px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-3-home-15 .at-brand-item {
    width: 150px;
    height: 150px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-home-15 .at-brand-item {
    width: 140px;
    height: 140px;
  }
}

/* ===========================================================
   Section 4 — Home 15 (Selected work)
   =========================================================== */
.sec-4-home-15 {
  background-color: var(--at-neutral-0);
  /* ---- Title bar ---- */
}
.sec-4-home-15__title-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 30px;
  border: 1px solid var(--at-neutral-200);
  border-radius: 16px;
  background-color: var(--at-neutral-0);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-15__title-bar {
    padding: 26px;
    margin-bottom: 72px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-15__title-bar {
    padding: 24px;
    margin-bottom: 56px;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-15__title-bar {
    padding: 20px;
    margin-bottom: 40px;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }
}
.sec-4-home-15__heading {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 72px;
  line-height: 1.05;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  margin: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-15__heading {
    font-size: 60px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-4-home-15__heading {
    font-size: 52px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-15__heading {
    font-size: 44px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-home-15__heading {
    font-size: 38px;
  }
}
@media (max-width: 574.98px) {
  .sec-4-home-15__heading {
    font-size: 32px;
  }
}
.sec-4-home-15 {
  /* ---- Project cards stack ---- */
}
.sec-4-home-15__cards {
  display: flex;
  flex-direction: column;
  gap: 92px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-15__cards {
    gap: 72px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-15__cards {
    gap: 56px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-15__cards {
    gap: 40px;
  }
}
.sec-4-home-15__card {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1428/1011;
  overflow: hidden;
  border-radius: 16px;
  background-color: var(--at-neutral-200);
  text-decoration: none;
}
@media (max-width: 574.98px) {
  .sec-4-home-15__card {
    border-radius: 12px;
    aspect-ratio: 4/5;
  }
}
.sec-4-home-15__card:hover, .sec-4-home-15__card:focus-visible {
  color: inherit;
}
.sec-4-home-15__card-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.sec-4-home-15__card-badge {
  position: absolute;
  top: 23px;
  right: 23px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 10px;
  border-radius: 20px;
  background-color: var(--at-common-white);
  color: var(--at-neutral-950);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 10px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  white-space: nowrap;
}
.sec-4-home-15__card-bar {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 21px;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 0 45px;
  height: 100px;
  background-color: var(--at-neutral-0);
  border-radius: 16px;
  overflow: hidden;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-15__card-bar {
    padding: 0 32px;
    height: 84px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-home-15__card-bar {
    padding: 0 22px;
    height: 72px;
  }
}
@media (max-width: 574.98px) {
  .sec-4-home-15__card-bar {
    left: 12px;
    right: 12px;
    bottom: 12px;
    padding: 0 16px;
    height: 64px;
    gap: 12px;
  }
}
.sec-4-home-15__card-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 64px;
  line-height: 1.1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  white-space: nowrap;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-15__card-name {
    font-size: 56px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-4-home-15__card-name {
    font-size: 44px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-15__card-name {
    font-size: 38px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-home-15__card-name {
    font-size: 30px;
  }
}
@media (max-width: 574.98px) {
  .sec-4-home-15__card-name {
    font-size: 22px;
  }
}
.sec-4-home-15__card-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
  white-space: nowrap;
  transition: opacity 0.3s ease;
}
.sec-4-home-15__card-cta svg {
  flex-shrink: 0;
  transition: transform 0.3s ease;
}
.sec-4-home-15__card:hover .sec-4-home-15__card-cta, .sec-4-home-15__card:focus-visible .sec-4-home-15__card-cta {
  opacity: 0.85;
}
.sec-4-home-15__card:hover .sec-4-home-15__card-cta svg, .sec-4-home-15__card:focus-visible .sec-4-home-15__card-cta svg {
  transform: rotate(45deg);
}
.sec-4-home-15 {
  /* ---- Repo strip ---- */
}
.sec-4-home-15__repos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 32px;
  padding: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-4-home-15__repos {
    margin-top: 72px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-home-15__repos {
    margin-top: 56px;
    justify-content: center;
    gap: 24px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-home-15__repos {
    margin-top: 40px;
    justify-content: center;
    gap: 14px 20px;
  }
}
.sec-4-home-15__repos a {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-4-home-15__repos a:hover, .sec-4-home-15__repos a:focus-visible {
  color: var(--at-neutral-900);
  opacity: 0.7;
}
@media (max-width: 574.98px) {
  .sec-4-home-15__repos a {
    font-size: 14px;
  }
}

/* ===========================================================
   Section 5 — Home 15 (From idea to final project)
   =========================================================== */
.sec-5-home-15 {
  background-color: var(--at-neutral-950);
  color: var(--at-common-white);
  padding-top: 140px;
  padding-bottom: 140px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-15 {
    padding-top: 110px;
    padding-bottom: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-home-15 {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-home-15 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.sec-5-home-15 {
  /* ---- Eyebrow ---- */
}
.sec-5-home-15__eyebrow {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 28px;
  font-family: var(--at-ff-body);
  font-size: 11px;
  line-height: 1;
  text-transform: uppercase;
}
.sec-5-home-15__eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: var(--at-common-white);
  flex-shrink: 0;
}
.sec-5-home-15__eyebrow-key {
  font-weight: 500;
  color: var(--at-common-white);
  letter-spacing: 2px;
}
.sec-5-home-15__eyebrow-meta {
  font-weight: 400;
  color: var(--at-neutral-500);
  letter-spacing: 1.2px;
}
.sec-5-home-15 {
  /* ---- Heading ---- */
}
.sec-5-home-15__heading {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 84px;
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--at-common-white);
  margin: 0;
  max-width: 1100px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-15__heading {
    font-size: 72px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-home-15__heading {
    font-size: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-home-15__heading {
    font-size: 52px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-5-home-15__heading {
    font-size: 42px;
  }
}
@media (max-width: 574.98px) {
  .sec-5-home-15__heading {
    font-size: 34px;
  }
  .sec-5-home-15__heading br {
    display: none;
  }
}
.sec-5-home-15 {
  /* ---- Right column: copy + CTA ---- */
}
.sec-5-home-15__intro {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
}
@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-5-home-15__intro {
    align-items: flex-start;
  }
}
.sec-5-home-15__copy {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 14px;
  line-height: 1.6;
  color: var(--at-neutral-50);
  text-align: right;
  max-width: 446px;
}
@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-5-home-15__copy {
    text-align: left;
    max-width: none;
  }
}
.sec-5-home-15 {
  /* Orange-themed CTA group — uses theme primary instead of neutral-900 */
}
.sec-5-home-15__cta.at-btn-group .at-btn-circle,
.sec-5-home-15__cta.at-btn-group .at-btn {
  background-color: var(--at-theme-primary);
  color: var(--at-common-white);
  border-color: var(--at-theme-primary);
}
.sec-5-home-15__cta.at-btn-group .at-btn:hover,
.sec-5-home-15__cta.at-btn-group .at-btn:focus-visible,
.sec-5-home-15__cta.at-btn-group .at-btn-circle:hover,
.sec-5-home-15__cta.at-btn-group .at-btn-circle:focus-visible {
  background-color: var(--at-theme-primary);
  color: var(--at-common-white);
  opacity: 0.92;
}
.sec-5-home-15 {
  /* ---- Phases row ---- */
}
.sec-5-home-15__phases {
  --bs-gutter-x: 0;
}
.sec-5-home-15 {
  /* Vertical separators between phases (skip first column at the active breakpoint). */
}
.sec-5-home-15__phase {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  height: 100%;
  padding: 40px 32px;
  color: var(--at-common-white);
  border-left: 1px solid var(--at-neutral-800);
  transition: background-color 0.4s ease, transform 0.4s ease;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-home-15__phase {
    padding: 32px 24px;
  }
}
.sec-5-home-15__phase:hover {
  background-color: rgba(255, 255, 255, 0.025);
  transform: translateY(-5px);
}
.sec-5-home-15 {
  /* Drop the left border on the first phase per row at each breakpoint */
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-5-home-15 .row-cols-xxl-5 > .col:nth-child(5n+1) .sec-5-home-15__phase {
    border-left: 0;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-15 .row-cols-xl-5 > .col:nth-child(5n+1) .sec-5-home-15__phase {
    border-left: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-home-15 .row-cols-lg-3 > .col:nth-child(3n+1) .sec-5-home-15__phase {
    border-left: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-5-home-15 .row-cols-md-2 > .col:nth-child(2n+1) .sec-5-home-15__phase {
    border-left: 0;
  }
}
@media (max-width: 574.98px) {
  .sec-5-home-15 .row-cols-1 > .col .sec-5-home-15__phase {
    border-left: 0;
    border-top: 1px solid var(--at-neutral-800);
  }
}
@media (max-width: 574.98px) {
  .sec-5-home-15 .row-cols-1 > .col:first-child .sec-5-home-15__phase {
    border-top: 0;
  }
}
.sec-5-home-15 {
  /* Phase dot — default = white circle; on phase hover or via --active modifier
     it morphs into an orange square (process "active" indicator). */
}
.sec-5-home-15__phase-dot {
  width: 12px;
  height: 12px;
  background-color: var(--at-common-white);
  border-radius: 50%;
  margin-bottom: 32px;
  flex-shrink: 0;
  transition: background-color 0.4s ease, border-radius 0.4s ease, transform 0.4s ease;
}
.sec-5-home-15__phase-dot--active {
  border-radius: 0;
  background-color: var(--at-theme-primary);
}
.sec-5-home-15__phase:hover .sec-5-home-15__phase-dot {
  background-color: var(--at-theme-primary);
  border-radius: 0;
  transform: scale(1.1);
}
.sec-5-home-15__phase-num {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 64px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-common-white);
  margin-bottom: 20px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-5-home-15__phase-num {
    font-size: 56px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-home-15__phase-num {
    font-size: 52px;
  }
}
.sec-5-home-15__phase-title {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -0.013em;
  color: var(--at-common-white);
  margin-bottom: 12px;
}
@media (max-width: 574.98px) {
  .sec-5-home-15__phase-title {
    font-size: 20px;
  }
}
.sec-5-home-15__phase-desc {
  font-family: var(--at-ff-body);
  font-weight: 400;
  font-size: 13px;
  line-height: 1.6;
  color: var(--at-common-white);
  margin-bottom: 24px;
  max-width: 280px;
}
.sec-5-home-15__phase-duration {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: var(--at-theme-primary);
  margin-bottom: 20px;
}
.sec-5-home-15 {
  /* Hidden by default; revealed on phase card hover with a soft slide-up + fade. */
}
.sec-5-home-15__phase-thumb {
  position: relative;
  width: 100%;
  max-width: 280px;
  aspect-ratio: 280/84;
  overflow: hidden;
  border-radius: 8px;
  background-color: var(--at-neutral-100);
  margin-top: auto;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.45s ease, transform 0.45s ease;
}
.sec-5-home-15__phase:hover .sec-5-home-15__phase-thumb {
  opacity: 1;
  transform: translateY(0);
}
.sec-5-home-15__phase-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.05);
  transition: transform 0.6s ease;
}
.sec-5-home-15__phase:hover .sec-5-home-15__phase-img {
  transform: scale(1);
}

/*----------------------------------------*/
/*  sec-6-home-15 (Home 15 — Meet our team + throwable logos)
/*----------------------------------------*/
.sec-6-home-15 {
  position: relative;
  padding-top: clamp(48px, 6vw, 100px);
  padding-bottom: clamp(56px, 8vw, 140px);
  background: var(--at-neutral-0, #fefefe);
  overflow: hidden;
}
.sec-6-home-15__container {
  max-width: 2200px;
  margin: 0 auto;
  padding-left: clamp(20px, 5.2vw, 100px);
  padding-right: clamp(20px, 5.2vw, 100px);
}
.sec-6-home-15__layout {
  display: flex;
  flex-direction: column;
  gap: clamp(28px, 4vw, 40px);
}
@media (min-width: 1200px) {
  .sec-6-home-15__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, min(28vw, 407px)) minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: clamp(6px, 0.8vw, 10px);
    align-items: start;
  }
}
.sec-6-home-15__title-block {
  text-align: center;
}
@media (min-width: 1200px) {
  .sec-6-home-15__title-block {
    grid-column: 2;
    grid-row: 1/span 2;
    align-self: center;
    justify-self: center;
    z-index: 2;
    max-width: min(765px, 100%);
    padding: clamp(16px, 3vw, 48px) 0;
    pointer-events: none;
  }
  .sec-6-home-15__title-block .sec-6-home-15__eyebrow,
  .sec-6-home-15__title-block .sec-6-home-15__title {
    pointer-events: auto;
  }
}
.sec-6-home-15__eyebrow img {
  width: 14px;
  height: 13px;
}
.sec-6-home-15__eyebrow-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-15__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(40px, 6vw, 84px);
  line-height: 0.95;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
  text-wrap: balance;
}
.sec-6-home-15__member {
  min-width: 0;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}
@media (min-width: 1200px) {
  .sec-6-home-15__member {
    max-width: 407px;
  }
  .sec-6-home-15__member--1 {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }
  .sec-6-home-15__member--2 {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    margin-top: 0;
  }
  .sec-6-home-15__member--3 {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    margin-top: 0;
  }
  .sec-6-home-15__member--4 {
    grid-column: 3;
    grid-row: 2;
    justify-self: end;
    margin-top: clamp(4px, 1vw, 14px);
  }
}
.sec-6-home-15__member-link {
  display: block;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-6-home-15__member-link:hover {
  opacity: 0.92;
}
.sec-6-home-15__member-frame {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: var(--at-neutral-100, #dfdfdf);
  aspect-ratio: 407/550;
}
.sec-6-home-15__member-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
}
.sec-6-home-15__member-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  min-height: 34.5%;
  padding: clamp(28px, 3vw, 40px) clamp(24px, 3.5vw, 46px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  background: linear-gradient(180deg, rgba(26, 26, 26, 0) 11.9%, rgba(26, 26, 26, 0.92) 100%);
  backdrop-filter: blur(3px);
  pointer-events: none;
}
.sec-6-home-15__member-name {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(26px, 2.2vw, 32px);
  line-height: 1.1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe);
}
.sec-6-home-15__member-role {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--at-neutral-0, #fefefe);
  opacity: 0.8;
}
.sec-6-home-15__member-fab {
  position: absolute;
  top: clamp(20px, 2vw, 26px);
  right: clamp(20px, 2vw, 26px);
  z-index: 2;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.sec-6-home-15__member-fab--light {
  background: var(--at-neutral-0, #fefefe);
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-6-home-15__member-fab--dark {
  background: var(--at-neutral-900, #1d1d1d);
  color: var(--at-neutral-0, #fefefe);
}
@media (min-width: 1200px) {
  .sec-6-home-15__foot {
    grid-column: 2/-1;
    grid-row: 3;
    justify-self: end;
    max-width: min(775px, 100%);
    text-align: left;
  }
}
.sec-6-home-15__foot-text {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(22px, 2.2vw, 36px);
  line-height: 1.2;
  letter-spacing: -0.05em;
  text-transform: capitalize;
  color: var(--at-neutral-700, #303030);
}
.sec-6-home-15__cta {
  height: 50px;
  padding: 14px 27px;
  border-radius: 50px;
  background: var(--at-neutral-900, #1d1d1d);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-0, #fefefe) !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background 0.25s ease, color 0.25s ease;
}
.sec-6-home-15__cta:hover {
  background: var(--at-theme-primary);
  color: var(--at-neutral-0) !important;
}
.sec-6-home-15__cta-arrow {
  flex-shrink: 0;
  color: currentColor;
}
.sec-6-home-15 {
  /* --- Throwable logos scene (scoped layout; physics from throwable.js) --- */
}
.sec-6-home-15__throw {
  margin-top: 0;
  position: absolute;
  bottom: 0;
  height: 600px;
  z-index: 1;
  width: 100%;
}
.sec-6-home-15__throw .client-capsule-wrapper {
  margin-top: 0;
  height: 380px;
}
@media (min-width: 768px) {
  .sec-6-home-15__throw .client-capsule-wrapper {
    height: 460px;
  }
}
@media (min-width: 992px) {
  .sec-6-home-15__throw .client-capsule-wrapper {
    height: 520px;
  }
}
@media (min-width: 1400px) {
  .sec-6-home-15__throw .client-capsule-wrapper {
    height: 580px;
  }
}
.sec-6-home-15__throw .client-box--brand-h15 {
  background-color: var(--at-theme-primary);
}

/*----------------------------------------*/
/*  sec-7-home-15 (Home 15 — What we do)
/*----------------------------------------*/
.sec-7-home-15 {
  position: relative;
  background: var(--at-neutral-50, #f2f2f2);
  padding-top: 120px;
  padding-bottom: 140px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-7-home-15 {
    padding-top: 100px;
    padding-bottom: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-15 {
    padding-top: 80px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-15 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.sec-7-home-15 {
  /* ---- Header ---- */
}
.sec-7-home-15__head {
  max-width: 1430px;
  margin-bottom: 60px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-15__head {
    margin-bottom: 48px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-15__head {
    margin-bottom: 36px;
  }
}
.sec-7-home-15__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  margin-bottom: 16px;
}
.sec-7-home-15__eyebrow svg {
  flex-shrink: 0;
}
.sec-7-home-15__eyebrow-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
}
.sec-7-home-15__heading {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(32px, 4.6vw, 64px);
  line-height: 1.125;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900, #1d1d1d);
}
.sec-7-home-15__heading-muted {
  color: var(--at-neutral-300, #b7b7b7);
}
.sec-7-home-15 {
  /* ---- Body ---- */
}
.sec-7-home-15__body {
  align-items: flex-start;
}
.sec-7-home-15 {
  /* ---- Left: image + caption ---- */
}
.sec-7-home-15__media {
  margin-bottom: 28px;
}
.sec-7-home-15__media-frame {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 551/345;
}
.sec-7-home-15__media-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.sec-7-home-15__caption {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.45;
  letter-spacing: -0.02em;
  color: var(--at-neutral-950, #0f0f0f);
  max-width: 551px;
}
.sec-7-home-15 {
  /* ---- Right: services list ---- */
}
.sec-7-home-15__services {
  border-top: 1px solid var(--at-neutral-200, #cdcccc);
  border-bottom: 1px solid var(--at-neutral-200, #cdcccc);
}
.sec-7-home-15__service + .sec-7-home-15__service {
  border-top: 1px solid var(--at-neutral-200, #cdcccc);
}
.sec-7-home-15__service-link {
  display: flex;
  align-items: center;
  gap: 32px;
  padding: 28px 8px;
  color: inherit;
  text-decoration: none;
  transition: padding-left 0.35s ease;
}
.sec-7-home-15__service-link:hover {
  padding-left: 16px;
}
.sec-7-home-15__service-link:hover .sec-7-home-15__service-title {
  font-size: clamp(26px, 2.5vw, 36px);
}
.sec-7-home-15__service-link:hover .sec-7-home-15__service-fab {
  width: 56px;
  height: 56px;
  background: var(--at-theme-primary, #0a0a0a);
  border-color: var(--at-theme-primary, #0a0a0a);
  color: var(--at-neutral-0, #fefefe);
}
.sec-7-home-15__service-link:hover .sec-7-home-15__service-fab svg {
  width: 16px;
  height: 15px;
  stroke-width: 1.5;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-15__service-link {
    gap: 16px;
    padding: 22px 4px;
  }
  .sec-7-home-15__service-link:hover {
    padding-left: 8px;
  }
}
.sec-7-home-15__service-index {
  flex-shrink: 0;
  width: 100px;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(22px, 2.2vw, 32px);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950, #0f0f0f);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-15__service-index {
    width: 64px;
  }
}
.sec-7-home-15__service-title {
  flex: 1 1 auto;
  min-width: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--at-neutral-950, #0f0f0f);
  transition: font-size 0.3s ease;
}
.sec-7-home-15__service-fab {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid var(--at-neutral-200, #cdcccc);
  background: transparent;
  color: var(--at-neutral-950, #0f0f0f);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: width 0.3s ease, height 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.sec-7-home-15__service-fab svg {
  transition: width 0.3s ease, height 0.3s ease, stroke-width 0.3s ease;
}
.sec-7-home-15 {
  /* ---- CTA block ---- */
}
.sec-7-home-15__cta-block {
  max-width: 590px;
  margin-top: 64px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-home-15__cta-block {
    margin-top: 48px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-home-15__cta-block {
    margin-top: 36px;
  }
}
.sec-7-home-15__cta-mark {
  display: inline-flex;
  width: 40px;
  height: 40px;
  margin-bottom: 24px;
}
.sec-7-home-15__cta-copy {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: clamp(16px, 1.3vw, 20px);
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-900, #1d1d1d);
  margin-bottom: 28px;
}
.sec-7-home-15__cta-actions {
  gap: 0;
}

/*----------------------------------------*/
/*  sec-8-home-15 (Home 15 — Testimonials)
/*----------------------------------------*/
.sec-8-home-15 {
  position: relative;
  padding-top: 100px;
  padding-bottom: 110px;
  border-bottom: 1px solid var(--at-neutral-200, #cdcccc);
  text-align: center;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-8-home-15 {
    padding-top: 88px;
    padding-bottom: 96px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-15 {
    padding-top: 72px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-15 {
    padding-top: 56px;
    padding-bottom: 64px;
  }
}
.sec-8-home-15 {
  /* ---- Eyebrow ---- */
}
.sec-8-home-15__eyebrow {
  color: var(--at-neutral-900, #1d1d1d);
  margin-bottom: 56px;
}
.sec-8-home-15__eyebrow svg {
  flex-shrink: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-15__eyebrow {
    margin-bottom: 44px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-15__eyebrow {
    margin-bottom: 32px;
  }
}
.sec-8-home-15__eyebrow-text {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.05em;
}
.sec-8-home-15 {
  /* ---- Main slider ---- */
}
.sec-8-home-15__slider {
  max-width: 1330px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 64px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-15__slider {
    margin-bottom: 48px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-8-home-15__slider {
    margin-bottom: 36px;
  }
}
.sec-8-home-15__slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.sec-8-home-15__quote {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: clamp(22px, 3.4vw, 48px);
  line-height: 1.085;
  letter-spacing: -0.05em;
  color: var(--at-neutral-950, #0f0f0f);
  max-width: 1330px;
}
.sec-8-home-15 {
  /* ---- Thumbs slider ---- */
}
.sec-8-home-15__thumbs {
  max-width: 814px;
  margin-left: auto;
  margin-right: auto;
}
.sec-8-home-15__thumbs .swiper-wrapper {
  align-items: center;
}
.sec-8-home-15__thumb {
  flex-shrink: 0;
  height: auto;
  aspect-ratio: 1/1;
  padding: 0;
  background: transparent;
  border: 5px solid var(--at-neutral-50, #f2f2f2);
  cursor: pointer;
  overflow: hidden;
  transition: border-color 0.3s ease;
}
.sec-8-home-15__thumb:hover {
  border-color: var(--at-neutral-200, #cdcccc);
}
.sec-8-home-15__thumb.swiper-slide-thumb-active {
  border-color: var(--at-theme-primary, #0a0a0a);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-home-15__thumb {
    border-width: 4px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-home-15__thumb {
    border-width: 4px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-home-15__thumb {
    border-width: 3px;
  }
}
.sec-8-home-15__thumb-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

/* ===========================================================
   Section 9 — Home 15 (Inside / Article & blogs)
   =========================================================== */
.sec-9-home-15 {
  padding-top: 140px;
  padding-bottom: 140px;
  background-color: var(--at-neutral-0);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-15 {
    padding-top: 110px;
    padding-bottom: 110px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.sec-9-home-15__inner {
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 100px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px), only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-9-home-15__inner {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-15__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-9-home-15__inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 574.98px) {
  .sec-9-home-15__inner {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.sec-9-home-15 {
  /* ---- Header row ---- */
}
.sec-9-home-15__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  padding-bottom: 42px;
  border-bottom: 1px solid var(--at-neutral-100);
  margin-bottom: 42px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__head {
    padding-bottom: 32px;
    margin-bottom: 32px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    padding-bottom: 28px;
    margin-bottom: 28px;
  }
}
.sec-9-home-15__head-left {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}
.sec-9-home-15__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15__eyebrow {
    font-size: 13px;
  }
}
.sec-9-home-15__eyebrow-label {
  white-space: nowrap;
}
.sec-9-home-15__eyebrow-icon {
  flex-shrink: 0;
  display: inline-block;
}
.sec-9-home-15__title {
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-size: 124px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px) {
  .sec-9-home-15__title {
    font-size: 110px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-9-home-15__title {
    font-size: 96px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-15__title {
    font-size: 84px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-9-home-15__title {
    font-size: 76px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__title {
    font-size: 64px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-9-home-15__title {
    font-size: 56px;
  }
}
@media (max-width: 574.98px) {
  .sec-9-home-15__title {
    font-size: 44px;
  }
}
.sec-9-home-15__cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 27px;
  border-radius: 50px;
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.05em;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}
.sec-9-home-15__cta:hover, .sec-9-home-15__cta:focus-visible {
  background-color: var(--at-neutral-700, #2a2a2a);
  color: var(--at-neutral-0);
  transform: translateY(-2px);
}
@media (max-width: 574.98px) {
  .sec-9-home-15__cta {
    font-size: 14px;
    padding: 12px 22px;
  }
}
.sec-9-home-15__cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-9-home-15 {
  /* ---- Articles list ---- */
}
.sec-9-home-15__list {
  display: flex;
  flex-direction: column;
  gap: 42px;
  margin-left: 372px;
}
@media only screen and (min-width: 1700px) and (max-width: 1800px), only screen and (min-width: 1600px) and (max-width: 1700px) {
  .sec-9-home-15__list {
    margin-left: 240px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .sec-9-home-15__list {
    margin-left: 160px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-15__list {
    margin-left: 80px;
    gap: 36px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__list {
    margin-left: 0;
    gap: 32px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15__list {
    margin-left: 0;
    gap: 24px;
  }
}
.sec-9-home-15 {
  /* ---- Single article row ---- */
}
.sec-9-home-15__item {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) 339px minmax(0, 0.9fr);
  align-items: center;
  gap: 64px;
  padding-bottom: 42px;
  border-bottom: 1px solid var(--at-neutral-100);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-15__item {
    grid-template-columns: minmax(0, 1.4fr) 280px minmax(0, 0.9fr);
    gap: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-9-home-15__item {
    grid-template-columns: minmax(0, 1.3fr) 240px minmax(0, 1fr);
    gap: 32px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__item {
    grid-template-columns: minmax(0, 1fr) 200px;
    grid-template-areas: "lead thumb" "meta meta";
    gap: 24px 28px;
    padding-bottom: 32px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15__item {
    grid-template-columns: 1fr;
    grid-template-areas: "thumb" "lead" "meta";
    gap: 20px;
    padding-bottom: 24px;
  }
}
.sec-9-home-15__item--last {
  border-bottom: 0;
  padding-bottom: 0;
}
.sec-9-home-15__item-lead {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
  max-width: 557px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__item-lead {
    grid-area: lead;
    gap: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15__item-lead {
    grid-area: lead;
    gap: 14px;
    max-width: none;
  }
}
.sec-9-home-15__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 19px;
  border: 1px solid var(--at-neutral-100);
  border-radius: 32px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--at-neutral-900);
  background-color: transparent;
}
.sec-9-home-15__item-title {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: -0.05em;
  color: var(--at-neutral-900);
  margin: 0;
}
.sec-9-home-15__item-title a {
  color: inherit;
  text-decoration: none;
  background-image: linear-gradient(currentColor, currentColor);
  background-size: 0% 1px;
  background-position: 0 100%;
  background-repeat: no-repeat;
  transition: background-size 0.4s ease;
}
.sec-9-home-15__item-title a:hover, .sec-9-home-15__item-title a:focus-visible {
  color: inherit;
  background-size: 100% 1px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-9-home-15__item-title {
    font-size: 22px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-9-home-15__item-title {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-9-home-15__item-title {
    font-size: 20px;
  }
}
@media (max-width: 574.98px) {
  .sec-9-home-15__item-title {
    font-size: 18px;
  }
}
.sec-9-home-15__item-thumb {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 16px;
  aspect-ratio: 339/210;
  width: 100%;
  background-color: var(--at-neutral-100);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__item-thumb {
    grid-area: thumb;
    aspect-ratio: 4/3;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15__item-thumb {
    grid-area: thumb;
    aspect-ratio: 16/10;
  }
}
.sec-9-home-15__item-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.sec-9-home-15__item-meta {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 32px;
  height: 100%;
  min-height: 120px;
  max-width: 312px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-9-home-15__item-meta {
    grid-area: meta;
    gap: 16px;
    max-width: none;
    min-height: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-9-home-15__item-meta {
    grid-area: meta;
    gap: 14px;
    max-width: none;
    min-height: 0;
  }
}
.sec-9-home-15__item-excerpt {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}
@media (max-width: 574.98px) {
  .sec-9-home-15__item-excerpt {
    font-size: 15px;
  }
}
.sec-9-home-15__item-byline {
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--at-neutral-500);
}
@media (max-width: 574.98px) {
  .sec-9-home-15__item-byline {
    font-size: 15px;
  }
}
.sec-9-home-15__item-author {
  color: var(--bw-accent);
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.sec-9-home-15__item-author:hover, .sec-9-home-15__item-author:focus-visible {
  color: var(--bw-accent);
  opacity: 0.8;
}

/* Slideshow — 6 layout variants in one partial.
   Wrapper: .slideshow
     - default (no modifier)        → Horizontal Cinema
     - .is-split                    → Editorial Split + Orbital
     - .is-stack                    → Typographic Stack + bottom progress bar
     - .is-curtain                  → Diagonal Curtain Reveal
     - .is-zstack                   → 3D Z-Stack Reveal
     - .is-vista                    → Slideshow-faithful vertical scroll + central minimap
   All rules scoped under the wrapper to avoid global pollution.
*/
.slideshow {
  /* Common shell --------------------------------------------------------- */
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100svh;
  overflow: hidden;
  font-family: inherit;
}
.slideshow *,
.slideshow *::before,
.slideshow *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.slideshow button {
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  font: inherit;
}
.slideshow a {
  color: inherit;
  text-decoration: none;
}
.slideshow .project-list {
  position: relative;
  width: 100%;
  height: 100%;
}
.slideshow {
  /* Cinema — wrapper-level palette (only when no other variant active).
     Uses Orisa's themed CSS vars so colors invert with the dark-mode toggle. */
}
.slideshow:not(.is-split):not(.is-stack):not(.is-horizontal) {
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
}
.slideshow {
  /* ===================================================================== *
   * CINEMA (default) — horizontal slides + side rail
   * ===================================================================== */
}
.slideshow .project {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100svh;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 4rem;
  padding: 7rem 8rem 4rem 6rem;
  will-change: transform;
}
.slideshow .project-frame {
  position: relative;
  width: 100%;
  height: 100%;
  max-height: calc(100svh - 11rem);
  overflow: hidden;
}
.slideshow .project-frame img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.5);
  will-change: transform;
}
.slideshow .project-meta {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
}
.slideshow .project-num {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(var(--at-common-white-rgb), 0.4);
}
.slideshow .project-title {
  font-size: clamp(2.75rem, 7vw, 6.5rem);
  line-height: 0.95;
  font-weight: 500;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  max-width: 12ch;
}
.slideshow .project-meta-bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  opacity: 0.7;
  gap: 1rem;
}
.slideshow .rail {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translateY(-50%);
  width: 80px;
  height: 360px;
  overflow: hidden;
  mask-image: linear-gradient(to bottom, transparent 0%, #000 18%, #000 82%, transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 18%, #000 82%, transparent 100%);
  z-index: 5;
}
.slideshow .rail-track {
  position: relative;
  width: 100%;
  height: 100%;
}
.slideshow .rail-item {
  position: absolute;
  top: calc(50% - 30px);
  left: 0;
  width: 100%;
  height: 60px;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0 0.5rem;
  will-change: transform;
  opacity: 0.5;
  transition: opacity 0.3s ease;
}
.slideshow .rail-item.is-active {
  opacity: 1;
}
.slideshow .rail-thumb {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  overflow: hidden;
  position: relative;
  border: 1px solid rgba(var(--at-common-white-rgb), 0.2);
  transition: border-color 0.3s ease, transform 0.3s ease;
}
.slideshow .rail-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.slideshow .rail-item.is-active .rail-thumb {
  border-color: var(--at-common-white);
  transform: scale(1.06);
}
.slideshow .rail-index {
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  opacity: 0.8;
}
.slideshow .rail-item.is-active .rail-index {
  opacity: 1;
}
.slideshow {
  /* Cinema responsive */
}
@media (max-width: 991px) {
  .slideshow .project {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 1.5rem;
    padding: 5rem 5rem 2rem 1.25rem;
  }
  .slideshow .project-frame {
    max-height: 55vh;
  }
  .slideshow .project-title {
    font-size: clamp(2rem, 11vw, 3.5rem);
  }
  .slideshow .rail {
    right: 0.5rem;
    width: 56px;
    height: 280px;
  }
  .slideshow .rail-thumb {
    width: 34px;
    height: 34px;
  }
}
@media (max-width: 575px) {
  .slideshow .project {
    padding: 4.5rem 4rem 1.5rem 1rem;
    gap: 1rem;
  }
  .slideshow .project-frame {
    max-height: 50vh;
  }
  .slideshow .project-title {
    font-size: clamp(1.75rem, 12vw, 2.75rem);
  }
  .slideshow .project-num,
  .slideshow .project-meta-bottom {
    font-size: 0.65rem;
  }
  .slideshow .rail {
    right: 0.25rem;
    width: 48px;
    height: 240px;
  }
  .slideshow .rail-thumb {
    width: 30px;
    height: 30px;
  }
  .slideshow .rail-index {
    font-size: 0.6rem;
  }
}
.slideshow {
  /* ===================================================================== *
   * SPLIT — editorial 35/65, orbital nav corner
   * ===================================================================== */
}
.slideshow.is-split {
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
}
.slideshow.is-split .split-project {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100svh;
  display: grid;
  grid-template-columns: minmax(0, 35fr) minmax(0, 65fr);
  gap: 4rem;
  padding: 6rem 6rem 4rem;
  will-change: transform;
}
.slideshow.is-split .split-frame {
  position: relative;
  width: 100%;
  height: 100%;
  max-height: calc(100svh - 10rem);
  overflow: hidden;
}
.slideshow.is-split .split-frame img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.5);
  will-change: transform;
}
.slideshow.is-split .split-meta {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  max-width: 640px;
  padding-right: 7rem;
}
.slideshow.is-split .split-num {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  opacity: 0.6;
}
.slideshow.is-split .split-title {
  font-size: clamp(2.5rem, 6vw, 5.5rem);
  line-height: 0.95;
  font-weight: 500;
  letter-spacing: -0.03em;
  text-transform: uppercase;
}
.slideshow.is-split .split-info {
  display: flex;
  gap: 2rem;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  opacity: 0.7;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(var(--at-common-black-rgb), 0.2);
}
.slideshow.is-split .split-desc {
  font-size: 1rem;
  line-height: 1.55;
  max-width: 520px;
  color: rgba(var(--at-common-black-rgb), 0.75);
}
.slideshow.is-split {
  /* Orbital corner navigator */
}
.slideshow.is-split .orbital {
  position: absolute;
  top: 6rem;
  right: 2.5rem;
  width: 140px;
  height: 140px;
  z-index: 5;
}
.slideshow.is-split .orbital-ring {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 110px;
  height: 110px;
  border: 1px solid rgba(var(--at-common-black-rgb), 0.3);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.slideshow.is-split .orbital-dot {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: rgba(var(--at-common-black-rgb), 0.4);
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.slideshow.is-split .orbital-dot.is-active {
  background-color: var(--at-neutral-950);
}
.slideshow.is-split .orbital-indicator {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 55px;
  height: 1px;
  background-color: var(--at-neutral-950);
  transform-origin: 0 50%;
  transform: translateY(-50%) rotate(-90deg);
  pointer-events: none;
}
.slideshow.is-split .orbital-indicator::after {
  content: "";
  position: absolute;
  right: -4px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--at-neutral-950);
  transform: translateY(-50%);
}
.slideshow.is-split .orbital-label {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  gap: 0.25rem;
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  pointer-events: none;
}
.slideshow.is-split .orbital-current {
  color: var(--at-neutral-950);
}
.slideshow.is-split .orbital-total {
  opacity: 0.45;
}
@media (max-width: 991px) {
  .slideshow.is-split .split-project {
    grid-template-columns: 1fr;
    grid-template-rows: 40vh auto;
    gap: 1.5rem;
    padding: 5rem 1.5rem 2rem;
  }
  .slideshow.is-split .split-meta {
    padding-right: 0;
  }
  .slideshow.is-split .split-title {
    font-size: clamp(2rem, 9vw, 3.25rem);
  }
  .slideshow.is-split .orbital {
    top: 4.5rem;
    right: 1rem;
    width: 100px;
    height: 100px;
  }
  .slideshow.is-split .orbital-ring {
    width: 78px;
    height: 78px;
  }
  .slideshow.is-split .orbital-indicator {
    width: 39px;
  }
}
@media (max-width: 575px) {
  .slideshow.is-split .split-project {
    padding: 4rem 1rem 1.5rem;
  }
  .slideshow.is-split .split-title {
    font-size: clamp(1.75rem, 10vw, 2.75rem);
  }
  .slideshow.is-split .split-desc {
    font-size: 0.9rem;
  }
  .slideshow.is-split .orbital {
    top: 4rem;
    right: 0.5rem;
    width: 80px;
    height: 80px;
  }
  .slideshow.is-split .orbital-ring {
    width: 62px;
    height: 62px;
  }
  .slideshow.is-split .orbital-indicator {
    width: 31px;
  }
  .slideshow.is-split .orbital-dot {
    width: 8px;
    height: 8px;
  }
  .slideshow.is-split .orbital-label {
    font-size: 0.6rem;
  }
}
.slideshow {
  /* ===================================================================== *
   * STACK — typographic backdrop, image accent, bottom progress bar
   * ===================================================================== */
}
.slideshow.is-stack {
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
}
.slideshow.is-stack .stack-project {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100svh;
  will-change: transform;
  overflow: hidden;
}
.slideshow.is-stack .stack-num-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: clamp(20rem, 75vh, 75vh);
  line-height: 0.85;
  font-weight: 800;
  color: transparent;
  -webkit-text-stroke: 2px rgba(var(--at-common-black-rgb), 0.18);
  letter-spacing: -0.05em;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
}
.slideshow.is-stack .stack-frame {
  position: absolute;
  top: 50%;
  right: 12vw;
  transform: translateY(-50%);
  width: 36vw;
  height: 60vh;
  max-width: 480px;
  max-height: 600px;
  overflow: hidden;
}
.slideshow.is-stack .stack-frame img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.5);
  will-change: transform;
}
.slideshow.is-stack .stack-overlay {
  position: absolute;
  left: 8vw;
  bottom: 14vh;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 50vw;
  z-index: 2;
}
.slideshow.is-stack .stack-title {
  font-size: clamp(2.25rem, 5.5vw, 4.5rem);
  line-height: 0.95;
  font-weight: 500;
  letter-spacing: -0.03em;
  text-transform: uppercase;
}
.slideshow.is-stack .stack-info {
  display: flex;
  gap: 1.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  opacity: 0.7;
}
.slideshow.is-stack {
  /* Bottom progress bar */
}
.slideshow.is-stack .stack-progress {
  position: absolute;
  bottom: 4rem;
  left: 50%;
  transform: translateX(-50%);
  width: 320px;
  height: 1px;
  background-color: rgba(var(--at-common-black-rgb), 0.2);
  z-index: 5;
}
.slideshow.is-stack .stack-progress-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background-color: var(--at-neutral-950);
}
.slideshow.is-stack .stack-progress-dot {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: rgba(var(--at-common-black-rgb), 0.35);
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.slideshow.is-stack .stack-progress-dot.is-active {
  background-color: var(--at-neutral-950);
  transform: translate(-50%, -50%) scale(1.5);
}
.slideshow.is-stack .stack-progress-dot::before {
  content: attr(data-num);
  position: absolute;
  top: -1.6rem;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.slideshow.is-stack .stack-progress-dot.is-active::before,
.slideshow.is-stack .stack-progress-dot:hover::before {
  opacity: 0.8;
}
@media (max-width: 991px) {
  .slideshow.is-stack .stack-num-bg {
    font-size: clamp(14rem, 55vh, 55vh);
  }
  .slideshow.is-stack .stack-frame {
    right: 6vw;
    width: 50vw;
    height: 50vh;
  }
  .slideshow.is-stack .stack-overlay {
    left: 6vw;
    bottom: 16vh;
    max-width: 75vw;
  }
  .slideshow.is-stack .stack-title {
    font-size: clamp(1.75rem, 8vw, 3rem);
  }
  .slideshow.is-stack .stack-progress {
    width: 240px;
    bottom: 3rem;
  }
}
@media (max-width: 575px) {
  .slideshow.is-stack .stack-num-bg {
    font-size: clamp(10rem, 40vh, 40vh);
    -webkit-text-stroke-width: 1.5px;
  }
  .slideshow.is-stack .stack-frame {
    right: 50%;
    top: 35vh;
    transform: translate(50%, -50%);
    width: 70vw;
    height: 38vh;
  }
  .slideshow.is-stack .stack-overlay {
    left: 1.25rem;
    bottom: 8vh;
    max-width: calc(100vw - 2.5rem);
  }
  .slideshow.is-stack .stack-title {
    font-size: clamp(1.5rem, 9vw, 2.25rem);
  }
  .slideshow.is-stack .stack-progress {
    width: 180px;
    bottom: 2.5rem;
  }
  .slideshow.is-stack .stack-progress-dot {
    width: 6px;
    height: 6px;
  }
}
.slideshow {
  /* ===================================================================== *
   * CURTAIN — diagonal clip-path wipe, no slide translate
   * ===================================================================== */
}
.slideshow.is-curtain {
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
}
.slideshow.is-curtain .curtain-stage {
  position: relative;
  width: 100%;
  height: 100%;
}
.slideshow.is-curtain .curtain-slot {
  position: absolute;
  inset: 0;
  will-change: clip-path;
  overflow: hidden;
}
.slideshow.is-curtain .curtain-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.slideshow.is-curtain .curtain-overlay {
  position: absolute;
  left: 8vw;
  bottom: 12vh;
  max-width: 50vw;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  z-index: 2;
}
.slideshow.is-curtain .curtain-num {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  opacity: 0.85;
  color: #fff;
}
.slideshow.is-curtain .curtain-title {
  font-size: clamp(2.5rem, 7vw, 6rem);
  line-height: 0.95;
  font-weight: 700;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  max-width: 14ch;
  color: #fff;
}
.slideshow.is-curtain .curtain-meta {
  display: flex;
  gap: 2rem;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  opacity: 0.85;
  color: #fff;
}
.slideshow.is-curtain {
  /* Diagonal slits — left edge */
}
.slideshow.is-curtain .curtain-nav {
  position: absolute;
  left: 2.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  z-index: 5;
  color: #fff;
}
.slideshow.is-curtain .curtain-slit {
  display: block;
  width: 30px;
  height: 3px;
  background-color: rgba(var(--at-common-black-rgb), 0.4);
  transform: skewX(-30deg);
  transition: width 0.3s ease, background-color 0.3s ease;
  padding: 0;
}
.slideshow.is-curtain .curtain-slit.is-active {
  width: 60px;
  background-color: #fff;
}
@media (max-width: 991px) {
  .slideshow.is-curtain .curtain-overlay {
    left: 1.5rem;
    bottom: 6vh;
    max-width: 80vw;
  }
  .slideshow.is-curtain .curtain-title {
    font-size: clamp(1.75rem, 9vw, 3.25rem);
  }
  .slideshow.is-curtain .curtain-nav {
    left: 1rem;
    gap: 0.5rem;
  }
  .slideshow.is-curtain .curtain-slit {
    width: 24px;
  }
  .slideshow.is-curtain .curtain-slit.is-active {
    width: 48px;
  }
}
@media (max-width: 575px) {
  .slideshow.is-curtain .curtain-overlay {
    left: 1rem;
    bottom: 4vh;
    gap: 0.75rem;
  }
  .slideshow.is-curtain .curtain-title {
    font-size: clamp(1.5rem, 11vw, 2.5rem);
  }
  .slideshow.is-curtain .curtain-meta {
    gap: 1rem;
    font-size: 0.65rem;
  }
}
.slideshow {
  /* ===================================================================== *
   * Z-STACK — 3D perspective stack reveal
   * ===================================================================== */
}
.slideshow.is-zstack {
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
}
.slideshow.is-zstack .project-list {
  perspective: 1500px;
  perspective-origin: center;
  transform-style: preserve-3d;
}
.slideshow.is-zstack .zstack-project {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  backface-visibility: hidden;
  will-change: transform, opacity;
}
.slideshow.is-zstack .zstack-card {
  width: 70vw;
  max-width: 1100px;
  height: 75vh;
  max-height: 720px;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.slideshow.is-zstack .zstack-frame {
  position: relative;
  width: 100%;
  flex: 1;
  overflow: hidden;
}
.slideshow.is-zstack .zstack-frame img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.slideshow.is-zstack .zstack-caption {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.slideshow.is-zstack .zstack-caption-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  opacity: 0.7;
}
.slideshow.is-zstack .zstack-title {
  font-size: clamp(1.5rem, 3vw, 2.5rem);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}
.slideshow.is-zstack {
  /* Right-side index navigator */
}
.slideshow.is-zstack .zstack-index {
  position: absolute;
  right: 3rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  z-index: 10;
}
.slideshow.is-zstack .zstack-index-btn {
  font-size: 0.85rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  color: rgba(var(--at-common-black-rgb), 0.35);
  transition: color 0.3s ease, transform 0.3s ease, font-size 0.3s ease;
  text-align: right;
  padding: 0.25rem 0;
}
.slideshow.is-zstack .zstack-index-btn.is-active {
  color: var(--at-neutral-950);
  font-size: 1.05rem;
  font-weight: 700;
  transform: scale(1.1);
}
@media (max-width: 991px) {
  .slideshow.is-zstack .zstack-card {
    width: 80vw;
    height: 70vh;
  }
  .slideshow.is-zstack .zstack-index {
    right: 1rem;
  }
}
@media (max-width: 575px) {
  .slideshow.is-zstack .zstack-card {
    width: 88vw;
    height: 65vh;
    gap: 0.75rem;
  }
  .slideshow.is-zstack .zstack-title {
    font-size: clamp(1.25rem, 5vw, 1.75rem);
  }
  .slideshow.is-zstack .zstack-index {
    right: 0.5rem;
    gap: 0.4rem;
  }
  .slideshow.is-zstack .zstack-index-btn {
    font-size: 0.7rem;
  }
  .slideshow.is-zstack .zstack-index-btn.is-active {
    font-size: 0.85rem;
  }
}
.slideshow {
  /* ===================================================================== *
   * VISTA — Slideshow-faithful vertical infinite parallax + central minimap
   * ===================================================================== */
}
.slideshow.is-vista {
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
}
.slideshow.is-vista .vista-project {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100svh;
  display: block;
  padding: 0;
  will-change: transform;
  overflow: hidden;
}
.slideshow.is-vista .vista-project img {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.5);
  will-change: transform;
}
.slideshow.is-vista {
  /* Central minimap card */
}
.slideshow.is-vista .minimap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 75%;
  max-width: 720px;
  height: calc(250px + 3rem);
  background-color: var(--at-common-white);
  color: var(--at-common-black);
  padding: 1.5rem;
  overflow: hidden;
  z-index: 5;
}
.slideshow.is-vista .minimap-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
}
.slideshow.is-vista .minimap-img-preview {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 35%;
  height: 100%;
  overflow: hidden;
}
.slideshow.is-vista .minimap-img-item {
  position: absolute;
  width: 100%;
  height: 100%;
  will-change: transform;
  overflow: hidden;
}
.slideshow.is-vista .minimap-img-item img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.5);
  will-change: transform;
}
.slideshow.is-vista .minimap-info-list {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.slideshow.is-vista .minimap-item-info {
  position: absolute;
  width: 100%;
  height: 250px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  will-change: transform;
}
.slideshow.is-vista .minimap-item-info-row {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 0.5rem;
}
.slideshow.is-vista .minimap-item-info p {
  margin: 0;
  text-transform: uppercase;
  font-size: 0.85rem;
  font-weight: 500;
  letter-spacing: -0.0125rem;
}
.slideshow.is-vista {
  /* Bottom-center pagination dots */
}
.slideshow.is-vista .vista-nav {
  position: absolute;
  bottom: 2.5rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 0.75rem;
  z-index: 6;
}
.slideshow.is-vista .vista-nav-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid #ffffff;
  background-color: transparent;
  cursor: pointer;
  padding: 0;
  transition: background-color 0.3s ease, transform 0.3s ease;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);
}
.slideshow.is-vista .vista-nav-dot.is-active {
  background-color: #ffffff;
  transform: scale(1.35);
}
.slideshow.is-vista {
  /* Side buttons — Next (left) / Preview (right) */
}
.slideshow.is-vista .vista-next,
.slideshow.is-vista .vista-prev {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 1.25rem;
  background: transparent;
  border: none;
  padding: 1rem;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  cursor: pointer;
  z-index: 6;
  transition: gap 0.3s ease, opacity 0.3s ease;
}
.slideshow.is-vista .vista-next {
  left: 2.5rem;
}
.slideshow.is-vista .vista-prev {
  right: 2.5rem;
}
.slideshow.is-vista .vista-next:hover,
.slideshow.is-vista .vista-prev:hover {
  gap: 1.6rem;
}
.slideshow.is-vista .vista-arrow {
  display: block;
  width: 80px;
  height: 10px;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.45));
  flex-shrink: 0;
}
@media (max-width: 991px) {
  .slideshow.is-vista .minimap {
    width: 90%;
  }
  .slideshow.is-vista .minimap-img-preview {
    left: unset;
    right: 0;
    transform: translate(0, -50%);
  }
  .slideshow.is-vista .minimap-item-info-row {
    flex-direction: column;
    gap: 0.25rem;
  }
  .slideshow.is-vista .vista-next {
    left: 1rem;
  }
  .slideshow.is-vista .vista-prev {
    right: 1rem;
  }
  .slideshow.is-vista .vista-next,
  .slideshow.is-vista .vista-prev {
    gap: 0.6rem;
    padding: 0.5rem;
    font-size: 0.65rem;
  }
  .slideshow.is-vista .vista-arrow {
    width: 40px;
  }
}
@media (max-width: 575px) {
  .slideshow.is-vista .minimap {
    width: 92%;
    padding: 1rem;
  }
  .slideshow.is-vista .minimap-item-info p {
    font-size: 0.7rem;
  }
  .slideshow.is-vista .vista-next,
  .slideshow.is-vista .vista-prev {
    display: none;
  }
}
.slideshow {
  /* ===================================================================== *
   * HORIZONTAL — infinite ribbon of pre-scaled images, parallax follows
   * each slide's distance from viewport center. Slides are JS-generated;
   * .horizon-track is the single transformed element.
   * ===================================================================== */
}
.slideshow.is-horizontal {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: grab;
}
.slideshow.is-horizontal:active {
  cursor: grabbing;
}
.slideshow.is-horizontal .horizon-track {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: flex;
  will-change: transform;
}
.slideshow.is-horizontal .horizon-slide {
  flex-shrink: 0;
  width: 350px;
  height: 500px;
  margin: 0 20px;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  cursor: pointer;
  overflow: visible;
}
.slideshow.is-horizontal .horizon-slide.is-mobile {
  width: 175px;
  height: 250px;
}
.slideshow.is-horizontal .horizon-frame {
  width: 100%;
  height: 100%;
  flex: 1;
  overflow: hidden;
}
.slideshow.is-horizontal .horizon-frame img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(2.25);
  will-change: transform;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: none;
}
.slideshow.is-horizontal .horizon-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1.75rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  opacity: 1;
  pointer-events: none;
  z-index: 10;
}
.slideshow.is-horizontal .horizon-title {
  margin: 0;
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.slideshow.is-horizontal .horizon-arrow {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  display: inline-flex;
}
.slideshow.is-horizontal .horizon-arrow svg {
  width: 100%;
  height: 100%;
}
.slideshow.is-horizontal {
  /* Prev / Next circular buttons — vertically centered on the sides */
}
.slideshow.is-horizontal .horizon-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: 1px solid rgba(var(--at-common-white-rgb), 0.35);
  background-color: rgba(var(--at-common-black-rgb), 0.25);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
  z-index: 6;
  transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
.slideshow.is-horizontal .horizon-nav:hover {
  background-color: rgba(var(--at-common-white-rgb), 0.95);
  border-color: rgba(var(--at-common-white-rgb), 0.95);
  color: var(--at-neutral-950);
}
.slideshow.is-horizontal .horizon-nav:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
.slideshow.is-horizontal .horizon-nav svg {
  width: 22px;
  height: 22px;
  display: block;
}
.slideshow.is-horizontal .horizon-nav-prev {
  left: 2.5rem;
}
.slideshow.is-horizontal .horizon-nav-next {
  right: 2.5rem;
}
.slideshow.is-horizontal {
  /* Pagination — bottom-center row of dots, one per source project */
}
.slideshow.is-horizontal .horizon-pagination {
  position: absolute;
  left: 50%;
  bottom: 2rem;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 1rem;
  z-index: 6;
}
.slideshow.is-horizontal .horizon-pagination-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid rgba(var(--at-common-white-rgb), 0.7);
  background-color: transparent;
  padding: 0;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.3s ease, width 0.3s ease;
}
.slideshow.is-horizontal .horizon-pagination-dot:hover {
  background-color: rgba(var(--at-common-white-rgb), 0.5);
}
.slideshow.is-horizontal .horizon-pagination-dot.is-active {
  background-color: var(--at-common-white);
  border-color: var(--at-common-white);
  width: 28px;
  border-radius: 999px;
}
.slideshow.is-horizontal .horizon-pagination-dot:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
@media (max-width: 991px) {
  .slideshow.is-horizontal .horizon-slide {
    width: 175px;
    height: 250px;
    margin: 0 15px;
  }
  .slideshow.is-horizontal .horizon-overlay {
    bottom: -1.5rem;
  }
  .slideshow.is-horizontal .horizon-title {
    font-size: 0.7rem;
  }
  .slideshow.is-horizontal .horizon-nav {
    width: 44px;
    height: 44px;
  }
  .slideshow.is-horizontal .horizon-nav svg {
    width: 18px;
    height: 18px;
  }
  .slideshow.is-horizontal .horizon-nav-prev {
    left: 1rem;
  }
  .slideshow.is-horizontal .horizon-nav-next {
    right: 1rem;
  }
  .slideshow.is-horizontal .horizon-pagination {
    bottom: 1.5rem;
    gap: 0.5rem;
  }
}
@media (max-width: 575px) {
  .slideshow.is-horizontal .horizon-slide {
    width: 160px;
    height: 230px;
    margin: 0 12px;
  }
  .slideshow.is-horizontal .horizon-overlay {
    bottom: -1.25rem;
  }
  .slideshow.is-horizontal .horizon-title {
    font-size: 0.65rem;
  }
  .slideshow.is-horizontal .horizon-arrow {
    width: 14px;
    height: 14px;
  }
  .slideshow.is-horizontal .horizon-nav {
    width: 38px;
    height: 38px;
  }
  .slideshow.is-horizontal .horizon-nav svg {
    width: 16px;
    height: 16px;
  }
  .slideshow.is-horizontal .horizon-nav-prev {
    left: 0.5rem;
  }
  .slideshow.is-horizontal .horizon-nav-next {
    right: 0.5rem;
  }
  .slideshow.is-horizontal .horizon-pagination {
    bottom: 1rem;
    gap: 0.4rem;
    padding: 0.25rem 0.5rem;
  }
  .slideshow.is-horizontal .horizon-pagination-dot {
    width: 8px;
    height: 8px;
  }
  .slideshow.is-horizontal .horizon-pagination-dot.is-active {
    width: 22px;
  }
}

/* Portfolio - Horizontal Scroll Gallery
   ---------------------------------------------------------------
   Two scoped wrappers:
     .hsg-intro  - normal-flow lead-in section above the gallery
     .hsg-stage  - the pinned section driven by GSAP ScrollTrigger
                   (see assets/js/horizontal-scroll-gallery.js)

   Everything is namespaced under .hsg- to avoid clashing with the
   other slideshow variants in _slideshow.scss.
*/
/* =====================================================================
   INTRO - lead-in section before the pin
   ===================================================================== */
.hsg-intro {
  position: relative;
  min-height: 70svh;
  display: flex;
  align-items: center;
  padding: 8rem 0 6rem;
  background-color: var(--at-neutral-50);
  color: var(--at-neutral-950);
  overflow: hidden;
}
.hsg-intro .hsg-intro__eyebrow {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid currentColor;
  opacity: 0.75;
  margin-bottom: 1.75rem;
}
.hsg-intro .hsg-intro__title {
  font-size: clamp(2.5rem, 7vw, 6rem);
  line-height: 0.95;
  font-weight: 500;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  max-width: 16ch;
  margin: 0 0 1.5rem;
}
.hsg-intro .hsg-intro__desc {
  font-size: clamp(1rem, 1.2vw, 1.15rem);
  line-height: 1.55;
  max-width: 56ch;
  opacity: 0.8;
  margin: 0 0 3rem;
}
.hsg-intro .hsg-intro__hint {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  opacity: 0.7;
}
.hsg-intro .hsg-intro__hint-line {
  display: block;
  width: 80px;
  height: 1px;
  background-color: currentColor;
  animation: hsgHintPulse 2.4s ease-in-out infinite;
}
@media (max-width: 991px) {
  .hsg-intro {
    min-height: 60svh;
    padding: 6rem 0 4rem;
  }
}
@media (max-width: 575px) {
  .hsg-intro {
    min-height: 55svh;
    padding: 5rem 0 3rem;
  }
  .hsg-intro .hsg-intro__hint-line {
    width: 56px;
  }
}

@keyframes hsgHintPulse {
  0%, 100% {
    opacity: 0.35;
    transform: translateX(0);
  }
  50% {
    opacity: 1;
    transform: translateX(8px);
  }
}
/* =====================================================================
   STAGE - the pinned horizontal scroll section
   ===================================================================== */
.hsg-stage {
  position: relative;
  width: 100%;
  height: 100svh;
  overflow: hidden;
  color: #fefefe;
  background-color: var(--at-neutral-950);
}
.hsg-stage * {
  box-sizing: border-box;
}
.hsg-stage {
  /* -------------------- Background layer -------------------- */
}
.hsg-stage .hsg-bg-layer {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hsg-stage .hsg-bg {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: scale(1.12);
  transition: opacity 0.8s ease, transform 6s ease-out;
  will-change: opacity, transform;
}
.hsg-stage {
  /* Ken-Burns-style slow drift on the active background — the longer the
     user lingers on a slide, the more the image breathes. */
}
.hsg-stage .hsg-bg.is-active {
  opacity: 1;
  transform: scale(1) translateX(-1%);
}
.hsg-stage .hsg-bg__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  filter: brightness(0.7) saturate(0.9);
}
.hsg-stage {
  /* Tint veil on top of all backgrounds to lift card contrast. */
}
.hsg-stage .hsg-bg__veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.35) 60%, rgba(0, 0, 0, 0.6) 100%);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  pointer-events: none;
}
.hsg-stage {
  /* -------------------- Track of cards -------------------- */
}
.hsg-stage .hsg-track-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
  z-index: 1;
}
.hsg-stage .hsg-track {
  display: flex;
  align-items: center;
  will-change: transform;
  /* Side padding (centers the first/last slide) and inter-slide gap
     (margin-left: 50svw) are applied by horizontal-scroll-gallery.js so
     the spacing rule lives next to the scroll logic that depends on it. */
}
.hsg-stage {
  /* -------------------- Slide card --------------------
     Vertical layout: media on top (~40%), body fills the rest with
     a solid black panel that holds title + tags. */
}
.hsg-stage .hsg-slide {
  /* Hover palette — kept as CSS vars so a future per-slide accent
     (e.g. data-accent) could override just these three values. */
  --hsg-hover-bg: #212121;
  --hsg-hover-fg: #fefefe;
  --hsg-hover-border: #212121;
  flex: 0 0 auto;
  width: 36vw;
  max-width: 520px;
  min-width: 320px;
  height: 76vh;
  max-height: 760px;
  position: relative;
  background-color: #0F0F0F;
  /* Transparent border by default so hover doesn't reflow the layout. */
  border: 5px solid transparent;
  /* Exit pose driven by --hsg-exit (set by JS to the slide's segment
     progress, 0..1). When this card becomes active and the user keeps
     scrolling, exit ramps from 0 to 1 across its segment:
       - translate X right by up to 80px
       - scale down to 0.65
     Once past its segment the slide holds the exit pose; the track
     then carries it offscreen-left so the reset is never visible.

     translate/scale have NO transition so the motion stays tight to
     scroll. Hover/active color swaps still transition. */
  translate: calc(var(--hsg-exit, 0) * 80px) 0;
  scale: calc(1 - var(--hsg-exit, 0) * 0.35);
  transition: box-shadow 0.6s ease, background-color 0.4s ease, border-color 0.4s ease;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
}
.hsg-stage .hsg-slide.is-active {
  box-shadow: 0 40px 120px rgba(0, 0, 0, 0.55);
}
.hsg-stage {
  /* Hover / keyboard-focus state — swap to the accent palette and
     reveal the border. :focus-within picks up keyboard users on the
     inner <a>. Parallax dim on the body is also neutralized so the
     card feels "lit up" regardless of where it sits on the track. */
}
.hsg-stage .hsg-slide:hover,
.hsg-stage .hsg-slide:focus-within {
  background-color: var(--hsg-hover-bg);
  border-color: var(--hsg-hover-border);
}
.hsg-stage .hsg-slide__link {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
  overflow: hidden;
  isolation: isolate;
}
.hsg-stage .hsg-slide__media {
  /* Height is driven by the image's fixed 2400:1600 (3:2) aspect ratio
     (set on .hsg-slide__img), not by a flex basis. Because all slides
     share the same width at any given breakpoint, all thumbnails end up
     the same height across cards. */
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  overflow: hidden;
}
.hsg-stage {
  /* The image is intentionally over-scaled so the parallax translateX never
     reveals an empty edge inside the frame. `scale` and `translate` are set
     as individual transform properties so we can transition them separately:
     scale animates over 1.2s on .is-active, translate updates instantly to
     follow the scroll-driven --hsg-norm value. */
}
.hsg-stage .hsg-slide__img {
  width: 100%;
  height: auto;
  aspect-ratio: 2400/1600;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  scale: 1.18;
  translate: calc(var(--hsg-norm, 0) * -14%) 0;
  transition: scale 1.2s ease;
  will-change: transform;
}
.hsg-stage .hsg-slide.is-active .hsg-slide__img {
  scale: 1.04;
}
.hsg-stage .hsg-slide__body {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 2.25rem 2rem 2rem;
  background-color: #0F0F0F;
  color: #fefefe;
  min-height: 0;
  /* Centered cards are fully opaque; off-center cards dim toward 0.45.
     This complements the binary .is-active state with a smooth fade. */
  opacity: calc(0.45 + var(--hsg-centeredness, 1) * 0.55);
  transition: background-color 0.4s ease, color 0.4s ease, opacity 0.35s ease;
}
.hsg-stage .hsg-slide:hover .hsg-slide__body,
.hsg-stage .hsg-slide:focus-within .hsg-slide__body {
  background-color: var(--hsg-hover-bg);
  color: var(--hsg-hover-fg);
  opacity: 1;
}
.hsg-stage .hsg-slide__title {
  margin: 0;
  letter-spacing: -0.02em;
  color: #fefefe;
  overflow-wrap: break-word;
  translate: 0 calc(var(--hsg-norm, 0) * -10px);
  transition: color 0.4s ease;
}
.hsg-stage .hsg-slide:hover .hsg-slide__title,
.hsg-stage .hsg-slide:focus-within .hsg-slide__title {
  color: var(--hsg-hover-fg);
}
.hsg-stage .hsg-slide__tags {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.65rem;
  font-size: 0.85rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.9);
  /* Slight opposite-direction drift to the image — image translates left,
     tags drift right (and vice versa). Small magnitude keeps it subtle. */
  translate: calc(var(--hsg-norm, 0) * 6px) 0;
  transition: color 0.4s ease;
}
.hsg-stage .hsg-slide:hover .hsg-slide__tags,
.hsg-stage .hsg-slide:focus-within .hsg-slide__tags {
  color: #fefefe;
}
.hsg-stage .hsg-slide__tag-sep {
  display: inline-block;
  color: rgba(255, 255, 255, 0.35);
  font-weight: 400;
  transform: translateY(-1px);
  transition: color 0.4s ease;
}
.hsg-stage .hsg-slide:hover .hsg-slide__tag-sep,
.hsg-stage .hsg-slide:focus-within .hsg-slide__tag-sep {
  color: rgba(0, 0, 0, 0.35);
}
.hsg-stage {
  /* -------------------- Progress bar -------------------- */
}
.hsg-stage .hsg-progress {
  position: absolute;
  left: 50%;
  bottom: 2.5rem;
  transform: translateX(-50%);
  width: clamp(180px, 28vw, 360px);
  height: 2px;
  background-color: rgba(255, 255, 255, 0.2);
  z-index: 4;
  overflow: hidden;
}
.hsg-stage .hsg-progress__bar {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fefefe;
  transform-origin: 0 50%;
  transform: scaleX(0);
  transition: transform 0.08s linear;
}
.hsg-stage {
  /* -------------------- Counter --------------------
     Centered horizontally and parked 30px above the progress bar.
     The bottom offset is `progress.bottom + progress.height + 30px`,
     so keep the responsive overrides in lock-step with .hsg-progress. */
}
.hsg-stage .hsg-counter {
  position: absolute;
  left: 50%;
  bottom: calc(2.5rem + 2px + 30px);
  transform: translateX(-50%);
  display: inline-flex;
  align-items: baseline;
  gap: 0.35rem;
  font-size: 0.85rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  color: #fefefe;
  z-index: 4;
}
.hsg-stage .hsg-counter__current {
  font-size: 1.5rem;
  line-height: 1;
}
.hsg-stage .hsg-counter__sep,
.hsg-stage .hsg-counter__total {
  opacity: 0.6;
}
.hsg-stage {
  /* -------------------- Responsive -------------------- */
}
@media (max-width: 991px) {
  .hsg-stage .hsg-slide {
    width: 56vw;
    height: 70vh;
    min-width: 280px;
  }
  .hsg-stage .hsg-slide__body {
    padding: 1.75rem 1.5rem 1.5rem;
  }
  .hsg-stage .hsg-counter {
    bottom: calc(1.75rem + 2px + 30px);
  }
  .hsg-stage .hsg-progress {
    bottom: 1.75rem;
  }
}
@media (max-width: 575px) {
  .hsg-stage .hsg-slide {
    width: 78vw;
    height: 64vh;
    max-height: 560px;
    min-width: 0;
  }
  .hsg-stage .hsg-slide__body {
    padding: 1.5rem 1.25rem 1.25rem;
  }
  .hsg-stage .hsg-slide__title {
    font-size: clamp(1rem, 4.5vw, 1.5rem);
    max-width: 6ch;
  }
  .hsg-stage .hsg-slide__tags {
    font-size: 0.75rem;
    gap: 0.5rem;
  }
  .hsg-stage .hsg-progress {
    bottom: 1.25rem;
    width: 50vw;
  }
  .hsg-stage .hsg-counter {
    bottom: calc(1.25rem + 2px + 30px);
    font-size: 0.7rem;
  }
  .hsg-stage .hsg-counter__current {
    font-size: 1.15rem;
  }
}
.hsg-stage {
  /* Respect users who prefer reduced motion - keep layout, drop the
     decorative parallax. ScrollTrigger still drives the track. */
}
@media (prefers-reduced-motion: reduce) {
  .hsg-stage .hsg-bg,
  .hsg-stage .hsg-slide,
  .hsg-stage .hsg-slide__img,
  .hsg-stage .hsg-slide__title,
  .hsg-stage .hsg-slide__tags,
  .hsg-stage .hsg-slide__body {
    transition: none;
  }
  .hsg-stage .hsg-bg {
    transform: none;
  }
  .hsg-stage .hsg-slide {
    translate: 0 0;
    scale: 1;
  }
  .hsg-stage .hsg-slide__img {
    scale: 1;
    translate: 0 0;
  }
  .hsg-stage .hsg-slide__title,
  .hsg-stage .hsg-slide__tags {
    translate: 0 0;
  }
  .hsg-stage .hsg-slide__body {
    opacity: 1;
  }
}

/*----------------------------------------*/
/*  Portfolio Details 3 — Editorial Split
/*----------------------------------------*/
/* JS injects `.anim-zoomin-wrap` around every `.anim-zoomin` <img>.
   Our image hosts position the <img> as absolute fill inside an
   aspect-ratio box — make the injected wrap fill the same box. */
.sec-1-portfolio-details-3__portrait .anim-zoomin-wrap,
.sec-3-portfolio-details-3__cell .anim-zoomin-wrap,
.sec-5-portfolio-details-3__media .anim-zoomin-wrap,
.sec-7-portfolio-details-3__media .anim-zoomin-wrap,
.sec-8-portfolio-details-3__thumb .anim-zoomin-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

/* ---------- shared plus glyph ---------- */
.sec-8-portfolio-details-3__plus, .sec-6-portfolio-details-3__plus, .sec-4-portfolio-details-3__plus, .sec-3-portfolio-details-3__plus, .sec-2-portfolio-details-3__plus {
  width: 14px;
  height: 14px;
  position: relative;
  display: inline-block;
}
.sec-8-portfolio-details-3__plus::before, .sec-6-portfolio-details-3__plus::before, .sec-4-portfolio-details-3__plus::before, .sec-3-portfolio-details-3__plus::before, .sec-2-portfolio-details-3__plus::before, .sec-8-portfolio-details-3__plus::after, .sec-6-portfolio-details-3__plus::after, .sec-4-portfolio-details-3__plus::after, .sec-3-portfolio-details-3__plus::after, .sec-2-portfolio-details-3__plus::after {
  content: "";
  position: absolute;
  background: currentColor;
}
.sec-8-portfolio-details-3__plus::before, .sec-6-portfolio-details-3__plus::before, .sec-4-portfolio-details-3__plus::before, .sec-3-portfolio-details-3__plus::before, .sec-2-portfolio-details-3__plus::before {
  top: 50%;
  left: 0;
  width: 100%;
  height: 1.5px;
  transform: translateY(-50%);
}
.sec-8-portfolio-details-3__plus::after, .sec-6-portfolio-details-3__plus::after, .sec-4-portfolio-details-3__plus::after, .sec-3-portfolio-details-3__plus::after, .sec-2-portfolio-details-3__plus::after {
  left: 50%;
  top: 0;
  width: 1.5px;
  height: 100%;
  transform: translateX(-50%);
}

/* ===========================================
   SEC 1 — Hero split
   =========================================== */
.sec-1-portfolio-details-3 {
  background-color: var(--at-neutral-0);
}
.sec-1-portfolio-details-3__title {
  letter-spacing: -0.05em;
  color: var(--at-neutral-950);
}
.sec-1-portfolio-details-3__title sup {
  margin-left: 4px;
  line-height: 1;
}
.sec-1-portfolio-details-3__tagline {
  letter-spacing: -0.04em;
}
.sec-1-portfolio-details-3__demo {
  padding: 14px 26px;
  color: var(--at-neutral-0);
  transition: transform 0.35s ease, background-color 0.35s ease;
}
.sec-1-portfolio-details-3__demo svg {
  transition: transform 0.35s ease;
}
.sec-1-portfolio-details-3__demo:hover {
  background-color: var(--at-neutral-900);
  color: var(--at-neutral-0);
  transform: translateY(-2px);
}
.sec-1-portfolio-details-3__demo:hover svg {
  transform: translate(3px, -3px);
}
.sec-1-portfolio-details-3__portrait {
  position: relative;
  width: 100%;
  aspect-ratio: 4/5;
  overflow: hidden;
  border-radius: 8px;
  background-color: var(--at-neutral-100);
}
.sec-1-portfolio-details-3__portrait img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-1-portfolio-details-3__portrait:hover img {
  transform: scale(1.04);
}
.sec-1-portfolio-details-3__meta .col-md-3,
.sec-1-portfolio-details-3__meta .col-sm-6 {
  position: relative;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .sec-1-portfolio-details-3__portrait {
    aspect-ratio: 4/5;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-portfolio-details-3__portrait {
    aspect-ratio: 4/5;
    max-width: 480px;
    margin-left: auto;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-portfolio-details-3 {
    padding-top: 100px;
    padding-bottom: 80px;
  }
  .sec-1-portfolio-details-3__portrait {
    aspect-ratio: 16/11;
    margin-top: 30px;
  }
  .sec-1-portfolio-details-3__tagline {
    margin-bottom: 30px !important;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-1-portfolio-details-3 {
    padding-top: 90px;
    padding-bottom: 70px;
  }
  .sec-1-portfolio-details-3__portrait {
    aspect-ratio: 16/11;
    margin-top: 20px;
  }
  .sec-1-portfolio-details-3__demo {
    padding: 12px 22px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-portfolio-details-3 {
    padding-top: 80px;
    padding-bottom: 60px;
  }
  .sec-1-portfolio-details-3__title {
    font-size: 54px !important;
    margin-bottom: 16px !important;
  }
  .sec-1-portfolio-details-3__tagline {
    margin-bottom: 24px !important;
  }
  .sec-1-portfolio-details-3__portrait {
    aspect-ratio: 4/5;
    margin-top: 16px;
  }
  .sec-1-portfolio-details-3__demo {
    padding: 12px 20px;
  }
  .sec-1-portfolio-details-3__demo span {
    font-size: 14px;
  }
  .sec-1-portfolio-details-3__meta {
    margin-top: 40px !important;
    padding-top: 30px !important;
  }
}

/* ===========================================
   SEC 2 — 3-col Intro
   =========================================== */
.sec-2-portfolio-details-3 {
  background-color: var(--at-neutral-0);
}
.sec-2-portfolio-details-3__plus {
  color: var(--at-neutral-950);
}
.sec-2-portfolio-details-3__headline {
  letter-spacing: -0.04em;
  line-height: 1.15;
}
.sec-2-portfolio-details-3__paragraph {
  line-height: 1.6;
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details-3__stats {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.sec-2-portfolio-details-3__stat {
  padding-bottom: 22px;
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details-3__stat:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.sec-2-portfolio-details-3__stat-number {
  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-3__stat-number {
    font-size: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-portfolio-details-3 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-2-portfolio-details-3__stat-number {
    font-size: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-2-portfolio-details-3 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .sec-2-portfolio-details-3__stat-number {
    font-size: 38px;
  }
}
@media (max-width: 574.98px) {
  .sec-2-portfolio-details-3 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-2-portfolio-details-3__headline {
    font-size: 24px !important;
  }
  .sec-2-portfolio-details-3__stat-number {
    font-size: 36px;
  }
}

/* ===========================================
   SEC 3 — Bento Gallery
   =========================================== */
.sec-3-portfolio-details-3 {
  background-color: var(--at-neutral-0);
}
.sec-3-portfolio-details-3__plus {
  color: var(--at-neutral-950);
}
.sec-3-portfolio-details-3__bento {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 16px;
  aspect-ratio: 16/9;
}
.sec-3-portfolio-details-3__cell {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
  background-color: var(--at-neutral-100);
}
.sec-3-portfolio-details-3__cell img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-3-portfolio-details-3__cell:hover img {
  transform: scale(1.05);
}
.sec-3-portfolio-details-3__cell--large {
  grid-column: 1/span 2;
  grid-row: 1/span 2;
}
.sec-3-portfolio-details-3__cell--small {
  grid-column: span 1;
  grid-row: span 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-portfolio-details-3 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-3-portfolio-details-3__bento {
    aspect-ratio: 16/11;
    gap: 12px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-3-portfolio-details-3 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .sec-3-portfolio-details-3__bento {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, minmax(0, 1fr));
    aspect-ratio: 4/5;
    gap: 12px;
  }
  .sec-3-portfolio-details-3__cell--large {
    grid-column: 1/span 2;
    grid-row: 1/span 1;
  }
  .sec-3-portfolio-details-3__cell--small {
    grid-column: span 1;
    grid-row: span 1;
  }
}
@media (max-width: 574.98px) {
  .sec-3-portfolio-details-3 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-3-portfolio-details-3__bento {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, minmax(0, 1fr));
    aspect-ratio: 3/5;
    gap: 10px;
  }
  .sec-3-portfolio-details-3__cell--large {
    grid-column: 1/span 2;
    grid-row: 1/span 1;
  }
}

/* ===========================================
   SEC 4 — Process timeline (dark)
   =========================================== */
.sec-4-portfolio-details-3 {
  background-color: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.sec-4-portfolio-details-3__plus {
  color: var(--at-neutral-0);
}
.sec-4-portfolio-details-3__title {
  letter-spacing: -0.04em;
  line-height: 1.15;
}
.sec-4-portfolio-details-3__steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  position: relative;
}
.sec-4-portfolio-details-3__steps::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--at-neutral-500);
  opacity: 0.5;
}
.sec-4-portfolio-details-3__step {
  position: relative;
  padding-top: 36px;
}
.sec-4-portfolio-details-3__marker {
  position: absolute;
  top: 0;
  left: 0;
}
.sec-4-portfolio-details-3__dot {
  display: block;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--at-neutral-0);
}
.sec-4-portfolio-details-3__num {
  letter-spacing: -0.02em;
  margin-bottom: 16px;
  opacity: 0.8;
}
.sec-4-portfolio-details-3__heading {
  letter-spacing: -0.04em;
  margin-bottom: 12px;
}
.sec-4-portfolio-details-3__desc {
  color: var(--at-neutral-100);
  line-height: 1.55;
  letter-spacing: -0.02em;
  opacity: 0.85;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-portfolio-details-3 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-4-portfolio-details-3__steps {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 40px;
  }
  .sec-4-portfolio-details-3__steps::before {
    display: none;
  }
  .sec-4-portfolio-details-3__step {
    padding-top: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-portfolio-details-3 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .sec-4-portfolio-details-3__steps {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 36px;
    gap: 18px;
  }
  .sec-4-portfolio-details-3__steps::before {
    display: none;
  }
}
@media (max-width: 574.98px) {
  .sec-4-portfolio-details-3 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-4-portfolio-details-3__title {
    font-size: 26px !important;
  }
  .sec-4-portfolio-details-3__steps {
    grid-template-columns: 1fr;
    row-gap: 32px;
  }
  .sec-4-portfolio-details-3__steps::before {
    display: none;
  }
}

/* ===========================================
   SEC 5 — Quote overlay
   =========================================== */
.sec-5-portfolio-details-3 {
  position: relative;
  min-height: 700px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--at-neutral-0);
}
.sec-5-portfolio-details-3__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
}
.sec-5-portfolio-details-3__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-5-portfolio-details-3__veil {
  position: absolute;
  inset: 0;
  background: rgba(15, 15, 15, 0.55);
}
.sec-5-portfolio-details-3__content {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 120px 0;
}
.sec-5-portfolio-details-3__mark {
  font-family: var(--at-ff-heading);
  font-size: 120px;
  line-height: 1;
  display: inline-block;
  opacity: 0.85;
  margin-bottom: -20px;
}
.sec-5-portfolio-details-3__quote {
  font-size: 36px;
  line-height: 1.4;
  letter-spacing: -0.03em;
  font-style: normal;
  padding: 0;
  border: 0;
}
.sec-5-portfolio-details-3__author {
  letter-spacing: -0.02em;
}
.sec-5-portfolio-details-3__role {
  color: var(--at-neutral-100);
  opacity: 0.8;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-portfolio-details-3 {
    min-height: 600px;
  }
  .sec-5-portfolio-details-3__quote {
    font-size: 30px;
  }
  .sec-5-portfolio-details-3__mark {
    font-size: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-portfolio-details-3 {
    min-height: 520px;
  }
  .sec-5-portfolio-details-3__content {
    padding: 90px 0;
  }
  .sec-5-portfolio-details-3__quote {
    font-size: 26px;
  }
  .sec-5-portfolio-details-3__mark {
    font-size: 88px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-5-portfolio-details-3 {
    min-height: 460px;
  }
  .sec-5-portfolio-details-3__content {
    padding: 70px 0;
  }
  .sec-5-portfolio-details-3__quote {
    font-size: 22px;
  }
  .sec-5-portfolio-details-3__mark {
    font-size: 72px;
  }
}
@media (max-width: 574.98px) {
  .sec-5-portfolio-details-3 {
    min-height: 420px;
  }
  .sec-5-portfolio-details-3__content {
    padding: 60px 0;
  }
  .sec-5-portfolio-details-3__quote {
    font-size: 20px;
    line-height: 1.5;
  }
  .sec-5-portfolio-details-3__mark {
    font-size: 60px;
    margin-bottom: -10px;
  }
}

/* ===========================================
   SEC 6 — Solution + Outcome (2-col w/ divider)
   =========================================== */
.sec-6-portfolio-details-3 {
  background-color: var(--at-neutral-0);
}
.sec-6-portfolio-details-3__plus {
  color: var(--at-neutral-950);
}
.sec-6-portfolio-details-3__col--right {
  position: relative;
}
.sec-6-portfolio-details-3__pair {
  position: relative;
}
.sec-6-portfolio-details-3__pair::before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 50%;
  width: 1px;
  background: var(--at-neutral-100);
  transform: translateX(-50%);
}
.sec-6-portfolio-details-3__list {
  list-style: none;
}
.sec-6-portfolio-details-3__list li {
  position: relative;
  padding-left: 22px;
  padding-top: 10px;
  padding-bottom: 10px;
  color: var(--at-neutral-900);
  font-size: var(--at-fz-font-md);
  border-top: 1px solid var(--at-neutral-100);
}
.sec-6-portfolio-details-3__list li:last-child {
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-6-portfolio-details-3__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  background: var(--at-neutral-950);
  border-radius: 50%;
  transform: translateY(-50%);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-portfolio-details-3__pair::before {
    top: 0;
    bottom: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-portfolio-details-3 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-6-portfolio-details-3__pair::before {
    display: none;
  }
  .sec-6-portfolio-details-3__col {
    padding-bottom: 30px;
  }
  .sec-6-portfolio-details-3__col + .sec-6-portfolio-details-3__col--right {
    border-top: 1px solid var(--at-neutral-100);
    padding-top: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-6-portfolio-details-3 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .sec-6-portfolio-details-3__pair::before {
    display: none;
  }
  .sec-6-portfolio-details-3__col + .sec-6-portfolio-details-3__col--right {
    border-top: 1px solid var(--at-neutral-100);
    padding-top: 40px;
  }
}
@media (max-width: 574.98px) {
  .sec-6-portfolio-details-3 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-6-portfolio-details-3__pair::before {
    display: none;
  }
  .sec-6-portfolio-details-3__col + .sec-6-portfolio-details-3__col--right {
    border-top: 1px solid var(--at-neutral-100);
    padding-top: 30px;
    margin-top: 20px;
  }
  .sec-6-portfolio-details-3 h3 {
    font-size: 24px !important;
  }
}

/* ===========================================
   SEC 7 — Big image strip
   =========================================== */
.sec-7-portfolio-details-3__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16/7;
  overflow: hidden;
}
.sec-7-portfolio-details-3__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-portfolio-details-3__media {
    aspect-ratio: 16/10;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-7-portfolio-details-3__media {
    aspect-ratio: 4/3;
  }
}
@media (max-width: 574.98px) {
  .sec-7-portfolio-details-3__media {
    aspect-ratio: 4/3;
  }
}

/* ===========================================
   SEC 8 — Related projects (2 large cards)
   =========================================== */
.sec-8-portfolio-details-3 {
  background-color: var(--at-neutral-0);
}
.sec-8-portfolio-details-3__plus {
  color: var(--at-neutral-950);
}
.sec-8-portfolio-details-3__title {
  letter-spacing: -0.04em;
  line-height: 1.15;
}
.sec-8-portfolio-details-3__card {
  text-decoration: none;
  color: inherit;
  transition: transform 0.4s ease;
}
.sec-8-portfolio-details-3__card:hover {
  color: inherit;
  transform: translateY(-4px);
}
.sec-8-portfolio-details-3__card:hover .sec-8-portfolio-details-3__thumb img {
  transform: scale(1.04);
}
.sec-8-portfolio-details-3__card:hover .sec-8-portfolio-details-3__arrow {
  transform: translate(3px, -3px);
}
.sec-8-portfolio-details-3__thumb {
  position: relative;
  margin: 0 0 26px 0;
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 8px;
  background-color: var(--at-neutral-100);
}
.sec-8-portfolio-details-3__thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-8-portfolio-details-3__meta {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.sec-8-portfolio-details-3__tag {
  align-self: flex-start;
  padding: 8px 16px;
  background: var(--at-neutral-50);
  border-radius: 25px;
  color: var(--at-neutral-900);
  letter-spacing: 0.05em;
}
.sec-8-portfolio-details-3__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.sec-8-portfolio-details-3__name {
  color: var(--at-neutral-950);
}
.sec-8-portfolio-details-3__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
  transition: transform 0.35s ease;
  flex-shrink: 0;
}
.sec-8-portfolio-details-3__desc {
  line-height: 1.55;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-8-portfolio-details-3 {
    padding-top: 60px;
    padding-bottom: 100px;
  }
  .sec-8-portfolio-details-3__thumb {
    aspect-ratio: 5/4;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-8-portfolio-details-3 {
    padding-top: 50px;
    padding-bottom: 80px;
  }
  .sec-8-portfolio-details-3__thumb {
    aspect-ratio: 4/3;
    margin-bottom: 20px;
  }
  .sec-8-portfolio-details-3__arrow {
    width: 40px;
    height: 40px;
  }
}
@media (max-width: 574.98px) {
  .sec-8-portfolio-details-3 {
    padding-top: 40px;
    padding-bottom: 70px;
  }
  .sec-8-portfolio-details-3__title {
    font-size: 24px !important;
  }
  .sec-8-portfolio-details-3__thumb {
    aspect-ratio: 4/3;
    margin-bottom: 18px;
  }
  .sec-8-portfolio-details-3__name {
    font-size: 26px !important;
  }
  .sec-8-portfolio-details-3__arrow {
    width: 38px;
    height: 38px;
  }
  .sec-8-portfolio-details-3__arrow svg {
    width: 18px;
    height: 18px;
  }
}

/*----------------------------------------*/
/*  Portfolio Details 4 — Sticky Sidebar + Chapters
/*  Brand accent: var(--at-theme-primary) (var(--bw-accent))
/*----------------------------------------*/
/* JS injects `.anim-zoomin-wrap` around every `.anim-zoomin` <img>.
   Image hosts use absolute-fill img inside aspect-ratio box. */
.sec-2-portfolio-details-4__inline-fig .anim-zoomin-wrap,
.sec-4-portfolio-details-4__cell .anim-zoomin-wrap,
.sec-5-portfolio-details-4__media .anim-zoomin-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

/* =========================================================
   SEC 1 — Compact title block
   ========================================================= */
.sec-1-portfolio-details-4 {
  background-color: var(--at-neutral-0);
}
.sec-1-portfolio-details-4__crumbs {
  letter-spacing: 0.1em;
}
.sec-1-portfolio-details-4__crumbs span {
  margin: 0 8px;
  color: var(--at-neutral-300);
}
.sec-1-portfolio-details-4__title {
  letter-spacing: -0.05em;
}
.sec-1-portfolio-details-4__title sup {
  margin-left: 4px;
  line-height: 1;
}
.sec-1-portfolio-details-4__tagline {
  letter-spacing: -0.03em;
  line-height: 1.35;
}
.sec-1-portfolio-details-4__tags {
  gap: 8px;
}
.sec-1-portfolio-details-4__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-4__demo {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: gap 0.3s ease;
}
.sec-1-portfolio-details-4__demo span {
  transition: transform 0.3s ease;
}
.sec-1-portfolio-details-4__demo:hover {
  color: var(--at-theme-primary);
  gap: 12px;
}
.sec-1-portfolio-details-4__demo:hover span {
  transform: translate(3px, -3px);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-portfolio-details-4 {
    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-4 {
    padding-top: 90px;
    padding-bottom: 30px;
  }
  .sec-1-portfolio-details-4__title {
    margin-bottom: 18px !important;
  }
  .sec-1-portfolio-details-4__tagline {
    margin-bottom: 30px;
  }
  .sec-1-portfolio-details-4__crumbs span {
    margin: 0 6px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-portfolio-details-4__title {
    font-size: 54px !important;
  }
}

/* =========================================================
   SEC 2 — Sticky sidebar + chapters
   ========================================================= */
.sec-2-portfolio-details-4 {
  background-color: var(--at-neutral-0);
}
.sec-2-portfolio-details-4__sidebar-col {
  position: relative;
}
.sec-2-portfolio-details-4__sidebar {
  position: sticky;
  top: 120px;
  background: var(--at-neutral-50);
  border-radius: 8px;
  padding: 32px;
}
.sec-2-portfolio-details-4__sidebar-eyebrow {
  letter-spacing: 0.1em;
  margin-bottom: 16px;
}
.sec-2-portfolio-details-4__meta {
  padding-top: 0;
}
.sec-2-portfolio-details-4__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-4__meta-row dt {
  margin: 0;
  flex-shrink: 0;
}
.sec-2-portfolio-details-4__meta-row dd {
  text-align: right;
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details-4__meta-row:last-child {
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details-4__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-4__services li::before {
  content: "— ";
  color: var(--at-theme-primary);
  margin-right: 4px;
}
.sec-2-portfolio-details-4__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-4__cta span {
  transition: transform 0.3s ease;
}
.sec-2-portfolio-details-4__cta:hover {
  background: var(--at-theme-primary);
  color: var(--at-neutral-0);
  transform: translateY(-2px);
}
.sec-2-portfolio-details-4__cta:hover span {
  transform: translate(3px, -3px);
}
.sec-2-portfolio-details-4__content-col {
  padding-left: 60px;
}
.sec-2-portfolio-details-4__chapter {
  padding-bottom: 70px;
  margin-bottom: 70px;
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details-4__chapter:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
.sec-2-portfolio-details-4__chapter-head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  letter-spacing: 0.1em;
}
.sec-2-portfolio-details-4__chapter-num {
  color: var(--at-theme-primary);
}
.sec-2-portfolio-details-4__chapter-title {
  font-size: 44px;
  letter-spacing: -0.04em;
  line-height: 1.15;
  margin-bottom: 24px;
}
.sec-2-portfolio-details-4__chapter-body {
  line-height: 1.65;
  letter-spacing: -0.02em;
  margin-bottom: 40px;
}
.sec-2-portfolio-details-4 {
  /* Inline image grid (chapter 01) */
}
.sec-2-portfolio-details-4__inline-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.sec-2-portfolio-details-4__inline-fig {
  position: relative;
  margin: 0;
  aspect-ratio: 7/5;
  overflow: hidden;
  border-radius: 6px;
  background: var(--at-neutral-100);
}
.sec-2-portfolio-details-4__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-4__inline-fig:hover img {
  transform: scale(1.04);
}
.sec-2-portfolio-details-4 {
  /* Pull-quote (chapter 02) — brand-1 left bar */
}
.sec-2-portfolio-details-4__pull-quote {
  position: relative;
  margin: 0;
  padding: 10px 0 10px 32px;
  border-left: 4px solid var(--at-theme-primary);
}
.sec-2-portfolio-details-4__pull-quote p {
  letter-spacing: -0.03em;
  line-height: 1.4;
}
.sec-2-portfolio-details-4 {
  /* Steps (chapter 03) */
}
.sec-2-portfolio-details-4__steps {
  margin: 0;
}
.sec-2-portfolio-details-4__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-4__step:last-child {
  border-bottom: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details-4__step-num {
  color: var(--at-theme-primary);
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details-4__step-title {
  letter-spacing: -0.03em;
}
.sec-2-portfolio-details-4__step-desc {
  line-height: 1.55;
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details-4 {
  /* Stats (chapter 04) */
}
.sec-2-portfolio-details-4__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.sec-2-portfolio-details-4__stat {
  padding-top: 20px;
  border-top: 1px solid var(--at-neutral-950);
}
.sec-2-portfolio-details-4__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-4__content-col {
    padding-left: 40px;
  }
  .sec-2-portfolio-details-4__chapter-title {
    font-size: 38px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-portfolio-details-4 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-2-portfolio-details-4__sidebar {
    position: static;
    top: auto;
    margin-bottom: 50px;
  }
  .sec-2-portfolio-details-4__content-col {
    padding-left: 12px;
  }
  .sec-2-portfolio-details-4__chapter-title {
    font-size: 34px;
  }
  .sec-2-portfolio-details-4__step {
    grid-template-columns: 60px 1fr;
    row-gap: 8px;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
  .sec-2-portfolio-details-4__step-desc {
    grid-column: 1/-1;
    padding-left: 76px;
  }
  .sec-2-portfolio-details-4__stats {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .sec-2-portfolio-details-4__stat-num {
    font-size: 36px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-portfolio-details-4 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-2-portfolio-details-4__sidebar {
    position: static;
    padding: 24px;
    margin-bottom: 40px;
  }
  .sec-2-portfolio-details-4__content-col {
    padding-left: 12px;
  }
  .sec-2-portfolio-details-4__chapter {
    padding-bottom: 50px;
    margin-bottom: 50px;
  }
  .sec-2-portfolio-details-4__chapter-title {
    font-size: 28px;
  }
  .sec-2-portfolio-details-4__chapter-body {
    margin-bottom: 30px;
  }
  .sec-2-portfolio-details-4__inline-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .sec-2-portfolio-details-4__inline-fig {
    aspect-ratio: 4/3;
  }
  .sec-2-portfolio-details-4__pull-quote {
    padding: 8px 0 8px 20px;
  }
  .sec-2-portfolio-details-4__pull-quote p {
    font-size: 20px !important;
  }
  .sec-2-portfolio-details-4__step {
    grid-template-columns: 60px 1fr;
    row-gap: 8px;
  }
  .sec-2-portfolio-details-4__step-desc {
    grid-column: 1/-1;
    padding-left: 76px;
  }
  .sec-2-portfolio-details-4__stats {
    grid-template-columns: 1fr;
  }
  .sec-2-portfolio-details-4__stat-num {
    font-size: 36px;
  }
}
@media (max-width: 574.98px) {
  .sec-2-portfolio-details-4__chapter-head {
    gap: 8px;
  }
  .sec-2-portfolio-details-4__chapter-title {
    font-size: 24px;
  }
}

/* =========================================================
   SEC 3 — Pull-quote callout (centered)
   ========================================================= */
.sec-3-portfolio-details-4 {
  background-color: var(--at-neutral-50);
}
.sec-3-portfolio-details-4__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-4__quote {
  font-size: 34px;
  line-height: 1.4;
  letter-spacing: -0.03em;
  margin-top: 30px;
  padding: 0;
  border: 0;
}
.sec-3-portfolio-details-4__divider {
  width: 60px;
  height: 1px;
  background: var(--at-neutral-300);
}
.sec-3-portfolio-details-4__author {
  letter-spacing: -0.02em;
}
.sec-3-portfolio-details-4__role {
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-portfolio-details-4 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-3-portfolio-details-4__mark {
    font-size: 140px;
  }
  .sec-3-portfolio-details-4__quote {
    font-size: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-portfolio-details-4 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-3-portfolio-details-4__mark {
    font-size: 120px;
  }
  .sec-3-portfolio-details-4__quote {
    font-size: 22px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-portfolio-details-4__mark {
    font-size: 100px;
  }
  .sec-3-portfolio-details-4__quote {
    font-size: 20px;
  }
}

/* =========================================================
   SEC 4 — Visual showcase 3 rows
   ========================================================= */
.sec-4-portfolio-details-4 {
  background-color: var(--at-neutral-0);
}
.sec-4-portfolio-details-4__row {
  display: grid;
  gap: 20px;
  margin-bottom: 20px;
}
.sec-4-portfolio-details-4__row:last-child {
  margin-bottom: 0;
}
.sec-4-portfolio-details-4__row--split {
  grid-template-columns: 6fr 4fr;
}
.sec-4-portfolio-details-4__row--full {
  grid-template-columns: 1fr;
}
.sec-4-portfolio-details-4__row--triple {
  grid-template-columns: repeat(3, 1fr);
}
.sec-4-portfolio-details-4__cell {
  position: relative;
  margin: 0;
  aspect-ratio: 16/11;
  overflow: hidden;
  border-radius: 6px;
  background: var(--at-neutral-100);
}
.sec-4-portfolio-details-4__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-4__cell:hover img {
  transform: scale(1.05);
}
.sec-4-portfolio-details-4__cell--wide {
  aspect-ratio: 13/9;
}
.sec-4-portfolio-details-4__cell--narrow {
  aspect-ratio: 13/9;
}
.sec-4-portfolio-details-4__cell--full {
  aspect-ratio: 22/7;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-portfolio-details-4 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .sec-4-portfolio-details-4__row {
    gap: 14px;
    margin-bottom: 14px;
  }
  .sec-4-portfolio-details-4__cell--full {
    aspect-ratio: 16/7;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .sec-4-portfolio-details-4 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-4-portfolio-details-4__row {
    gap: 12px;
    margin-bottom: 12px;
  }
  .sec-4-portfolio-details-4__row--split, .sec-4-portfolio-details-4__row--triple {
    grid-template-columns: 1fr 1fr;
  }
  .sec-4-portfolio-details-4__cell--full {
    aspect-ratio: 4/3;
  }
}
@media (max-width: 574.98px) {
  .sec-4-portfolio-details-4 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .sec-4-portfolio-details-4__row {
    gap: 10px;
    margin-bottom: 10px;
  }
  .sec-4-portfolio-details-4__row--split, .sec-4-portfolio-details-4__row--triple {
    grid-template-columns: 1fr;
  }
  .sec-4-portfolio-details-4__cell--full {
    aspect-ratio: 4/3;
  }
}

/* =========================================================
   SEC 5 — Next project banner
   ========================================================= */
.sec-5-portfolio-details-4 {
  position: relative;
}
.sec-5-portfolio-details-4__link {
  position: relative;
  text-decoration: none;
  color: var(--at-neutral-0);
  display: block;
}
.sec-5-portfolio-details-4__link:hover {
  color: var(--at-neutral-0);
}
.sec-5-portfolio-details-4__link:hover .sec-5-portfolio-details-4__media img {
  transform: scale(1.04);
}
.sec-5-portfolio-details-4__link:hover .sec-5-portfolio-details-4__disk-inner {
  transform: scale(1.08);
}
.sec-5-portfolio-details-4__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.sec-5-portfolio-details-4__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-4__veil {
  position: absolute;
  inset: 0;
  background: rgba(15, 15, 15, 0.68);
}
.sec-5-portfolio-details-4__content {
  position: relative;
  z-index: 1;
  padding: 140px 0;
}
.sec-5-portfolio-details-4__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.15em;
  margin-bottom: 30px;
}
.sec-5-portfolio-details-4__name {
  font-size: 180px;
  letter-spacing: -0.05em;
  line-height: 0.95;
  color: var(--at-neutral-0);
}
.sec-5-portfolio-details-4__tagline {
  color: var(--at-neutral-100);
  letter-spacing: -0.03em;
}
.sec-5-portfolio-details-4__meta {
  color: var(--at-neutral-0);
  letter-spacing: 0.15em;
  opacity: 0.6;
}
.sec-5-portfolio-details-4__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-4__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-4__content {
    padding: 110px 0;
  }
  .sec-5-portfolio-details-4__name {
    font-size: 140px;
  }
  .sec-5-portfolio-details-4__disk {
    width: 180px;
    height: 180px;
  }
  .sec-5-portfolio-details-4__disk-inner {
    width: 110px;
    height: 110px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-portfolio-details-4__content {
    padding: 90px 0;
  }
  .sec-5-portfolio-details-4__name {
    font-size: 100px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-portfolio-details-4__content {
    padding: 70px 0;
  }
  .sec-5-portfolio-details-4__name {
    font-size: 72px;
  }
  .sec-5-portfolio-details-4__tagline {
    font-size: 20px;
  }
  .sec-5-portfolio-details-4__eyebrow {
    margin-bottom: 20px;
  }
}
@media (max-width: 574.98px) {
  .sec-5-portfolio-details-4__content {
    padding: 60px 0;
  }
  .sec-5-portfolio-details-4__name {
    font-size: 56px;
  }
  .sec-5-portfolio-details-4__tagline {
    font-size: 18px;
  }
}

/*----------------------------------------*/
/*  Portfolio Details 5 — Swiper Fade + Cinematic
/*  Brand accent: var(--at-theme-primary) (var(--bw-accent))
/*----------------------------------------*/
/* JS injects `.anim-zoomin-wrap` around every `.anim-zoomin` <img>.
   Image hosts use absolute-fill img inside aspect-ratio box. */
.sec-4-portfolio-details-5__cell .anim-zoomin-wrap,
.sec-7-portfolio-details-5__media .anim-zoomin-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

/* =========================================================
   SEC 1 — Swiper fade hero (full-bleed)
   ========================================================= */
.sec-1-portfolio-details-5 {
  position: relative;
  height: 820px;
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.sec-1-portfolio-details-5__slider {
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
  z-index: 0;
}
.sec-1-portfolio-details-5__slider .swiper-wrapper,
.sec-1-portfolio-details-5__slider .swiper-slide {
  height: 100%;
}
.sec-1-portfolio-details-5__slide {
  position: relative;
  overflow: hidden;
}
.sec-1-portfolio-details-5__slide img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-1-portfolio-details-5__veil {
  position: absolute;
  left: 0;
  right: 0;
  pointer-events: none;
  z-index: 1;
}
.sec-1-portfolio-details-5__veil--top {
  top: 0;
  height: 100%;
  background: rgba(15, 15, 15, 0.35);
}
.sec-1-portfolio-details-5__veil--bottom {
  bottom: 0;
  height: 240px;
  background: linear-gradient(180deg, rgba(15, 15, 15, 0) 0%, rgba(15, 15, 15, 0.55) 100%);
}
.sec-1-portfolio-details-5__content {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-58%);
  z-index: 2;
}
.sec-1-portfolio-details-5__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.15em;
}
.sec-1-portfolio-details-5__title {
  color: var(--at-neutral-0);
  letter-spacing: -0.05em;
  justify-content: center;
}
.sec-1-portfolio-details-5__title sup {
  margin-left: 4px;
  line-height: 1;
}
.sec-1-portfolio-details-5__tagline {
  color: var(--at-neutral-100);
  letter-spacing: -0.03em;
}
.sec-1-portfolio-details-5 {
  /* Controls bar at the bottom of hero */
}
.sec-1-portfolio-details-5__controls {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 40px;
  z-index: 3;
}
.sec-1-portfolio-details-5__counter {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  color: var(--at-neutral-0);
}
.sec-1-portfolio-details-5__counter-num {
  font-size: 48px;
  line-height: 1;
  letter-spacing: -0.03em;
}
.sec-1-portfolio-details-5__counter-total {
  font-size: 18px;
  opacity: 0.65;
  letter-spacing: -0.02em;
}
.sec-1-portfolio-details-5__pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  /* Swiper bullets injected here */
}
.sec-1-portfolio-details-5__pagination .swiper-pagination-bullet {
  width: 60px;
  height: 3px;
  border-radius: 2px;
  background: var(--at-neutral-0);
  opacity: 0.3;
  transition: background 0.3s ease, opacity 0.3s ease;
}
.sec-1-portfolio-details-5__pagination .swiper-pagination-bullet-active {
  background: var(--at-theme-primary);
  opacity: 1;
}
.sec-1-portfolio-details-5__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: 1px solid rgba(254, 254, 254, 0.4);
  background: transparent;
  color: var(--at-neutral-0);
  cursor: pointer;
  transition: transform 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}
.sec-1-portfolio-details-5__nav:hover {
  transform: translateY(-2px);
}
.sec-1-portfolio-details-5__nav--next {
  background: var(--at-theme-primary);
  border-color: var(--at-theme-primary);
}
.sec-1-portfolio-details-5__nav--next:hover {
  background: var(--at-neutral-0);
  color: var(--at-theme-primary);
  border-color: var(--at-neutral-0);
}
.sec-1-portfolio-details-5__nav--prev:hover {
  background: var(--at-neutral-0);
  color: var(--at-neutral-950);
  border-color: var(--at-neutral-0);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-portfolio-details-5 {
    height: 720px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-portfolio-details-5 {
    height: 620px;
  }
  .sec-1-portfolio-details-5__controls {
    bottom: 30px;
  }
  .sec-1-portfolio-details-5__counter-num {
    font-size: 40px;
  }
  .sec-1-portfolio-details-5__nav {
    width: 48px;
    height: 48px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-portfolio-details-5 {
    height: 560px;
  }
  .sec-1-portfolio-details-5__content {
    transform: translateY(-50%);
  }
  .sec-1-portfolio-details-5__controls {
    bottom: 24px;
  }
  .sec-1-portfolio-details-5__counter-num {
    font-size: 32px;
  }
  .sec-1-portfolio-details-5__counter-total {
    font-size: 14px;
  }
  .sec-1-portfolio-details-5__nav {
    width: 44px;
    height: 44px;
  }
}
@media (max-width: 574.98px) {
  .sec-1-portfolio-details-5 {
    height: 520px;
  }
  .sec-1-portfolio-details-5__title {
    font-size: 60px !important;
  }
}

/* =========================================================
   SEC 2 — Project brief strip
   ========================================================= */
.sec-2-portfolio-details-5 {
  background: var(--at-neutral-0);
}
.sec-2-portfolio-details-5__meta-row {
  border-top: 1px solid var(--at-neutral-100);
  border-bottom: 1px solid var(--at-neutral-100);
  margin: 0;
}
.sec-2-portfolio-details-5__meta-cell {
  padding: 24px 24px;
  position: relative;
}
.sec-2-portfolio-details-5__meta-cell + .sec-2-portfolio-details-5__meta-cell {
  border-left: 1px solid var(--at-neutral-100);
}
.sec-2-portfolio-details-5__lead {
  font-size: 30px;
  line-height: 1.4;
  letter-spacing: -0.04em;
}
.sec-2-portfolio-details-5__chips {
  gap: 10px;
}
.sec-2-portfolio-details-5__chip {
  padding: 10px 20px;
  background: var(--at-neutral-50);
  color: var(--at-neutral-900);
  border-radius: 25px;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-portfolio-details-5 {
    padding-top: 60px;
    padding-bottom: 70px;
  }
  .sec-2-portfolio-details-5__meta-cell {
    padding: 18px 18px;
  }
  .sec-2-portfolio-details-5__meta-cell:nth-child(3) {
    border-left: 0;
    border-top: 1px solid var(--at-neutral-100);
  }
  .sec-2-portfolio-details-5__meta-cell:nth-child(4) {
    border-top: 1px solid var(--at-neutral-100);
  }
  .sec-2-portfolio-details-5__lead {
    font-size: 26px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-portfolio-details-5 {
    padding-top: 50px;
    padding-bottom: 60px;
  }
  .sec-2-portfolio-details-5__meta-cell {
    padding: 16px 12px;
  }
  .sec-2-portfolio-details-5__meta-cell:nth-child(2) {
    border-left: 1px solid var(--at-neutral-100);
  }
  .sec-2-portfolio-details-5__meta-cell:nth-child(3), .sec-2-portfolio-details-5__meta-cell:nth-child(4) {
    border-top: 1px solid var(--at-neutral-100);
  }
  .sec-2-portfolio-details-5__meta-cell:nth-child(4) {
    border-left: 1px solid var(--at-neutral-100);
  }
  .sec-2-portfolio-details-5__lead {
    font-size: 22px;
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }
}

/* =========================================================
   SEC 3 — Services + Stats (2-col)
   ========================================================= */
.sec-3-portfolio-details-5 {
  background: var(--at-neutral-50);
}
.sec-3-portfolio-details-5__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.1em;
}
.sec-3-portfolio-details-5__heading {
  font-size: 48px;
  letter-spacing: -0.05em;
  line-height: 1.15;
}
.sec-3-portfolio-details-5__intro {
  line-height: 1.6;
  letter-spacing: -0.02em;
}
.sec-3-portfolio-details-5__services {
  padding: 0;
}
.sec-3-portfolio-details-5__service {
  display: flex;
  align-items: baseline;
  gap: 24px;
  padding: 18px 0;
  border-top: 1px solid var(--at-neutral-200);
}
.sec-3-portfolio-details-5__service:last-child {
  border-bottom: 1px solid var(--at-neutral-200);
}
.sec-3-portfolio-details-5__service-num {
  color: var(--at-theme-primary);
  flex: 0 0 60px;
}
.sec-3-portfolio-details-5__service-title {
  letter-spacing: -0.03em;
}
.sec-3-portfolio-details-5__stats {
  padding: 0;
}
.sec-3-portfolio-details-5__stat {
  padding: 24px 0;
  border-top: 1px solid var(--at-neutral-950);
}
.sec-3-portfolio-details-5__stat:last-child {
  border-bottom: 1px solid var(--at-neutral-950);
}
.sec-3-portfolio-details-5__stat-num {
  font-size: 88px;
  letter-spacing: -0.05em;
  color: var(--at-theme-primary);
  margin-bottom: 16px;
}
.sec-3-portfolio-details-5__stat-desc {
  line-height: 1.5;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-3-portfolio-details-5__heading {
    font-size: 40px;
  }
  .sec-3-portfolio-details-5__stat-num {
    font-size: 72px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-portfolio-details-5 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-3-portfolio-details-5__heading {
    font-size: 36px;
  }
  .sec-3-portfolio-details-5__stat-num {
    font-size: 64px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-portfolio-details-5 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-3-portfolio-details-5__heading {
    font-size: 30px;
  }
  .sec-3-portfolio-details-5__stat-num {
    font-size: 56px;
  }
}
@media (max-width: 574.98px) {
  .sec-3-portfolio-details-5__heading {
    font-size: 26px;
  }
  .sec-3-portfolio-details-5__service {
    gap: 16px;
    padding: 14px 0;
  }
  .sec-3-portfolio-details-5__service-num {
    flex: 0 0 40px;
  }
  .sec-3-portfolio-details-5__stat-num {
    font-size: 48px;
  }
}

/* =========================================================
   SEC 4 — Image grid asymmetric (magazine)
   ========================================================= */
.sec-4-portfolio-details-5 {
  background: var(--at-neutral-0);
}
.sec-4-portfolio-details-5__row {
  display: grid;
  gap: 20px;
  margin-bottom: 20px;
}
.sec-4-portfolio-details-5__row:last-child {
  margin-bottom: 0;
}
.sec-4-portfolio-details-5__row--a {
  grid-template-columns: 1fr 2fr;
}
.sec-4-portfolio-details-5__row--b {
  grid-template-columns: 2fr 1fr;
}
.sec-4-portfolio-details-5__cell {
  position: relative;
  margin: 0;
  aspect-ratio: 7/5;
  overflow: hidden;
  border-radius: 6px;
  background: var(--at-neutral-100);
}
.sec-4-portfolio-details-5__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-5__cell:hover img {
  transform: scale(1.05);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-portfolio-details-5 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-4-portfolio-details-5__row {
    gap: 16px;
    margin-bottom: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-portfolio-details-5 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .sec-4-portfolio-details-5__row {
    grid-template-columns: 1fr !important;
    gap: 12px;
    margin-bottom: 12px;
  }
  .sec-4-portfolio-details-5__cell {
    aspect-ratio: 4/3;
  }
}

/* =========================================================
   SEC 5 — Vertical timeline alternating L/R
   ========================================================= */
.sec-5-portfolio-details-5 {
  background: var(--at-neutral-0);
}
.sec-5-portfolio-details-5__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.1em;
}
.sec-5-portfolio-details-5__heading {
  font-size: 54px;
  letter-spacing: -0.05em;
  line-height: 1.15;
}
.sec-5-portfolio-details-5__timeline {
  position: relative;
  padding: 30px 0;
  /* Center vertical line (desktop only) */
}
.sec-5-portfolio-details-5__timeline::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: var(--at-neutral-200);
  transform: translateX(-50%);
}
.sec-5-portfolio-details-5__step {
  position: relative;
  width: 50%;
  padding-bottom: 70px;
}
.sec-5-portfolio-details-5__step:last-child {
  padding-bottom: 0;
}
.sec-5-portfolio-details-5__step--left {
  padding-right: 60px;
  text-align: right;
}
.sec-5-portfolio-details-5__step--right {
  margin-left: 50%;
  padding-left: 60px;
  text-align: left;
}
.sec-5-portfolio-details-5__step-dot {
  position: absolute;
  top: 8px;
  width: 14px;
  height: 14px;
  background: var(--at-theme-primary);
  border-radius: 50%;
  border: 3px solid var(--at-neutral-0);
  box-shadow: 0 0 0 1px var(--at-neutral-200);
  z-index: 1;
}
.sec-5-portfolio-details-5__step--left .sec-5-portfolio-details-5__step-dot {
  right: -7px;
}
.sec-5-portfolio-details-5__step--right .sec-5-portfolio-details-5__step-dot {
  left: -7px;
}
.sec-5-portfolio-details-5__step-body {
  max-width: 580px;
}
.sec-5-portfolio-details-5__step--left .sec-5-portfolio-details-5__step-body {
  margin-left: auto;
}
.sec-5-portfolio-details-5__step-num {
  font-size: 64px;
  color: var(--at-theme-primary);
  letter-spacing: -0.04em;
}
.sec-5-portfolio-details-5__step-title {
  letter-spacing: -0.03em;
}
.sec-5-portfolio-details-5__step-desc {
  line-height: 1.55;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-portfolio-details-5__heading {
    font-size: 44px;
  }
  .sec-5-portfolio-details-5__step-num {
    font-size: 56px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-portfolio-details-5 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-5-portfolio-details-5__heading {
    font-size: 38px;
  }
  .sec-5-portfolio-details-5__step-num {
    font-size: 48px;
  }
  .sec-5-portfolio-details-5__timeline::before {
    left: 20px;
    transform: none;
  }
  .sec-5-portfolio-details-5__step {
    width: 100%;
    margin-left: 0 !important;
    padding-left: 60px !important;
    padding-right: 0 !important;
    text-align: left !important;
  }
  .sec-5-portfolio-details-5__step-dot {
    left: 14px !important;
    right: auto !important;
  }
  .sec-5-portfolio-details-5__step-body {
    margin-left: 0 !important;
    max-width: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-portfolio-details-5 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-5-portfolio-details-5__heading {
    font-size: 30px;
  }
  .sec-5-portfolio-details-5__step-num {
    font-size: 40px;
  }
  .sec-5-portfolio-details-5__timeline::before {
    left: 14px;
    transform: none;
  }
  .sec-5-portfolio-details-5__step {
    width: 100%;
    margin-left: 0 !important;
    padding-left: 44px !important;
    padding-right: 0 !important;
    padding-bottom: 50px;
    text-align: left !important;
  }
  .sec-5-portfolio-details-5__step-dot {
    left: 8px !important;
    right: auto !important;
  }
  .sec-5-portfolio-details-5__step-body {
    margin-left: 0 !important;
    max-width: none;
  }
}
@media (max-width: 574.98px) {
  .sec-5-portfolio-details-5__heading {
    font-size: 26px;
  }
}

/* =========================================================
   SEC 6 — Awards & Recognition (dark)
   ========================================================= */
.sec-6-portfolio-details-5 {
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.sec-6-portfolio-details-5__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.1em;
}
.sec-6-portfolio-details-5__heading {
  color: var(--at-neutral-0);
  font-size: 54px;
  letter-spacing: -0.05em;
  line-height: 1.15;
}
.sec-6-portfolio-details-5__list {
  border-top: 1px solid var(--at-neutral-700);
}
.sec-6-portfolio-details-5__row {
  border-bottom: 1px solid var(--at-neutral-700);
}
.sec-6-portfolio-details-5__link {
  display: grid;
  grid-template-columns: 120px 1fr 320px 60px;
  align-items: center;
  gap: 24px;
  padding: 28px 0;
  color: var(--at-neutral-0);
  text-decoration: none;
  transition: padding 0.35s ease, background-color 0.35s ease;
}
.sec-6-portfolio-details-5__link:hover {
  color: var(--at-neutral-0);
  padding-left: 16px;
  padding-right: 16px;
  background: rgba(254, 254, 254, 0.03);
}
.sec-6-portfolio-details-5__link:hover .sec-6-portfolio-details-5__arrow {
  transform: translate(4px, -4px);
}
.sec-6-portfolio-details-5__year {
  color: var(--at-neutral-0);
  opacity: 0.6;
  letter-spacing: 0.1em;
}
.sec-6-portfolio-details-5__title {
  font-size: 32px;
  letter-spacing: -0.04em;
}
.sec-6-portfolio-details-5__org {
  color: var(--at-neutral-0);
  opacity: 0.75;
  letter-spacing: -0.02em;
  text-align: right;
}
.sec-6-portfolio-details-5__arrow {
  color: var(--at-theme-primary);
  font-size: 22px;
  text-align: right;
  transition: transform 0.35s ease;
  display: inline-block;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-portfolio-details-5__heading {
    font-size: 44px;
  }
  .sec-6-portfolio-details-5__title {
    font-size: 28px;
  }
  .sec-6-portfolio-details-5__link {
    grid-template-columns: 100px 1fr 220px 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-portfolio-details-5 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-6-portfolio-details-5__heading {
    font-size: 38px;
  }
  .sec-6-portfolio-details-5__title {
    font-size: 24px;
  }
  .sec-6-portfolio-details-5__link {
    grid-template-columns: 80px 1fr auto 40px;
    gap: 16px;
  }
  .sec-6-portfolio-details-5__org {
    font-size: 14px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-portfolio-details-5 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-6-portfolio-details-5__heading {
    font-size: 30px;
  }
  .sec-6-portfolio-details-5__title {
    font-size: 20px;
  }
  .sec-6-portfolio-details-5__link {
    grid-template-columns: 70px 1fr 30px;
    gap: 12px;
    padding: 20px 0;
  }
  .sec-6-portfolio-details-5__org {
    display: none;
  }
  .sec-6-portfolio-details-5__arrow {
    font-size: 18px;
  }
}
@media (max-width: 574.98px) {
  .sec-6-portfolio-details-5__heading {
    font-size: 26px;
  }
  .sec-6-portfolio-details-5__title {
    font-size: 18px;
  }
  .sec-6-portfolio-details-5__link {
    grid-template-columns: 56px 1fr 24px;
    gap: 10px;
  }
}

/* =========================================================
   SEC 7 — Next project side-by-side (light)
   ========================================================= */
.sec-7-portfolio-details-5 {
  background: var(--at-neutral-0);
}
.sec-7-portfolio-details-5__group {
  text-decoration: none;
  color: inherit;
  display: block;
}
.sec-7-portfolio-details-5__group:hover {
  color: inherit;
}
.sec-7-portfolio-details-5__group:hover .sec-7-portfolio-details-5__cta span {
  transform: translate(4px, -4px);
}
.sec-7-portfolio-details-5__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.15em;
}
.sec-7-portfolio-details-5__name {
  font-size: 200px;
  line-height: 0.95;
  letter-spacing: -0.05em;
}
.sec-7-portfolio-details-5__tagline {
  letter-spacing: -0.03em;
  line-height: 1.4;
}
.sec-7-portfolio-details-5__meta {
  letter-spacing: 0.1em;
}
.sec-7-portfolio-details-5__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: relative;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--at-neutral-950);
}
.sec-7-portfolio-details-5__cta span {
  display: inline-block;
  transition: transform 0.35s ease;
}
.sec-7-portfolio-details-5__media {
  position: relative;
  width: 100%;
  aspect-ratio: 4/5;
  overflow: hidden;
  border-radius: 8px;
  background: var(--at-neutral-100);
}
.sec-7-portfolio-details-5__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-7-portfolio-details-5__media:hover img {
  transform: scale(1.04);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-7-portfolio-details-5__name {
    font-size: 140px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-portfolio-details-5 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sec-7-portfolio-details-5__name {
    font-size: 110px;
  }
  .sec-7-portfolio-details-5__media {
    aspect-ratio: 4/5;
    max-width: 500px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-portfolio-details-5 {
    padding-top: 60px;
    padding-bottom: 80px;
  }
  .sec-7-portfolio-details-5__name {
    font-size: 80px;
  }
  .sec-7-portfolio-details-5__tagline {
    font-size: 18px;
  }
  .sec-7-portfolio-details-5__media {
    aspect-ratio: 4/5;
    margin-top: 30px;
  }
}
@media (max-width: 574.98px) {
  .sec-7-portfolio-details-5__name {
    font-size: 60px;
  }
}

/*----------------------------------------*/
/*  Portfolio Details 6 — Editorial + Marquee + Accordion
/*  Brand accent: var(--at-theme-primary)
/*----------------------------------------*/
/* JS injects `.anim-zoomin-wrap` — fit aspect-ratio hosts */
.sec-2-portfolio-details-6__media .anim-zoomin-wrap,
.sec-3-portfolio-details-6__cell .anim-zoomin-wrap,
.sec-5-portfolio-details-6__media .anim-zoomin-wrap,
.sec-7-portfolio-details-6__media .anim-zoomin-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

/* =========================================================
   SEC 1 — Hero + marquee strip
   ========================================================= */
.sec-1-portfolio-details-6 {
  background: var(--at-neutral-50);
}
.sec-1-portfolio-details-6__byline {
  letter-spacing: 0.15em;
}
.sec-1-portfolio-details-6__title {
  font-size: 240px;
  letter-spacing: -0.05em;
  line-height: 1;
  justify-content: center;
}
.sec-1-portfolio-details-6__title sup {
  margin-left: 4px;
  line-height: 1;
}
.sec-1-portfolio-details-6__tagline {
  letter-spacing: -0.03em;
}
.sec-1-portfolio-details-6__credits {
  margin: 0;
}
.sec-1-portfolio-details-6__credit-cell {
  padding: 22px 24px;
  position: relative;
}
.sec-1-portfolio-details-6__credit-cell + .sec-1-portfolio-details-6__credit-cell {
  border-left: 1px solid var(--at-neutral-200);
}
.sec-1-portfolio-details-6 {
  /* Marquee strip */
}
.sec-1-portfolio-details-6__marquee {
  background: var(--at-neutral-950);
  overflow: hidden;
  padding: 24px 0;
}
.sec-1-portfolio-details-6__marquee-track {
  display: inline-flex;
  white-space: nowrap;
  animation: pd6-marquee 28s linear infinite;
  will-change: transform;
}
.sec-1-portfolio-details-6__marquee-text {
  display: inline-block;
  color: var(--at-neutral-0);
  font-family: var(--at-ff-heading);
  font-size: 44px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
  padding-right: 60px;
  flex-shrink: 0;
}
.sec-1-portfolio-details-6__marquee-dot {
  color: var(--at-theme-primary);
  margin: 0 18px;
  font-size: 0.4em;
  vertical-align: middle;
}
@media (prefers-reduced-motion: reduce) {
  .sec-1-portfolio-details-6__marquee-track {
    animation: none;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-1-portfolio-details-6__title {
    font-size: 180px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-1-portfolio-details-6__title {
    font-size: 140px;
  }
  .sec-1-portfolio-details-6__marquee-text {
    font-size: 36px;
  }
  .sec-1-portfolio-details-6__credit-cell {
    padding: 18px 16px;
  }
  .sec-1-portfolio-details-6__credit-cell:nth-child(3) {
    border-left: 0;
    border-top: 1px solid var(--at-neutral-200);
  }
  .sec-1-portfolio-details-6__credit-cell:nth-child(4) {
    border-top: 1px solid var(--at-neutral-200);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-1-portfolio-details-6__title {
    font-size: 96px;
  }
  .sec-1-portfolio-details-6__tagline {
    font-size: 22px !important;
  }
  .sec-1-portfolio-details-6__marquee-text {
    font-size: 28px;
  }
  .sec-1-portfolio-details-6__credit-cell {
    padding: 14px 12px;
  }
  .sec-1-portfolio-details-6__credit-cell:nth-child(2) {
    border-left: 1px solid var(--at-neutral-200);
  }
  .sec-1-portfolio-details-6__credit-cell:nth-child(3), .sec-1-portfolio-details-6__credit-cell:nth-child(4) {
    border-top: 1px solid var(--at-neutral-200);
  }
  .sec-1-portfolio-details-6__credit-cell:nth-child(4) {
    border-left: 1px solid var(--at-neutral-200);
  }
}
@media (max-width: 574.98px) {
  .sec-1-portfolio-details-6__title {
    font-size: 72px;
  }
}

@keyframes pd6-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-33.3333%);
  }
}
/* =========================================================
   SEC 2 — Magazine 2-col + drop cap
   ========================================================= */
.sec-2-portfolio-details-6 {
  background: var(--at-neutral-0);
}
.sec-2-portfolio-details-6__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.1em;
}
.sec-2-portfolio-details-6__lead {
  font-size: 18px;
  line-height: 1.65;
  letter-spacing: -0.01em;
}
.sec-2-portfolio-details-6__dropcap {
  float: left;
  font-family: var(--at-ff-heading);
  font-size: 124px;
  font-weight: 500;
  line-height: 0.85;
  letter-spacing: -0.06em;
  color: var(--at-theme-primary);
  margin: 6px 16px 0 0;
  padding: 0;
}
.sec-2-portfolio-details-6__two-col {
  -moz-column-count: 2;
       column-count: 2;
  -moz-column-gap: 32px;
       column-gap: 32px;
}
.sec-2-portfolio-details-6__two-col p {
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: -0.01em;
  -moz-column-break-inside: avoid;
       break-inside: avoid-column;
}
.sec-2-portfolio-details-6__two-col p + p {
  margin-top: 18px;
}
.sec-2-portfolio-details-6__pullout {
  letter-spacing: -0.02em;
}
.sec-2-portfolio-details-6__media {
  position: relative;
  width: 100%;
  aspect-ratio: 4/5;
  overflow: hidden;
  border-radius: 8px;
  background: var(--at-neutral-100);
}
.sec-2-portfolio-details-6__media 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-6__media:hover img {
  transform: scale(1.04);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-2-portfolio-details-6 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-2-portfolio-details-6__dropcap {
    font-size: 96px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-2-portfolio-details-6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-2-portfolio-details-6__dropcap {
    font-size: 80px;
    margin-right: 12px;
  }
  .sec-2-portfolio-details-6__two-col {
    -moz-column-count: 1;
         column-count: 1;
    -moz-column-gap: 0;
         column-gap: 0;
  }
}
@media (max-width: 574.98px) {
  .sec-2-portfolio-details-6__dropcap {
    font-size: 64px;
  }
}

/* =========================================================
   SEC 3 — Horizontal scroll Swiper gallery
   ========================================================= */
.sec-3-portfolio-details-6 {
  background: var(--at-neutral-0);
}
.sec-3-portfolio-details-6__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.1em;
}
.sec-3-portfolio-details-6__heading {
  font-size: 42px;
  letter-spacing: -0.05em;
  line-height: 1.15;
}
.sec-3-portfolio-details-6__hint {
  letter-spacing: 0.1em;
}
.sec-3-portfolio-details-6__slider {
  padding-left: max((100vw - 1320px) / 2 + 12px, 12px);
  padding-right: max((100vw - 1320px) / 2 + 12px, 12px);
  cursor: grab;
}
.sec-3-portfolio-details-6__slider:active {
  cursor: grabbing;
}
@media (min-width: 1400px) {
  .sec-3-portfolio-details-6__slider {
    padding-left: max((100vw - 1320px) / 2, 12px);
    padding-right: max((100vw - 1320px) / 2, 12px);
  }
}
.sec-3-portfolio-details-6__slide {
  width: 60%;
}
.sec-3-portfolio-details-6__cell {
  position: relative;
  width: 100%;
  aspect-ratio: 7/5;
  overflow: hidden;
  border-radius: 6px;
  background: var(--at-neutral-100);
  margin: 0;
}
.sec-3-portfolio-details-6__cell img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-3-portfolio-details-6__cell:hover img {
  transform: scale(1.04);
}
.sec-3-portfolio-details-6__caption {
  letter-spacing: -0.02em;
}
.sec-3-portfolio-details-6__caption-num {
  margin-right: 8px;
}
.sec-3-portfolio-details-6__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid var(--at-neutral-900);
  background: transparent;
  color: var(--at-neutral-900);
  cursor: pointer;
  transition: transform 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}
.sec-3-portfolio-details-6__nav:hover {
  transform: translateY(-2px);
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.sec-3-portfolio-details-6__nav--next {
  background: var(--at-neutral-950);
  color: var(--at-neutral-0);
}
.sec-3-portfolio-details-6__nav--next:hover {
  background: var(--at-theme-primary);
  border-color: var(--at-theme-primary);
}
.sec-3-portfolio-details-6 .mt-40 {
  margin-top: 40px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-3-portfolio-details-6__heading {
    font-size: 36px;
  }
  .sec-3-portfolio-details-6__slide {
    width: 70%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-3-portfolio-details-6 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-3-portfolio-details-6__heading {
    font-size: 30px;
  }
  .sec-3-portfolio-details-6__slide {
    width: 80%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-3-portfolio-details-6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-3-portfolio-details-6__heading {
    font-size: 26px;
  }
  .sec-3-portfolio-details-6__slide {
    width: 90%;
  }
  .sec-3-portfolio-details-6__nav {
    width: 44px;
    height: 44px;
  }
}

/* =========================================================
   SEC 4 — Stats grid (4 inline with dot dividers)
   ========================================================= */
.sec-4-portfolio-details-6 {
  background: var(--at-neutral-50);
}
.sec-4-portfolio-details-6__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.1em;
}
.sec-4-portfolio-details-6__heading {
  font-size: 42px;
  letter-spacing: -0.05em;
  line-height: 1.15;
}
.sec-4-portfolio-details-6__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  align-items: start;
  position: relative;
}
.sec-4-portfolio-details-6__stat {
  text-align: center;
  position: relative;
}
.sec-4-portfolio-details-6__stat:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50px;
  right: -12px;
  width: 6px;
  height: 6px;
  background: var(--at-neutral-950);
  border-radius: 50%;
}
.sec-4-portfolio-details-6__stat-num {
  font-size: 84px;
  color: var(--at-theme-primary);
  letter-spacing: -0.05em;
  margin-bottom: 16px;
}
.sec-4-portfolio-details-6__stat-label {
  line-height: 1.4;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-4-portfolio-details-6__heading {
    font-size: 36px;
  }
  .sec-4-portfolio-details-6__stat-num {
    font-size: 64px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-4-portfolio-details-6 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-4-portfolio-details-6__stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
  .sec-4-portfolio-details-6__stat:not(:last-child)::after {
    display: none;
  }
  .sec-4-portfolio-details-6__stat-num {
    font-size: 64px;
  }
  .sec-4-portfolio-details-6__heading {
    font-size: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-4-portfolio-details-6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-4-portfolio-details-6__stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }
  .sec-4-portfolio-details-6__stat:not(:last-child)::after {
    display: none;
  }
  .sec-4-portfolio-details-6__stat-num {
    font-size: 52px;
  }
  .sec-4-portfolio-details-6__heading {
    font-size: 26px;
  }
}

/* =========================================================
   SEC 5 — Quote + portrait side-by-side
   ========================================================= */
.sec-5-portfolio-details-6 {
  background: var(--at-neutral-0);
}
.sec-5-portfolio-details-6__media {
  position: relative;
  width: 100%;
  aspect-ratio: 5/4;
  overflow: hidden;
  border-radius: 6px;
  background: var(--at-neutral-100);
}
.sec-5-portfolio-details-6__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-6__media:hover img {
  transform: scale(1.04);
}
.sec-5-portfolio-details-6__content {
  padding-left: 20px;
}
.sec-5-portfolio-details-6__mark {
  display: inline-block;
  font-family: var(--at-ff-heading);
  font-size: 140px;
  line-height: 0.8;
  color: var(--at-theme-primary);
  margin-bottom: -10px;
}
.sec-5-portfolio-details-6__quote {
  font-size: 28px;
  line-height: 1.5;
  letter-spacing: -0.03em;
  padding: 0;
  border: 0;
}
.sec-5-portfolio-details-6__divider {
  width: 60px;
  height: 1px;
  background: var(--at-neutral-950);
}
.sec-5-portfolio-details-6__role {
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-5-portfolio-details-6__quote {
    font-size: 24px;
  }
  .sec-5-portfolio-details-6__mark {
    font-size: 120px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-5-portfolio-details-6 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-5-portfolio-details-6__content {
    padding-left: 0;
  }
  .sec-5-portfolio-details-6__quote {
    font-size: 22px;
  }
  .sec-5-portfolio-details-6__mark {
    font-size: 100px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-5-portfolio-details-6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-5-portfolio-details-6__content {
    padding-left: 0;
  }
  .sec-5-portfolio-details-6__quote {
    font-size: 20px;
  }
  .sec-5-portfolio-details-6__mark {
    font-size: 80px;
  }
}

/* =========================================================
   SEC 6 — Accordion FAQ "Project details"
   ========================================================= */
.sec-6-portfolio-details-6 {
  background: var(--at-neutral-0);
}
.sec-6-portfolio-details-6__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.1em;
}
.sec-6-portfolio-details-6__heading {
  font-size: 48px;
  letter-spacing: -0.05em;
  line-height: 1.15;
}
.sec-6-portfolio-details-6__list {
  border-top: 1px solid var(--at-neutral-200);
}
.sec-6-portfolio-details-6__row {
  border-bottom: 1px solid var(--at-neutral-200);
}
.sec-6-portfolio-details-6__item {
  /* Native <details> element */
}
.sec-6-portfolio-details-6__item[open] .sec-6-portfolio-details-6__icon-bar--v {
  transform: scaleY(0);
}
.sec-6-portfolio-details-6__item[open] .sec-6-portfolio-details-6__icon-bar:not(.sec-6-portfolio-details-6__icon-bar--v) {
  background: var(--at-theme-primary);
}
.sec-6-portfolio-details-6__item[open] .sec-6-portfolio-details-6__q {
  color: var(--at-theme-primary);
}
.sec-6-portfolio-details-6__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 26px 0;
  cursor: pointer;
  list-style: none;
  transition: padding 0.3s ease;
  /* Remove default arrow on details/summary */
}
.sec-6-portfolio-details-6__head::-webkit-details-marker {
  display: none;
}
.sec-6-portfolio-details-6__head::marker {
  display: none;
  content: "";
}
.sec-6-portfolio-details-6__head:hover {
  padding-left: 12px;
}
.sec-6-portfolio-details-6__head:hover .sec-6-portfolio-details-6__q {
  color: var(--at-theme-primary);
}
.sec-6-portfolio-details-6__q {
  font-size: 24px;
  letter-spacing: -0.03em;
  transition: color 0.3s ease;
}
.sec-6-portfolio-details-6__icon {
  position: relative;
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sec-6-portfolio-details-6__icon-bar {
  position: absolute;
  background: var(--at-neutral-950);
  transition: transform 0.3s ease, background-color 0.3s ease;
}
.sec-6-portfolio-details-6__icon-bar:not(.sec-6-portfolio-details-6__icon-bar--v) {
  width: 22px;
  height: 2px;
}
.sec-6-portfolio-details-6__icon-bar--v {
  width: 2px;
  height: 22px;
}
.sec-6-portfolio-details-6__body {
  padding: 0 0 30px 0;
  max-width: 1100px;
}
.sec-6-portfolio-details-6__body p {
  line-height: 1.65;
  letter-spacing: -0.01em;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-6-portfolio-details-6__heading {
    font-size: 40px;
  }
  .sec-6-portfolio-details-6__q {
    font-size: 22px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-6-portfolio-details-6 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-6-portfolio-details-6__heading {
    font-size: 34px;
  }
  .sec-6-portfolio-details-6__q {
    font-size: 20px;
  }
  .sec-6-portfolio-details-6__head {
    padding: 22px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-6-portfolio-details-6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-6-portfolio-details-6__heading {
    font-size: 28px;
  }
  .sec-6-portfolio-details-6__q {
    font-size: 18px;
  }
  .sec-6-portfolio-details-6__head {
    padding: 18px 0;
    gap: 16px;
  }
  .sec-6-portfolio-details-6__head:hover {
    padding-left: 0;
  }
}
@media (max-width: 574.98px) {
  .sec-6-portfolio-details-6__heading {
    font-size: 24px;
  }
  .sec-6-portfolio-details-6__q {
    font-size: 16px;
  }
  .sec-6-portfolio-details-6__icon {
    width: 18px;
    height: 18px;
  }
  .sec-6-portfolio-details-6__icon-bar:not(.sec-6-portfolio-details-6__icon-bar--v) {
    width: 18px;
  }
  .sec-6-portfolio-details-6__icon-bar--v {
    height: 18px;
  }
}

/* =========================================================
   SEC 7 — Next project compact dark card
   ========================================================= */
.sec-7-portfolio-details-6 {
  background: var(--at-neutral-0);
}
.sec-7-portfolio-details-6__eyebrow {
  color: var(--at-theme-primary);
  letter-spacing: 0.15em;
}
.sec-7-portfolio-details-6__heading {
  color: var(--at-neutral-950);
  font-size: 36px;
  letter-spacing: -0.04em;
}
.sec-7-portfolio-details-6__card {
  display: block;
  text-decoration: none;
  color: var(--at-neutral-0);
  background: var(--at-neutral-950);
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.4s ease;
}
.sec-7-portfolio-details-6__card:hover {
  color: var(--at-neutral-0);
  transform: translateY(-4px);
}
.sec-7-portfolio-details-6__card:hover .sec-7-portfolio-details-6__media img {
  transform: scale(1.04);
}
.sec-7-portfolio-details-6__card:hover .sec-7-portfolio-details-6__cta span {
  transform: translate(3px, -3px);
}
.sec-7-portfolio-details-6__media {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 560px;
  overflow: hidden;
  background: var(--at-neutral-800);
}
.sec-7-portfolio-details-6__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.8s ease;
}
.sec-7-portfolio-details-6__content {
  padding: 60px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.sec-7-portfolio-details-6__num {
  color: var(--at-theme-primary);
  letter-spacing: 0.15em;
}
.sec-7-portfolio-details-6__name {
  color: var(--at-neutral-0);
  font-size: 140px;
  letter-spacing: -0.05em;
  line-height: 0.95;
}
.sec-7-portfolio-details-6__tagline {
  color: var(--at-neutral-100);
  letter-spacing: -0.03em;
  line-height: 1.4;
}
.sec-7-portfolio-details-6__meta {
  color: var(--at-neutral-300);
  letter-spacing: 0.1em;
}
.sec-7-portfolio-details-6__tags {
  gap: 8px;
}
.sec-7-portfolio-details-6__tag {
  padding: 8px 16px;
  border: 1px solid var(--at-neutral-700);
  border-radius: 25px;
  color: var(--at-neutral-0);
  letter-spacing: 0.05em;
}
.sec-7-portfolio-details-6__cta {
  color: var(--at-theme-primary);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--at-theme-primary);
  align-self: flex-start;
}
.sec-7-portfolio-details-6__cta span {
  display: inline-block;
  transition: transform 0.35s ease;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec-7-portfolio-details-6__name {
    font-size: 96px;
  }
  .sec-7-portfolio-details-6__content {
    padding: 50px 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec-7-portfolio-details-6 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .sec-7-portfolio-details-6__heading {
    font-size: 30px;
  }
  .sec-7-portfolio-details-6__name {
    font-size: 84px;
  }
  .sec-7-portfolio-details-6__media {
    min-height: 380px;
    aspect-ratio: 4/3;
  }
  .sec-7-portfolio-details-6__content {
    padding: 40px 32px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 574.98px) {
  .sec-7-portfolio-details-6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .sec-7-portfolio-details-6__heading {
    font-size: 26px;
  }
  .sec-7-portfolio-details-6__name {
    font-size: 64px;
  }
  .sec-7-portfolio-details-6__media {
    min-height: 300px;
    aspect-ratio: 4/3;
  }
  .sec-7-portfolio-details-6__content {
    padding: 36px 24px;
  }
  .sec-7-portfolio-details-6__tagline {
    font-size: 18px;
  }
}
@media (max-width: 574.98px) {
  .sec-7-portfolio-details-6__name {
    font-size: 48px;
  }
}

/*----------------------------------------*/
/*  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: 500;
    font-size: 14px;
    border-radius: 100px !important;
    letter-spacing: -0.05em;
    padding: 10px 10px !important;
    text-transform: capitalize;
    border: 1px solid #000;
    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: #eaf5ff;
  border: 1px solid rgba(38, 38, 38, 0.1);
  color: #1D1D1D;
}
.at-btn-group-transparent-2 .at-btn-circle {
  background-color: #eaf5ff;
  color: #1D1D1D;
  border: 1px solid rgba(38, 38, 38, 0.1);
}
.at-btn-group-transparent-2:hover > *:nth-child(2) {
  background: #eaf5ff;
}
.at-btn-group-transparent-2:hover > *:nth-child(1) {
  background: #eaf5ff;
}
.at-btn-group.btn-brand-1 .at-btn {
  background: var(--bw-accent);
  border: 1px solid var(--bw-accent);
  color: #FEFEFE;
}
.at-btn-group.btn-brand-1 .at-btn-circle {
  background-color: var(--bw-accent);
  color: #FEFEFE;
  border: 1px solid var(--bw-accent);
}
.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,255,255,0), 0 0 0 0 rgba(255, 255, 255, 0.2);
  }
  80% {
    box-shadow: 0 0 0 50px rgba(255,255,255,0), 0 0 0 30px rgba(255,255,255,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255,255,255,0), 0 0 0 30px rgba(255,255,255,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: 500;
  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: 500;
  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: #ffffff !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: 500;
  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: 16px;
  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: 500;
  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: 500;
  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);
}
/*# sourceMappingURL=main.css.map */
/* =====================================================================
   FOOTER — COURTS (dark, heading overlapping ABOVE a wide, fixed-height image)
   ===================================================================== */
.footer-courts{
  position:relative;
  overflow:hidden;
  background:#0a0a0a;
  color:var(--at-common-white);
  padding-top:clamp(56px,8vw,100px);
  padding-bottom:0;
}
.footer-courts__glow{
  position:absolute;
  inset:auto 0 0 0;
  height:65%;
  background:
    radial-gradient(90% 90% at 78% 100%, rgba(255,255,255,0.165) 0%, rgba(255,255,255,0.066) 38%, rgba(255,255,255,0) 72%);
  pointer-events:none;
}
.footer-courts__inner{ position:relative; z-index:1; }

/* ── Brand mark, top-left of the footer ─────────────────────────────── */
.footer-courts__brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:clamp(32px,5vw,56px);
  color:var(--at-common-white);
}
.footer-courts__brand img{
  /* width:26px;
  height:26px; */
  max-width: 150px;
  display:block;
}
.footer-courts__brand span{
  font-family:var(--at-ff-heading);
  font-weight:700;
  font-size:14px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--at-common-white);
}

/* ── Content row: heading sits ABOVE the image, image width and
   height are independent so widening it doesn't grow its height ────── */
.footer-courts__top{
  position:relative;
  min-height:clamp(340px,38vw,460px);   /* CHANGED — back to original, not taller */
}
.footer-courts__content{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  width:100%;
  min-height:clamp(340px,38vw,460px);
  overflow:visible;
}
.footer-courts__eyebrow{
  font-family:var(--at-ff-body);
  font-style:italic;
  font-weight:500;
    font-size: 14px;
    letter-spacing: .02em;
    color: #fff;
  margin:0 0 24px;
}
.footer-courts__copy-block{
  display:grid;
  gap:14px;
  max-width:32ch;
  margin-bottom:auto;
}
.footer-courts__copy-block p{
  font-family:var(--at-ff-body);
  font-size: 16px;
  /* line-height:1.6; */
  color:rgba(255,255,255,.55);
  margin:0;
}
.footer-courts__heading{
  position:relative;
  z-index:2;
  margin:56px 0 0;
  /* font-family:var(--at-ff-heading); */
  /* font-weight:600; */
  text-transform:uppercase;
  font-size:80px;
  line-height:1.06;
  letter-spacing:-.01em;
  width:max-content;
  max-width:none;
  /* text-shadow:0 4px 24px rgba(0,0,0,.55); */
}
.footer-courts__heading-dim{ color:rgba(255,255,255,.35); }
.footer-courts__heading-strong{ color:var(--at-common-white); }

.footer-courts__media{
  position:absolute;
  top:0;
  right:0;
  z-index:1;                        /* below the heading */
  width:800px;    /* wide */
  height:clamp(340px,38vw,460px);   /* CHANGED — fixed height, independent of width */
  overflow:hidden;
  /* aspect-ratio removed — this is what was stretching the height */
}
.footer-courts__media img{
  width:100%;
  height:100%;
  object-fit:cover;                 /* crops the wider frame instead of growing it */
  display:block;
      border-radius: 12px;
}
/* .footer-courts__media img{
  filter: grayscale(100%);
} */
/* ── Bottom bar: quick links + copyright, together at the page end ─── */
.footer-courts__bottom{
  margin-top:clamp(56px,7vw,96px);
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.12);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:16px 24px;
}
.footer-courts__links ul{
  display:flex;
  flex-wrap:wrap;
  gap:18px 32px;
}
.footer-courts__links a{
  font-family:var(--at-ff-body);
  font-size:14px;
  color:rgba(255,255,255,.75);
  transition:color .25s ease;
}
.footer-courts__links a:hover,
.footer-courts__links a:focus-visible{ color:var(--at-common-white); }
.footer-courts__copy{
  font-family:var(--at-ff-body);
  font-size:16px !important;
  color:rgba(255,255,255,.4);
}

@media (max-width:860px){
  .footer-courts__top{ min-height:0; }
  .footer-courts__content{ overflow:visible; }
  .footer-courts__heading{
    width:auto;
    max-width:100%;
    margin-top:32px;
    font-size:clamp(30px,7vw,44px);
  }
  .footer-courts__media{
    position:relative;
    width:100%;
    height:auto;
    aspect-ratio:16/10;   /* fine to reintroduce on mobile since it's stacked, not overlapping */
    margin-bottom:32px;
    z-index:1;
  }
  .footer-courts__bottom{ flex-direction:column; align-items:flex-start; gap:16px; }
  .footer-courts__links ul{ gap:14px 24px; }
}

/* ---------- COURTS (cream grid) ---------- */
.courts{
  /* background-color:var(--paper); */
  background-color:#fff;
  color:var(--ink);
  background-image:linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px),linear-gradient(90deg,rgb(12 12 12 / 5%) 1px, transparent 1px);
  background-size:48px 49px;}
.courts .tag{color:var(--olive)}
.courts-head{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end;margin-bottom:clamp(40px,6vw,72px)}
.courts-head .meta{display:grid;gap:14px}
.courts-head .year{font-family:var(--display);font-size:clamp(40px,5vw,64px);font-stretch:100%;font-weight:400;line-height:1}
.courts-head h2{font-size:clamp(44px,7vw,108px);font-weight:500;font-stretch:88%;letter-spacing:-.035em;line-height:.9;color:#2a2d25;text-transform:lowercase}
.swatches{display:grid;grid-template-columns:repeat(3,28px);grid-template-rows:repeat(2,28px);gap:6px;align-items:end}
.swatches i{display:block;width:28px;height:28px}
.swatch-cap{font-size:11px;line-height:1.25;margin-top:10px;text-transform:uppercase;letter-spacing:.06em}
.court-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid rgba(18,20,15,.8);background:var(--paper)}
.court{display:grid;grid-template-rows:auto auto 1fr;border-left:1px solid rgba(18,20,15,.8)}
.court:first-child{border-left:0}

/* -- court-fig hosts a touch-swipe slider of court diagrams (no autoplay) -- */
.court-fig{aspect-ratio:4/5;position:relative;overflow:hidden}
.court-track{
  display:flex;width:100%;height:100%;
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;-ms-overflow-style:none;
  touch-action:pan-y;
  cursor:grab;
}
.court-track::-webkit-scrollbar{display:none}
.court-track:active{cursor:grabbing}
.court-slide{width:100%;height:100%;flex:0 0 100%;scroll-snap-align:start;display:grid;place-items:center;padding:22px}
.court-slide svg{width:100%;height:100%;max-height:340px}
.court-fig .corner{position:absolute;z-index:2; font-size:11px;letter-spacing:.05em;color:rgba(255,255,255,.8);text-transform:uppercase}
.court-fig .tl{top:14px;left:16px}.court-fig .br{bottom:14px;right:16px}

.court-info{padding:22px 22px 8px;border-top:1px solid rgba(18,20,15,.8);display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.court-info h3{font-size:24px;font-stretch:112%;text-transform:uppercase}
.court-info .count{ font-size:12px;color:#5b5f52}
.court-body{padding:6px 22px 24px;display:grid;gap:18px;align-content:start}
.court-body p{font-size: 16px;color:#939393}
.sports-chips{display:flex;flex-wrap:wrap;gap:8px}
.sports-chips span{border:1px solid rgba(18,20,15,.25);border-radius:999px;padding:5px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-family:var(--mono)}
.specs{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:15px}
.specs dt{ font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#6b705f;padding-top:2px}
.specs dd{margin:0;font-variant-numeric:tabular-nums}
@media (max-width:900px){
  .court-list{grid-template-columns:1fr}
  .court{border-left:0;border-top:1px solid rgba(18,20,15,.8)}
  .court:first-child{border-top:0}
  .court-fig{aspect-ratio:16/10}
  .courts-head{grid-template-columns:1fr}
}

/* ===========================================================
   AK Sports Infra — Services (What we offer + Surfaces)
   Append AFTER the existing ".courts" rules in main.css.
   Contains: shared type + button classes, section layout,
   court slider, and the scroll animations.
   =========================================================== */

/* ---------- Shared site typography (reuse on every section) ---------- */
.ak-eyebrow {                                   /* "( About AK Sports )" style */
  margin: 0 0 18px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 15px;
  line-height: 1.3;
  color: #666;
}
.ak-heading {                                   /* same recipe as the About headline */
  margin: 0;
  font-family: var(--at-ff-heading);
  font-weight: 500;
  font-stretch: 108%;
  font-size: clamp(32px, 3.6vw, 56px);
  line-height: .95;
  letter-spacing: -.01em;
  text-transform: uppercase;
  color: var(--at-neutral-900, #1e1e1e);
}
.ak-heading .dim { color: #878787; }
.ak-sub {                                       /* card-title recipe: uppercase 24px */
  margin: 0;
  font-family: var(--at-ff-heading);
  /* font-weight: 500; */
  font-stretch: 112%;
  font-size: 24px;
  line-height: 1.1;
  text-transform: uppercase;
  color: var(--at-neutral-900, #1e1e1e);
}
.ak-desc {                                      /* body copy */
  margin: 0;
  font-family: var(--at-ff-body);
  font-size: 16px;
  line-height: 1.55;
  color: rgba(30, 30, 30, .78);
}

/* ---------- The two shared buttons ---------- */
/* 1) Underline link (same as the hero "Explore our courts") */
.ak-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 6px;
  font-family: var(--at-ff-body);
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  border-bottom-color: color-mix(in srgb, currentColor 35%, transparent);
  transition: border-color .3s ease, gap .3s ease;
}
.ak-link svg { color: var(--at-theme-primary, #0a0a0a); }
.ak-link:hover { gap: 16px; border-bottom-color: var(--at-theme-primary, #0a0a0a); }

/* 2) Orisa .at-btn — orange variant (identical to the header button) */
.at-btn.ak-btn-orange {
  height: 50px;
  padding: 0 26px !important;
  background-color: var(--at-theme-primary, #0a0a0a);
  /* border-color: var(--at-theme-primary, #0a0a0a); */
  color: #000;
  text-decoration: none;
}

/* ---------- Layout ---------- */
.ak-services__intro { padding-bottom: clamp(40px, 5vw, 72px); }
.ak-services__intro .navigation-section-10 { margin-bottom: 22px; }
.ak-services__intro .ak-link { margin-top: 22px; }

.ak-services__bar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: clamp(24px, 3vw, 40px);
}
.ak-services__bar .ak-eyebrow { color: var(--olive); margin-bottom: 10px; }
.ak-services__swatches .swatches { margin-left: auto; }

.ak-services__cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px 40px;
  flex-wrap: wrap;
  margin-top: clamp(32px, 4vw, 56px);
}
.ak-services__cta .ak-desc { max-width: 460px; }
.ak-services__cta-actions { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; position: relative;}

/* ---------- Court slider (mouse drag, touch swipe, click, arrows, keys) ---------- */
.ak-services .court-fig { user-select: none; -webkit-user-select: none; outline: none; }
.ak-services .court-fig:focus-visible { box-shadow: inset 0 0 0 2px rgba(255,255,255,.85); }
.ak-services .court-track {
  overflow: visible;                 /* JS moves the track with translateX */
  scroll-snap-type: none;
  touch-action: pan-y;               /* vertical page scroll stays native, horizontal is ours */
  will-change: transform;
  cursor: grab;
}
.ak-services .court-fig.is-dragging .court-track { cursor: grabbing; }
.ak-services .court-slide svg { pointer-events: none; transition: transform .6s cubic-bezier(.22,1,.36,1); }
.ak-services .court-fig.is-dragging .court-slide svg { transform: scale(.94); }

.court-dots {
  position: absolute; z-index: 3; left: 16px; bottom: 14px;
  display: flex; gap: 6px; align-items: center;
}
.court-dots button {
  width: 6px; height: 6px; padding: 0; border: 0; border-radius: 6px;
  background: rgba(255,255,255,.45); cursor: pointer;
  transition: width .45s cubic-bezier(.22,1,.36,1), background-color .3s ease;
}
.court-dots button[aria-current="true"] { width: 22px; background: #ffffff; }
.court-dots button:focus-visible { outline: 2px solid #ffffff; outline-offset: 3px; }

.court-arrow {
  position: absolute; z-index: 3; top: 50%;
  width: 38px; height: 38px; margin-top: -19px; padding: 0;
  display: grid; place-items: center;
  border: 1px solid rgba(255,255,255,.35); border-radius: 50%;
  background: rgba(10,10,10,.25); color: #ffffff; cursor: pointer;
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  opacity: 0; transform: scale(.85);
  transition: opacity .3s ease, transform .3s ease, background-color .3s ease;
}
.court-arrow.prev { left: 12px; }
.court-arrow.next { right: 12px; }
.court-arrow:hover { background: rgba(10,10,10,.5); }
.court-arrow:disabled { opacity: 0 !important; pointer-events: none; }
@media (hover: hover) {
  .court-fig:hover .court-arrow:not(:disabled),
  .court-fig:focus-within .court-arrow:not(:disabled) { opacity: 1; transform: scale(1); }
}

/* ---------- Animations (added only when JS runs: html.ak-js) ---------- */
/* generic rise-in used by small items */
.ak-js .ak-reveal {
  opacity: 0; transform: translateY(22px);
  transition: opacity .9s ease, transform 1s cubic-bezier(.16,1,.3,1);
  transition-delay: calc(var(--d, 0) * .1s);
}
.ak-js .ak-reveal.is-in { opacity: 1; transform: none; }
/* keep the underline-link hover animation working while it is also a reveal item */
.ak-js .ak-link.ak-reveal {
  transition: opacity .9s ease calc(var(--d, 0) * .1s),
              transform 1s cubic-bezier(.16,1,.3,1) calc(var(--d, 0) * .1s),
              border-color .3s ease, gap .3s ease;
}

/* heading: line-mask rise */
.ak-js .ak-heading .ln { display: block; overflow: hidden; padding-bottom: .06em; }
.ak-js .ak-heading .ln > span {
  display: block; transform: translateY(110%);
  transition: transform 1.1s cubic-bezier(.16,1,.3,1);
  transition-delay: calc(var(--i, 0) * .09s);
}
.ak-js .ak-heading.is-in .ln > span { transform: none; }

/* cards: image curtain, then text, then chips */
.ak-js .ak-services .court-fig {
  clip-path: inset(100% 0 0 0);
  transition: clip-path 1.2s cubic-bezier(.77,0,.18,1);
  transition-delay: calc(var(--i, 0) * .16s);
}
.ak-js .ak-services .court.is-in .court-fig { clip-path: inset(0 0 0 0); }

.ak-js .ak-services .court-info,
.ak-js .ak-services .court-body > * {
  opacity: 0; transform: translateY(16px);
  transition: opacity .8s ease, transform .9s cubic-bezier(.16,1,.3,1);
  transition-delay: calc(.55s + var(--i, 0) * .16s);
}
.ak-js .ak-services .court-body > *:nth-child(2) { transition-delay: calc(.65s + var(--i, 0) * .16s); }
.ak-js .ak-services .court-body > *:nth-child(3) { transition-delay: calc(.75s + var(--i, 0) * .16s); }
.ak-js .ak-services .court.is-in .court-info,
.ak-js .ak-services .court.is-in .court-body > * { opacity: 1; transform: none; }

.ak-js .ak-services .sports-chips span {
  opacity: 0; transform: translateY(8px) scale(.96);
  transition: opacity .6s ease, transform .7s cubic-bezier(.16,1,.3,1);
  transition-delay: calc(.9s + var(--i, 0) * .16s + var(--c, 0) * .06s);
}
.ak-js .ak-services .court.is-in .sports-chips span { opacity: 1; transform: none; }

/* court lines draw themselves whenever a layout becomes the active slide */
.ak-js .court-slide svg .draw {
  stroke-dasharray: 1 1; stroke-dashoffset: 1;
  transition: stroke-dashoffset .5s ease;
}
.ak-js .court-slide svg .fade { opacity: 0; transition: opacity .4s ease; }
.ak-js .court.is-in .court-slide.is-active svg .draw {
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 1.5s cubic-bezier(.65,0,.35,1) calc(.5s + var(--k, 0) * .07s);
}
.ak-js .court.is-in .court-slide.is-active svg .fade {
  opacity: 1;
  transition: opacity .8s ease calc(1s + var(--k, 0) * .05s);
}

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
  .ak-services__bar { align-items: flex-start; }
  .ak-services__cta { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 767px) {
  .ak-heading { font-size: clamp(28px, 8vw, 40px); }
  .ak-services__swatches { display: none; }
}

/* ---------- Reduced motion: show everything immediately ---------- */
@media (prefers-reduced-motion: reduce) {
  .ak-js .ak-reveal, .ak-js .ak-heading .ln > span,
  .ak-js .ak-services .court-info, .ak-js .ak-services .court-body > *,
  .ak-js .ak-services .sports-chips span { opacity: 1 !important; transform: none !important; transition: none !important; }
  .ak-js .ak-services .court-fig { clip-path: none !important; transition: none !important; }
  .ak-js .court-slide svg .draw { stroke-dashoffset: 0 !important; transition: none !important; }
  .ak-js .court-slide svg .fade { opacity: 1 !important; transition: none !important; }
}

/* ===========================================================
   SERVICES — fit in one viewport, spacious
   Sizes follow viewport height (vh/svh) so the section stays on one screen.
   Photos per card: edit --fig-bg in the three .court:nth-child rules below.
   =========================================================== */
.courts.ak-services{
  min-height:100vh; min-height:100svh;
  display:flex; flex-direction:column; justify-content:center;
}
.courts.ak-services > .container{ width:100%; }

/* intro row */
.ak-services__intro{ padding-bottom:70px; }
.ak-services .ak-heading{ font-size:clamp(28px, min(3.6vw, 5.6vh), 56px); }
.ak-services__intro .navigation-section-10{ margin-bottom:clamp(10px,1.8vh,18px); }
.ak-services__intro .icon-shape.size-60{ width:clamp(38px,5.4vh,56px); height:clamp(38px,5.4vh,56px); }
.ak-services__intro .ak-desc{ font-size:16px; line-height:1.45; }
.ak-services__intro .portfolio-text{ max-height:clamp(64px,11vh,110px); width:auto; }
.ak-services__intro .pt-40{ padding-top:clamp(14px,3vh,32px) !important; }

/* surface palette (right column, replaces the "See the systems" link) */
.ak-services__swatches{ display:flex; align-items:flex-end; gap:12px; margin-top:clamp(14px,2.6vh,26px); }
.ak-services__swatches .swatches{ grid-template-columns:repeat(3,18px); grid-template-rows:repeat(2,18px); gap:5px; margin-left:0; }
.ak-services__swatches .swatches i{ width:18px; height:18px; }
.ak-services__swatches .swatch-cap{ margin:0; font-size:10px; }

/* cards */
.ak-services .court-fig{ aspect-ratio:auto; height:clamp(140px,29vh,320px); }
.ak-services .court-slide{ padding:clamp(12px,2.4vh,22px); }
.ak-services .court-slide svg{ max-height:100%; }
.ak-services .court-fig .tl{ top:14px; }
.ak-services .court-fig .br{ bottom:14px; }
.ak-services .court-dots{ bottom:14px; }
.ak-services .court-info{ padding:clamp(14px,2.4vh,22px) 22px 4px; }
.ak-services .court-info h3{ font-size:clamp(18px,2.7vh,24px); }
.ak-services .court-body{ padding:6px 22px clamp(16px,2.8vh,26px); gap:clamp(10px,1.8vh,16px); }
/* .ak-services .court-body p{ font-size:clamp(14px,2vh,17px); line-height:1.45; } */
.ak-services .sports-chips{ gap:7px; }
.ak-services .sports-chips span{ padding:4px 11px; font-size:10.5px; }

/* a different photo behind each figure, under a navy overlay */
.ak-services .court:nth-child(1){ --fig-bg:url("../imgs/ak-sections/court-01-outdoor-courts-jsw-basketball.jpg"); --fig-pos:50% 50%; }
.ak-services .court:nth-child(2){ --fig-bg:url("../imgs/ak-sections/court-02-indoor-sports-flooring-naavel-badminton.jpg"); --fig-pos:50% 60%; }
.ak-services .court:nth-child(3){ --fig-bg:url("../imgs/ak-sections/court-03-synthetic-turf-agra-box-cricket.jpg"); --fig-pos:50% 60%; }
.ak-services .court:nth-child(4){ --fig-bg:url("../imgs/ak-sections/court-04-running-tracks-reindeer-track.jpg"); --fig-pos:50% 60%; }
.ak-services .court:nth-child(5){ --fig-bg:url("../imgs/ak-sections/court-05-wooden-flooring-jsw-squash.jpg"); --fig-pos:50% 85%; }
.ak-services .court:nth-child(6){ --fig-bg:url("../imgs/ak-sections/court-06-pvc-flooring-jsw-indoor-hall.jpg"); --fig-pos:50% 85%; }
.ak-services .court:nth-child(7){ --fig-bg:url("../imgs/ak-sections/court-07-specialised-facilities-jsw-sports-hall.jpg"); --fig-pos:50% 60%; }
.ak-services .court:nth-child(8){ --fig-bg:url("../imgs/ak-sections/court-08-play-areas-complexes-agra-aerial.jpg"); --fig-pos:50% 55%; }
.ak-services .court-fig{
  background-color:#1a1a1a;
  background-image:
    linear-gradient(180deg, rgba(12,30,52,.66) 0%, rgba(10,24,44,.84) 100%),
    var(--fig-bg);
  background-repeat:no-repeat;
  background-size:100% 100%, cover;
  background-position:0 0, var(--fig-pos,center);
}

/* CTA */
.ak-services__cta{ margin-top:clamp(18px,3.4vh,40px); gap:14px 40px; }
.ak-services__cta .ak-desc{ font-size:clamp(14px,2vh,17px); line-height:1.45; }
.ak-services__cta .at-btn.ak-btn-orange{ height:clamp(44px,5.6vh,50px); }

/* tablets / phones: stacked cards can't fit one screen, so keep it comfortable instead */
@media (max-width:900px){
  .courts.ak-services{ min-height:0; display:block; padding-top:90px; padding-bottom:60px; }
  .ak-services .court-fig{ height:220px; }
  .ak-services .ak-heading{ font-size:clamp(28px,8vw,40px); }
}
/* ===== COURT LIST -> SLIDER (3 per view) + per-card sport animation ===== */
.court-slider{ position:relative; }
.cs-nav{ display:none; }

/* desktop / tablet: the existing .court-list becomes the slider track (phones keep their own swipe row from the mobile block) */
@media (min-width:768px){
  .courts .court-list{
    --cpv:3;
    display:flex; overflow-x:auto; overflow-y:hidden;
    scroll-snap-type:x mandatory; overscroll-behavior-x:contain;
    scrollbar-width:none; -ms-overflow-style:none;
    cursor:grab;
  }
  .courts .court-list::-webkit-scrollbar{ display:none; }
  .courts .court-list.is-dragging{ cursor:grabbing; user-select:none; -webkit-user-select:none; }
  .courts .court-list > .court{
    flex:0 0 calc(100% / var(--cpv)); min-width:0; scroll-snap-align:start;
    border-top:0; border-left:1px solid rgba(18,20,15,.8);
  }
  .courts .court-list > .court:first-child{ border-left:0; }

  .cs-nav{ display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:clamp(10px,1.8vh,18px); }
  .cs-dots{ display:flex; align-items:center; gap:8px; }
  .cs-dots button{
    position:relative; width:7px; height:7px; padding:0; border:0; border-radius:7px; background:rgba(12,12,12,.22); cursor:pointer;
    transition:width .4s cubic-bezier(.22,1,.36,1), background-color .3s ease;
  }
  .cs-dots button::after{ content:""; position:absolute; inset:-12px -5px; }
  .cs-dots button[aria-current="true"]{ width:26px; background:var(--bw-accent,#c7961c); }
  .cs-btns{ display:flex; gap:8px; }
  .cs-btn{
    width:44px; height:44px; display:grid; place-items:center; padding:0; border:1px solid rgba(18,20,15,.8); border-radius:0;
    background:transparent; color:inherit; cursor:pointer; transition:background-color .25s ease, color .25s ease, opacity .25s ease;
  }
  .cs-btn:hover:not(:disabled), .cs-btn:focus-visible{ background:rgba(18,20,15,.9); color:#fff; }
  .cs-btn:disabled{ opacity:.3; cursor:default; }
}
@media (min-width:768px) and (max-width:1099.98px){
  .courts .court-list{ --cpv:2; }
}

/* each figure plays one court animation per sport: slides stack and cross-fade, lines draw themselves on the active one */
.court-fig.is-cycle .court-track{ display:block; position:relative; overflow:hidden; scroll-snap-type:none; cursor:inherit; touch-action:auto; }
.court-fig.is-cycle .court-slide{
  position:absolute; inset:0; width:auto; height:auto; flex:none;
  opacity:0; transform:scale(.965); pointer-events:none;
  transition:opacity .6s ease, transform .9s cubic-bezier(.22,1,.36,1);
}
.court-fig.is-cycle .court-slide.is-active{ opacity:1; transform:none; }
.court-fig.is-cycle .corner.br{ transition:opacity .3s ease; }
.court-fig.is-cycle .court-dots{ z-index:2; }
.court-fig.is-cycle .court-dots button{ cursor:pointer; }
/* a little quicker than the original 3-layout slider, so a sport finishes drawing well before the next one starts */
.ak-js .court.is-in .court-fig.is-cycle .court-slide.is-active svg .draw{
  transition:stroke-dashoffset 1.1s cubic-bezier(.65,0,.35,1) calc(.2s + var(--k, 0) * .045s);
}
.ak-js .court.is-in .court-fig.is-cycle .court-slide.is-active svg .fade{
  transition:opacity .6s ease calc(.5s + var(--k, 0) * .03s);
}
/* the sport being shown is lit in the chip row */
.sports-chips span.is-now{ background:var(--ink,#12140f) !important; color:#fff !important; border-color:var(--ink,#12140f) !important; }

/* more than three cards: reuse the three photos in turn */
.ak-services .court:nth-child(4){ --fig-bg:url("../imgs/page_07_image_01.webp"); }
.ak-services .court:nth-child(5){ --fig-bg:url("../imgs/page_08_image_01.webp"); }
.ak-services .court:nth-child(6){ --fig-bg:url("../imgs/page_07_image_02.webp"); }
.ak-services .court:nth-child(7){ --fig-bg:url("../imgs/page_08_image_01.webp"); }
.ak-services .court:nth-child(8){ --fig-bg:url("../imgs/aks-multisport.webp"); }

/* ---------- end SERVICES one-viewport ---------- */

/* ---------- end COURTS ---------- */

/* ---------- BOOK / QUOTE (enquiry calculator) — matches the Services card language ---------- */
.book{
    position: relative;
    background-color: #fff;
    background-image: linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px), linear-gradient(90deg, rgb(12 12 12 / 5%) 1px, transparent 1px);
    background-size: 48px 49px;
    background-position: 0 var(--gy, 0px);
    color: #161616;
}
/* 1 : 2 columns = the same thirds as the court cards and the line grid */
.book-grid{    display: grid;
    grid-template-columns: calc((90% + 1px) / 2) minmax(160px, 1fr);
    align-items: start;}   /* card's left edge sits exactly on the 1/3 line */
.book-intro{display:grid;gap:26px;align-content:start;padding-right:clamp(24px,4vw,56px)}
.book-intro .ak-eyebrow{margin:0;color:var(--olive)}
.book-intro .ak-desc{max-width:40ch}
.book-intro .ak-heading{font-size:clamp(28px,2.75vw,56px)}
.book-intro .ak-heading .ln{white-space:nowrap}
.book-intro .specs
{
  /* border-top:1px solid rgba(18,20,15,.15); */
  /* padding-top:18px; */
  font-size:14px
}
.book-intro .specs dd{color:rgba(18,20,15,.85)}

/* card */
.booker{display:grid;grid-template-rows:auto 1fr;background:var(--paper);border:1px solid rgba(18,20,15,.8);min-width:0}

/* colour panel (same colours as the surface palette) */
.booker-fig{
 --fig-rgb: 47 90 138;
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px 32px;
    align-items: center;
    padding: 26px 26px 46px;
    /* background-color: rgb(var(--fig-rgb)); */
    background-image: linear-gradient(180deg, rgb(0 0 0 / 72%) 0%, rgb(0 0 0 / 90%) 100%), url(../imgs/Rectangle-61-1.jpg);
    background-repeat: no-repeat, no-repeat;
    background-size: cover, cover;
    background-position: center, center;
    color: #ffffff;
    transition: background-color .7s cubic-bezier(.22, 1, .36, 1);
}
.booker-fig[data-sport="padel"]{--fig-rgb:31 63 102}
.booker-fig[data-sport="five"]{--fig-rgb:61 110 63}
.booker-fig[data-sport="custom"]{--fig-rgb:71 70 23}
.booker-fig .corner{position:absolute;z-index:2;right:16px;bottom:14px; font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.8)}

.field{display:grid;gap:14px;border:0;margin:0;padding:0;min-width:0}
.field legend{float:left;width:100%;margin:0 0 14px;padding:0; font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.field legend + *{clear:both}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{position:relative;cursor:pointer}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt span{
  display:inline-flex;align-items:baseline;gap:8px;padding:8px 14px;
  border:1px solid rgba(255,255,255,.45);border-radius:999px;
  font-size:14px;letter-spacing:.05em;text-transform:uppercase;color:#ffffff;
  transition:background-color .25s ease,color .25s ease,border-color .25s ease;
}
.opt span small{font-size:10px;opacity:.6}
.opt:hover span{border-color:#ffffff}
.opt input:checked + span{background:#ffffff;color:var(--ink);border-color:#ffffff}
.opt input:checked + span small{opacity:.7}
.opt input:focus-visible + span{outline:2px solid #fff;outline-offset:3px}

/* live court diagram */
.q-art{width:min(300px,34vw);aspect-ratio:300/240}
.q-art svg{display:none;width:100%;height:100%}
.booker-fig[data-sport="tennis"] .q-art [data-for="tennis"],
.booker-fig[data-sport="padel"] .q-art [data-for="padel"],
.booker-fig[data-sport="pickle"] .q-art [data-for="pickle"],
.booker-fig[data-sport="five"] .q-art [data-for="five"],
.booker-fig[data-sport="custom"] .q-art [data-for="custom"]{display:block}
.q-art .draw{stroke-dasharray:1 1;animation:q-draw 1.2s cubic-bezier(.65,0,.35,1) both}
.q-art .fade{animation:q-fade .8s ease .5s both}
@keyframes q-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes q-fade{from{opacity:0}to{opacity:1}}

/* body */
.booker-body{padding:clamp(20px,3vw,32px);display:grid;gap:22px;align-content:start;min-width:0}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.row2[hidden]{display:none}
.inp{display:grid;gap:8px;min-width:0; font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--olive)}
.inp input,.inp select{
  width:100%;padding:14px 16px;background:#fff;color:var(--ink);
  border:1px solid rgba(18,20,15,.25);border-radius:0;
  font-family:var(--at-ff-body,inherit);font-size:15px;letter-spacing:normal;text-transform:none;line-height:1.3;
  transition:border-color .25s ease,box-shadow .25s ease;
}
.inp input::placeholder{color:rgba(18,20,15,.35)}
.inp input:hover,.inp select:hover{border-color:rgba(18,20,15,.6)}
.inp input:focus,.inp select:focus{outline:0;border-color:var(--ink);box-shadow:inset 0 -2px 0 var(--at-theme-primary,#0a0a0a)}
.sel{position:relative;display:block}
.sel select{appearance:none;-webkit-appearance:none;padding-right:44px;cursor:pointer}
.sel::after{content:"";position:absolute;right:18px;top:50%;width:7px;height:7px;margin-top:-6px;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:rotate(45deg);pointer-events:none}

/* estimate */
.estimate{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid rgba(18,20,15,.8)}
.estimate div{display:grid;gap:10px;padding:18px 20px;min-width:0}
.estimate div + div{border-left:1px solid rgba(18,20,15,.15)}
.estimate span{display:flex;align-items:center;gap:8px; font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#6b705f}
.estimate div:first-child span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--at-theme-primary,#0a0a0a)}
.estimate b{font-family:var(--display);font-weight:600;font-stretch:112%;font-size:clamp(26px,2.9vw,40px);line-height:1;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.note{margin:0;font-size:14px;line-height:1.5;color:rgba(18,20,15,.55)}

/* summary + shared orange at-btn */
.summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:22px;border-top:1px solid rgba(18,20,15,.15)}
.summary output{ font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.booker .at-btn{cursor:pointer;}
.toast{margin:0;min-height:1.2em; font-size:12px;letter-spacing:.04em;color:var(--olive-deep)}

@media (max-width:991px){
  .book-grid{grid-template-columns:1fr;gap:48px}
  .book-intro{padding-right:0}
  .book-intro .ak-heading{font-size:clamp(30px,7vw,52px)}
}
@media (max-width:767px){
  .booker-fig{grid-template-columns:1fr;padding:22px 20px 44px}
  .q-art{width:min(260px,45%);margin-inline:auto}
}
@media (max-width:575px){
  .row2{grid-template-columns:1fr}
  .estimate{grid-template-columns:1fr}
  .estimate div{grid-template-columns:1fr auto;align-items:center}
  .estimate div + div{border-left:0;border-top:1px solid rgba(18,20,15,.15)}
  .estimate b{font-size:26px !important}
}
@media (prefers-reduced-motion:reduce){
  .q-art .draw,.q-art .fade{animation:none!important}
  .booker-fig{transition:none}
}
/* ---------- end BOOK ---------- */

 :root{
    --cream:#e9e3cf;
    --ink:#1b1b16;
  }

  .stage{
    position:relative;
    width:100%;
    min-height:100vh;
    overflow:hidden;
    isolation:isolate;
    /* background:#0a0a0a; */
    background:rgb(24 62 93);
  }

  /* ---------- Background scene (fixed, never slides) ---------- */
  .bg-wrap{
    position:absolute;
    inset:0;
    z-index:0;
    overflow:hidden;
  }
  .bg-wrap svg{
    position:absolute;
    top:50%; left:50%;
    width:130%;
    height:130%;
    transform:translate(-50%,-50%);
    filter: blur(14px) saturate(1.15) brightness(0.92);
  }
  .bg-tint{
    position:absolute; inset:0;
    background:
      radial-gradient(120% 90% at 30% 0%, rgba(10,10,10,0.18), transparent 60%),
      linear-gradient(180deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.25) 35%, rgba(0,0,0,0.65) 100%);
    mix-blend-mode:multiply;
    z-index:1;
  }
  .grain{
    position:absolute; inset:0; z-index:2;
    background-image:repeating-linear-gradient(0deg, rgba(255,255,255,0.02) 0 1px, transparent 1px 2px);
    opacity:.4;
    pointer-events:none;
  }

  /* ---------- Print/registration grid overlay ---------- */
  .grid-overlay{
    position:absolute; inset:0; z-index:5; pointer-events:none;
  }
  .grid-overlay .v{ position:absolute; top:0; bottom:0; width:1px; background:rgba(255,255,255,0.18); }
  .grid-overlay .h{ position:absolute; left:0; right:0; height:1px; background:rgba(255,255,255,0.18); }

  /* ---------- Content ---------- */
  .content{ position:relative; z-index:10; min-height:100vh; }

  .brief{
    position:absolute;
    top:8%;
    left:3%;
    right:4%;
    max-width:640px;
    color:#ffffff;
    font-size: 16px;
    /* font-weight:600; */
   
    /* text-transform:uppercase; */
  }

  /* ---------- Slider: notes + image slide together, one per view ---------- */
  .slider-viewport{
    position:absolute;
    top:24%;
    left:8%;
    width:84%;
    height:56%;
    overflow:hidden;
    z-index:10;
  }
  .slider-track{
    display:flex;
    height:100%;
    transition: transform 0.9s cubic-bezier(.65,0,.35,1);
  }
  .slide{
    flex:0 0 100%;
    height:100%;
    display:flex;
    flex-direction:column;
  }
  .slide-note{
    color:#ffffff;
    font-size: 16px;
    /* font-weight:600; */
    /* letter-spacing:0.03em;
    line-height:1.55;
    text-transform:uppercase; */
    padding-left:8%;
    margin-bottom:2.4%;
  }
  .slide-sub{
    color:#ffffff;
    font-size: 16px;
    /* font-weight:600; */
    /* letter-spacing:0.03em;
    text-transform:uppercase; */
    padding-left:23%;
    margin-bottom:3%;
  }

  /* ---------- Glassmorphism framed placeholder image ---------- */
  .frame{
    position:relative;
    margin-left:8%;
    width:84%;
    flex:1 1 auto;
    border-radius:2px;
    overflow:hidden;
    background:rgba(255,255,255,0.06);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    /* border:1px solid rgba(255,255,255,0.35); */
    box-shadow:
      0 20px 50px rgba(0,0,0,0.45),
      inset 0 0 0 1px rgba(255,255,255,0.08);
  }
  .frame::after{
    content:'';
    position:absolute; inset:0;
    background:linear-gradient(120deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0) 30%);
    pointer-events:none;
  }
  .placeholder-img{
    position:absolute; inset:0;
    background:
      repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 0 12px, rgba(255,255,255,0.09) 12px 24px),
      linear-gradient(160deg, #e6e6e6 0%, #bdbdbd 55%, #8c8c8c 100%);
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .placeholder-img svg{ width:15%; height:auto; opacity:0.55; }
  .placeholder-label{
    position:absolute;
    bottom:6%;
    right:5%;
    color:rgba(255,255,255,0.55);
    font-size:11px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    font-weight:600;
  }

  .spots{
    position:absolute;
    top:83%;
    left:59%;
    max-width:230px;
    color:#ffffff;
    font-size:clamp(10px,1.05vw,12.5px);
    /* font-weight:600; */
    letter-spacing:0.03em;
    /* line-height:1.5; */
    text-transform:uppercase;
    z-index:10;
  }

  .signature{
    position:absolute;
    bottom:3%;
    right:4%;
    font-weight:600;
   
    font-size:clamp(30px,6vw,58px);
    color:#fff;
    z-index:10;
  }

  @media (max-width:560px){
    .stage{ min-height:150vh; }
    .brief{ top:5%; }
    .slider-viewport{ top:22%; left:6%; width:88%; height:58%; }
    .spots{ left:8%; top:83%; }
  }

/* ===========================================================
   AK LINE SYSTEM — one continuous grid through the whole page
   -----------------------------------------------------------
   Five reusable vector-line SVG elements:
     1. .ak-rail            solid vertical hairline   (outer frame: r0 + r3)
     2. .ak-rail--dot       dotted vertical hairline  (inner thirds: r1 + r2, the court "net line")
     3. .ak-rule            horizontal hairline that closes a section (touches all four rails)
     4. .ak-x               "+" junction mark, built into every rail (top; bottom too on --end)
     5. .ak-elbow           quarter-round corner connector (first section = --start, last = --end)
   Every element is positioned from the SAME two numbers
   (frame width --ak-w and left edge --ak-x0), so the lines in
   one section meet the lines in the next one exactly.
   Drop  <div class="ak-lines"> … </div>  as the FIRST child of a section.
   =========================================================== */
.ak-lined{position:relative}               /* only needed on sections that are position:static */

.ak-lines{
  --ak-w: var(--ak-w-js, min(1376px, calc(100% - 48px)));   /* frame width = .container content width */
  --ak-x0: calc((100% - var(--ak-w)) / 2);                   /* frame left edge */
  position:absolute; inset:0; z-index:5; pointer-events:none;
  color:#fff;
  mix-blend-mode:difference;    /* light lines on dark areas, dark lines on light areas — automatically */
  opacity:.16;
}
.ak-svg{position:absolute;display:block;overflow:visible;shape-rendering:crispEdges}
.ak-svg rect{fill:currentColor}
.ak-svg line,.ak-svg path{fill:none;stroke:currentColor;stroke-width:1}

/* 1 + 2 : rails */
.ak-rail{top:0;width:1px;height:100%}
.ak-r0{left:var(--ak-x0)}
.ak-r1{left:calc(var(--ak-x0) + 1px + (var(--ak-w) - 2px) / 3)}      /* = divider of a 3-col card row inside a 1px border */
.ak-r2{left:calc(var(--ak-x0) + 1px + (var(--ak-w) - 2px) * 2 / 3)}
.ak-r3{left:calc(var(--ak-x0) + var(--ak-w) - 1px)}
.ak-rail--dot line{stroke-dasharray:none}   /* inner rails are solid too (no dotted lines) */

/* 3 : rule */
.ak-rule{top:0;left:var(--ak-x0);width:var(--ak-w);height:1px}

/* 4 : junction marks (bottom marks only on the last section) */
.ak-lines:not(.ak-lines--end) .ak-x-bot{display:none}

/* 5 : elbows (only on --start / --end) */
.ak-elbow{display:none!important;width:24px;height:24px}   /* curved corner connectors removed */
.ak-e-t{top:1px}
.ak-e-b{bottom:1px}
.ak-e-l{left:calc(var(--ak-x0) + 1px)}
.ak-e-r{left:calc(var(--ak-x0) + var(--ak-w) - 25px);transform:scaleX(-1)}
.ak-e-b.ak-e-l{transform:scaleY(-1)}
.ak-e-b.ak-e-r{transform:scale(-1,-1)}
.ak-lines--end .ak-rule{top:auto;bottom:0}   /* closing rule sits at the very bottom instead of the top */

/* opaque cards sit above the lines (rails stay visible in the gutters around them) */
.booker,.court-list{position:relative;z-index:6}

/* responsive: inner dotted rails + elbows go away on tablets/phones */
@media (max-width:991px){
  .ak-rail--dot,.ak-elbow{display:none!important}
}
@media (max-width:575px){
  .ak-lines{--ak-w: var(--ak-w-js, calc(100% - 24px))}
}
@media print{.ak-lines{display:none}}
/* sec-story: AK lines run only down to the top of the image (.sec-story__media, aspect-ratio 2.35/1) */
.sec-story{container-type:inline-size}
.sec-story > .ak-lines{bottom:calc(100cqw / 2.35)}

/* ===========================================================
   AK LINES — extension
   -----------------------------------------------------------
   .ak-lines--behind  : lines sit BEHIND the section content (z 1, content z 2),
                        so rails run behind headings, copy, cards and images.
   .ak-hline          : horizontal hairline (position with --y), with "+" ends,
                        meets the rails exactly like .ak-rule does.
   =========================================================== */
.ak-lines--behind{ z-index:1; }
.ak-hline{ left:var(--ak-x0); width:var(--ak-w); top:var(--y,50%); height:1px; }

/* ===========================================================
   TESTIMONIALS  (.ak-testi)
   =========================================================== */
.ak-testi{
  position:relative; isolation:isolate; overflow:hidden;
  /* background:url('../imgs/hero-banner-01.jpg'); */
  padding-block:clamp(72px,9vw,130px);
  /* border-bottom:16px solid var(--olive,#56652f); */
}
.ak-testi__bg{
  position:absolute; inset:0; z-index:0; pointer-events:none;
  /* drop a photo in with:  .ak-testi{ --ak-testi-img:url('assets/imgs/your-photo.jpg') } */
 background:url('../imgs/hero-banner-01.jpg');
 background-size: cover;
}
.ak-testi__bg::after{                       /* fine grain, like the turf photos */
  content:""; position:absolute; inset:0; opacity:.22; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
.ak-testi__frame{
  position:relative; z-index:2;
  min-height:clamp(560px,52vw,680px);
  display:flex; align-items:center; justify-content:center;
}
.ak-testi__corner{
  position:absolute; margin:0; z-index:2;
  font-family:var(--at-ff-body); font-style:italic; font-weight:500;
  font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--butter,#ffffff);
}
.ak-testi__corner--tl{ top:0; left:0; }
.ak-testi__corner--bl{ bottom:0; left:0; }
.ak-testi__corner--br{ bottom:0; right:0; }

.ak-testi__card{
  position:relative; z-index:2;
  width:min(540px,100%);
  padding:clamp(28px,4vw,52px) clamp(22px,3.4vw,46px) clamp(22px,2.6vw,32px);
  text-align:center;
  background:linear-gradient(140deg, rgba(255,255,255,.10), rgba(255,255,255,.04));
  /* border:1px solid rgba(255,255,255,.22); */
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  box-shadow:0 30px 80px rgba(0,0,0,.35);
}
.ak-testi__slides{ display:grid; }
.ak-testi__slide{
  grid-area:1/1; margin:0;
  display:flex; flex-direction:column; align-items:center;
  opacity:0; visibility:hidden; transform:translateY(14px);
  transition:opacity .6s ease, transform .9s cubic-bezier(.16,1,.3,1), visibility 0s linear .6s;
}
.ak-testi__slide.is-active{
  opacity:1; visibility:visible; transform:none;
  transition:opacity .7s ease .1s, transform 1s cubic-bezier(.16,1,.3,1) .1s, visibility 0s;
}
.ak-testi__title{
  margin:0; font-family:var(--at-ff-heading); font-weight:800; font-stretch:125%;
  font-size:clamp(30px,3.7vw,54px); line-height:.98; letter-spacing:.005em;
  text-transform:uppercase; color:#fff;
}
.ak-testi__meta{
  display:flex; align-items:center; gap:14px; margin:20px 0 34px;
  font-family:var(--at-ff-body); font-style:italic; font-size:12px; color:rgba(255,255,255,.8);
}
.ak-testi__meta i{ display:block; width:64px; height:1px; background:rgba(255,255,255,.55); }
.ak-testi__quote{
  margin:0 0 16px; font-family:var(--at-ff-heading); font-style:italic; font-weight:500;
  font-size:clamp(17px,1.5vw,20px); letter-spacing:-.02em; color:#fff;
}
.ak-testi__body{
  margin:0; max-width:46ch; font-family:var(--at-ff-body); font-size: 16px; 
  color:#fff;
}
.ak-testi__who{ margin-top:22px; display:grid; gap:4px; }
.ak-testi__who strong{
  font-family:var(--at-ff-heading); font-weight:600; font-size:13px; letter-spacing:.08em;
  text-transform:uppercase; color:#fff;
}
.ak-testi__who span{ font-family:var(--at-ff-body); font-size:12px; color:rgba(255,255,255,.6); }

.ak-testi__nav{
  margin-top:26px; padding-top:18px; border-top:1px solid rgba(255,255,255,.16);
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.ak-testi__arrow{
  width:38px; height:38px; display:inline-flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,.3); border-radius:50%; background:transparent;
  color:#fff; cursor:pointer;
  transition:background-color .3s ease, border-color .3s ease, transform .3s ease;
}
.ak-testi__arrow:hover,.ak-testi__arrow:focus-visible{
  background:var(--at-theme-primary,#0a0a0a); border-color:var(--at-theme-primary,#0a0a0a);
}
.ak-testi__dots{ display:flex; gap:8px; }
.ak-testi__dot{
  width:8px; height:8px; padding:0; border-radius:50%; border:0; cursor:pointer;
  background:rgba(255,255,255,.3); transition:background-color .3s ease, transform .3s ease, width .3s ease;
}
.ak-testi__dot.is-active{ width:22px; border-radius:8px; background:var(--butter,#ffffff); }

@media (max-width:991px){
  .ak-testi__corner--tl{ display:none; }
}
@media (max-width:575px){
  .ak-testi__frame{ min-height:0; padding-block:40px 56px; }
  .ak-testi__corner--bl{ display:none; }
}

/* ===========================================================
   FOOTER — polish pass (overrides / additions to .footer-courts)
   =========================================================== */
.footer-courts{ isolation:isolate; }
.footer-courts__glow{ z-index:0; }
.footer-courts .ak-lines{ z-index:1; }
.footer-courts__inner{ z-index:2; }

/* head row */
.footer-courts__head{
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px 24px;
  margin-bottom:clamp(32px,5vw,56px);
}
.footer-courts__head .footer-courts__brand{ margin-bottom:0; }
.footer-courts__status{
  display:inline-flex; align-items:center; gap:10px;
  padding:9px 16px;
   /* border:1px solid rgba(255,255,255,.22); */
    border-radius:100px;
  background:rgb(12 12 12 / 18%);
  font-family:var(--at-ff-heading); font-weight:500; font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  color:rgba(255,255,255,.8);
}
.footer-courts__status i{
  width:7px; height:7px; border-radius:50%; background:var(--at-theme-primary,#0a0a0a);
  box-shadow:0 0 0 0 rgba(255,255,255,0.18); animation:akPulse 2.2s ease-out infinite;
}
@keyframes akPulse{ 70%{ box-shadow:0 0 0 9px rgba(255,255,255,0);} 100%{ box-shadow:0 0 0 0 rgba(255,255,255,0);} }
@media (prefers-reduced-motion:reduce){ .footer-courts__status i{ animation:none; } }

/* image caption */
.footer-courts__cap{
  position:absolute; left:16px; bottom:14px; z-index:2;
  padding:6px 10px; background:rgba(12,12,12,.6); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  font-family:var(--at-ff-body); font-style:italic; font-size:11px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--butter,#ffffff);
}

/* three columns — start on the rails */
.footer-courts__cols{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:clamp(56px,7vw,96px);
  border-top:1px solid rgba(255,255,255,.12);
}
.footer-courts__col{ display:flex; flex-direction:column; align-items:flex-start; gap:22px; padding:clamp(28px,3vw,40px) 24px 0 0; }
.footer-courts__col + .footer-courts__col{ padding-left:24px; }
.footer-courts__label{
  margin:0; font-family:var(--at-ff-heading); font-weight:500; font-size:14px !important; line-height:1;
  letter-spacing:.16em; text-transform:uppercase; color:#fff;
}
.footer-courts__nav{ display:flex; flex-direction:column; gap:12px; }
.footer-courts__nav a{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--at-ff-heading); font-weight:500; 
  font-size: 16px;
   line-height:1.1; 
  color:rgba(255,255,255,.6); transition:color .3s ease;
}
.footer-courts__nav a svg,.footer-courts__tags a svg{ transition:transform .3s ease, opacity .3s ease; }
.footer-courts__nav a svg{ opacity:0; transform:translateX(-8px); color:var(--at-theme-primary,#0a0a0a); }
.footer-courts__nav a:hover,.footer-courts__nav a:focus-visible{ color:#fff; }
.footer-courts__nav a:hover svg,.footer-courts__nav a:focus-visible svg{ opacity:1; transform:none; }

.footer-courts__tags{ display:flex; flex-wrap:wrap; gap:8px; }
.footer-courts__tags a{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 7px 12px;
    /* border: 1px solid rgba(255, 255, 255, .3); */
    border-radius: 32px;
    background: rgb(12 12 12);
    font-family: var(--at-ff-heading);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.15;
    letter-spacing: -.02em;
    color: #fff;
    transition: background-color .3s ease, border-color .3s ease;
}
.footer-courts__tags a svg{ width:11px; height:10px; transform:translate(0,0) rotate(-45deg); }
.footer-courts__tags a:hover,.footer-courts__tags a:focus-visible{
  background:var(--at-theme-primary,#0a0a0a); border-color:var(--at-theme-primary,#0a0a0a);
}
.footer-courts__tags a:hover svg{ transform:translate(2px,0) rotate(-45deg); }

.footer-courts__note{ margin:0; max-width:32ch; font-family:var(--at-ff-body); font-size: 16px; color:rgba(255,255,255,.6); }
.footer-courts__actions{ display:flex; align-items:center;
/*flex-wrap:wrap; */
gap:20px 10px; }
.footer-courts .ak-link{ color:#fff; }

/* oversized wordmark — fades out toward the bottom, rails pass behind it */
.footer-courts__word{
  margin:clamp(40px,5vw,72px) 0 0; white-space:nowrap; overflow:hidden; user-select:none;
  font-family:var(--at-ff-heading); font-stretch:112%; text-transform:uppercase;
  font-size:clamp(52px,15vw,228px); line-height:.82; letter-spacing:-.03em;
  background:linear-gradient(180deg, rgba(255,255,255,.30) 0%, rgba(255,255,255,.04) 88%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;
}

/* bottom bar */
.footer-courts__bottom{ margin-top:clamp(20px,2.4vw,32px); }
.footer-courts__copy--tag{ font-style:italic; color:var(--butter,#ffffff); opacity:.7; }

@media (max-width:860px){
  .footer-courts__cols{ grid-template-columns:1fr; }
  .footer-courts__col,.footer-courts__col + .footer-courts__col{ padding:28px 0 0; }
  .footer-courts__bottom{ flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:space-between; }
}

/* ===========================================================
   AK CURSOR + PRELOADER  (from the shared plm-* build)
   =========================================================== */
#magic-cursor{ display:none !important; }                 /* template cursor replaced */
html.plm-cursor-on, html.plm-cursor-on *{ cursor:none !important; }
#plm-cursor-trail{ position:fixed; inset:0; z-index:10000; pointer-events:none; mix-blend-mode:difference; }
.plm-cursor-dot{
  position:fixed; top:0; left:0; z-index:10001; pointer-events:none;
  width:8px; height:8px; border-radius:50%; background:#fff; mix-blend-mode:difference;
  transform:translate(-50%,-50%); transition:width .2s ease, height .2s ease;
}
.plm-cursor-ring{
  position:fixed; top:0; left:0; z-index:10001; pointer-events:none;
  width:32px; height:32px; border-radius:50%; border:1px solid rgba(255,255,255,.7);
  mix-blend-mode:difference; transform:translate(-50%,-50%);
}
html:not(.plm-cursor-on) #plm-cursor-trail,
html:not(.plm-cursor-on) .plm-cursor-dot,
html:not(.plm-cursor-on) .plm-cursor-ring{ display:none; }

#plm-preloader{
  position:fixed; inset:0; z-index:9999; background:#f4f4f2;
  display:flex; align-items:center; justify-content:center; flex-direction:column;
}
.plm-pre-logo{
  display:flex; align-items:center; gap:10px; color:#0a0a0a;
  font-family:var(--at-ff-body,'Inter',Helvetica,Arial,sans-serif);
  font-size:15px; letter-spacing:.14em; font-weight:600;
  opacity:0; animation:plm-preFade .6s ease forwards .15s;
}
.plm-pre-logo img{
  max-width:200px;
  object-fit: cover;
}
.plm-pre-logo svg{ fill:#0a0a0a; width:18px; height:20px; }
.plm-pre-dot{
  width:6px; height:6px; border-radius:50%; background:#0a0a0a; margin-top:14px; opacity:0;
  animation:plm-preFade .6s ease forwards .15s, plm-dotPulse 1.1s ease-in-out infinite .8s;
}
@keyframes plm-preFade{ to{ opacity:1; } }
@keyframes plm-dotPulse{ 0%,100%{ transform:scale(1); opacity:1; } 50%{ transform:scale(2.4); opacity:.35; } }

/* ===========================================================
   FOOTER — ball-drop zone around the AKSPORTS wordmark
   =========================================================== */
.footer-courts__wordzone{ position:relative; overflow:hidden; padding-top:0px; margin-top:0; }
.footer-courts__wordzone .footer-courts__word{ margin-top:0; }
.aks-ball-canvas{ position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:3; }


html,body{
  background-color:var(--paper,#f5f5f5);
  background-image:linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px),linear-gradient(90deg,rgb(12 12 12 / 5%) 1px, transparent 1px);
  background-size:48px 48px;
}
.ak-lines{display:none!important}

/* ===========================================================
   FOOTER WORDMARK — full-bleed, edge to edge
   =========================================================== */
.footer-courts__wordzone{
  width:100vw; max-width:100vw;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  padding-inline:0;
}
.footer-courts__wordzone .footer-courts__word{
  display:block; width:100%; margin:0; padding:0;
  text-align:center; white-space:nowrap; overflow:visible;
  line-height:.8; letter-spacing:-.03em;
  
}


/* ===========================================================
   GRID ON EVERY WHITE SECTION  (48px lines, same as the body)
   =========================================================== */
main.bg-neutral-0{background-color:transparent!important}

/* About: same 5% grid line, but its colour changes with the background transition (dark line on white -> light line on olive) */
.club{
  --about-line-rgb: 12 12 12;
  background-image:
    linear-gradient(rgb(var(--about-line-rgb) / 5%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(var(--about-line-rgb) / 5%) 1px, transparent 1px);
  background-size:48px 48px;
}

/* Overview: let the grid show through the white columns */
.sec-2-ak-overview,
.sec-2-ak-overview__grid,
.sec-2-ak-overview__col--content,
.sec-2-ak-overview__col--gallery{
  background-color:transparent;
}
.sec-2-ak-overview{
  background-color:#fff;
  background-image:linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px),linear-gradient(90deg,rgb(12 12 12 / 5%) 1px, transparent 1px);
  background-size:48px 50px;
}

/* Story: replace the old 60px svg/grid with the same 48px grid */
.sec-story{
  background-color:#fff;
  background-image:linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px),linear-gradient(90deg,rgb(12 12 12 / 5%) 1px, transparent 1px);
  background-size:48px 48px;
  /* margin-top: 35px; */
}
.sec-story__lines{display:none!important}

/* Footer copyright now lives under the Surfaces tags */
.footer-courts__legal{margin-top:clamp(28px,4vw,48px);display:grid;gap:8px}
.footer-courts__legal .footer-courts__copy{margin:0}


/* ===========================================================
   BRAND PALETTE — lime var(--bw-accent) primary, black grounds, amber accent
   =========================================================== */
:root{
  --at-theme-primary:#0a0a0a;
  --ak-lime:#0a0a0a; --ak-lime-ink:#0a0a0a; --ak-amber:#0a0a0a; --ak-black:#0a0a0a;
  --butter:#0a0a0a; --ball:#0a0a0a;
  --olive:#0a0a0a; --olive-deep:#0a0a0a;
  --ink:#0c0c0c; --cream:#ffffff;
  --clay:#0a0a0a; --clay-deep:#0a0a0a;
  --line-light:rgba(12,12,12,.09);
}

/* lime buttons need black text */
.at-btn-group.btn-brand-1 .at-btn,
.at-btn-group.btn-brand-1 .at-btn-circle,
.ak-hero .sec-1-home-15__cta.at-btn,
.ak-cta, .ak-btn, .ak-services .at-btn.at-btn-primary,
.footer-courts .at-btn{ color:#0c0c0c!important; }
.at-btn-group.btn-brand-1 .at-btn svg,
.at-btn-group.btn-brand-1 .at-btn-circle svg{ color:#0c0c0c; fill:none; }
.at-btn-group.btn-brand-1 .at-btn:hover, .ak-hero .sec-1-home-15__cta.at-btn:hover{ background:#0a0a0a!important; border-color:#0a0a0a!important; color:#fff!important; }

/* arrows / links on white: darker lime for legibility */
.ak-link svg{ color:#8c8c8c; }
.ak-link:hover{ border-bottom-color:var(--bw-accent); }
.inp input:focus,.inp select:focus{ box-shadow:inset 0 -2px 0 var(--bw-accent); }
.opt input:checked + span{ background:var(--bw-accent); color:#0c0c0c; border-color:var(--bw-accent); }
.estimate div:first-child span::before{ background:var(--bw-accent); }

/* footer: black, lime + amber glow */
.footer-courts{ 
  background:#121212;
 }
.footer-courts__glow{ background:radial-gradient(90% 90% at 78% 100%, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.054) 36%, rgba(255,255,255,0) 72%); }
.footer-courts__label{ color:#fff; }
.footer-courts__nav a{ color:rgba(255,255,255,.85); }
.footer-courts__tags a{ border-color:rgba(255,255,255,.3); }
.footer-courts__cols{ border-top-color:rgb(255 255 255 / 30%); }
/* .footer-courts__word{ background:linear-gradient(180deg, rgb(255 255 255 / 52%) 0%, rgb(255 255 255 / 35%) 88%); -webkit-background-clip:text; background-clip:text; } */
.footer-courts .at-btn{ background:var(--bw-accent); border-color:var(--bw-accent); color:#0c0c0c!important; }
.footer-courts .at-btn:hover{ background:#fff!important; border-color:#fff!important; color:#0a0a0a!important; }
.footer-courts__nav a svg, .footer-courts .ak-link svg{ color:var(--bw-accent); }
.footer-courts__copy--tag{ color:var(--bw-accent); opacity:.85; }

/* testimonials: keep the dark photo, amber details, lime active dot */
.ak-testi__dot.is-active{ background:var(--bw-accent); }
.ak-testi__corner{ color:var(--bw-accent); }
.ak-testi__arrow:hover, .ak-testi__nav button:hover{ background:var(--bw-accent); border-color:var(--bw-accent); color:#0c0c0c; }

/* ===== AK MUSE — scattered-image section with scroll-drawn orange line ===== */
.ak-muse{
  --muse-bg:#fff;
  --muse-ink:#161312;
  --muse-line:#f0623c;
  position:relative;
  background-color:#fff;                       /* white, same as the previous section */
  background-image: linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px), linear-gradient(90deg, rgb(12 12 12 / 5%) 1px, transparent 1px);
  background-size: 48px 48px;
  background-position: 0 var(--gy, 0px);
  padding: 150px 0;                            /* 150px top + bottom */
  box-sizing:border-box;
  color:var(--muse-ink);
  /* overflow: hidden; */
}
.ak-muse__stage{position:relative; height:100vh; overflow:hidden}

/* top brand bar */
.ak-muse__brand{position:absolute; top:3.2%; left:50%; transform:translateX(-50%);
  display:flex; align-items:center; gap:46px; z-index:3;
  font:600 11px/1 var(--at-ff-body,"Inter",sans-serif); letter-spacing:.06em; text-transform:uppercase}
.ak-muse__brand i{display:block; width:70px; height:7px; border-top:1.5px solid currentColor; border-bottom:1.5px solid currentColor; margin-top:-2px}

/* headline */
.ak-muse__center{position:absolute; left:50%; top:50%; transform:translate(-50%,-52%);
  width:100%; text-align:center; z-index:2; pointer-events:none}
  .ak-muse__center p{
    max-width:450px;
    margin: 0 auto;
    margin-bottom: 30px;
  }
.ak-muse__title{margin-bottom:20px;
  font-size:clamp(46px,7.6vw,128px); line-height:.94; letter-spacing:-.025em; color:var(--muse-ink); text-transform:none}
.ak-muse__sub{
  /* margin:clamp(26px,5vw,64px) 0 0; */
   font:500 11px/1 var(--at-ff-body,"Inter",sans-serif)
   ;
  letter-spacing:.07em; text-transform:uppercase}

/* scattered images */
.muse-item{position:absolute; left:calc(var(--x)*1%); top:calc(var(--y)*1%); width:calc(var(--w)*1%);
  aspect-ratio:var(--r,4/5); will-change:transform; z-index:1}
.muse-item__in{position:absolute; inset:0; overflow:hidden; background:#d9d2cb}
.muse-item img{display:block; width:100%; height:100%; object-fit:cover}
.muse-item svg{display:block}
.muse-item__cap{position:absolute; left:0; top:calc(100% + 14px); display:flex; gap:clamp(24px,3.4vw,50px);
  white-space:nowrap;font-size: 16px; letter-spacing:.05em; text-transform:uppercase}
.muse-item__cap::before{content:""; width:9px; height:1.5px; background:currentColor; margin-top:4px}
.muse-art{display:grid; place-items:center; width:100%; height:100%; background:var(--c)}
.muse-art svg{width:78%; height:78%; fill:none; stroke:rgba(255,255,255,.88); stroke-width:1.4}

/* orange line (sits above the next section so it can touch it) */
.ak-muse__line{position:absolute; left:0; top:0; width:100%; overflow:visible; z-index:20; pointer-events:none}
.ak-muse__line path{
  fill:none;
   /* stroke:var(--muse-line); */
   stroke:var(--bw-accent);
    stroke-width:2.2;
     stroke-linecap:round;
      stroke-linejoin:round
    }
.ak-muse__line circle{
  /* fill:var(--muse-line); */
  fill:var(--bw-accent);
   opacity:0; 
   transition:opacity .25s ease}
.ak-muse__line.is-done circle{opacity:1}

@media (max-width:767px){
  .ak-muse{min-height:560px}
  .ak-muse__brand{gap:22px}
  .muse-item{width:calc(var(--w)*1.9%)}
  .muse-item.muse-hide-sm{display:none}
  .muse-item__cap{display:none}
  .ak-muse__title{font-size:clamp(40px,12vw,64px)}
}
@media (prefers-reduced-motion:reduce){.muse-item{will-change:auto}}

/* ===========================================================
   FOOTER — layout: text + overlapping heading (left), image (centre),
   quick links + contact details (right), copyright row, big word, back-to-top bar.
   Ball canvas / wordmark rules above are untouched.
   =========================================================== */
.footer-courts .footer-courts__top{
  --ft-h:clamp(320px,31vw,440px);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr);
  column-gap:32px; align-items:start; min-height:0;
}
.footer-courts .footer-courts__content{ grid-column:1; grid-row:1; min-height:var(--ft-h); z-index:3; }
.footer-courts .footer-courts__media{
  grid-column:2; grid-row:1; position:relative; z-index:1;
  top:auto; right:auto; width:100%; height:var(--ft-h);
}
.footer-courts .footer-courts__heading{ font-size:clamp(32px,5.2vw,72px); margin-top:0; padding-top:32px; }
.footer-courts .footer-courts__side{
  grid-column:3; grid-row:1; z-index:2; display:grid; gap:clamp(26px,3.4vw,40px); align-content:start; min-width:0;
}
.footer-courts__qnav{ display:grid; gap:16px; }
.footer-courts__pills{ display:flex; flex-wrap:wrap; gap:8px; }
.footer-courts__pills a{
  display:inline-flex; align-items:center; padding:8px 18px; border:1px solid rgba(255,255,255,.35); border-radius:999px;
  font-family:var(--at-ff-heading); font-size:15px; line-height:1.1; color:#fff;
  transition:background-color .3s ease,border-color .3s ease,color .3s ease;
}
.footer-courts__pills a:hover,.footer-courts__pills a:focus-visible{ background:var(--bw-accent); border-color:var(--bw-accent); color:#0c0c0c; }

.footer-courts__info{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 24px; }
.footer-courts__info span{
  display:block; margin-bottom:8px; font-family:var(--at-ff-body); font-size:12px; letter-spacing:.04em; color:rgba(255,255,255,.45);
}
.footer-courts__info p{ margin:0; font-family:var(--at-ff-body); font-size:16px; line-height:1.4; color:#fff; overflow-wrap:anywhere; }
.footer-courts__info a{ color:inherit; transition:color .25s ease; }
.footer-courts__info a:hover{ color:var(--bw-accent); }

.footer-courts__meta{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 24px;
  margin-top:clamp(28px,3.4vw,44px); padding-top:20px; border-top:1px solid rgb(255 255 255 / 18%);
}
.footer-courts__meta .footer-courts__copy{ font-size:15px !important; }

/* back-to-top bar */
.footer-courts__totop{
  display:flex; align-items:center; justify-content:space-between; width:100%;
  margin:clamp(14px,2vw,22px) 0 clamp(18px,2.4vw,30px); padding:18px 20px 18px 26px;
  border:0; border-radius:22px; background:rgba(255,255,255,.07); color:rgba(255,255,255,.8); cursor:pointer;
  font-family:var(--at-ff-body); font-size:15px; text-align:left;
  transition:background-color .3s ease,color .3s ease;
}
.footer-courts__totop i{
  display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:#fff; color:#0c0c0c;
  transition:transform .35s cubic-bezier(.22,1,.36,1), background-color .3s ease;
}
.footer-courts__totop:hover{ background:rgba(255,255,255,.12); color:#fff; }
.footer-courts__totop:hover i{ transform:translateY(-3px); background:var(--bw-accent); }
.footer-courts__totop:focus-visible{ outline:2px solid var(--bw-accent); outline-offset:3px; }

@media (max-width:991px){
  .footer-courts .footer-courts__top{ grid-template-columns:1fr; row-gap:32px; }
  .footer-courts .footer-courts__content{ grid-column:1; grid-row:auto; min-height:0; }
  .footer-courts .footer-courts__heading{ width:auto; max-width:100%; font-size:clamp(30px,7vw,48px); padding-top:24px; margin-top:24px; }
  .footer-courts .footer-courts__media{ grid-column: 1;
        grid-row: auto;
        height: 150px;
        aspect-ratio: 16 / 10; }
  .footer-courts .footer-courts__side{ grid-column:1; grid-row:auto; }
}
/* @media (max-width:575px){
  .footer-courts__info{ grid-template-columns:1fr; }
} */
/* ---------- end FOOTER layout ---------- */

@media screen and (min-width:601px){
    .sm-block{
        display:none !important;
    }
}
@media screen and (max-width:600px){
    .sm-none{
        display:none !important;
    }
    .club-grid{
        gap: 0 !important;
    }
    .club .club-cta {
 
    gap: 7px !important;

}
.ak-marquee__group li {
    font-size: 20px !important;
   
}
.faq__help{
    padding-top: 0 !important;
    border-top: none !important;
}
    /* Layout for showing both CTA buttons in a single row */
.ak-services__cta-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap; /* Prevents overflow on very small mobile screens */
  gap: 20px;       /* Distance between the two buttons */
  margin-top: 20px; /* Optional spacing from elements above */
}

/* Ensure link elements inline align nicely */
.ak-services__cta-actions .at-btn,
.ak-services__cta-actions .ak-link {
  display: inline-flex;
  align-items: center;
}
  .ak-services__intro .ak-mslot .portfolio-text {
    display: block;
    width: 47px !important;
    height: 47px !important;
    max-height: none;
    object-fit: contain;
}
.at-btn.ak-btn-orange {
    height: 40px !important;
    padding: 0 7px !important;
}

.at-btn {
    font-size: 13px !important;
    padding: 10px 10px !important;
  
}
.footer-courts__head {
    margin-bottom: 10px !important;
}
.book.ak-quote .estimate div {
    padding: 10px 15px 10px !important;
}
.book-intro {
    display: grid;
    gap: 7px !important;
 
}
.book-intro .ak-desc {
    max-width: 40ch;
    margin-bottom: 15px;
}
.sec-2-ak-overview__text-col {
    padding: 0 !important;
}
.sec-2-ak-overview__heading {
    grid-row: 2;
    margin: 0;
    padding: 10px 15px 10px !important;
}
.sec-2-ak-overview__content-row {
    gap: 0 !important;
    /* padding: 32px 56px 48px; */
}
.ak-link .ak-span-link{
  font-size: 13px !important;
}
.sec-2-ak-overview__info{
    height: fit-content !important;
        padding-top: 10px !important;
}
.sec-2-ak-overview__info1 {
    height: fit-content !important;
    display: flex;
    padding: 40px 0 0 !important;
    justify-content: center;
    flex-direction: column;
}
.cta{
  margin-bottom: 70px !important;
}

.sec-story__media {
    position: relative;
    height: 400px;
    width: 100%;
    /* aspect-ratio: 2.35 / 1; */
    overflow: hidden;
}
.sx-phil__h{
  max-width: 100% !important;
}
.sx-phil__thumb{
  bottom: 0 !important;
}
    .courts.ak-services {
        min-height: 0;
        padding-bottom: 0 !important;
    }
    .sx-head {
        grid-template-columns: 1fr;
        min-height: 0;
        row-gap: 18px;
        margin-top: 10px;
        padding-bottom: 30px !important;
    }
    .sec-story__slider, .sec-story__slide{
      padding-top: 0 !important;
    }
  
}

/* =====================================================================
   PAGE-SPECIFIC STYLES — moved from <style> blocks in index.html
   Kept in their original document order so the cascade is unchanged.
   Image paths are relative to this file (assets/css/).
   ===================================================================== */

/* ---------- 01. ak-footer-reveal ---------- */
/* ===========================================================
   FOOTER REVEAL — the footer sits behind the page, stuck to the bottom of
   the screen (position: sticky; bottom: -1px). The page (main) is solid and
   sits on top, so scrolling to the end lifts it away like a curtain.
   =========================================================== */
#smooth-content > main.bg-neutral-0 {
  position: relative;
  z-index: 2;
  /* main was transparent over the body; make it solid with the SAME paper + 48px grid so nothing looks different */
  background-color: var(--paper, #f5f5f5) !important;
  background-image:
    linear-gradient(rgb(12 12 12 / 5%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(12 12 12 / 5%) 1px, transparent 1px);
  background-size: 48px 48px;
}
#smooth-content > .footer-courts {
  position: sticky;
  bottom: -1px;          /* -1px = no hairline gap at the bottom edge (JS lowers it only if the footer is taller than the screen) */
  z-index: 1;
}
/* the footer is already in place when the curtain lifts, so its entrance animations are shown straight away */
#smooth-content > .footer-courts .at_fade_anim,
#smooth-content > .footer-courts .ak-reveal {
  opacity: 1 !important;
  transform: none !important;
  translate: none !important;
  visibility: visible !important;
}

/* ---------- 02. ak-additions ---------- */
/* ===========================================================
   AK ADDITIONS  (loaded last, only adds — nothing above is edited)
   1 Trust strip  2 FAQ  3 Contact CTA  4 Mobile ball support
   =========================================================== */

/* ---------- 1. TRUST STRIP — two counter-moving rows of client plates ---------- */
.ts{ position:relative; display:grid; gap:clamp(10px,1.4vw,18px); margin-top:clamp(36px,5vw,64px); }
.ts__row{
  position:relative; overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);
}
.ts__row--rev:not(.is-built){ display:none; }
.ts__track{ display:flex; width:max-content; animation:tsRun var(--ts-speed,52s) linear infinite; will-change:transform; }
.ts__row--rev .ts__track{ animation-direction:reverse; }
.ts__group{ display:flex; flex:none; gap:clamp(10px,1.4vw,18px); margin:0; padding:0 clamp(10px,1.4vw,18px) 0 0; list-style:none; }
@keyframes tsRun{ to{ transform:translate3d(-50%,0,0); } }
.ts__row:hover .ts__track{ animation-play-state:paused; }
.ts.is-off .ts__track{ animation-play-state:paused; }

.ts__item{
  position:relative; flex:none; display:flex; align-items:center; justify-content:center;

  /* min-width:clamp(160px,16vw,224px); 
  height:clamp(72px,7.4vw,100px); */
      min-width: clamp(160px, 16vw, 170px);
    height: clamp(72px, 7.4vw, 80px);
   padding:0 24px;
  /* background:rgba(255,255,255,.78); border:1px solid rgba(12,12,12,.13); */
  transition:background-color .4s ease, border-color .4s ease, transform .6s cubic-bezier(.16,1,.3,1);
}
/* court-corner ticks, they light up in black on hover */
/* .ts__item::before,.ts__item::after{
  content:""; position:absolute; width:12px; height:12px; border:1.5px solid transparent; pointer-events:none;
  transition:border-color .4s ease, width .4s ease, height .4s ease;
} */
.ts__item::before{ top:-1px; left:-1px; border-top-color:rgba(12,12,12,.35); border-left-color:rgba(12,12,12,.35); }
.ts__item::after{ right:-1px; bottom:-1px; border-bottom-color:rgba(12,12,12,.35); border-right-color:rgba(12,12,12,.35); }
.ts__item:hover{ background:#fff; border-color:rgba(10,10,10,.6); transform:translateY(-3px); }
.ts__item:hover::before,.ts__item:hover::after{ width:20px; height:20px; border-color:#0a0a0a; }
.ts__idx{ position:absolute; top:9px; left:12px; font:500 10px/1 var(--at-ff-body); letter-spacing:.1em; color:#9a9a9a; }
.ts__item img{
  display:block; max-width:min(150px,100%);
   /* max-height:34px; */
   max-height:55px;
   width:auto; height:auto; object-fit:contain;
  filter:grayscale(1); opacity:.62; transition:filter .4s ease, opacity .4s ease;
}
.ts__item:hover img{ filter:none; opacity:1; }
/* Govt. College Bilaspur logo is a wide, fine-print mark: give it more width (height follows the aspect ratio) so it reads as large as the JSW logo */
.ts__item img[src*="ak-client-l-03"]{ width:280px; max-width:none; height:auto; max-height:none; }
.ts__name{ display:none; font:500 15px/1.1 var(--at-ff-heading); font-stretch:108%; text-transform:uppercase; letter-spacing:.02em; color:#939393; text-align:center; }
/* .ts__item.no-logo img{ display:none; } */
.ts__item.no-logo .ts__name{ display:none; }

@media (max-width:767.98px){
  .ts__item{ min-width:190px; height:68px; padding:0 16px; }
  /* .ts__item img{ max-height:28px; max-width:96px; } */
  .ts__item img[src*="ak-client-l-03"]{
     /* width:118px;  */
    max-width:none; max-height:none; }
  .ts__row{ -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%); mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%); }
}
@media (prefers-reduced-motion:reduce){
  .ts__track{ animation:none; }
  .ts__row{ overflow-x:auto; -webkit-mask-image:none; mask-image:none; }
}

/* ---------- 2. FAQ ---------- */
.faq{ position:relative; }
.faq__grid{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:clamp(36px,7vw,112px); align-items:start; }
.faq__side .ak-desc{ margin-top:22px; max-width:34ch; }
.faq__tabs{ display:flex; flex-wrap:wrap; gap:8px; margin:30px 0 0; padding:0; list-style:none; }
.faq__tab{
  appearance:none; -webkit-appearance:none; cursor:pointer; background:transparent; color:#1e1e1e;
  border:1px solid rgba(12,12,12,.22); padding:11px 16px; border-radius:0;
  font-size:14px; letter-spacing:.08em; white-space:nowrap;
  transition:background-color .3s ease, border-color .3s ease, color .3s ease;
}
.faq__tab:hover{ border-color:#0a0a0a; }
.faq__tab[aria-pressed="true"]{ background:#0a0a0a; border-color:#0a0a0a; color:#fff; }
.faq__help{ display:grid; justify-items:start; gap:14px; margin-top:clamp(28px,4vw,48px); padding-top:22px; border-top:1px solid rgba(12,12,12,.14); }
.faq__help p{ margin:0; font:500 15px/1.4 var(--at-ff-body); color:#666; }

.faq__list{ --faq-gap:clamp(14px,2.2vw,28px); border-top:1px solid rgba(12,12,12,.16); position:relative; z-index:6; }
.faq__item{ position:relative; border-bottom:1px solid rgba(12,12,12,.16); padding-left:clamp(12px,1.4vw,18px); }
.faq__item::before{
  content:""; position:absolute; left:0; top:-1px; bottom:-1px; width:2px; background:#0a0a0a;
  transform:scaleY(0); transform-origin:top; transition:transform .6s cubic-bezier(.16,1,.3,1);
}
.faq__item.is-open::before{ transform:scaleY(1); }
.faq__q{ margin:0; }
.faq__btn{
  display:grid; grid-template-columns:32px minmax(0,1fr) 38px; align-items:center; gap:var(--faq-gap);
  width:100%; margin:0; padding:15px; text-align:left;
  background:none; border:0; border-radius:0; cursor:pointer; color:inherit; font:inherit;
  -webkit-tap-highlight-color:transparent;
}
.faq__btn:focus-visible{ outline:2px solid #0a0a0a; outline-offset:4px; }
.faq__n{ font:500 13px/1 var(--at-ff-body); letter-spacing:.08em; color:#8a8a8a; font-variant-numeric:tabular-nums; transition:color .4s ease; }
.faq__t{
    font-family: var(--at-ff-heading);
    font-stretch: 108%;
    /* text-transform: uppercase; */
    font-weight: normal;
    font-size: 20px;
    line-height: 1;
    letter-spacing: -.005em;
    color: #1e1e1e;
    transition: transform .6s cubic-bezier(.16, 1, .3, 1);
}
@media (hover:hover){ .faq__btn:hover .faq__t{ transform:translateX(8px); } }
.faq__i{
  position:relative; width:38px; height:38px; border:1px solid rgba(12,12,12,.25); border-radius:50%; color:#1e1e1e;
  transition:background-color .4s ease, border-color .4s ease, color .4s ease, transform .6s cubic-bezier(.16,1,.3,1);
}
.faq__i::before,.faq__i::after{
  content:""; position:absolute; left:50%; top:50%; width:12px; height:1.5px; background:currentColor;
  translate:-50% -50%; transition:rotate .5s cubic-bezier(.16,1,.3,1);
}
.faq__i::after{ rotate:90deg; }
.faq__item.is-open .faq__i{ background:#0a0a0a; border-color:#0a0a0a; color:#fff; transform:rotate(180deg); }
.faq__item.is-open .faq__i::after{ rotate:0deg; }
.faq__item.is-open .faq__n{ color:#0a0a0a; }

/* answers are open without JS; the collapse only exists once the script marks the section ready */
.faq__a{ display:grid; grid-template-rows:1fr; }
.faq__a-in{ min-height:0; overflow:hidden; }
.faq__a-in p{
  margin:0; max-width:64ch; font:400 17px/1.6 var(--at-ff-body); color:rgba(30,30,30,.74);
  padding:0 calc(38px + var(--faq-gap)) clamp(22px,2.6vw,32px) calc(32px + var(--faq-gap));
}
.faq.is-ready .faq__a{ grid-template-rows:0fr; transition:grid-template-rows .65s cubic-bezier(.16,1,.3,1); }
.faq.is-ready .faq__item.is-open .faq__a{ grid-template-rows:1fr; }
.faq.is-ready .faq__a-in p{ opacity:0; transform:translateY(10px); transition:opacity .35s ease, transform .6s cubic-bezier(.16,1,.3,1); }
.faq.is-ready .faq__item.is-open .faq__a-in p{ opacity:1; transform:none; transition-delay:.12s; }
.faq__item[hidden]{ display:none; }

@media (max-width:991.98px){
  .faq__grid{ grid-template-columns:minmax(0,1fr); }
  .faq__side .ak-desc{ max-width:52ch; }
}
@media (max-width:575.98px){
  .faq__btn{ grid-template-columns:26px minmax(0,1fr) 34px; }
  .faq__i{ width:34px; height:34px; }
  .faq__a-in p{ font-size:16px; padding:0 0 22px calc(26px + var(--faq-gap)); }
  .faq__tabs{ flex-wrap:nowrap; overflow-x:auto; margin-inline:-12px; padding:0 12px 4px; scrollbar-width:none; }
  .faq__tabs::-webkit-scrollbar{ display:none; }
  .faq__tab{ flex:none; }
}
@media (prefers-reduced-motion:reduce){
  .faq.is-ready .faq__a, .faq.is-ready .faq__a-in p, .faq__item::before, .faq__i, .faq__t{ transition:none !important; }
}

/* ---------- 3. CONTACT CTA — dark call-to-action panel on top of the enquiry section ---------- */
/* ---------- CONTACT CTA — background image with dark overlay ---------- */
.cta {
  position: relative;
  z-index: 6;
  overflow: hidden;
  isolation: isolate;
  color: #fff;

  /* Background image with a dark overlay */
  background:
    linear-gradient(
      110deg,
      rgba(8, 10, 9, 0.88) 0%,
      rgba(8, 10, 9, 0.78) 48%,
      rgba(8, 10, 9, 0.62) 100%
    ),
    url("../imgs/aerial-football.jpg") center / cover no-repeat;

  margin-bottom: 150px;

  /* Slightly reduce overall section height */
  padding: clamp(28px, 3.5vw, 52px)
           clamp(22px, 4vw, 64px) 0;
}
.cta__grid{
  position:absolute; inset:0; z-index:-2; pointer-events:none;
  /* background-image:linear-gradient(rgb(255 255 255 / 5%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 5%) 1px,transparent 1px);
  background-size:48px 48px; */
}
/* .cta__glow{
  position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:radial-gradient(70% 90% at 92% 100%, rgba(255,255,255,.10) 0%, rgba(255,255,255,.04) 40%, rgba(255,255,255,0) 72%);
} */
.cta__court{ position:absolute; inset:0; width:100%; height:100%; color:#fff; opacity:0; z-index:-1; pointer-events:none; }
.cta__court .l{ fill:none; }
.ak-js .cta__court .l{
  stroke-dasharray:1; stroke-dashoffset:1;
  transition:stroke-dashoffset 1.8s cubic-bezier(.65,0,.35,1) calc(.35s + var(--k,0) * .12s);
}
.ak-js .cta.is-in .cta__court .l{ stroke-dashoffset:0; }

.cta__body{ display:grid; grid-template-columns:minmax(0,8fr) minmax(0,5fr); gap:clamp(32px,5vw,80px); align-items:end; }
.cta__eyebrow{ margin:0 0 20px; font:500 15px/1.3 var(--at-ff-body); color:#fff; }
.cta .cta__title{
  margin:0; color:#fff; font-size:clamp(38px,5vw,84px); line-height:.94; letter-spacing:.005em;
}
.cta .cta__title .dim{ color:rgba(255,255,255,.55); }
.cta__copy{ margin:clamp(20px,2.4vw,30px) 0 0; max-width:46ch; font-size:16px; color:rgba(255,255,255,.74); }
.cta__actions{ display:flex; flex-wrap:wrap; align-items:center; gap:20px 28px; margin-top:clamp(24px,3vw,38px); }
.cta .ak-link{ color:#fff; }
.cta .ak-link svg{ color:#fff; }

.cta__channels{ display:grid; margin:0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.22); }
.cta__ch{
  position:relative; display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:14px;
  padding:clamp(16px,1.7vw,22px); border-bottom:1px solid rgba(255,255,255,.22);
  color:#fff; text-decoration:none; overflow:hidden; isolation:isolate;
}
.cta__ch::before{ content:""; position:absolute; inset:0; z-index:-1; background:#fff; transform:scaleX(0); transform-origin:left; transition:transform .55s cubic-bezier(.16,1,.3,1); }
.cta__ch i{ font:500 12px/1 var(--at-ff-body); font-style:normal; letter-spacing:.1em; color:rgba(255,255,255,.55); transition:color .4s ease, translate .5s cubic-bezier(.16,1,.3,1); }
.cta__ch small{ display:block; margin-bottom:5px; font:500 11px/1 var(--at-ff-body); letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.55); transition:color .4s ease; }
.cta__ch b{ display:block; font:normal clamp(18px,1.8vw,18px)/1.1 var(--at-ff-heading); font-stretch:108%;
   /* text-transform:uppercase; */
    letter-spacing:.005em; overflow-wrap:anywhere; transition:color .4s ease, translate .5s cubic-bezier(.16,1,.3,1); }
.cta__ch svg{ color:#fff; transition:color .4s ease, translate .5s cubic-bezier(.16,1,.3,1), rotate .5s cubic-bezier(.16,1,.3,1); }
@media (hover:hover){
  a.cta__ch:hover::before,a.cta__ch:focus-visible::before{ transform:scaleX(1); }
  a.cta__ch:hover b,a.cta__ch:focus-visible b{ color:#000; translate:10px 0; }
  a.cta__ch:hover small,a.cta__ch:hover i,a.cta__ch:focus-visible small,a.cta__ch:focus-visible i{ color:rgba(0,0,0,.62); }
  a.cta__ch:hover svg,a.cta__ch:focus-visible svg{ color:#000; translate:4px 0; rotate:-45deg; }
}
a.cta__ch:focus-visible{ outline:2px solid #fff; outline-offset:-2px; }
.cta__ch--static svg{ display:none; }

/* the ball rolls back and forth along a court baseline */
.cta__lane{ position:relative; height:58px; margin:clamp(30px,4vw,56px) calc(-1 * clamp(22px,4vw,64px)) 0; }
.cta__lane::before{ content:""; position:absolute; left:0; right:0; bottom:10px; height:0; border-top:1px dashed rgba(255,255,255,.35); }
.cta__roll{ position:absolute; left:clamp(22px,4vw,64px); bottom:10px; width:calc(100% - 2 * clamp(22px,4vw,64px) - 44px); height:44px; animation:ctaSlide 9s cubic-bezier(.45,0,.55,1) infinite alternate; will-change:transform; }
.cta__ball{ display:block; width:44px; height:44px; object-fit:contain; animation:ctaSpin 9s cubic-bezier(.45,0,.55,1) infinite alternate; will-change:transform; filter:drop-shadow(0 6px 6px rgba(0,0,0,.45)); }
@keyframes ctaSlide{ from{ transform:translate3d(0,0,0); } to{ transform:translate3d(100%,0,0); } }
@keyframes ctaSpin{ from{ transform:rotate(0deg); } to{ transform:rotate(1800deg); } }
.cta:not(.is-live) .cta__roll,.cta:not(.is-live) .cta__ball{ animation-play-state:paused; }

@media (max-width:991.98px){
  .cta__body{ grid-template-columns:minmax(0,1fr); align-items:start; }
}
@media (max-width:767.98px){
  .cta .cta__title{ font-size:clamp(34px,10.4vw,54px); }
  .cta__ch{ grid-template-columns:28px minmax(0,1fr) auto; }
  .cta__roll{ animation-duration:7s; } .cta__ball{ animation-duration:7s; }
}
@media (prefers-reduced-motion:reduce){
  .cta__roll,.cta__ball{ animation:none; }
  .ak-js .cta__court .l{ stroke-dashoffset:0; transition:none; }
}

/* ---------- 4. MOBILE BALL JOURNEY ---------- */
/* a visible landing spot for the travelling ball in Services when the desktop one (d-none d-md-block) is hidden */
.ak-services__intro .ak-mslot{ padding-top:18px; }
.ak-services__intro .ak-mslot .portfolio-text{ display:block; width:72px; height:72px; max-height:none; object-fit:contain; }
/* more head-room in the footer wordmark zone on phones, so the balls have room to fall and bounce */
@media (max-width:767.98px){
  #aksWordZone.footer-courts__wordzone{ padding-top:0; }
  .ak-flyball{ backface-visibility:hidden; }
}

/* ---------- 03. ak-ios-scroll ---------- */
/* ===========================================================
   iPHONE / TOUCH SCROLL — touch devices only (desktop untouched)
   the huge page layer no longer carries will-change:transform (one giant GPU layer made iOS stutter)
   =========================================================== */
@media (hover:none) and (pointer:coarse){
  #smooth-content main{ will-change:auto; }
  html{ -webkit-text-size-adjust:100%; }
}

/* ---------- 04. ak-mobile-final ---------- */
/* ===========================================================
   MOBILE FINAL REFINEMENTS (phones/touch only unless stated)
   =========================================================== */
/* PRELOADER: the logo and dot stay invisible until the logo image is decoded, so the (late) image can no longer
   push the centred group around after it has started to fade in. The box is also locked against touch scrolling. */
html body #plm-preloader{ touch-action:none; overscroll-behavior:contain; -webkit-tap-highlight-color:transparent; }
html body #plm-preloader .plm-pre-logo,
html body #plm-preloader .plm-pre-dot{ animation-play-state:paused; }
html.plm-ready body #plm-preloader .plm-pre-logo,
html.plm-ready body #plm-preloader .plm-pre-dot{ animation-play-state:running; }
html body #plm-preloader .plm-pre-logo img{ display:block; width:min(200px,56vw); max-width:none; height:auto; }

/* HERO (phones): the photo card is as tall as the LARGEST viewport (lvh), so no strip is left under it once Safari's
   toolbar collapses; the content keeps using the SMALL viewport (svh) for its centring, so nothing hides behind the
   toolbar and the court slot never moves when the toolbar shows or hides. Both units are static, so no re-layout. */
@media (max-width:767.98px){
  @supports (height:100lvh){
    html body .ak-hero .sec-1-home-15__card,
    html body section.ak-court-hero.akc-on .sec-1-home-15__card{ min-height:100lvh; }
    html body .ak-hero .ak-hero__content{ padding-bottom:calc(48px + (100lvh - 100svh)); }
  }
}

/* TOUCH: lighter back-to-top footballer (one drop-shadow instead of three re-painted every animation frame) */
@media (hover:none) and (pointer:coarse){
  .ak-kicker svg{ filter:drop-shadow(0 0 1px rgba(255,255,255,.9)); }
  #smooth-content main{ will-change:auto; }
}

/* ---------- 05. akc-style ---------- */
/* ===========================================================
   AK HERO COURT — scroll-driven 3D court (hard court -> padel -> turf)
   Pure CSS 3D + one small script. Everything is scoped to section.ak-court-hero.
   The court only exists once the script adds .akc-on, so without JS the hero is exactly as before.
   =========================================================== */
section.ak-court-hero{ position:relative; }
section.ak-court-hero.akc-on{ height:var(--akc-h, 380vh); }
section.ak-court-hero.akc-on .akc-pin{ position:sticky; top:0; }

/* the photo steps back, a stage-coloured glow sits behind the court */

/* ---- stage + camera ---- */
.akc-stage{ position:absolute; inset:0; z-index:3; pointer-events:none; perspective:1900px; perspective-origin:50% 34%; }
.akc-cam{ position:absolute; left:var(--akc-cx,64%); top:var(--akc-cy,48%); width:0; height:0; transform-style:preserve-3d; }
.akc-world{
   position:absolute;
    left:-200px;
     top:-240px; 
     width:200px;
      height:200px; 
      transform-style:preserve-3d;
       transform-origin:200px 340px 0;
        will-change:transform;
       }
.akc-world *{ box-sizing:border-box; }
.akc-w3{ position:absolute; left:0; top:0; width:0; height:0; transform-style:preserve-3d; }

/* ground shadow: soft penumbra + tight contact shadow */
.akc-shadow{ position:absolute; left:-10px; top:-10px; width:420px; height:700px; border-radius:30px; background:rgba(0,0,0,.52); filter:blur(30px); transform:translate3d(38px,46px,-24px); }
.akc-shadow::after{ content:""; position:absolute; inset:10px 4px 2px 10px; border-radius:10px; background:rgba(0,0,0,.6); filter:blur(8px); }

/* slab: top face is ONE flat element, so apron / surface / lines / stripes paint in order (no z-fighting) */
.akc-world{ --akc-grain:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix values='1.8 0 0 0 -.4 1.8 0 0 0 -.4 1.8 0 0 0 -.4 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E"); }
.akc-world{ --akc-mottle:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='360'%3E%3Cfilter id='m' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.011 .016' numOctaves='3' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix values='2.2 0 0 0 -.55 2.2 0 0 0 -.55 2.2 0 0 0 -.55 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='360' height='360' filter='url(%23m)'/%3E%3C/svg%3E"); }
.akc-top{ position:absolute; left:0; top:0; width:400px; height:680px; background:#4a8a68; border-radius:2px; overflow:hidden;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14), inset 0 0 34px rgba(0,0,0,.34); }
/* apron: fine grain + large soft mottling (wear, tonal drift) */
.akc-top::before{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.6; mix-blend-mode:soft-light; background-image:var(--akc-grain), var(--akc-mottle); background-size:160px 160px, 360px 360px; }
/* lighting: four soft floodlight pools + a gentle falloff from the key light (top-left) */
.akc-top::after{ content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(circle 210px at 118px 150px, rgba(255,246,222,.15), transparent),
    radial-gradient(circle 210px at 282px 150px, rgba(255,246,222,.13), transparent),
    radial-gradient(circle 210px at 118px 530px, rgba(255,246,222,.13), transparent),
    radial-gradient(circle 210px at 282px 530px, rgba(255,246,222,.11), transparent),
    linear-gradient(120deg, rgba(255,255,255,.07) 0%, transparent 40%, rgba(0,0,0,.24) 100%); }
/* playing surface: acrylic / turf texture, mottled wear, darker where it meets the apron */
.akc-surf{ position:absolute; left:34px; top:36px; width:332px; height:608px; background:#2f6db3; box-shadow:0 0 0 1px rgba(0,0,0,.26), 0 0 0 3px rgba(255,255,255,.035); }
.akc-surf::before{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.72; mix-blend-mode:overlay;
  background-image:var(--akc-grain), var(--akc-mottle); background-size:120px 120px, 300px 300px; }
.akc-surf::after{ content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(70% 15% at 50% 12%, rgba(255,255,255,.08), transparent 70%), radial-gradient(70% 15% at 50% 88%, rgba(0,0,0,.14), transparent 70%), linear-gradient(90deg, rgba(0,0,0,.14), transparent 14%, transparent 86%, rgba(0,0,0,.14)), linear-gradient(0deg, rgba(0,0,0,.10), transparent 12%, transparent 88%, rgba(0,0,0,.10)); }
/* mown bands (turf only): wide bands, so they never alias */
.akc-stripes{ position:absolute; left:34px; top:36px; width:332px; height:608px; opacity:0;
  background:repeating-linear-gradient(0deg, rgba(255,255,255,.15) 0 50.67px, rgba(0,0,0,.13) 50.67px 101.33px); }
.akc-ln{ position:absolute; left:0; top:0; width:400px; height:680px; fill:none; stroke:#f6f6f0; stroke-width:2.3; stroke-linecap:square; opacity:0; }
/* slab edge: dark poured concrete, lit from the top-left */
.akc-side{ position:absolute; height:18px; background:linear-gradient(#a2a7ab, #5c6165); transform-origin:50% 0; box-shadow:inset 0 1px 0 rgba(255,255,255,.28); }
.akc-side--b,.akc-side--t{ width:400px; left:0; transform:rotateX(-90deg); }
.akc-side--b{ top:680px; background:linear-gradient(#868b8f, #484d51); } .akc-side--t{ top:0; background:linear-gradient(#979ca0, #565b5f); }
.akc-side--l,.akc-side--r{ width:680px; left:0; top:0; transform-origin:0 0; background:linear-gradient(#8f9498, #52575b); }
.akc-side--l{ transform:rotateZ(90deg) rotateX(-90deg); }
.akc-side--r{ transform:translateX(400px) rotateZ(90deg) rotateX(-90deg); background:linear-gradient(#b0b5b9, #6a6f73); }

/* upright planes (nets, glass, posts) stand on their bottom edge */
.akc-up{ position:absolute; transform-origin:50% 100%; transform:rotateX(-90deg); }
.akc-net{ background:
    linear-gradient(#fbfbfb 0 3px, rgba(0,0,0,.38) 3px 4px, transparent 4px),
    linear-gradient(90deg, transparent calc(50% - 1.5px), rgba(255,255,255,.95) calc(50% - 1.5px) calc(50% + 1.5px), transparent calc(50% + 1.5px)),
    repeating-linear-gradient(0deg, rgba(10,14,12,.55) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(90deg, rgba(10,14,12,.55) 0 1px, transparent 1px 5px),
    rgba(255,255,255,.07); transform-origin:50% 100%; }
.akc-grow{ transform-origin:50% 100%; }
.akc-wl{ position:absolute; display:flex; transform-origin:50% 100%; transform:rotateX(-90deg); }
.akc-gi{ flex:1; display:flex; transform-origin:50% 100%; }
/* tempered glass: steel frame, faint tint, a soft diagonal reflection */
.akc-gp{ flex:1; border-left:3px solid rgba(232,238,242,.92); border-top:3px solid #eef2f4; border-bottom:2px solid rgba(255,255,255,.55);
  background:
    linear-gradient(112deg, transparent 0 28%, rgba(255,255,255,.20) 34% 41%, transparent 47% 100%),
    linear-gradient(180deg, rgba(170,212,226,.22), rgba(170,212,226,.07) 55%, rgba(170,212,226,.20)); }
.akc-gp:last-child{ border-right:3px solid rgba(232,238,242,.92); }
/* perimeter chain-link fence (hard court): steel posts, top rail, fine wire */
.akc-fw{ position:absolute; display:flex; transform-origin:50% 100%; transform:rotateX(-90deg); }
.akc-fi{ flex:1; transform-origin:50% 100%; border-top:3px solid rgba(188,198,205,.95); border-left:3px solid rgba(160,170,178,.95); border-right:3px solid rgba(160,170,178,.95);
  background:
    linear-gradient(90deg, rgba(160,170,178,.95) 0 3px, transparent 3px) 0 0 / 25% 100% repeat-x,
    repeating-linear-gradient(0deg, rgba(214,224,230,.30) 0 1px, transparent 1px 14px),
    repeating-linear-gradient(90deg, rgba(214,224,230,.30) 0 1px, transparent 1px 14px),
    rgba(196,210,220,.045); }

/* floodlights: steel masts, LED-array heads, warm-white halo */
.akc-pp{ position:absolute; width:5px; background:linear-gradient(90deg,#f6f8f9,#8b949b 58%,#5b636a); transform-origin:50% 100%; }
.akc-lamp{ position:absolute; width:36px; height:18px; left:-18px; border:2px solid #d2d8dc; border-radius:2px; transform-origin:50% 50%;
  background:radial-gradient(circle at 50% 50%, #fff 0 1.9px, rgba(255,255,255,0) 2.7px) 0 0 / 8px 7px, #7d868d;
  box-shadow:0 0 26px 8px rgba(255,247,226,.5), 0 0 6px 1px rgba(255,255,255,.9); }
/* grandstand: blue seat rows on concrete risers */

/* balls: screen-facing billboards */
.akc-b{ position:absolute; left:0; top:0; width:0; height:0; transform-style:preserve-3d; }
.akc-b img{ max-width:none; position:absolute; left:-14px; top:-14px; width:28px; height:28px; object-fit:contain; filter:drop-shadow(0 2px 3px rgba(0,0,0,.35)); }
.akc-bs{ position:absolute; left:-9px; top:-5px; width:18px; height:10px; border-radius:50%; background:rgba(0,0,0,.5); filter:blur(2px); }

/* ---- headline: three words, the active one lit; the rest outlined ---- */
section.ak-court-hero.akc-on .akc-w{ 
  display:inline-block; --a:0; 
  /* color:rgba(255,255,255,var(--a)); */
  /* color:rgba(255,255,255,.55);
  -webkit-text-stroke:1.4px rgba(255,255,255,calc(.5 - .38 * var(--a)));
   paint-order:stroke fill; */
 /* no sideways nudge on the active word: every line starts on the same left edge */
   transform:none !important; translate:none !important; margin:0 !important; padding:0 !important; text-indent:0 !important;
   will-change:transform;
    }
section.ak-court-hero.akc-on .akc-w:first-of-type{ --a:1; }

/* three supporting lines share one slot (the tallest sets the height, so nothing jumps) */
section.ak-court-hero.akc-on .akc-subs{ display:grid; }
/* section.ak-court-hero.akc-on .akc-subs > .ak-hero__sub{ grid-area:1 / 1; opacity:0; transform:translateY(12px); }
section.ak-court-hero.akc-on .akc-subs > .ak-hero__sub:first-child{ opacity:1; transform:none; } */
/* hero description is static: it no longer changes with the court slider */
section.ak-court-hero.akc-on .akc-subs > .ak-hero__sub{ opacity:1; transform:none; }
section.ak-court-hero.akc-on .akc-subs > .ak-hero__sub:not(:first-child){ display:none; }
/* HUD */
.akc-hud{ position:absolute; z-index:4; left:250px; bottom:100px; display:none; align-items:center; gap:18px;
  font:500 12px/1 var(--at-ff-body); letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.72); }
section.ak-court-hero.akc-on .akc-hud{ display:flex; }
.akc-hud b{ color:var(--ak-gold,#ffffff); font-weight:500; }
.akc-hud__bar{ width:120px; height:2px; background:rgba(255,255,255,.18); position:relative; overflow:hidden; }
.akc-hud__bar i{ position:absolute; inset:0; background:var(--ak-gold,#ffffff); transform-origin:0 50%; transform:scaleX(0); }

/* systems card follows the stage */
section.ak-court-hero.akc-on .ak-hero__systems li{ transition:opacity .35s ease; opacity:.55; }
section.ak-court-hero.akc-on .ak-hero__systems li.is-on{ opacity:1; }
section.ak-court-hero.akc-on .ak-hero__systems li.is-on .ak-hero__systems-num{ color:#fff; }

/* the right-hand aside moves to the empty top-left so the court owns the right side */
@media (min-width:1200px){
  section.ak-court-hero.akc-on .ak-hero__aside{ right:auto; left:250px; top:calc(22% - 24px); width:320px; text-align:left; }
  section.ak-court-hero.akc-on .ak-hero__aside::before{ margin:0 0 16px 0; }
}
@media (max-width:1399.98px){ .akc-hud{ left:250px; } }
@media (min-width:768px) and (max-width:1199.98px){ .akc-hud{ left:24px; } }
@media (max-width:767.98px){ section.ak-court-hero.akc-on .sec-1-home-15__card{ height:max(100svh,640px); } .akc-hud{ left:20px; gap:12px; font-size:10px; } .akc-hud__bar{ width:70px; } }
@media (prefers-reduced-motion:reduce){ .akc-world{ will-change:auto; } }

/* ---------- 06. aks-styles ---------- */
.aks{--aks-bg:url("../imgs/banner-hero.webp");position:relative;height:340vh;background:#0f2a40;color:#fff}
.aks__pin{position:sticky;top:0;height:100vh;overflow:hidden;isolation:isolate;
  background:linear-gradient(rgb(0 0 0 / 84%), rgb(0 0 0 / 88%)), var(--aks-bg) center / cover no-repeat, #000}
/* same 48px grid as the other sections (light lines because this one is dark) */
/* .aks__pin::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  --about-line-rgb:255 255 255;
  background-image:linear-gradient(rgb(var(--about-line-rgb) / 5%) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--about-line-rgb) / 5%) 1px,transparent 1px);
  background-size:48px 48px} */
.aks__logo{position:absolute;z-index:3;left:16.3vw;top:6vh;display:flex;align-items:center;gap:18px;will-change:opacity}
.aks__logo img{display:block;height:clamp(40px,6.4vh,62px);width:auto}
.aks__logo::after{content:"";width:clamp(40px,8vw,140px);height:1px;background:linear-gradient(90deg,rgba(255,255,255,.4),transparent)}
.aks{--aks-iw:min(36vw,66vh);--aks-mw:calc(var(--aks-iw)*.9);--aks-ty:clamp(96px,17vh,200px)}  /* image width + the one top line shared by .aks__head and .aks__media */
.aks__head{position:absolute;z-index:3;left:16.3vw;top:var(--aks-ty);width:max-content;max-width:none;will-change:transform,opacity}
/* .aks__eyebrow{margin:0 0 14px;font-size:15px;font-weight:500;color:#fff} */
.aks .aks__title{color: #fff;
    margin: 0;
    font-family: var(--at-ff-heading, inherit);
    font-weight: normal;
    font-size: 75px;
    line-height: 1;
    }
.aks .aks__title .dim{color:rgba(255,255,255,.55);    position: relative;
    z-index: 0;}
.aks__sub{max-width:36ch;line-height:1.38;color:rgba(255,255,255,.78)}
.aks__head p:nth-child(3){
  margin:0 0 clamp(36px,9vh,96px);
}
.aks__cue{display:flex;gap:6px;margin-top:clamp(40px,10vh,90px);color:#fff}
/* right-side image: sits behind the heading (z 2 < 3) so the heading can overlap it; animated with the heading in the scroll script */
.aks__media{position:absolute;z-index:2;right:calc(5vw + var(--aks-iw)*.1);top:var(--aks-ty);width:var(--aks-mw);aspect-ratio:1/1.1;overflow:hidden;background:#1a1a1a;will-change:transform,opacity}
.aks__media img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
/* big heading: sized from the free space between its left edge and the image, so its 2nd line always runs ~8% of the image width over the image */
@media(min-width:768px) and (prefers-reduced-motion:no-preference){
  html body .aks .aks__title.akup-h2{font-size:70px !important;white-space:nowrap}
}
.aks__cue svg{width:clamp(22px,1.8vw,34px);height:25px;opacity:.25;animation:aksCue 1.8s ease-in-out infinite}
.aks__cue svg:nth-child(2){animation-delay:.2s}.aks__cue svg:nth-child(3){animation-delay:.4s}
@keyframes aksCue{0%,100%{opacity:.25}50%{opacity:1}}

.aks__grid{--w:min(1160px,90vw,112vh);position:absolute;z-index:99;left:50%;top:49%;width:var(--w);
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(32px,9vh,90px) 2.7vw;
  transform:translate(-50%,-50%) translateX(60vw);will-change:transform}
.aks__card{display:block;color:inherit;text-decoration:none;transition:opacity .5s,filter .5s}
.aks__fig{position:relative;aspect-ratio:16/9.5;border-radius:14px;overflow:hidden;background:var(--c,#183e5d);
  box-shadow:0 18px 40px rgba(0,0,0,.4);transition:box-shadow .5s,scale .6s cubic-bezier(.16,1,.3,1)}
.aks__fig img,.aks__fig video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
.aks__fig img{transition:scale 1.4s cubic-bezier(.16,1,.3,1)}
.aks__lab{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:14px}
.aks__lab i{font-style:normal;color:rgba(255,255,255,.6)}
.aks__lab b{font-size: 19px;}
.aks__lab span{margin-left:auto;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;color:#0f2a40;transition:background .3s,rotate .4s}
.aks__lab svg{width:10px;height:10px}
/* .aks__grid.has-on .aks__card:not(.is-on){opacity:.4;filter:saturate(.5)} */
.aks__card.is-on .aks__fig{scale:1.035;box-shadow:0 24px 54px rgba(0,0,0,.55),0 0 0 2px #fff}
.aks__card.is-on .aks__fig img{scale:1.1}
.aks__card.is-on .aks__lab span{background:#fff;rotate:45deg}
.aks__card:focus-visible .aks__fig{outline:2px solid #fff;outline-offset:3px}

.aks__cap{position:absolute;z-index:3;left:50%;bottom:4.5vh;width:min(1160px,90vw,112vh);translate:-50% 0;opacity:0;transition:opacity .5s;
  display:flex;align-items:baseline;gap:14px;color:rgba(255,255,255,.8)}
.aks__cap.show{opacity:1}.aks__cap b{color:#fff;font-weight:600;white-space:nowrap}
.aks__bar{position:absolute;left:0;right:0;bottom:-1.6vh;height:2px;background:rgba(255,255,255,.15)}
.aks__bar i{display:block;height:100%;width:0;background:#fff}

@media(max-width:767px),(prefers-reduced-motion:reduce){
  .aks{height:auto;padding:0px 0}
  .aks__pin{position:relative;height:auto;overflow:visible;padding: 70px 15px;}
  .aks__logo,.aks__head,.aks__grid,.aks__cap{position:relative;left:auto;top:auto;bottom:auto;translate:none;transform:none!important;width:auto;opacity:1!important}
  .aks__head{width:auto;max-width:100%}
  .aks__logo{margin-bottom:32px}.aks__head{margin-bottom:36px}.aks__cue,.aks__cap{display:none}
  .aks__sub{margin-bottom:20px}
  .aks__media{position:relative;right:auto;top:auto;translate:none;transform:none!important;width:100%;aspect-ratio:4/3;opacity:1!important;margin-bottom:36px}
  .aks__grid{--w:100%;grid-template-columns:repeat(2,1fr);gap:24px 16px}
}
@media(max-width:480px){.aks__grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.aks *{animation:none!important;transition:none!important}}
/* ===== AKS ROW — desktop: six tall glass cards in one row; the active one slides across as you scroll (JS adds .is-stack) ===== */
@media(min-width:768px) and (prefers-reduced-motion:no-preference) and (not ((hover:none) and (pointer:coarse))){ .aks{height:560vh} }
.aks__line{display:none}
.aks.is-stack .aks__line{display:block;position:absolute;z-index:98;left:var(--aks-l);right:var(--aks-l);top:var(--aks-line);height:1px;background:rgba(255,255,255,.28);opacity:0;pointer-events:none}
.aks__tick{position:absolute;top:0;left:0;width:11px;height:11px;margin:-5px 0 0 -5px;opacity:.35;transition:opacity .4s}
.aks__tick::before,.aks__tick::after{content:"";position:absolute;background:#fff}
.aks__tick::before{left:5px;top:0;width:1px;height:11px}
.aks__tick::after{left:0;top:5px;width:11px;height:1px}
.aks.is-stack .aks__grid{position:absolute;left:0;top:0;width:100%;height:100%;display:block;transform:none!important;pointer-events:none}
/* reference layout: six tall glass cards in one row. The active card is bright, the rest dim; per-card tint glow top-left. */
.aks.is-stack .aks__card{--on:0;position:absolute;left:0;top:var(--aks-top);width:var(--aks-w);height:var(--aks-h);overflow:hidden;pointer-events:auto;border-radius:12px !important;
  /* border:1px solid rgb(255 255 255 / calc(.09 + .24 * var(--on))); */
  background:linear-gradient(158deg,rgb(255 255 255 / calc(.035 + .075 * var(--on))),rgb(255 255 255 / .012) 42%,rgb(0 0 0 / .3)),
    linear-gradient(rgb(0 0 0 / .66),rgb(0 0 0 / .66)),var(--card-bg,none) var(--card-pos,center) / cover no-repeat,rgb(7 7 7);
  -webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);
  box-shadow:-22px 0 42px rgb(0 0 0 / .5);will-change:transform;backface-visibility:hidden}
/* .aks.is-stack .aks__card::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(95% 52% at 14% 0%,var(--tint,rgb(150 60 60 / .55)),transparent 72%);opacity:calc(.3 + .7 * var(--on))} */
.aks.is-stack .aks__card:nth-child(1){
  /* --tint:rgb(170 70 70 / .6); */
  --card-pos:50% 50%;
  --card-bg:url("../imgs/aks-sports-surfaces.jpg")
}
.aks.is-stack .aks__card:nth-child(2){
  /* --tint:rgb(150 150 40 / .5); */
  --card-pos:15% 50%;
  --card-bg:url("../imgs/aks-indoor.jpg")
}
.aks.is-stack .aks__card:nth-child(3){
  /* --tint:rgb(50 160 80 / .5); */
  --card-pos:50% 50%;
  --card-bg:url("../imgs/aks-newcourt.jpg")
}
.aks.is-stack .aks__card:nth-child(4){
  /* --tint:rgb(40 150 160 / .5); */
  --card-pos:50% 50%;
  --card-bg:url("../imgs/aks-multisport.webp")
}
.aks.is-stack .aks__card:nth-child(5){
  /* --tint:rgb(95 80 215 / .6); */
  --card-pos:45% 50%;
  --card-bg:url("../imgs/aks-renovation.jpg")
}
.aks.is-stack .aks__card:nth-child(6){
  /* --tint:rgb(170 60 185 / .6); */
  --card-pos:50% 50%;
  --card-bg:url("../imgs/aks-courtline.jpg")
}
.aks.is-stack .aks__card::after{content:attr(data-desc);position:absolute;z-index:2;left:var(--aks-pad,22px);right:var(--aks-pad,22px);bottom:var(--aks-pad,22px);
  font-size:clamp(12px,calc(var(--aks-w) * .045),18px);line-height:1.4;color:rgb(255 255 255 / calc(.34 + .5 * var(--on)));max-width: 270px;}
.aks.is-stack .aks__fig{display:none}
.aks.is-stack .aks__lab{position:absolute;z-index:2;left:var(--aks-pad,22px);right:var(--aks-pad,22px);top:var(--aks-pad,22px);display:block;margin:0}
.aks.is-stack .aks__lab i{display:block;margin-bottom:clamp(6px,calc(var(--aks-w) * .03),14px);font-size:clamp(14px,calc(var(--aks-w) * .07),28px);color:rgb(255 255 255 / calc(.5 + .5 * var(--on)))}
.aks.is-stack .aks__lab b{display:block;font-family:var(--at-ff-heading,inherit);font-size:clamp(20px,calc(var(--aks-w) * .092),44px);font-weight:400;line-height:1.14;color:rgb(255 255 255 / calc(.5 + .5 * var(--on)))}
.aks.is-stack .aks__lab span{display:none}

/* ---------- 07. inline block 7 ---------- */
/* AK MUSE — cleaner composition: the stage now fills the whole section, so edge images are cropped
   cleanly by the section's own top/bottom edges (no more cut lines floating in the white padding).
   Parallax still runs on every image; the clip just hides whatever drifts past the edge. */
.ak-muse{ padding:0; --muse-line:#0a0a0a; }  /* line + end dot colour */
.ak-muse .ak-muse__stage{ height:calc(100vh + 180px); min-height:680px; overflow:hidden; }
.ak-muse .muse-item__in{ box-shadow:0 18px 40px -26px rgba(12,12,12,.35); }
@media (max-width:767px){ .ak-muse .ak-muse__stage{ height:calc(100vh + 80px); min-height:560px; } }

/* ---------- 08. sx-img-fit ---------- */
/* Selected Works: project photos are real <img> tags inside .sx-fig; they fill the card like the old court artwork did */
.sx-works .sx-fig > img.sx-img{ width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; }
/* data-ak="none" only opts the photo out of the script's slide-in. The stylesheet rule  html.ak2 [data-ak]:not(.ak-in){opacity:0}
   matches ANY data-ak value, so without this the photo would stay invisible. Also keeps the card's hover zoom transition. */
html.ak2 .sx-works .sx-fig > img.sx-img[data-ak="none"]{ opacity:1; translate:none; will-change:auto; transition:transform 1.2s var(--sx-ease); }

/* ---------- 09. akg-styles ---------- */
/* All rules are scoped to .akg so nothing else on the site is touched.
   Swap the photo with:  .akg{ --akg-img:url('../imgs/your-photo.jpg') }  */
.akg{
  --akg-img:url('../imgs/hero-newww.webp');
  --akg-amber:var(--at-theme-primary,#ffffff);
  --akg-navy:9,26,44;
  --akg-w:min(440px,calc(100vw - 56px));      /* card width */
  --akg-shift:calc(var(--akg-w) * 1.04);      /* side-card offset */
  --akg-rot:30deg;
  position:relative; isolation:isolate; overflow:hidden;
  /* padding-block:clamp(64px,8vw,120px) clamp(56px,6vw,96px); */
  background:rgb(var(--akg-navy));
  color:#fff;
}

/* ---------- background: photo + navy grade + court lines ---------- */
.akg__bg{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.akg__photo{
  position:absolute; inset:-4%;
  background:var(--akg-img) center/cover no-repeat;
  animation:akgDrift 28s ease-in-out infinite alternate;
  will-change:transform;
}
@keyframes akgDrift{ from{ transform:scale(1.02) translate3d(0,0,0); } to{ transform:scale(1.12) translate3d(-1.2%,-1%,0); } }
.akg__grade{
  position:absolute; inset:0;
  background:
    radial-gradient(75% 60% at 50% 52%, rgba(var(--akg-navy),0) 0%, rgba(var(--akg-navy),.32) 100%),
    linear-gradient(180deg, rgba(var(--akg-navy),.80) 0%, rgba(var(--akg-navy),.24) 32%, rgba(var(--akg-navy),.28) 66%, rgba(var(--akg-navy),.90) 100%);
}
.akg__glow{
  position:absolute; left:50%; bottom:-18%; width:90%; height:60%; transform:translateX(-50%);
  background:radial-gradient(closest-side, rgba(255,255,255,.12), rgba(255,255,255,0));
  filter:blur(10px);
}
.akg__lines{
  position:absolute; left:50%; bottom:-6%; width:min(1500px,150%); transform:translateX(-50%);
  opacity:.16; fill:none; stroke:#fff; stroke-width:1.2; vector-effect:non-scaling-stroke;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 55%,#000 100%);
          mask-image:linear-gradient(180deg,transparent 0%,#000 55%,#000 100%);
}
.akg__lines *{ vector-effect:non-scaling-stroke; }

/* ---------- header ---------- */
.akg__frame{ position:relative; z-index:2; }
.akg__eyebrow{
  margin:0 0 18px; font-family:var(--at-ff-body); font-weight:500; font-size:15px; line-height:1.3;
  color:var(--akg-amber);
}
.akg .ak-heading{ color:#fff; }
.akg .ak-heading .dim{ color:rgba(255,255,255,.55); }

/* ---------- stage (3D coverflow) ---------- */
.akg__stage{
  position:relative; margin-top:clamp(28px,4vw,56px);
  height:var(--akg-h,460px);
  perspective:1500px; perspective-origin:50% 40%;
  touch-action:pan-y; user-select:none; -webkit-user-select:none;
  outline:none;
}
.akg__card{
  position:absolute; top:0; left:50%;
  width:var(--akg-w); margin:0 0 0 calc(var(--akg-w) / -2);
  --o:0; --a:0;
  transform:
    translate3d(calc(var(--o) * var(--akg-shift)), 0, calc(var(--a) * -140px))
    rotateY(calc(var(--o) * var(--akg-rot)))
    scale(calc(1 - var(--a) * .06));
  transform-origin:50% 50%;
  opacity:calc(1 - var(--a) * .38);
  filter:blur(calc(var(--a) * 2.4px));
  z-index:calc(10 - var(--a));
  transition:transform .9s cubic-bezier(.16,1,.3,1), opacity .7s ease, filter .7s ease;
  cursor:pointer;
}
.akg__card[data-hidden="true"]{ opacity:0; pointer-events:none; visibility:hidden; transition:transform .9s cubic-bezier(.16,1,.3,1), opacity .5s ease, filter .7s ease, visibility 0s linear .6s; }
.akg__card.is-jump{ transition:none !important; opacity:0 !important; }
.akg__card.is-active{ cursor:default; }

/* the glass itself */
.akg__glass{
  position:relative; height:100%; box-sizing:border-box;
  display:flex; flex-direction:column; align-items:center; text-align:center;
  padding:clamp(26px,3.2vw,38px) clamp(22px,3vw,36px) clamp(22px,2.6vw,30px);
  border-radius:26px;
      background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(14px) saturate(140%);
  /* background:
    linear-gradient(160deg, rgba(255,255,255,.20) 0%, rgba(255,255,255,.06) 42%, rgba(255,255,255,.10) 100%),
    rgba(var(--akg-navy),.38);
  border:1px solid rgba(255,255,255,.22);
  -webkit-backdrop-filter:blur(22px) saturate(1.5); backdrop-filter:blur(22px) saturate(1.5); */
  box-shadow:
    0 30px 70px -18px rgba(0,0,0,.55),
    inset 0 1px 0 rgba(255,255,255,.35),
    inset 0 -1px 0 rgba(255,255,255,.06);
  overflow:hidden;
}
.akg__glass::before{            /* soft sheen sweeping the top-left */
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(120% 70% at 0% 0%, rgba(255,255,255,.16), rgba(255,255,255,0) 55%);
}
.akg__glass > *{ position:relative; }

.akg__court{ width:min(190px,56%); height:auto; flex:none; margin-bottom:18px; fill:none; stroke:rgba(255,255,255,.85); stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.akg__court *{ vector-effect:non-scaling-stroke; }
.akg__court .hl{ stroke:var(--akg-amber); }

.akg__sport{
  display:inline-flex; align-items:center; gap:10px; margin:0 0 14px;
  font-family:var(--at-ff-body); font-weight:600; font-size:11px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--akg-amber);
}
.akg__sport::before,.akg__sport::after{ content:""; width:22px; height:1px; background:currentColor; opacity:.7; }

.akg__quote{
  margin:0 0 14px; font-family:var(--at-ff-heading); font-style:italic; font-stretch:108%;
  font-size:clamp(26px,2.5vw,34px); line-height:1; letter-spacing:.005em; text-transform:uppercase; color:#fff;
}
.akg__quote p{
  color: #fff;
  font-size: 19px;
}
.akg__body{
  margin:0; max-width:38ch; font-family:var(--at-ff-body); font-size:15.5px; line-height:1.6;
  color:rgba(255,255,255,.92);
}
.akg__foot{
  margin-top:auto; padding-top:20px; width:100%;
  display:flex; align-items:center; justify-content:center; gap:12px; text-align:left;
}
.akg__foot::before{ content:none; }
.akg__avatar{ width:44px; height:44px; flex:none; border-radius:50%; overflow:hidden; border:2px solid rgba(255,255,255,.55); background:rgba(255,255,255,.12); }
.akg__avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
.akg__who{ display:grid; gap:2px; min-width:0; }
.akg__who strong{ font-family:var(--at-ff-heading); font-weight:600; font-size:15px; letter-spacing:.08em; text-transform:uppercase; color:#fff; }
.akg__who span{ font-family:var(--at-ff-body); font-size:12.5px; color:rgba(255,255,255,.72); }
.akg__rule{ width:100%; height:1px; margin:22px 0 0; background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent); border:0; flex:none; }

/* ---------- control pill (arrows + progress) ---------- */
.akg__ctrl{
  position:relative; z-index:3; width:max-content; max-width:100%;
  margin:clamp(22px,3vw,34px) auto 0;
  display:flex; align-items:center; gap:14px;
  padding:10px 12px; border-radius:999px;
  background:rgba(var(--akg-navy),.42); border:1px solid rgba(255,255,255,.2);
  -webkit-backdrop-filter:blur(16px) saturate(1.4); backdrop-filter:blur(16px) saturate(1.4);
  box-shadow:0 14px 40px -12px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.25);
}
.akg__arrow{
  width:38px; height:38px; flex:none; display:inline-flex; align-items:center; justify-content:center;
  border:0; border-radius:50%; background:#fff; color:#0c0c0c; cursor:pointer;
  transition:background-color .3s ease, color .3s ease, transform .3s ease;
}
.akg__arrow:hover,.akg__arrow:focus-visible{ background:var(--akg-amber); color:#0c0c0c; transform:scale(1.08); outline:none; }
.akg__arrow:focus-visible{ box-shadow:0 0 0 3px rgba(255,255,255,.5); }
.akg__track{ position:relative; width:clamp(90px,14vw,140px); height:3px; border-radius:3px; background:rgba(255,255,255,.28); overflow:hidden; }
.akg__fill{ position:absolute; inset:0 auto 0 0; width:0; border-radius:3px; background:#fff; }
.akg__count{ font-family:var(--at-ff-heading); font-weight:600; font-size:14px; letter-spacing:.1em; color:#fff; min-width:3.9em; text-align:center; }

/* ---------- responsive ---------- */
@media (max-width:991px){
  .akg{ --akg-w:min(420px,calc(100vw - 72px)); --akg-rot:26deg; --akg-shift:calc(var(--akg-w) * 1.0); }
}
@media (max-width:767px){
  .akg{ --akg-w:min(400px,calc(100vw - 48px)); --akg-rot:18deg; --akg-shift:calc(var(--akg-w) * .94); }
  .akg__stage{ perspective:1100px; }
  .akg__card{ opacity:calc(1 - var(--a) * .6); filter:blur(calc(var(--a) * 1.6px)); }
  .akg__glass{ border-radius:22px; }
  .akg__court{ width:min(150px,50%); margin-bottom:14px; }
  .akg__body{ font-size:15px; }
  .akg__count{ display:none; }
}
@media (max-width:420px){
  .akg__who strong{ font-size:14px; }
  .akg__track{ width:84px; }
}
@media (prefers-reduced-motion:reduce){
  .akg__photo{ animation:none; }
  .akg__card{ transition-duration:.01s; }
}

/* ---------- 10. inline block 10 ---------- */
/* ===== AK FLY BALL — the Club Stage ball travelling down the page ===== */
.ak-flyball{position:fixed;left:0;top:0;z-index:60;max-width:none;pointer-events:none;visibility:hidden;object-fit:contain;will-change:transform;-webkit-user-drag:none;user-select:none}
/* while the travelling ball is out, the stage copy is hidden (visibility only, so the carousel keeps running untouched) */
html.ak-fly-on .club .ball-stage .big-ball{visibility:hidden!important}
/* the ball becomes the visual in the Services slot, so the old picture steps aside */
html.ak-fly-ready .ak-services__intro .portfolio-text{opacity:0!important}

/* ---------- 11. inline block 11 ---------- */
/* ===== AK HERO -> ABOUT: the hero court's football leaves the banner and flies down into the About ball stage ===== */
.ak-xferball{position:fixed;left:0;top:0;z-index:60;width:100px;height:100px;max-width:none;pointer-events:none;visibility:hidden;object-fit:contain;will-change:transform;backface-visibility:hidden;-webkit-user-drag:none;user-select:none}
/* while the flying copy is out, the hero's own football (and its shadow) steps aside; the About stage balls wait until it lands */
html.ak-xfer-on .akc-foot, html.ak-xfer-on .akc-bs-w{visibility:hidden}
html.ak-xfer-stage .club .ball-stage .big-ball{visibility:hidden!important}

/* ---------- 12. inline block 12 ---------- */
/* ===== AK ARCS — brand colours taken from the logo arcs ===== */
:root{--ak-arc-blue:#0083f3;--ak-arc-pink:#fa026b;--ak-arc-orange:#fbb201;--ak-arc-green:#92dd04;--ak-arc-navy:#141d70;--ak-arc-forest:#04703a;--ak-arc-olive:#b09201;--ak-arc-crimson:#be0423;}
.courts#services, .book.ak-quote{ isolation:isolate; }
.ak-arcs-clip{ position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:-1; }
.ak-arcs{     position: absolute;
    width: var(--w, 30vw);
    min-width: 200px;
    aspect-ratio: 1154 / 465; opacity:var(--o,.12); pointer-events:none;
  clip-path:inset(0 100% 0 0); will-change:clip-path,translate,rotate,scale; }
  .book .ak-arcs{
    position: absolute;
    width: 70vw !important;
    min-width: 100px;
    margin-left: -80px;
  filter: grayscale(1) opacity(.4);
    aspect-ratio: 1154 / 465; opacity:var(--o,.12); pointer-events:none;
  clip-path:inset(0 100% 0 0); will-change:clip-path,translate,rotate,scale;
  }
.ak-arcs svg{ display:block; width:100%; height:100%; animation:akArcFloat 20s ease-in-out infinite alternate; }
@keyframes akArcFloat{ 0%{ transform:translate3d(0,-6px,0) rotate(-.5deg); } 100%{ transform:translate3d(0,8px,0) rotate(.7deg); } }
@media (prefers-reduced-motion: reduce){ .ak-arcs svg{ animation:none; } }

/* ---------- 13. inline block 13 ---------- */
/* ===== AK KICKER — footballer that replaces the back-to-top button ===== */
.ak-kicker{ position:fixed; right:clamp(6px,1.9vw,30px); bottom:max(4px,env(safe-area-inset-bottom)); width:clamp(58px,6.2vw,90px);
  z-index:99; pointer-events:none; visibility:hidden; will-change:transform; }
.ak-kicker.is-on{ visibility:visible; }
.ak-kicker__btn{ position:relative; display:block; width:100%; aspect-ratio:120/140; padding:0; margin:0; border:0; background:none;
  cursor:pointer; pointer-events:auto; -webkit-tap-highlight-color:transparent; overflow:visible; border-radius:14px; }
.ak-kicker__btn:focus-visible{ outline:2px solid #0a0a0a; outline-offset:3px; }
.ak-kicker svg{ display:block; width:100%; height:100%; overflow:visible;
  filter:drop-shadow(0 0 1.2px #fff) drop-shadow(0 0 1px rgba(255,255,255,.9)) drop-shadow(0 5px 7px rgba(0,0,0,.22)); }
#akKicker line{ stroke-linecap:round; fill:none; }
#akKicker .k-sh{ stroke:#14110c; stroke-width:12.5; }      /* shorts */
#akKicker .k-sk{ stroke:#d29a6e; stroke-width:8.4; }       /* thigh / knee */
#akKicker .k-so{ stroke:#f2f2f2; stroke-width:8; }         /* socks */
#akKicker .k-bt{ stroke:#14110c; stroke-width:6.4; }       /* boots */
#akKicker .k-sl{ stroke:#0a0a0a; stroke-width:7.2; }       /* sleeve */
#akKicker .k-fa{ stroke:#d29a6e; stroke-width:5.6; }       /* forearm */
#akKicker .k-hd{ fill:#d29a6e; }
#akKicker .k-tor{ stroke:#0a0a0a; stroke-width:19.5; }     /* jersey */
#akKicker .k-wst{ stroke:#14110c; stroke-width:17; }
#akKicker .k-arc{ fill:none; stroke-width:1.35; stroke-linecap:round; }  /* the logo's four arc colours on the chest */
#akKicker .kfar .k-sh{ stroke:#0a0906; } #akKicker .kfar .k-sk{ stroke:#b8835a; } #akKicker .kfar .k-so{ stroke:#bdbdbd; }
#akKicker .kfar .k-bt{ stroke:#0a0906; } #akKicker .kfar .k-sl{ stroke:#262626; } #akKicker .kfar .k-fa{ stroke:#b8835a; }
#akKicker .kfar .k-hd{ fill:#b8835a; }
.ak-kicker__tip {
    position: absolute;
    right: 100%;
    bottom: 44%;
    margin-right: 4px;
    font-size: 13px !important;
    padding: 6px 11px;
    background: #121212;
    color: #fff;
    font: 10px;
    font-family: inherit;
    letter-spacing: .09em;
    text-transform: uppercase;
    white-space: nowrap;
    border-radius: 99px;
    border: 1px solid rgba(255, 255, 255, .5);
    opacity: 0;
    transform: translateX(8px);
    transition: opacity .25s ease, transform .25s ease;
    pointer-events: none;
}
.ak-kicker__btn:hover .ak-kicker__tip, .ak-kicker__btn:focus-visible .ak-kicker__tip{ opacity:1; transform:none; }
@media (hover:none){ .ak-kicker__tip{ display:none; } }

/* ---------- 14. akm-style ---------- */
/* ===========================================================================
   AK SPORTS — MOBILE LAYER (phones, <= 767.98px)
   Everything below sits inside the phone media query, so desktop and tablet
   are untouched. It loads last, so it wins over the section styles above.
   1. Hamburger + off-canvas menu   2. Hero order   3. Type   4. Spacing   5. Sliders
   =========================================================================== */

/* the new menu pieces and slider dots do not exist on desktop / tablet */
.akm-burger, .akm-scrim, .akm-panel, .akm-dots { display: none; }
.akc-slot { display: none; }

@media (max-width: 767.98px) {

  /* ---------------------------------------------------------------- 1. MENU */
  /* the old always-open link row goes (only once the script is running, so the page is never left without a menu) */
  html.akm-js .ak-hero .sec-1-home-15__header .sec-1-home-15__nav { display: none; }
  .ak-hero .sec-1-home-15__header { min-height: 46px; align-items: center; }

  .akm-burger {
    display: grid; place-items: center;
    position: fixed; top: 20px; right: 20px; z-index: 1003;
    width: 40px; height: 40px; padding: 0; margin: 0;
    border: 1px solid rgba(255, 255, 255, .16); border-radius: 50%;
    /* background: rgba(12, 12, 12, .62);  */
    color: #fff;
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
    cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation;
    transition: background-color .4s ease, border-color .4s ease, color .4s ease;
  }
  .akm-burger:focus-visible { outline: 2px solid var(--ak-gold, #ffffff); outline-offset: 3px; }
  .akm-burger__box { position: relative; display: block; width: 20px; height: 14px; }
  .akm-burger__box i {
    position: absolute; left: 0; width: 100%; height: 2px; border-radius: 2px; background: currentColor;
    transition: top .45s cubic-bezier(.22, 1, .36, 1), transform .45s cubic-bezier(.22, 1, .36, 1), opacity .25s ease;
  }
  .akm-burger__box i:nth-child(1) { top: 0; }
  .akm-burger__box i:nth-child(2) { top: 6px; }
  .akm-burger__box i:nth-child(3) { top: 12px; }
  html.akm-open .akm-burger { background: var(--ak-gold, #ffffff); border-color: transparent; color: #0c0c0c; }
  html.akm-open .akm-burger__box i:nth-child(1) { top: 6px; transform: rotate(45deg); }
  html.akm-open .akm-burger__box i:nth-child(2) { opacity: 0; transform: scaleX(.2); }
  html.akm-open .akm-burger__box i:nth-child(3) { top: 6px; transform: rotate(-45deg); }

  html.akm-open { overflow: hidden; }

  .akm-scrim {
    display: block; position: fixed; inset: 0; z-index: 1000;
    background: rgba(5, 7, 9, .62);
    -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px);
    opacity: 0; visibility: hidden; touch-action: none;
    transition: opacity .45s ease, visibility 0s linear .45s;
  }
  html.akm-open .akm-scrim { opacity: 1; visibility: visible; transition-delay: 0s; }

  .akm-panel {
    display: flex; flex-direction: column;
    position: fixed; top: 0; right: 0; bottom: 0; z-index: 1002;
    width: min(86vw, 360px); padding: 20px 28px calc(28px + env(safe-area-inset-bottom, 0px));
    overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y;
    background: #0c0c0c; 
    color: #fff; 
    isolation: isolate;
    /* box-shadow: -24px 0 60px rgba(0, 0, 0, .45); */
    transform: translate3d(104%, 0, 0); visibility: hidden;
    transition: transform .6s cubic-bezier(.22, 1, .36, 1), visibility 0s linear .6s;
  }
  html.akm-open .akm-panel { transform: none; visibility: visible; transition-delay: 0s; }
  /* same 48px grid + gold glow language as the rest of the site */
  .akm-panel::before, .akm-panel::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; }
  /* .akm-panel::before {
    background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
    background-size: 48px 48px;
  } */
  /* .akm-panel::after { background: radial-gradient(90% 55% at 12% 100%, rgba(255, 255, 255, .06), rgba(255, 255, 255, 0) 70%); } */

  .akm-panel__head { display: flex; align-items: center; height: 46px; margin-bottom: 36px; }
  .akm-panel__head img { display: block; height: 38px; width: auto; max-width: 160px; object-fit: contain; }

  .akm-nav ul { list-style: none; margin: 0; padding: 0; }
  .akm-nav li {
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    opacity: 0; transform: translate3d(28px, 0, 0);
    transition: transform .6s cubic-bezier(.22, 1, .36, 1), opacity .35s ease; transition-delay: 0s;
  }
  .akm-nav li:first-child { border-top: 1px solid rgba(255, 255, 255, .1); }
  html.akm-open .akm-nav li { opacity: 1; transform: none; transition-delay: calc(.18s + var(--i, 0) * .06s); }
  .akm-nav a {
    display: flex; align-items: center; gap: 16px; padding: 19px 0;
    color: #fff; text-decoration: none; -webkit-tap-highlight-color: transparent;
    font-family: var(--at-ff-heading, inherit); font-size: 15px; line-height: 1; letter-spacing: .005em; text-transform: uppercase;
  }
  .akm-nav a::before {
    content: attr(data-n); min-width: 22px;
    font: 500 12px/1 var(--at-ff-body, inherit); letter-spacing: .1em; color: var(--ak-gold, #ffffff);
  }
  .akm-nav a svg { margin-left: auto; color: var(--ak-gold, #ffffff); opacity: 0; transform: translateX(-10px); transition: opacity .3s ease, transform .4s cubic-bezier(.22, 1, .36, 1); }
  .akm-nav a:active, .akm-nav a:focus-visible { color: var(--ak-gold, #ffffff); outline: 0; }
  .akm-nav a:active svg, .akm-nav a:focus-visible svg { opacity: 1; transform: none; }

  .akm-panel__foot { margin-top: auto; padding-top: 32px; display: grid; gap: 18px; justify-items: start; }
  .akm-panel__tag { margin: 0; font: 400 15px/1.4 var(--at-ff-body, inherit); color: rgba(255, 255, 255, .55); }
  .akm-panel__foot .at-btn { cursor: pointer; }

  /* ----------------------------------------------------------- 2. HERO ORDER */
  /* headline  ->  court  ->  buttons. The card now grows with its content (never shorter than a screen),
     and the court is centred on the empty .akc-slot between the headline and the text. */
  .ak-hero .sec-1-home-15__card,
  section.ak-court-hero.akc-on .sec-1-home-15__card {
    display: flex; flex-direction: column; height: auto !important; min-height: max(100svh, 640px);
  }
  .ak-hero .sec-1-home-15__card > .container {
    position: relative; z-index: 4; display: flex; flex: 1 1 auto; flex-direction: column;
    width: 100%; padding-left: 20px; padding-right: 20px;
  }
  .ak-hero .ak-hero__content {
    /* position: relative;
     inset: auto;
     top: auto; */
     /* right: auto;  */
     /* left: auto; */

    bottom: auto;
    display: flex; flex: 1 1 auto; flex-direction: column;
    max-width: 100%; margin: 0; padding: 92px 0 34px;
  }
  .ak-hero .ak-hero__content .sec-1-home-15__headline { order: 1; flex: none; }
  .akc-slot { 
    display: block;
     /* order: 2; */
      /* flex: 1 1 auto; */
       min-height: 230px;
        pointer-events: none; }
  .ak-hero .ak-hero__content .akc-subs { order: 3; }
  .ak-hero .ak-hero__content .ak-hero__cta-row { order: 4; }
  .ak-hero .ak-hero__sub { max-width: 100%; margin-top: 12px; }
  .ak-hero .ak-hero__cta-row { margin-top: 20px; }

  /* ----------------------------------------------------------- 3. TYPOGRAPHY */
  /* section headings: 28px */
  .sec-2-ak-overview__heading,
  .club h2, .club .club-stage h2,
  .aks .aks__title,
  .ak-heading, .ak-services .ak-heading, .book-intro .ak-heading, .cta__title, .akt__title.ak-heading,
  .ak-muse__title,
  .sx-phil__h,
  .sx-title,
  .footer-courts .footer-courts__heading {
    font-size: 28px !important; line-height: 1.12 !important;
  }
  .ak-heading span, .aks__title span, .footer-courts__heading span, .club h2 span:not(.dash) { font-size: inherit !important; }
  /* the About heading is sized by a container query and hides <br> on phones: give it real lines at 28px */
  .club .club-stage h2 { white-space: normal !important; }
  .club .club-stage h2 br { display: inline !important; }

  /* paragraphs, list items and body spans: 15px
     (display numerals, the footer wordmark, tiny image captions and form micro-labels keep their own sizes) */
  main p:not(.k):not(.yr):not(.swatch-cap):not(.toast):not(.note):not(.ak-muse__sub):not(.sx-phil__lbl):not(.sec-story__media-label),
  footer p:not(.footer-courts__word):not(.footer-courts__label),
  main section li:not(.ts__item),
  footer li, .faq__t, .sx-no, .sx-name, .sx-cat, .sx-yr,
  .sx-meta > span, .ak-clients__foot > span, .footer-courts__info > div > span, .footer-courts__status {
    font-size: 14px !important;
  }
  .ak-hero__sub, .aks__sub, .cta__copy, .ak-desc, .court-body p, .club-intro p, .faq__a p,
  .sec-2-ak-overview__body, .sec-2-ak-overview__info p, .sx-lede, .sx-phil__txt p:not(.sx-phil__lbl),
  .footer-courts__copy-block p { line-height: 1.55; }

  /* ----------------------------------------------------------- 4. SPACING (70px top + bottom) */
  .club, .courts.ak-services, .ak-clients, .faq, .book.ak-quote, .sx-works {
    padding-top: 70px !important; padding-bottom: 70px !important;
  }
  .courts.ak-services { min-height: 0; }
  /* .aks { padding-top: 70px !important; padding-bottom: 70px !important; } */
  .sx-phil__l, .sx-phil__r { padding-top: 70px !important; padding-bottom: 70px !important; }
  .sx-phil__thumb { bottom: 16px; }
  .sec-2-ak-overview__home-link { padding: 80px 0px 0px 15px; }
  .footer-courts { padding-top: 70px; }

  /* ----------------------------------------------------------- 5. GRIDS -> SWIPE SLIDERS */
  .aks .aks__grid,
  .courts .court-list,
  .sx-works .sx-grid[data-view="grid"] {
    --akm-gap: 14px;
    display: flex !important; flex-wrap: nowrap !important; align-items: stretch;
    gap: var(--akm-gap) !important;
    width: auto !important; max-width: none !important;
    margin-left: calc(-1 * var(--akm-l, 0px)); margin-right: calc(-1 * var(--akm-r, 0px));
    padding: 6px 0 14px var(--akm-l, 0px); scroll-padding-left: var(--akm-l, 0px);
    overflow-x: auto !important; overflow-y: hidden !important;
    scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain; scrollbar-width: none; -ms-overflow-style: none;
    position: relative;
  }
  .aks .aks__grid::-webkit-scrollbar, .courts .court-list::-webkit-scrollbar, .sx-works .sx-grid::-webkit-scrollbar { display: none; }
  /* trailing space so the last card can settle against the left edge */
  .aks .aks__grid::after, .courts .court-list::after, .sx-works .sx-grid[data-view="grid"]::after {
    content: ""; flex: 0 0 calc(var(--akm-r, 0px) - var(--akm-gap)); min-width: 1px;
  }

  /* AKS services cards */
  .aks .aks__grid > .aks__card { flex: 0 0 min(80vw, 340px); scroll-snap-align: start; scroll-snap-stop: always; }
  .aks .aks__card.is-on .aks__fig { scale: 1; }          /* no hover pop on a scroller: it would be clipped */

  /* court cards: each card swipes as a whole; the layout diagrams inside still change by tap, dots and arrows */
  .courts .court-list { border: 0; background: transparent; }
  .courts .court-list > .court {
    flex: 0 0 min(84vw, 360px); scroll-snap-align: start; scroll-snap-stop: always;
    border: 1px solid rgba(18, 20, 15, .8) !important; background: var(--paper, #fff);
  }
  .courts .court-list .court-fig, .courts .court-list .court-track { touch-action: pan-x pan-y !important; }
  .ak-js .ak-services .court-fig { clip-path: none !important; }

  /* selected works (grid view) */
  .sx-works .sx-grid[data-view="grid"] > li { flex: 0 0 min(74vw, 300px); scroll-snap-align: start; scroll-snap-stop: always; min-width: 0; }
  .sx-works .sx-grid[data-view="grid"] .sx-fig { aspect-ratio: 4 / 5; }
  .sx-works .sx-grid[data-view="grid"] .sx-cap {
    position: static; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: baseline; gap: 2px 10px;
    padding: 12px 2px 0; background: none; color: var(--sx-ink, #161616); opacity: 1; translate: 0 0;
  }
  .sx-works .sx-grid[data-view="grid"] .sx-name { font-weight: 600; }
  .sx-works .sx-grid[data-view="grid"] .sx-cat { grid-column: 2; grid-row: 2; color: #6a6a6a; }
  .sx-works .sx-grid[data-view="grid"] .sx-no, .sx-works .sx-grid[data-view="grid"] .sx-yr { color: #6a6a6a; }
  html.sx-on .sx-works .sx-grid[data-view="grid"] > li.sx-rv { opacity: 1; translate: none; }

  /* swipe dots (built by the script) */
  .akm-dots {
    --dot: rgba(12, 12, 12, .22);
    display: flex; justify-content: center; align-items: center; gap: 8px; margin: 6px 0 0;
  }
  .akm-dots--light { --dot: rgba(255, 255, 255, .32); }
  .akm-dots button {
    position: relative; width: 7px; height: 7px; padding: 0; border: 0; border-radius: 7px; background: var(--dot);
    cursor: pointer; -webkit-tap-highlight-color: transparent;
    display: none;
    transition: width .4s cubic-bezier(.22, 1, .36, 1), background-color .3s ease;
  }
  .akm-dots button::after { content: ""; position: absolute; inset: -14px -5px; }
  .akm-dots button[aria-current="true"] { width: 26px; background: var(--ak-gold, #ffffff); }
  .sx-grid:not([data-view="grid"]) + .akm-dots { display: none; }
}

@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
  .akm-panel, .akm-scrim, .akm-nav li, .akm-burger__box i, .akm-dots button { transition: none !important; }
  .akm-nav li { transform: none; }
}

/* ---------- 15. akm-fixes ---------- */
/* ===========================================================
   AK MOBILE FIXES (phones only, <= 767.98px). Desktop / tablet untouched.
   1 Hero  2 Overview slider  3 Muse images
   =========================================================== */
@media (max-width: 767.98px) {

  /* ---------- 1. HERO: court + headline (+ text and buttons) sit as one block, centred in the screen ---------- */
  .ak-hero .ak-hero__content { justify-content: center; padding: 150px 0 48px; }
  .ak-hero .akc-slot {
    min-height: clamp(230px, 30svh, 272px);
    margin-bottom: clamp(28px, 4.4svh, 44px);          /* clear air between the court and TRAIN. COMPETE. TRIUMPH. */
  }

  /* ---------- 2. OVERVIEW: heading -> paragraph -> swipe slider (3 images) -> info blocks ---------- */
  .sec-2-ak-overview .sec-2-ak-overview__next,
  .sec-2-ak-overview .sec-2-ak-overview__gallery-label { display: none !important; }
  .sec-2-ak-overview .sec-2-ak-overview__text-col { padding: 6px 0 4px !important; gap: 0 !important; }
  .sec-2-ak-overview .sec-2-ak-overview__content-row { gap: 0; }

  .akm-ov { padding: 22px 15px 4px; }
  .akm-ov__track {
    position: relative; display: flex; gap: 12px; align-items: flex-start;
    overflow-x: auto; overflow-y: hidden;
    scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain;
    scrollbar-width: none; -ms-overflow-style: none; touch-action: pan-x pan-y;
  }
  .akm-ov__track::-webkit-scrollbar { display: none; }
  .akm-ov__track:focus-visible { outline: 2px solid var(--ak-gold, #ffffff); outline-offset: 3px; }
  .akm-ov .akm-ov__slide {
    position: relative !important; flex: 0 0 100% !important; width: 100% !important; min-width: 0;
    height: auto !important; min-height: 0 !important; aspect-ratio: 4 / 3;
    margin: 0 !important; padding: 0 !important; border: 0 !important; overflow: hidden; background: #e9e7e3;
    scroll-snap-align: start; scroll-snap-stop: always;
    /* the desktop scroll effects (clip, fade, drift) stay off inside the slider so every frame is clean */
    clip-path: none !important; opacity: 1 !important; transform: none !important; visibility: visible !important;
  }
  .akm-ov .akm-ov__slide img {
    position: absolute !important; inset: 0; display: block; width: 100% !important; height: 100% !important;
    min-height: 0 !important; object-fit: cover; scale: none !important; translate: none !important;
  }
  .akm-ov .akm-dots { margin-top: 14px; }

  .sec-2-ak-overview .sec-2-ak-overview__col--gallery .sec-2-ak-overview__info-group { padding: 4px 15px 0px; display: none;}
  .sec-2-ak-overview .sec-2-ak-overview__info { height: auto !important; padding: 22px 0 !important; }
  .sec-2-ak-overview .sec-2-ak-overview__info + .sec-2-ak-overview__info {
    margin: 0 !important; padding: 22px 0 0 !important; border-top: 1px solid var(--at-neutral-200, #e6e6e6);
  }

  /* ---------- 3. MUSE: every picture visible, sized for a phone, arranged around the headline ---------- */
  .ak-muse .ak-muse__stage { height: calc(100svh + 60px); min-height: 640px; }
  .ak-muse .muse-item {
    left: calc(var(--mx) * 1%) !important; top: calc(var(--my) * 1%) !important; width: calc(var(--mw) * 1%) !important;
  }
  .ak-muse .muse-item.muse-hide-sm { display: none !important; }
  .ak-muse .ak-muse__title br { display: inline !important; }          /* "Find Inspiration / Wherever You Are" on two lines, not run together */
  .ak-muse .muse-item__in { background: #d9d2cb; }
  .ak-muse .muse-item__in > img {
    display: block !important; opacity: 1 !important; visibility: visible !important;
    position: static !important; width: 100% !important; height: 100% !important; object-fit: cover;
  }
  .ak-muse .muse-item:nth-child(1)  { --mx: 6;  --my: 3;  --mw: 36; }   /* tennis photo  */
  .ak-muse .muse-item:nth-child(2)  { --mx: 42; --my: 25; --mw: 18; }   /* orange court tile */
  .ak-muse .muse-item:nth-child(3)  { --mx: 60; --my: 10; --mw: 29; }   /* project photo */
  .ak-muse .muse-item:nth-child(6)  { --mx: 7;  --my: 63; --mw: 34; }   /* gallery photo */
  .ak-muse .muse-item:nth-child(7)  { --mx: 32; --my: 81; --mw: 30; }   /* floodlit pitch */
  .ak-muse .muse-item:nth-child(10) { --mx: 58; --my: 66; --mw: 30; }   /* athlete lunge */
}

/* ---------- 16. ak-sidefade ---------- */
/* Scroll-triggered side fades. Uses `transform` on the elements themselves (the existing reveals use the separate
   `translate`/clip-path/opacity-on-children, so nothing fights). Content only - the ball anchors and section boxes never move. */
html.ak-fx-on .ak-fx{opacity:0;transform:translate3d(var(--fx-x,0),0,0);transition:opacity .9s ease,transform 1.1s cubic-bezier(.16,1,.3,1),translate 1.1s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--fxd,0) * 120ms);will-change:opacity,transform}
html.ak-fx-on .ak-fx-l{--fx-x:-90px}
html.ak-fx-on .ak-fx-r{--fx-x:90px}
html.ak-fx-on .ak-fx.is-fx{opacity:1;transform:none;will-change:auto}
@media(max-width:991px){html.ak-fx-on .ak-fx-l{--fx-x:-48px}html.ak-fx-on .ak-fx-r{--fx-x:48px}}
@media(max-width:767px){html.ak-fx-on .ak-fx-l{--fx-x:-30px}html.ak-fx-on .ak-fx-r{--fx-x:30px}
  /* the court list / works grid are swipe rows on phones: fade only, so nothing widens the scroller */
  html.ak-fx-on .sx-grid > .ak-fx{transform:none}}
/* court list: a long, clearly visible slide from the left, one court after the other (0.3s / 0.4s / 0.5s) */
html.ak-fx-on .court-list > .court.ak-fx-l{--fx-x:clamp(-340px,-24vw,-90px);transition:opacity .9s ease var(--fx-delay,0s),transform 1.2s cubic-bezier(.22,1,.36,1) var(--fx-delay,0s),translate 1.2s cubic-bezier(.22,1,.36,1) var(--fx-delay,0s)}
@media(prefers-reduced-motion:reduce){html.ak-fx-on .ak-fx{opacity:1;transform:none;transition:none}}
.courts.ak-services,.sx-works{overflow-x:clip}
/* hero banner CTA only */
html body .at-btn.ak-btn-orange.ak-hero-banner:not(:hover):not(:focus-visible){background:#a28d00 !important;background-color:#a28d00 !important;color:#fff !important}

/* ---------- 17. ak-alignment-fixes ---------- */
/* ==========================================================================
   ALIGNMENT FIXES (appended last so it wins over main.css / ak-upgrade.css)
   1. Services heading  2. Footer CTA buttons stay on one line
   ========================================================================== */

/* 1. SERVICES HEADING ------------------------------------------------------
   The global ".akup-h2 { font-size:60px !important }" rule was overriding the Services section's own
   fluid size, so the four lines became tall and narrow and pushed the cards down. Restore the fluid
   size the section was designed around (it follows viewport height so the section fits one screen),
   a calmer tracking, and even line spacing. */
html body .ak-services .ak-heading.akup-h2 {
  font-size: clamp(28px, min(3.6vw, 5.6vh), 56px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.045em !important;
  font-weight: 600 !important;
  max-width: 14em;
  margin: 0;
  text-wrap: balance;
}
html body .ak-services .ak-heading .ln { padding-bottom: .1em; margin-bottom: -.04em; }
html body .ak-services .ak-heading .ln > span { font-size: inherit !important; }
@media (max-width: 900px) {
  html body .ak-services .ak-heading.akup-h2 { font-size: clamp(28px, 8vw, 40px) !important; line-height: 1.1 !important; max-width: none; }
}

/* 2. FOOTER BUTTONS --------------------------------------------------------
   Both footer CTAs keep their text on a single line. If the column is too narrow for the two side by
   side, the second one drops underneath (whole button) instead of the text wrapping inside it. */
html body .footer-courts .footer-courts__actions {
  display: flex; 
  /* flex-wrap: wrap; */
   align-items: center;
  gap: 14px 22px; width: 100%; min-width: 0;
}
html body .footer-courts .footer-courts__actions > .at-btn,
html body .footer-courts .footer-courts__actions > .ak-link {
  flex: 0 0 auto; width: auto; max-width: 100%;
  white-space: nowrap; text-wrap: nowrap;
}
html body .footer-courts .footer-courts__actions .at-btn { padding: 12px 16px !important; font-size: 13px !important; line-height: 1; }
html body .footer-courts .footer-courts__actions .at-btn > span { white-space: nowrap; min-width: max-content; flex: 0 0 auto; }
html body .footer-courts .footer-courts__actions .at-btn > span .text-1,
html body .footer-courts .footer-courts__actions .at-btn > span .text-2 { white-space: nowrap; }
html body .footer-courts .footer-courts__actions .at-btn > span .text-2 { left: 0; }
html body .footer-courts .footer-courts__actions .at-btn > i { flex: 0 0 16px; }
html body .footer-courts .footer-courts__actions .ak-link { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; line-height: 1.2; }
html body .footer-courts .footer-courts__actions .ak-link > span { white-space: nowrap; }
html body .footer-courts .footer-courts__actions .ak-link > svg { flex: 0 0 auto; }
@media (max-width: 575.98px) {
  html body .footer-courts .footer-courts__actions { flex-direction: column; align-items: flex-start; gap: 14px; }
}
@media (max-width: 360px) {
  html body .footer-courts .footer-courts__actions .at-btn,
  html body .footer-courts .footer-courts__actions .ak-link { font-size: 12px !important; }
}

@media screen and (max-width:600px){
  .club .club-logos__group img {
    display: block;
    width: 70px !important;
    height: 70px !important;
  }
  html body .ak-hero .sec-1-home-15__headline{
    font-size: 60px !important;
  }
  .book.ak-quote .inp input, .book.ak-quote .inp select {
    padding: 11px 11px !important;
    font-size: 16px;
    height: 50px;

}
.book.ak-quote .field legend {
    font-size: 14px !important;
    letter-spacing: .14em;
    color: #fff;
    margin-bottom: 0px !important;
}
.aks__head p:nth-child(3){
  margin-bottom: 20px !important;
}
}

/* ---------- 18. ak-mobile-refinement ---------- */
/* ===========================================================
   AK MOBILE REFINEMENT (phones only, <= 767.98px). Desktop / tablet untouched.
   1 Services stack  2 Philosophy image  3 Story slider images  4 Marquee
   =========================================================== */

/* ---------- 1. SERVICES STACK (phones): the six cards rise one after another and pile up vertically ----------
   JS adds .is-stack-m (see the AKS script). Without it (reduced motion) the swipe row stays exactly as before. */
@media (max-width: 767.98px) and (prefers-reduced-motion: no-preference) {
  html body .aks.is-stack-m { height: 530vh; padding: 0; }
  html body .aks.is-stack-m .aks__pin { position: sticky; top: 0; height: 100vh; overflow: hidden; padding: 0; }

  /* intro: eyebrow -> heading -> paragraphs, drifting up and fading while the first card rises (--hy / --ho come from JS) */
  html body .aks.is-stack-m .aks__head {
    position: absolute; z-index: 3; left: var(--aks-side, 20px); right: var(--aks-side, 20px); top: 88px;
    width: auto; max-width: none; margin: 0; display: flex; flex-direction: column;
    transform: translate3d(0, var(--hy, 0px), 0) !important; opacity: var(--ho, 1) !important; will-change: transform, opacity;
  }
  html body .aks.is-stack-m .aks__head .aks__eyebrow { order: 1; margin: 0 0 14px; }
  html body .aks.is-stack-m .aks__head .aks__title   { order: 2; margin: 0 0 18px !important; }
  html body .aks.is-stack-m .aks__head .aks__sub     { order: 3; margin: 0 0 12px !important; max-width: none; }
  html body .aks.is-stack-m .aks__cue { display: none; }
  html body .aks.is-stack-m .aks__media {
    /* position: absolute; z-index: 2; left: var(--aks-side, 20px); right: var(--aks-side, 20px); top: var(--aks-mt, auto);
    width: auto; height: var(--aks-mh, 200px); aspect-ratio: auto; margin: 0;
    transform: translate3d(0, var(--hy, 0px), 0) !important; opacity: var(--ho, 1) !important; */
            position: absolute;
        z-index: 2;
        left: var(--aks-side, 20px);
        right: var(--aks-side, 20px);
        top: 380px;
        width: auto;
        height: 250px;
        aspect-ratio: auto;
        margin: 0;
        transform: translate3d(0, var(--hy, 0px), 0) !important;
        opacity: var(--ho, 1) !important;
  }

  /* the cards: one column, each one rises from the bottom and settles a little lower than the previous one */
  html body .aks.is-stack-m .aks__grid {
    position: absolute !important; left: 0 !important; top: 0 !important; width: 100% !important; height: 100% !important;
    display: block !important; margin: 0 !important; padding: 0 !important; gap: 0 !important;
    overflow: visible !important; scroll-snap-type: none !important; transform: none !important; opacity: 1 !important;
    pointer-events: none;
  }
  html body .aks.is-stack-m .aks__grid::after { display: none !important; }
  html body .aks.is-stack-m .aks__grid > .aks__card {
    position: absolute; left: var(--aks-side, 20px); top: var(--aks-top); width: var(--aks-w);
     /* height: var(--aks-h); */
    height: 430px;
    flex: none; overflow: hidden; pointer-events: auto; scroll-snap-align: none; scroll-snap-stop: normal;
    transform-origin: 50% 0; border-radius: 16px !important; will-change: transform;
    -webkit-backdrop-filter: none; backdrop-filter: none;          /* six blurred layers are too heavy for a phone; the card is opaque anyway */
    box-shadow: 0 -16px 36px rgb(0 0 0 / .5);
  }
  html body .aks.is-stack-m .aks__lab i { font-size: 15px; margin-bottom: 8px; }
  html body .aks.is-stack-m .aks__lab b { font-size: 26px; line-height: 1.14; }
  html body .aks.is-stack-m .aks__grid > .aks__card::after { font-size: 15px; line-height: 1.45; max-width: none; }
  html body .aks.is-stack-m .akm-dots { display: none !important; }   /* the swipe dots belong to the fallback row */

  /* the line along the bottom edge (the ball rides it); its ticks are placed by JS */
  html body .aks.is-stack-m .aks__line { z-index: 98; }
}
@media (max-width: 767.98px) and (max-height: 640px) {
  html body .aks.is-stack-m .aks__sub + .aks__sub { display: none; }  /* very short screens: keep the intro to one paragraph */
}

/* ---------- 2-4. calmer pictures + bands on phones ---------- */
@media (max-width: 767.98px) {
  /* Philosophy: the small picture sat on top of the heading's lines; it now sits under the heading, on the text's left edge */
  html body .sx-phil .sx-phil__thumb {
    position: relative; left: auto; bottom: auto !important; align-self: flex-start;
    width: 88px; margin-top: 28px;
  }

  /* Creative story: a 400px fixed-height strip cropped every photo to a thin band; use a portrait-ish frame so the
     picture reads as a picture, with a lighter text panel on it (the AK lines stop at the top of the image, as before) */
  html body .sec-story .sec-story__media { height: auto; aspect-ratio: 4 / 5; max-height: 520px; }
  .sec-story > .ak-lines { bottom: min(520px, 125cqw); }
  html body .sec-story .sec-story__media-overlay { padding: 16px; }
  html body .sec-story .sec-story__media-glass { max-width: none; padding: 14px 16px; gap: 6px;margin-bottom: 40px; }
  html body .sec-story .sec-story__media-heading { margin-bottom: 8px; }

  /* marquee bands: slimmer, so they separate sections without adding height */
  .ak-marquee { padding: 12px 0; }
}

/* ---------- 19. ak-mobile-final ---------- */
/* ===========================================================
   AK MOBILE FINAL ADJUSTMENTS (phones only, <= 767.98px). Desktop / tablet untouched.
   1 CTA contact row  2 Quote section order  3 Single-line buttons  4 Club points removed  5 Calmer spacing
   =========================================================== */
@media (max-width: 767.98px) {

  /* 1. CTA contact details: one line, scrolls sideways instead of stacking */
  html body .cta .cta__channels {
    display: flex !important; flex-direction: row; flex-wrap: nowrap; align-items: stretch;
    overflow-x: auto; overflow-y: hidden; margin: 0; padding: 14px 0; gap: 0; list-style: none;
    border-top: 1px solid rgb(255 255 255 / .18); border-bottom: 1px solid rgb(255 255 255 / .18);
    scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain;
    scrollbar-width: none; -ms-overflow-style: none;
  }
  html body .cta .cta__channels::-webkit-scrollbar { display: none; }
  html body .cta .cta__channels > li {
    flex: 0 0 auto; margin: 0 !important; padding: 0 22px 0 0 !important; border: 0 !important;
    scroll-snap-align: start; white-space: nowrap;
  }
  html body .cta .cta__channels > li + li { padding-left: 22px !important; border-left: 1px solid rgb(255 255 255 / .18) !important; }
  html body .cta .cta__channels .cta__ch { display: flex; align-items: center; gap: 12px; white-space: nowrap; width: auto; padding: 0 !important; border: 0 !important; }
  html body .cta .cta__channels .cta__ch > svg { display: none; }
  html body .cta .cta__channels .cta__ch b,
  html body .cta .cta__channels .cta__ch small { white-space: nowrap; }

  /* 2. Quote section order: eyebrow + heading + paragraph  ->  form  ->  steps + contact details */
  html body .book.ak-quote .book-grid { display: flex !important; flex-direction: column; gap: 0 !important; }
  html body .book.ak-quote .book-intro { display: contents; }
  html body .book.ak-quote .book-intro > .ak-eyebrow { order: 1; margin: 0 0 12px; }
  html body .book.ak-quote .book-intro > .ak-heading { order: 2; margin: 0 0 14px; }
  html body .book.ak-quote .book-intro > .ak-desc { order: 3; margin: 0 0 28px; }
  html body .book.ak-quote .booker { order: 4; margin: 0 0 36px; }
  html body .book.ak-quote .book-intro > .book-steps { order: 5; margin: 0 0 20px; }
  html body .book.ak-quote .book-intro > .specs { order: 6; margin: 0; }

  /* 3. Buttons / links stay on ONE line; if they are wider than the screen the row scrolls sideways */
  html body .club .club-cta,
  html body .cta .cta__actions,
  html body .ak-services__cta-actions,
  html body .sx-phil .ak-services__cta-actions,
  html body .footer-courts .footer-courts__actions,
  html body .footer-courts .footer-courts__pills {
    display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center;
    justify-content: flex-start; overflow-x: auto; overflow-y: hidden; max-width: 100%;
    gap: 12px 20px; padding-bottom: 6px;
    -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; scrollbar-width: none; -ms-overflow-style: none;
  }
  html body .club .club-cta::-webkit-scrollbar,
  html body .cta .cta__actions::-webkit-scrollbar,
  html body .ak-services__cta-actions::-webkit-scrollbar,
  html body .footer-courts .footer-courts__actions::-webkit-scrollbar,
  html body .footer-courts .footer-courts__pills::-webkit-scrollbar { display: none; }
  html body .club .club-cta > *,
  html body .cta .cta__actions > *,
  html body .ak-services__cta-actions > *,
  html body .footer-courts .footer-courts__actions > *,
  html body .footer-courts .footer-courts__pills > li { flex: 0 0 auto; white-space: nowrap; }
  html body .footer-courts .footer-courts__pills { gap: 8px; padding-left: 0; list-style: none; }
  html body .footer-courts .footer-courts__pills a { white-space: nowrap; }

  /* 4. Club points: removed on phones only (desktop and medium screens keep them) */
  html body .club .club-points { display: none !important; }

  /* 5. calmer rhythm: tighter blocks, consistent gaps */
  html body .footer-courts .footer-courts__info { gap: 18px 16px; }
  html body .footer-courts .footer-courts__qnav { margin-bottom: 20px; }
  html body .footer-courts .footer-courts__meta { margin-top: 24px; padding-top: 18px; }
  html body .book.ak-quote .book-steps li { padding-top: 12px; padding-bottom: 12px; }
  html body .book.ak-quote .specs dt, html body .book.ak-quote .specs dd { padding-top: 10px; padding-bottom: 10px; }
}

@media screen and (max-width:600px){
  .ak-hero .ak-hero__sub {
    margin-top: 15px !important;
  }
  .ak-clients__foot span{
    font-size: 13px !important;
  }
  .book .cta{
    display: none;
  }
}

/* ===========================================================
   SELECTED PROJECTS - PHOTO LIGHTBOX (.sxlb)
   Popup slider opened from a project card. Square edges, black / white, sits above the page (the custom cursor stays on top).
   =========================================================== */
.sx-works .sx-fig[data-gallery]{ cursor:zoom-in; }
.sx-works .sx-fig[data-gallery]:focus-visible{ outline:2px solid #0c0c0c; outline-offset:3px; }

.sxlb{ position:fixed; inset:0; z-index:10000; display:block; opacity:0; visibility:hidden; transition:opacity .26s ease, visibility 0s linear .26s; font-family:var(--at-ff-body, 'Inter', sans-serif); color:#fff; -webkit-tap-highlight-color:transparent; touch-action:none; overscroll-behavior:contain; }
.sxlb[hidden]{ display:none; }
.sxlb.is-open{ opacity:1; visibility:visible; transition:opacity .26s ease, visibility 0s; }
.sxlb [hidden]{ display:none !important; }
.sxlb__scrim{ position:absolute; inset:0; background:rgba(10,10,10,.97); }
.sxlb__panel{ position:absolute; inset:0; display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(0,1fr) auto; height:100vh; height:100dvh; }

.sxlb__top{ display:flex; align-items:center; gap:16px; padding:16px 24px; padding-top:max(16px, env(safe-area-inset-top, 0px)); position:relative; z-index:2; }
.sxlb__who{ display:flex; flex-direction:column; gap:4px; min-width:0; flex:1 1 auto; }
.sxlb__name{ font-size:14px; line-height:1.25; font-weight:600; letter-spacing:.06em; text-transform:uppercase; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sxlb__sub{ font-size:12px; line-height:1.3; color:rgba(255,255,255,.62); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sxlb__count{ flex:none; font-size:13px; letter-spacing:.08em; font-variant-numeric:tabular-nums; color:rgba(255,255,255,.82); }

.sxlb__btn{ appearance:none; -webkit-appearance:none; display:inline-flex; align-items:center; justify-content:center; flex:none; width:46px; height:46px; padding:0; margin:0; border:1px solid rgba(255,255,255,.3); border-radius:0; background:rgba(10,10,10,.35); color:#fff; transition:background-color .25s ease, color .25s ease, border-color .25s ease, opacity .25s ease; touch-action:manipulation; }
.sxlb__btn:hover{ background:#fff; color:#0c0c0c; border-color:#fff; }
.sxlb__btn:focus-visible{ outline:2px solid #fff; outline-offset:3px; }
.sxlb__btn:active{ opacity:.8; }

.sxlb__stage{ position:relative; min-height:0; }
.sxlb__frame{ position:absolute; inset:0 88px; display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,1fr); place-items:center; }
.sxlb__img{ display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; background:#1a1a1a; user-select:none; -webkit-user-select:none; -webkit-user-drag:none; opacity:1; transform:none; transition:opacity .28s ease, transform .34s cubic-bezier(.22,.7,.2,1); touch-action:pan-y pinch-zoom; }
.sxlb__img:not([src]){ visibility:hidden; }
.sxlb__img.is-out, .sxlb__img.is-pre{ opacity:0; transform:translate3d(var(--sxlb-dx, 0px), 0, 0); }
.sxlb__img.is-pre{ transition:none; }
.sxlb.is-open .sxlb__img{ will-change:opacity, transform; }

.sxlb__nav{ position:absolute; top:50%; z-index:2; margin-top:-23px; }
.sxlb__nav--prev{ left:24px; }
.sxlb__nav--next{ right:24px; }

.sxlb__spin{ position:absolute; left:50%; top:50%; width:30px; height:30px; margin:-15px 0 0 -15px; border:1.5px solid rgba(255,255,255,.25); border-top-color:#fff; border-radius:50%; opacity:0; pointer-events:none; transition:opacity .2s ease; }
.sxlb__stage.is-loading .sxlb__spin{ opacity:1; animation:sxlb-spin .8s linear infinite; }
@keyframes sxlb-spin{ to{ transform:rotate(360deg); } }

.sxlb__bottom{ display:flex; flex-direction:column; min-width:0; gap:14px; padding:14px 24px 18px; padding-bottom:max(18px, env(safe-area-inset-bottom, 0px)); position:relative; z-index:2; }
.sxlb__cap{ margin:0; text-align:center; font-size:14px; line-height:1.4; letter-spacing:.02em; color:rgba(255,255,255,.9); min-height:1.4em; }
.sxlb__thumbs{ display:flex; gap:8px; justify-content:flex-start; overflow-x:auto; overflow-y:hidden; padding:2px; margin:0 auto; max-width:100%; scrollbar-width:none; -ms-overflow-style:none; touch-action:pan-x; overscroll-behavior:contain; }
.sxlb__thumbs::-webkit-scrollbar{ display:none; }
.sxlb__thumbs::before, .sxlb__thumbs::after{ content:""; flex:1 0 0; }          /* centres short strips, stays scrollable when long */
.sxlb__th{ appearance:none; -webkit-appearance:none; position:relative; flex:none; width:84px; height:58px; padding:0; margin:0; border:0; border-radius:0; background:#1a1a1a; overflow:hidden; opacity:.5; outline:1px solid transparent; outline-offset:2px; transition:opacity .25s ease, outline-color .25s ease; touch-action:manipulation; }
.sxlb__th img{ display:block; width:100%; height:100%; object-fit:cover; pointer-events:none; }
.sxlb__th:hover{ opacity:.85; }
.sxlb__th[aria-current="true"]{ opacity:1; outline-color:#fff; }
.sxlb__th:focus-visible{ outline-color:#fff; opacity:1; }

/* tablets */
@media (max-width:1024px){
  .sxlb__frame{ inset:0 72px; }
  .sxlb__nav--prev{ left:16px; } .sxlb__nav--next{ right:16px; }
}
/* phones: photo uses the full width, arrows float on it, thumbnails shrink */
@media (max-width:767.98px){
  .sxlb__top{ padding:12px 16px; padding-top:max(12px, env(safe-area-inset-top, 0px)); gap:12px; }
  .sxlb__btn{ width:42px; height:42px; }
  .sxlb__frame{ inset:0; }
  .sxlb__nav{ width:40px; height:40px; margin-top:-20px; background:rgba(10,10,10,.5); border-color:rgba(255,255,255,.25); }
  .sxlb__nav--prev{ left:10px; } .sxlb__nav--next{ right:10px; }
  .sxlb__bottom{ padding:12px 16px 14px; padding-bottom:max(14px, env(safe-area-inset-bottom, 0px)); gap:10px; }
  .sxlb__cap{ font-size:13px; }
  .sxlb__th{ width:62px; height:44px; }
  .sxlb__thumbs{ gap:6px; }
}
/* short landscape phones: give the photo the height */
@media (max-height:480px) and (orientation:landscape){
  .sxlb__top{ padding-top:8px; padding-bottom:8px; }
  .sxlb__bottom{ padding-top:8px; padding-bottom:8px; gap:6px; }
  .sxlb__cap{ display:none; }
  .sxlb__th{ width:56px; height:38px; }
}
@media (prefers-reduced-motion:reduce){
  .sxlb, .sxlb__img, .sxlb__btn, .sxlb__th{ transition:none !important; }
  .sxlb__stage.is-loading .sxlb__spin{ animation-duration:1.6s; }
}


/* Selected Projects: every photo is its own card (24), so the phone swipe dots wrap onto a second row instead of overflowing */
.sx-works .sx-grid + .akm-dots{ flex-wrap:wrap; row-gap:10px; padding:0 16px; }