@font-face {
  font-family: "Akzidenz Grotesk BQ Medium Extended";
  src: url("../assets/fonts/akzidenz-grotesk-medium-extended.otf")
      format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Helvetica LT Std Bold";
  src: url("../assets/fonts/helvetica-lt-std-bold.otf")
      format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Baker Script";
  src: url("../assets/fonts/baker-script.ttf")
      format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --ink: #16140F;
  --ink-soft: #3A362C;
  --paper: #FAF7F0;
  --paper-dim: #F0EBDE;
  --line: rgba(22, 20, 15, 0.12);
  --accent: #E8402C;
  --accent-2: #2B2FEC;
  --lime: #75fa96;
  --muted: #7A7566;
  --dark: #16140F;
  --on-dark: #F4F1E8;
  --on-dark-muted: #9A9788;
  --font-display: "Bricolage Grotesque", "Arial Black", sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;
  --container: 1240px;
  --gutter: clamp(20px, 5vw, 64px);
  --radius: 18px;
  --radius-sm: 10px;
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-soft: cubic-bezier(0.16, 1, 0.3, 1);
}

*, *::before, *::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: auto;
}

body, h1, h2, h3, h4, p, figure {
  margin: 0;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

img, video {
  max-width: 100%;
  display: block;
}

button, input, textarea {
  font: inherit;
  color: inherit;
}

button {
  background: none;
  border: none;
  cursor: pointer;
}

html, body {
  background: var(--paper);
  color: var(--ink);
  overflow-x: hidden;
  width: 100%;
}

body {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

::selection {
  background: var(--ink);
  color: var(--paper);
}

h1, h2, h3 {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.02;
}

a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 2px solid var(--accent-2);
  outline-offset: 3px;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-mono);
  font-size: 12.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 18px;
}

.eyebrow .dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent);
  flex: none;
}

.section-head {
  max-width: 700px;
  padding: 0 var(--gutter);
  margin: 0 auto 64px;
  text-align: left;
}

.section-head h2 {
  font-size: clamp(32px, 5vw, 52px);
}

.section-head__sub {
  margin-top: 18px;
  color: var(--ink-soft);
  font-size: 17px;
  max-width: 46ch;
}

.reveal-up {
  will-change: transform, opacity;
}

.btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px 30px;
  border-radius: 999px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 15px;
  white-space: nowrap;
  transition: transform .5s var(--ease), background-color .3s ease, color .3s ease, border-color .3s ease;
}

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

.btn--primary {
  background: var(--ink);
  color: var(--paper);
}

.btn--primary:hover {
  background: var(--accent);
  color: var(--paper);
}

.btn--ghost {
  background: transparent;
  border: 1.5px solid var(--line);
  color: var(--ink);
}

.btn--ghost:hover {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}

.btn--outline {
  background: transparent;
  border: 1.5px solid var(--ink);
  color: var(--ink);
  padding: 13px 26px;
}

.btn--outline:hover {
  background: var(--ink);
  color: var(--paper);
}

.btn--small {
  padding: 11px 22px;
  font-size: 14px;
}

.cursor-dot, .cursor-ring {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
  border-radius: 50%;
  z-index: 9999;
  transform: translate(-50%, -50%);
  mix-blend-mode: difference;
}

.cursor-dot {
  width: 6px;
  height: 6px;
  background: var(--paper);
}

.cursor-ring {
  width: 34px;
  height: 34px;
  border: 1px solid var(--paper);
  transition: width .25s var(--ease), height .25s var(--ease), opacity .25s ease;
}

.cursor-ring.is-hovering {
  width: 60px;
  height: 60px;
}

@media (hover: none), (pointer: coarse) {
  .cursor-dot, .cursor-ring {
    display: none;
  }
}

.scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  z-index: 999;
  background: transparent;
}

.scroll-progress span {
  display: block;
  height: 100%;
  width: 0%;
  background: var(--accent);
  transform-origin: left;
}

.nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 500;
  padding: 22px 0;
  transition: padding .4s var(--ease), background-color .4s var(--ease), box-shadow .4s var(--ease);
}

.nav__inner {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--gutter);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.nav.is-scrolled {
  padding: 14px 0;
  background: rgba(250, 247, 240, 0.78);
  backdrop-filter: blur(14px) saturate(140%);
  box-shadow: 0 1px 0 var(--line);
}

.nav__logo {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 19px;
  letter-spacing: -0.01em;
}

.nav__logo span {
  color: var(--accent);
}

.nav__links {
  display: flex;
  gap: 32px;
  font-size: 14.5px;
  font-weight: 500;
}

.nav__links a {
  position: relative;
  padding: 4px 0;
}

.nav__links a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .35s var(--ease);
}

.nav__links a:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}

.nav__cta {
  margin-left: 8px;
}

.nav__burger {
  display: none;
  width: 34px;
  height: 22px;
  position: relative;
  flex-direction: column;
  justify-content: space-between;
}

.nav__burger span {
  display: block;
  height: 2px;
  background: var(--ink);
  border-radius: 2px;
  transition: transform .35s var(--ease), opacity .2s ease;
}

.nav__burger[aria-expanded="true"] span:first-child {
  transform: translateY(10px) rotate(45deg);
}

.nav__burger[aria-expanded="true"] span:last-child {
  transform: translateY(-10px) rotate(-45deg);
}

.mobile-menu {
  position: fixed;
  inset: 0;
  z-index: 490;
  background: var(--paper);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 36px;
  padding: 0 var(--gutter);
  transform: translateY(-100%);
  transition: transform .55s var(--ease);
}

.mobile-menu.is-open {
  transform: translateY(0);
}

.mobile-menu nav {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mobile-menu nav a {
  font-family: var(--font-display);
  font-size: 34px;
  font-weight: 700;
}

.mobile-menu .btn {
  width: fit-content;
}

.hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 140px var(--gutter) 100px;
  overflow: hidden;
}

.hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero__glow {
  position: absolute;
  width: 60vw;
  height: 60vw;
  max-width: 900px;
  max-height: 900px;
  left: 50%;
  top: 30%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(232,64,44,0.14), transparent 65%);
  filter: blur(10px);
}

.hero__inner {
  position: relative;
  z-index: 1;
  max-width: var(--container);
  margin: 0 auto;
  width: 100%;
}

.hero__title {
  font-size: clamp(44px, 8.6vw, 118px);
  color: var(--ink);
  max-width: 16ch;
}

.hero__title em {
  font-style: normal;
  color: var(--accent);
}

.hero__title .line {
  display: block;
  overflow: hidden;
}

.hero__title .line-inner {
  display: block;
  transform: translateY(110%);
}

.hero__sub {
  margin-top: 28px;
  max-width: 46ch;
  font-size: clamp(16px, 1.6vw, 19px);
  color: var(--ink-soft);
}

.hero__actions {
  margin-top: 40px;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.hero__scroll-cue {
  position: absolute;
  bottom: 42px;
  left: var(--gutter);
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-mono);
  font-size: 11.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

.hero__scroll-line {
  width: 1px;
  height: 46px;
  background: var(--line);
  position: relative;
  overflow: hidden;
}

.hero__scroll-line i {
  position: absolute;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--ink);
  animation: scrollcue 2.2s ease-in-out infinite;
}

@keyframes scrollcue {
  0% {
    transform: translateY(-100%);
  }

  60% {
    transform: translateY(100%);
  }

  100% {
    transform: translateY(100%);
  }
}

.marquee-strip {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: 22px 0;
  overflow: hidden;
}

.marquee-strip__track {
  display: flex;
  width: max-content;
  animation: marquee 32s linear infinite;
}

.marquee-strip__group {
  display: flex;
  align-items: center;
  gap: 22px;
  padding-right: 22px;
  white-space: nowrap;
}

.marquee-strip__group span {
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: 0.06em;
  color: var(--muted);
}

@keyframes marquee {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

.marquee-strip:hover .marquee-strip__track {
  animation-play-state: paused;
}

.proof {
  background: var(--dark);
  color: var(--on-dark);
  padding: 120px 0 140px;
}

.proof .eyebrow {
  color: var(--on-dark-muted);
}

.proof .section-head h2 {
  color: var(--on-dark);
}

.proof .section-head__sub {
  color: var(--on-dark-muted);
}

.site-footer {
  background: var(--dark);
  color: var(--on-dark);
  padding: 100px var(--gutter) 40px;
}

.site-footer__top {
  max-width: var(--container);
  margin: 0 auto 64px;
}

.site-footer__top .nav__logo {
  font-size: 28px;
}

.site-footer__top p {
  margin-top: 16px;
  color: var(--on-dark-muted);
  max-width: 46ch;
}

.site-footer__grid {
  max-width: var(--container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, max-content);
  gap: 80px;
  padding-bottom: 64px;
  border-bottom: 1px solid rgba(244,241,232,0.12);
}

.site-footer__col {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.site-footer__col h4 {
  font-family: var(--font-mono);
  font-size: 11.5px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--on-dark-muted);
  margin-bottom: 4px;
}

.site-footer__col a {
  font-size: 14.5px;
  color: var(--on-dark-muted);
  transition: color .25s ease;
}

.site-footer__col a:hover {
  color: var(--on-dark);
}

.site-footer__bottom {
  max-width: var(--container);
  margin: 32px auto 0;
  display: flex;
  justify-content: space-between;
  font-size: 12.5px;
  color: var(--on-dark-muted);
  flex-wrap: wrap;
  gap: 10px;
}

@media (max-width: 900px) {
  .nav__links {
    display: none;
  }

  .nav__cta {
    display: none;
  }

  .site-footer__grid {
    grid-template-columns: repeat(2, max-content);
    row-gap: 40px;
  }
}

@media (max-width: 640px) {
  .hero {
    padding-top: 120px;
  }

  .hero__title {
    max-width: 100%;
  }

  .hero__scroll-cue {
    display: none;
  }

  .section-head {
    margin-bottom: 44px;
  }

  .site-footer__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .proof {
    padding: 90px 0 100px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }

  .hero__title .line-inner {
    transform: none !important;
  }
}

.intro-video-hero {
  --intro-green: #75fa96;
  position: relative;
  z-index: 250;
  width: 100%;
  height: 100svh;
  min-height: 620px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  isolation: isolate;
  background: #0a0a0a;
}

.intro-video-hero__video {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center center;
  background: #0a0a0a;
}

.intro-video-hero__wash {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(
        180deg,
        rgba(0, 0, 0, .06) 0%,
        rgba(0, 0, 0, 0) 54%,
        rgba(0, 0, 0, .11) 100%
      );
}

.intro-video-hero__badge {
  position: absolute;
  left: 7%;
  top: 16%;
  z-index: 6;
  width: clamp(108px, 10.5vw, 190px);
  aspect-ratio: 1;
  opacity: 0;
  background: transparent;
  filter: grayscale(1)
      contrast(1.08)
      blur(16px);
  transform: translate(-50%, -50%)
      scale(.82);
  transform-origin: center;
  will-change: opacity, filter, transform;
}

.intro-video-hero__badge img {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  border: 0;
  border-radius: 50%;
  background: transparent;
  clip-path: circle(49% at 50% 50%);
  -webkit-clip-path: circle(49% at 50% 50%);
  mix-blend-mode: multiply;
  box-shadow: none;
  user-select: none;
  pointer-events: none;
}

.intro-video-hero__badge-brush {
  display: none;
}

.intro-video-hero.is-ready .intro-video-hero__badge {
  animation: introBadgeSoftReveal
      1.6s
      cubic-bezier(.22, 1, .36, 1)
      .35s
      forwards;
}

@keyframes introBadgeSoftReveal {
  0% {
    opacity: 0;
    filter: grayscale(1)
        contrast(1.08)
        blur(14px);
    transform: translate(-50%, -50%)
        scale(.82);
  }

  55% {
    opacity: .75;
    filter: grayscale(1)
        contrast(1.08)
        blur(4px);
    transform: translate(-50%, -50%)
        scale(1.04);
  }

  100% {
    opacity: 1;
    filter: grayscale(1)
        contrast(1.08)
        blur(0);
    transform: translate(-50%, -50%)
        scale(1)
        rotate(5deg);
  }
}

.intro-video-hero__journey {
  position: absolute;
  left: 50%;
  bottom: clamp(78px, 10vh, 118px);
  z-index: 8;
  min-width: clamp(100px, 16vw, 260px);
  min-height: clamp(40px, 2.8vw, 48px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 22px;
  border: 1.7px solid #171717;
  border-radius: 999px;
  background: #fff;
  color: #111;
  box-shadow: inset 0 0 0 2px #fff,
      inset 0 0 0 4px #171717,
      0 16px 38px rgba(0, 0, 0, .14);
  transform: translateX(-50%);
  transition: color .32s ease,
      transform .45s var(--ease),
      box-shadow .32s ease;
}

.intro-video-hero__journey span {
  position: relative;
  z-index: 2;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: clamp(12px, 0.75vw, 15px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.02em;
  white-space: nowrap;
  transition: color .32s ease,
      transform .4s var(--ease);
}

.intro-video-hero__journey::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -22px;
  width: clamp(72px, 7vw, 118px);
  height: 2px;
  border-radius: 999px;
  background: var(--intro-green);
  transform: translateX(-50%)
      scaleX(0);
  transform-origin: center;
  opacity: 0;
  transition: transform .48s var(--ease),
      opacity .25s ease;
}

.intro-video-hero__journey:hover,
  .intro-video-hero__journey:focus-visible {
  color: var(--intro-green);
  transform: translateX(-50%)
      translateY(-4px);
  box-shadow: inset 0 0 0 2px #fff,
      inset 0 0 0 4px #171717,
      0 20px 42px rgba(0, 0, 0, .17);
}

.intro-video-hero__journey:hover span,
  .intro-video-hero__journey:focus-visible span {
  color: var(--intro-green);
  transform: scale(1.015);
}

.intro-video-hero__journey:hover::after,
  .intro-video-hero__journey:focus-visible::after {
  opacity: 1;
  transform: translateX(-50%)
      scaleX(1);
}

@media (max-width: 900px) {
  .intro-video-hero {
    min-height: 560px;
  }

  .intro-video-hero__badge {
    left: 30%;
    top: 34%;
    width: clamp(92px, 17vw, 142px);
  }

  .intro-video-hero__journey {
    bottom: 72px;
  }
}

@media (max-width: 640px) {
  .intro-video-hero {
    min-height: 520px;
  }

  .intro-video-hero__video {
    object-position: 52% center;
  }

  .intro-video-hero__badge {
    left: 24%;
    top: 30%;
    width: 94px;
  }

  .intro-video-hero__journey {
    bottom: 58px;
    min-width: 175px;
    min-height: 44px;
    padding-inline: 18px;
  }

  .intro-video-hero__journey span {
    font-size: 10px;
    font-weight: 500;
  }

  .intro-video-hero__journey::after {
    bottom: -17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .intro-video-hero__badge {
    opacity: 1;
    filter: grayscale(1)
        contrast(1.08);
    transform: translate(-50%, -50%);
  }

  .intro-video-hero__badge-brush {
    display: none;
  }
}

.floating-nav-placeholder {
  position: relative;
  width: 100%;
  height: 64px;
  margin: 0;
  padding: 0;
  background: transparent;
  z-index: 9998;
}

.floating-nav {
  position: relative;
  width: 100%;
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0 24px;
  background: transparent;
  z-index: 9999;
  transition: background-color .3s ease;
}

.floating-nav.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
}

.floating-nav__inner {
  position: relative;
  width: 100%;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
}

.floating-nav__links {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  gap: 42px;
  white-space: nowrap;
}

.floating-nav__links a {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #16140f;
  text-decoration: none;
  transition: color .35s ease;
}

.floating-nav.nav-on-dark .floating-nav__links a {
  color: #ffffff;
}

.floating-nav.nav-on-light .floating-nav__links a {
  color: #16140f;
}

.floating-nav__icon {
  position: absolute;
  left: 18px;
  top: 50%;
  width: 55px;
  height: 55px;
  transform: translateY(-50%) translateX(-8px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 5;
  transition: opacity .3s ease, transform .4s var(--ease), visibility .3s ease;
}

.floating-nav.is-fixed .floating-nav__icon, .floating-nav__icon.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(-50%) translateX(0);
}

.floating-nav__icon-image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: translate(-50%, -50%);
  transition: opacity .35s ease;
}

.floating-nav__icon-image--dark {
  opacity: 1;
}

.floating-nav__icon-image--light {
  opacity: 0;
}

.floating-nav.nav-on-dark .floating-nav__icon-image--dark {
  opacity: 0;
}

.floating-nav.nav-on-dark .floating-nav__icon-image--light {
  opacity: 1;
}

.floating-nav.nav-on-light .floating-nav__icon-image--dark {
  opacity: 1;
}

.floating-nav.nav-on-light .floating-nav__icon-image--light {
  opacity: 0;
}

.floating-nav.nav-on-light .nav__burger span {
  background: #16140f;
}

.floating-nav.nav-on-dark .nav__burger span {
  background: #ffffff;
}

@media (max-width: 900px) {
  .floating-nav {
    padding: 0 18px;
  }

  .floating-nav__links {
    display: none;
  }

  .floating-nav__inner {
    justify-content: flex-end;
  }

  .floating-nav__icon {
    left: 14px;
    width: 23px;
    height: 23px;
  }

  .nav__burger {
    display: flex;
  }
}

.hero__media-wall {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100svh;
  z-index: 5;
  pointer-events: none;
  overflow: hidden;
}

.hero__media-column {
  position: absolute;
  top: -28vh;
  height: 156vh;
  width: clamp(150px, 17vw, 290px);
  overflow: visible;
}

.hero__media-column--left {
  left: clamp(-30px, 2vw, 40px);
  transform: rotate(-2.5deg);
}

.hero__media-column--middle {
  left: 50%;
  width: clamp(120px, 13vw, 215px);
  transform: translateX(-50%) rotate(1.5deg);
  opacity: 0.92;
}

.hero__media-column--right {
  left: auto;
  right: clamp(-34px, 2vw, 42px);
  transform: rotate(2.5deg);
}

.hero__media-track {
  display: flex;
  flex-direction: column;
  gap: clamp(22px, 2.2vw, 34px);
  will-change: transform;
  animation-name: globalMediaFloatUp;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

.hero__media-track--slow {
  animation-duration: 42s;
  animation-delay: -8s;
}

.hero__media-track--medium {
  animation-duration: 34s;
  animation-delay: -18s;
}

.hero__media-track--fast {
  animation-duration: 27s;
  animation-delay: -12s;
}

.hero__media-group {
  display: flex;
  flex-direction: column;
  gap: clamp(22px, 2.2vw, 34px);
  flex: none;
}

.hero__media-card {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: clamp(10px, 1.1vw, 18px);
  background: transparent;
  box-shadow: 0 24px 60px rgba(22, 20, 15, 0.18), 0 1px 0 rgba(255, 255, 255, 0.18) inset;
}

.hero__media-card img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform: scale(1.02);
}

@keyframes globalMediaFloatUp {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(0, calc(-50% - 17px), 0);
  }
}

@media (max-width: 900px) {
  .hero__media-column--middle {
    display: none;
  }

  .hero__media-column {
    width: clamp(130px, 25vw, 200px);
  }

  .hero__media-column--left {
    left: -8vw;
  }

  .hero__media-column--right {
    right: -8vw;
  }
}

@media (max-width: 640px) {
  .hero__media-column {
    width: 36vw;
    min-width: 118px;
  }

  .hero__media-column--left {
    left: -14vw;
  }

  .hero__media-column--right {
    right: -14vw;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero__media-track {
    animation: none !important;
  }
}

.hero--mark {
  --mark-hero-background: none;
  position: relative;
  z-index: 3;
  width: 100%;
  min-height: 100svh;
  margin: 0;
  padding: 100px var(--gutter) 60px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  isolation: isolate;
  color: #16140f;
  background: #f5f2eb;
}

.hero--mark .hero-mark__background {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: #f5f2eb;
  background-image: var(--mark-hero-background);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.025);
}

.hero--mark .hero-mark__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: transparent;
  pointer-events: none;
}

.hero--mark .hero-mark__content {
  position: relative;
  z-index: 4;
  width: min(1100px, 92vw);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.hero-mark__logo-wrap {
  width: min(820px, 75vw);
  min-height: clamp(170px, 22vw, 350px);
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero-mark__logo {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  object-fit: contain;
  pointer-events: none;
}

.hero-mark__logo:not([src]), .hero-mark__logo[src=""] {
  visibility: hidden;
}

.hero-mark__powered-video-wrap {
  z-index: 10;
  width: min(560px, 58vw);
  height: clamp(86px, 9vw, 138px);
  margin-top: clamp(-8px, -0.4vw, -2px);
  overflow: hidden;
  background: transparent;
}

.hero-mark__powered-video {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  object-position: center;
  background: transparent;
  pointer-events: none;
}

.hero--mark .hero-mark__actions {
  margin-top: clamp(20px, 2.2vw, 32px);
  justify-content: center;
  gap: clamp(12px, 1.2vw, 18px);
}

.hero--mark .btn--primary {
  border: 1.5px solid #111111;
  background: #111111;
  color: #ffffff;
}

.hero--mark .btn--ghost {
  border-color: rgba(22,20,15,.42);
  color: #16140f;
}

.hero--mark .btn--primary:hover,
  .hero--mark .btn--primary:focus-visible,
  .hero--mark .btn--ghost:hover,
  .hero--mark .btn--ghost:focus-visible {
  border-color: #75fa96;
  background: #75fa96;
  color: #111111;
}

.hero--mark .hero-mark__top-left {
  position: absolute;
  top: 7.5%;
  left: 4.2%;
  z-index: 6;
  font-family: var(--font-display);
  font-size: clamp(13px, 1.25vw, 19px);
  font-weight: 500;
  color: #16140f;
}

.hero--mark .hero-mark__bottom-right {
  position: absolute;
  right: 4.2%;
  z-index: 6;
  font-family: var(--font-display);
  font-size: clamp(11px, 1vw, 16px);
  font-weight: 500;
  color: #16140f;
}

@media (max-width: 900px) {
  .hero-mark__logo-wrap {
    width: min(760px, 84vw);
    min-height: clamp(145px, 30vw, 280px);
  }

  .hero-mark__powered-video-wrap {
    width: min(520px, 72vw);
    height: clamp(78px, 12vw, 120px);
    margin-top: -4px;
  }
}

@media (max-width: 640px) {
  .hero--mark .hero-mark__content {
    width: 94vw;
  }

  .hero-mark__logo-wrap {
    width: 88vw;
    min-height: 150px;
  }

  .hero--mark .hero-mark__top-left {
    top: 24px;
    left: 18px;
  }

  .hero--mark .hero-mark__bottom-right {
    right: 18px;
  }

  .hero--mark .hero-mark__actions {
    width: 100%;
  }

  .hero--mark .hero-mark__actions .btn {
    padding: 13px 22px;
    font-size: 13px;
  }
}

.post-hero-powered-label {
  position: fixed;
  top: 7%;
  right: 3.8%;
  z-index: 9997;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-family: var(--font-mono);
  font-size: clamp(10px, .95vw, 15px);
  font-weight: 500;
  letter-spacing: .36em;
  color: #ffffff;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .28s ease, visibility .28s ease;
}

.post-hero-powered-label.is-visible {
  opacity: 1;
  visibility: visible;
}

.post-hero-powered-label.is-on-light {
  color: #16140f;
}

.post-hero-powered-label.is-on-dark {
  color: #ffffff;
}

@media (max-width: 640px) {
  .post-hero-powered-label {
    top: 22px;
    right: 14px;
    font-size: 10px;
    letter-spacing: .32em;
  }
}

.logo-work-section {
  position: relative;
  width: 100%;
  min-height: 100vh;
  overflow: hidden;
  isolation: isolate;
  background-color: #000000;
  background-image: linear-gradient(
        160deg,
        #090909 0%,
        #040404 48%,
        #000000 100%
      );
  background-size: cover;
  background-position: center;
}

.logo-work-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/logo-man.png");
  background-size: cover;
  background-position: center -90%;
  -webkit-mask-image: url("../assets/images/logo-section-3.svg");
  mask-image: url("../assets/images/logo-section-3.svg");
  -webkit-mask-mode: luminance;
  mask-mode: luminance;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 500% 500%;
  mask-size: 500% 500%;
  z-index: 1;
}

.logo-work-shape {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transform: translate(-50%,-50%);
  opacity: 0;
  pointer-events: none;
  z-index: 2;
}

.logo-work-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: rgba(0, 0, 0, 0.55);
  pointer-events: none;
}

.logo-work-copy {
  position: absolute;
  inset: 0;
  z-index: 10;
  pointer-events: none;
  color: #ffffff;
}

.logo-work-powered {
  position: absolute;
  top: 8%;
  left: 4.5%;
  font-family: var(--font-display);
  font-size: clamp(13px, 1.25vw, 21px);
  font-weight: 500;
}

.logo-work-selected {
  position: absolute;
  left: 3%;
  bottom: 4%;
  z-index: 12;
}

.logo-work-meta {
  display: flex;
  align-items: center;
  gap: clamp(28px, 3vw, 55px);
  margin-left: 8px;
  margin-bottom: 12px;
  font-family: var(--font-display);
  font-size: clamp(18px, 2vw, 34px);
  font-weight: 500;
}

.logo-work-copyright {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(42px, 4vw, 72px);
  height: clamp(42px, 4vw, 72px);
  border: 4px solid #fff;
  border-radius: 50%;
  font-size: clamp(25px, 2.5vw, 44px);
}

.logo-work-selected h2 {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-family: "Arial Black", sans-serif;
  font-size: clamp(70px, 10.5vw, 200px);
  font-weight: 900;
  line-height: .72;
  letter-spacing: -.075em;
  color: #fff;
}

.logo-work-selected h2 span {
  display: block;
  white-space: nowrap;
}

.logo-work-tagline {
  position: absolute;
  right: 4%;
  bottom: 5%;
  font-family: var(--font-display);
  font-size: clamp(11px, 1.1vw, 18px);
  font-weight: 500;
  color: #fff;
}

.vision-mission {
  position: relative;
  width: 100%;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  background: #f5f2eb;
  color: #16140f;
  z-index: 3;
  isolation: isolate;
}

.vision-mission__panel {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: #f5f2eb;
  overflow: hidden;
}

.vision-mission__panel--intro {
  z-index: 1;
}

.vision-mission__panel--vision {
  z-index: 2;
}

.vision-mission__panel--mission {
  z-index: 3;
}

.vision-mission__panel--core {
  z-index: 4;
}

.vision-mission__panel-inner {
  position: relative;
  width: 100%;
  height: 100%;
  padding: clamp(80px, 8vw, 140px) clamp(24px, 5.5vw, 100px);
}

.vision-mission__panel--intro .vision-mission__panel-inner {
  display: grid;
  grid-template-columns: minmax(150px, .55fr) minmax(400px, 1.45fr);
  gap: clamp(50px, 8vw, 150px);
  align-items: start;
}

.vision-mission__eyebrow {
  padding-top: 12px;
  font-family: var(--font-mono);
  font-size: clamp(11px, .82vw, 14px);
  font-weight: 500;
  letter-spacing: .24em;
  color: rgba(22,20,15,.52);
}

.vision-mission__intro-title {
  max-width: 18ch;
  font-family: var(--font-display);
  font-size: clamp(48px, 5vw, 90px);
  font-weight: 500;
  line-height: .98;
  letter-spacing: -.055em;
  color: #16140f;
}

.vision-mission__panel--vision .vision-mission__panel-inner, .vision-mission__panel--mission .vision-mission__panel-inner, .vision-mission__panel--core .vision-mission__panel-inner {
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: center;
  border-top: 1px solid rgba(22,20,15,.18);
}

.vision-mission__number {
  position: absolute;
  top: clamp(70px, 7vw, 120px);
  left: clamp(24px, 5.5vw, 100px);
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: .15em;
  color: rgba(22,20,15,.46);
}

.vision-mission__main {
  grid-column: 2;
  width: 100%;
}

.vision-mission__label {
  display: block;
  margin-bottom: 15px;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .28em;
  color: rgba(22,20,15,.55);
}

.vision-mission__title {
  margin: 0;
  font-family: "Arial Black", sans-serif;
  font-size: clamp(100px, 16vw, 300px);
  font-weight: 900;
  line-height: .72;
  letter-spacing: -.085em;
  color: #16140f;
}

.vision-mission__copy {
  max-width: 38ch;
  margin-top: clamp(45px, 6vw, 90px);
  margin-left: auto;
  font-family: var(--font-body);
  font-size: clamp(16px, 1.3vw, 21px);
  line-height: 1.5;
  color: rgba(22,20,15,.76);
}

@media (max-width: 768px) {
  .vision-mission__panel-inner {
    padding: 80px 20px 50px;
  }

  .vision-mission__panel--intro .vision-mission__panel-inner {
    display: flex;
    flex-direction: column;
    gap: 50px;
  }

  .vision-mission__intro-title {
    font-size: clamp(42px, 11vw, 68px);
  }

  .vision-mission__panel--vision .vision-mission__panel-inner, .vision-mission__panel--mission .vision-mission__panel-inner, .vision-mission__panel--core .vision-mission__panel-inner {
    display: block;
  }

  .vision-mission__number {
    top: 40px;
    left: 20px;
  }

  .vision-mission__main {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 70px;
  }

  .vision-mission__title {
    font-size: clamp(76px, 25vw, 130px);
  }

  .vision-mission__copy {
    margin-top: 40px;
    margin-left: 0;
  }
}

.vision-mission__main--core {
  position: relative;
  display: grid;
  grid-template-columns: minmax(420px, 1.08fr) minmax(420px, 0.92fr);
  gap: clamp(48px, 7vw, 120px);
  align-items: center;
  width: 100%;
  height: 100%;
}

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

.vision-mission__panel--core .vision-mission__title {
  max-width: 5.4ch;
  font-size: clamp(86px, 11.5vw, 210px);
  line-height: 0.76;
  white-space: normal;
}

.core-values__stage {
  position: relative;
  width: 100%;
  height: clamp(460px, 62vh, 680px);
  overflow: hidden;
  z-index: 10;
}

.core-values__scan {
  position: absolute;
  left: -12%;
  top: 0;
  bottom: 0;
  width: 1px;
  background: linear-gradient(to bottom, transparent 4%, rgba(232,64,44,.55) 30%, rgba(232,64,44,.14) 70%, transparent 96%);
  box-shadow: 0 0 14px rgba(232,64,44,.35);
  opacity: 0;
  pointer-events: none;
  z-index: 6;
}

.core-values__group {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-content: center;
  gap: clamp(20px, 3vw, 42px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.core-values__group.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.core-values__group[data-core-group="1"] {
  grid-template-columns: repeat(3, 1fr);
  align-content: start;
}

.core-value {
  position: relative;
  padding: clamp(20px, 2.2vw, 30px) clamp(18px, 2vw, 26px);
  border-top: 1px solid rgba(22,20,15,.16);
  will-change: transform, opacity, filter;
}

.core-value::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  height: 1px;
  width: 0;
  background: var(--accent);
  transition: width .5s var(--ease);
}

.core-value.is-scanned::before {
  width: 100%;
}

.core-value__number {
  display: block;
  margin-bottom: 18px;
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .18em;
  color: rgba(22,20,15,.42);
}

.core-value h3 {
  margin: 0;
  max-width: 13ch;
  font-family: var(--font-display);
  font-size: clamp(24px, 2.1vw, 36px);
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.03em;
  color: #16140f;
  text-wrap: balance;
}

@media (max-width: 900px) {
  .vision-mission__main--core {
    position: absolute;
    left: 20px;
    right: 20px;
    top: 110px;
    bottom: 36px;
    display: block;
    width: auto;
    height: auto;
  }

  .vision-mission__panel--core .vision-mission__title {
    max-width: 6ch;
    font-size: clamp(58px, 17vw, 100px);
  }

  .core-values__stage {
    height: min(56vh, 460px);
    margin-top: 34px;
  }

  .core-values__group {
    grid-template-columns: 1fr;
    align-content: start;
    gap: 18px;
    overflow-y: auto;
  }

  .core-values__group[data-core-group="1"] {
    grid-template-columns: 1fr;
  }

  .core-value h3 {
    max-width: 18ch;
    font-size: clamp(24px, 6.5vw, 34px);
  }
}

.glasses-reveal {
  position: relative;
  width: 100%;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  background: #f5f2eb;
  color: #16140f;
  isolation: isolate;
  z-index: 3;
}

.glasses-reveal__stage {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: radial-gradient(circle at 50% 46%, rgba(255,255,255,.96) 0%, rgba(248,245,238,.98) 45%, #f5f2eb 80%);
}

.glasses-reveal__top {
  position: absolute;
  top: clamp(76px, 7vw, 120px);
  left: clamp(24px, 5vw, 92px);
  right: clamp(24px, 5vw, 92px);
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--font-mono);
  font-size: clamp(10px, 0.8vw, 13px);
  font-weight: 500;
  letter-spacing: .22em;
  color: rgba(22,20,15,.43);
}

.glasses-reveal__circle {
  position: absolute;
  top: 50%;
  width: clamp(500px, 46vw, 900px);
  aspect-ratio: 1;
  border: 1px solid rgba(22,20,15,.11);
  border-radius: 50%;
  pointer-events: none;
}

.glasses-reveal__circle--left {
  left: -24vw;
  transform: translateY(-50%);
}

.glasses-reveal__circle--right {
  right: -24vw;
  transform: translateY(-50%);
}

.glasses-reveal__scene {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.glasses-reveal__outside-text, .glasses-reveal__lens-track {
  position: absolute;
  top: 50%;
  left: 0;
  display: flex;
  align-items: center;
  gap: 72px;
  width: max-content;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  font-family: var(--font-display);
  font-size: clamp(42px, 4.5vw, 82px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.055em;
  transform: translate3d(0,-50%,0);
  will-change: transform;
}

.glasses-reveal__outside-text > span, .glasses-reveal__lens-track > span {
  display: block;
  flex: 0 0 auto;
  white-space: nowrap;
}

.glasses-reveal__outside-text {
  color: rgba(22,20,15,.23);
  z-index: 1;
}

.glasses-reveal__lens-track {
  color: #16140f;
  z-index: 2;
}

.glasses-reveal__glasses {
  --left-lens-x: 6.5%;
  --right-lens-x: 53.5%;
  --lens-y: 15%;
  --lens-width: 40%;
  --lens-height: 70%;
  position: relative;
  width: min(1200px, 80vw);
  z-index: 5;
  isolation: isolate;
}

.glasses-reveal__image {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  margin: 0;
  z-index: 30;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 28px 34px rgba(22,20,15,.14));
}

.glasses-reveal__lens {
  position: absolute;
  top: var(--lens-y);
  width: var(--lens-width);
  height: var(--lens-height);
  z-index: 10;
  overflow: hidden;
  pointer-events: none;
  background: transparent;
  border-radius: 34% 34% 45% 45% / 25% 25% 62% 62%;
}

.glasses-reveal__lens--left {
  left: var(--left-lens-x);
}

.glasses-reveal__lens--right {
  left: var(--right-lens-x);
}

.glasses-reveal__shine {
  display: none;
}

.glasses-reveal__bottom {
  position: absolute;
  left: clamp(24px, 5vw, 92px);
  right: clamp(24px, 5vw, 92px);
  bottom: clamp(30px, 4vw, 66px);
  z-index: 20;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
}

.glasses-reveal__bottom p:first-child {
  font-family: var(--font-mono);
  font-size: clamp(10px, 0.8vw, 13px);
  font-weight: 500;
  letter-spacing: .22em;
  color: rgba(22,20,15,.43);
}

.glasses-reveal__bottom p:last-child {
  max-width: 27ch;
  font-family: var(--font-display);
  font-size: clamp(19px, 1.8vw, 31px);
  font-weight: 500;
  line-height: 1.04;
  letter-spacing: -.04em;
  text-align: right;
  color: rgba(22,20,15,.72);
}

@media (max-width: 1000px) {
  .glasses-reveal__glasses {
    width: 128vw;
  }
}

@media (max-width: 640px) {
  .glasses-reveal__top {
    top: 82px;
  }

  .glasses-reveal__glasses {
    width: 190vw;
  }

  .glasses-reveal__outside-text, .glasses-reveal__lens-track {
    gap: 48px;
    font-size: clamp(38px, 11vw, 62px);
  }

  .glasses-reveal__bottom {
    display: block;
    bottom: 26px;
  }

  .glasses-reveal__bottom p:last-child {
    max-width: 21ch;
    margin-top: 12px;
    font-size: 18px;
    text-align: left;
  }

  .glasses-reveal__circle {
    width: 110vw;
  }

  .glasses-reveal__circle--left {
    left: -70vw;
  }

  .glasses-reveal__circle--right {
    right: -70vw;
  }
}

.mini-brand-curtain {
  position: relative;
  background: #f5f2eb;
  color: #16140f;
  padding: 90px 90px 90px;
  overflow: hidden;
}

.mini-brand-curtain__inner {
  width: min(1380px, calc(100% - 70px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.62fr 1fr;
  gap: 70px;
  align-items: center;
}

.mini-brand-curtain__copy {
  padding-top: 28px;
}

.mini-brand-curtain__eyebrow, .mini-brand-curtain__sub {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: rgba(22,20,15,.45);
}

.mini-brand-curtain__title {
  margin: 26px 0 18px;
  max-width: 8ch;
  font-size: clamp(44px, 5vw, 82px);
  line-height: .95;
}

.mini-brand-curtain__text {
  max-width: 700px;
  margin: 0 0 38px;
  font-size: 18px;
  line-height: 1.55;
  color: rgba(22,20,15,.66);
}

.mini-brand-curtain__visual {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.philosophy-carousel__paragraph {
  display: block;
}

.philosophy-carousel__paragraph + .philosophy-carousel__paragraph {
  margin-top: 1.8em;
}

.philosophy-carousel__word-shell {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding: .06em .12em .12em .12em;
  margin: 0 -.12em -.12em;
}

.philosophy-carousel__word {
  display: inline-block;
  will-change: transform, opacity;
}

.philosophy-carousel__word.is-brand-bold {
  font-weight: 800;
  color: #16140f;
}

.philosophy-carousel__motion-line {
  position: absolute;
  left: 25px;
  bottom: 35px;
  width: min(440px, 84%);
  height: 1px;
  background: rgba(22,20,15,.18);
  overflow: hidden;
}

.philosophy-carousel__motion-line::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #16140f;
  transform: translateX(-101%);
}

.mini-brand-curtain.is-philosophy-switching .philosophy-carousel__motion-line::after {
  animation: philosophyLineSweep .95s cubic-bezier(.22,1,.36,1);
}

@keyframes philosophyLineSweep {
  0% {
    transform: translateX(-101%);
  }

  48% {
    transform: translateX(0%);
  }

  100% {
    transform: translateX(101%);
  }
}

.philosophy-carousel__controls {
  position: relative;
  margin-top: 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  z-index: 20;
}

.philosophy-carousel__arrow {
  position: relative;
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(22,20,15,.18);
  border-radius: 50%;
  overflow: hidden;
}

.philosophy-carousel__arrow::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  transform: scale(0);
  transition: transform .42s var(--ease);
}

.philosophy-carousel__arrow:hover {
  color: #f5f2eb;
  border-color: #16140f;
  transform: scale(1.06);
}

.philosophy-carousel__arrow:hover::before {
  transform: scale(1);
}

.philosophy-carousel__arrow svg {
  position: relative;
  z-index: 1;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.philosophy-carousel__status {
  min-width: 82px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .14em;
  color: rgba(22,20,15,.48);
}

.philosophy-carousel__status i {
  position: relative;
  display: block;
  height: 1px;
  background: rgba(22,20,15,.18);
  overflow: hidden;
}

.philosophy-carousel__status i::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #16140f;
  transform-origin: left center;
  transform: scaleX(.5);
  transition: transform .7s var(--ease);
}

.mini-brand-curtain[data-philosophy-theme="cheetah"] .philosophy-carousel__status i::after {
  transform: scaleX(1);
}

.philosophy-title-row {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 30px;
  margin: 26px 0 18px;
}

.philosophy-title-row .mini-brand-curtain__title {
  margin: 0;
  flex: 0 1 auto;
}

.philosophy-title-images {
  position: relative;
  flex: 0 0 auto;
  width: clamp(190px, 20vw, 270px);
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 8px;
  isolation: isolate;
}

.philosophy-title-image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transition: opacity .65s ease, transform .9s var(--ease), filter .65s ease;
}

.philosophy-title-image--orchid {
  z-index: 2;
  opacity: 1;
  filter: blur(0);
  transform: translateX(0) scale(1) rotate(0deg);
}

.philosophy-title-image--cheetah {
  z-index: 1;
  opacity: 0;
  filter: blur(8px);
  transform: translateX(45px) scale(1.12) rotate(4deg);
}

.mini-brand-curtain[data-philosophy-theme="cheetah"] .philosophy-title-image--orchid {
  opacity: 0;
  filter: blur(8px);
  transform: translateX(-45px) scale(.9) rotate(-4deg);
}

.mini-brand-curtain[data-philosophy-theme="cheetah"] .philosophy-title-image--cheetah {
  z-index: 3;
  opacity: 1;
  filter: blur(0);
  transform: translateX(0) scale(1) rotate(0deg);
}

.logo-curtain-v3 {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow: visible;
}

.logo-curtain-v3__stage {
  position: relative;
  width: min(760px, 100%);
  margin: 0 auto;
  overflow: hidden;
  isolation: isolate;
}

.logo-curtain-v3__canvas {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  pointer-events: none;
}

.logo-curtain-v3__logo {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  opacity: 1;
  visibility: visible;
  transform: none;
  object-fit: contain;
  object-position: top left;
  pointer-events: none;
  user-select: none;
}

@media (max-width: 1100px) {
  .mini-brand-curtain__inner {
    grid-template-columns: 1fr;
    gap: 46px;
  }

  .mini-brand-curtain__copy {
    padding-top: 0;
  }

  .mini-brand-curtain__title {
    max-width: none;
  }
}

@media (max-width: 700px) {
  .mini-brand-curtain {
    padding: 90px 0 80px;
  }

  .mini-brand-curtain__inner {
    width: min(100%, calc(100% - 34px));
    gap: 38px;
  }

  .mini-brand-curtain__title {
    font-size: 42px;
  }

  .mini-brand-curtain__text {
    font-size: 16px;
  }

  .philosophy-title-row {
    gap: 14px;
  }

  .philosophy-title-images {
    width: 95px;
    border-radius: 6px;
  }

  .philosophy-carousel__motion-line {
    width: 100%;
  }

  .philosophy-carousel__controls {
    width: 100%;
    justify-content: space-between;
  }

  .philosophy-carousel__arrow {
    width: 48px;
    height: 48px;
    flex-basis: 48px;
  }
}

#brand-showcase.bs-showcase {
  --bs-ink: #050505;
  --bs-green: #75fa96;
  --bs-muted: rgba(245, 242, 235, .56);
  position: relative;
  width: 100%;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background: var(--bs-ink);
  color: #f5f2eb;
}

#brand-showcase .bs-showcase__viewport {
  position: relative;
  width: 100%;
  height: 100svh;
  min-height: 640px;
  overflow: hidden;
}

#brand-showcase .bs-showcase__ghost {
  position: absolute;
  left: 50%;
  top: 48%;
  transform: translate(-50%, -50%);
  z-index: 1;
  width: max-content;
  white-space: nowrap;
  pointer-events: none;
  font-family: "Arial Black", var(--font-display);
  font-size: clamp(120px, 20vw, 420px);
  font-weight: 900;
  letter-spacing: -.09em;
  color: rgba(245, 242, 235, .035);
}

#brand-showcase .bs-showcase__top {
  position: absolute;
  top: clamp(72px, 7vw, 116px);
  left: clamp(20px, 4vw, 64px);
  right: clamp(20px, 4vw, 64px);
  z-index: 20;
  display: flex;
  justify-content: space-between;
  font-family: var(--font-mono);
  font-size: clamp(10px, .78vw, 13px);
  letter-spacing: .22em;
  color: var(--bs-muted);
}

#brand-showcase .bs-showcase__stage {
  position: absolute;
  inset: 0;
  z-index: 10;
  touch-action: pan-y;
}

#brand-showcase .bs-slide {
  --bs-x: 0px;
  --bs-scale: 1;
  --bs-opacity: 1;
  --bs-brightness: 1;
  --bs-rotate: 0deg;
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(62vw, 1040px);
  height: min(58vh, 640px);
  margin: 0;
  transform: translate3d(calc(-50% + var(--bs-x)), -50%, 0) scale(var(--bs-scale)) rotateY(var(--bs-rotate));
  opacity: var(--bs-opacity);
  filter: brightness(var(--bs-brightness));
  transform-origin: center center;
  transition: transform .82s cubic-bezier(.76,0,.24,1), opacity .6s ease, filter .6s ease;
  will-change: transform, opacity, filter;
}

#brand-showcase .bs-slide.is-no-transition {
  transition: none;
}

#brand-showcase .bs-slide:not(.is-active) {
  pointer-events: none;
}

#brand-showcase .bs-card {
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: hidden;
  border-radius: 3px;
  background: #141414;
  box-shadow: 0 44px 100px rgba(0,0,0,.48);
}

#brand-showcase .bs-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  opacity: 1;
  visibility: visible;
}

#brand-showcase .bs-card__shade {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(180deg, rgba(0,0,0,.02) 20%, rgba(0,0,0,.66) 100%);
  pointer-events: none;
}

#brand-showcase .bs-card__info {
  position: absolute;
  left: clamp(18px,2.2vw,40px);
  right: clamp(18px,2.2vw,40px);
  bottom: clamp(16px,2vw,34px);
  z-index: 5;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  pointer-events: none;
}

#brand-showcase .bs-card__name {
  max-width: 14ch;
  font-family: var(--font-display);
  font-size: clamp(20px,2.2vw,40px);
  font-weight: 600;
  line-height: .95;
  letter-spacing: -.04em;
  text-transform: uppercase;
  color: #fff;
}

#brand-showcase .bs-card__index {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .16em;
  color: rgba(255,255,255,.62);
}

#brand-showcase .bs-scan {
  position: absolute;
  inset: 0;
  z-index: 6;
  opacity: 0;
  pointer-events: none;
}

#brand-showcase .bs-slide.is-scanning .bs-scan {
  opacity: 1;
}

#brand-showcase .bs-scan__line {
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(180deg, transparent, var(--bs-green), transparent);
  box-shadow: 0 0 18px rgba(117,250,150,.7);
  transform: translateX(-6%);
}

#brand-showcase .bs-slide.is-scanning .bs-scan__line {
  animation: bsScanLine .9s ease-in-out;
}

@keyframes bsScanLine {
  0% {
    transform: translateX(-6%);
    opacity: 0;
  }

  10% {
    opacity: 1;
  }

  90% {
    opacity: 1;
  }

  100% {
    transform: translateX(106%);
    opacity: 0;
  }
}

#brand-showcase .bs-scan__grid {
  position: absolute;
  inset: 0;
  opacity: 0;
  background-image: linear-gradient(rgba(117,250,150,.14) 1px, transparent 1px), linear-gradient(90deg, rgba(117,250,150,.14) 1px, transparent 1px);
  background-size: 34px 34px;
}

#brand-showcase .bs-slide.is-scanning .bs-scan__grid {
  animation: bsGridFade .9s ease-in-out;
}

@keyframes bsGridFade {
  0%, 100% {
    opacity: 0;
  }

  35%, 65% {
    opacity: 1;
  }
}

#brand-showcase .bs-scan__labels {
  position: absolute;
  top: clamp(16px,2vw,30px);
  left: clamp(16px,2vw,30px);
  display: flex;
  flex-direction: column;
  gap: 8px;
  opacity: 0;
}

#brand-showcase .bs-scan__labels span {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .16em;
  color: var(--bs-green);
  background: rgba(5,5,5,.42);
  padding: 4px 8px;
  border: 1px solid rgba(117,250,150,.3);
  border-radius: 2px;
  width: fit-content;
}

#brand-showcase .bs-slide.is-scanning .bs-scan__labels {
  animation: bsLabelsFade .95s ease-in-out;
}

@keyframes bsLabelsFade {
  0%, 100% {
    opacity: 0;
    transform: translateY(4px);
  }

  30%, 70% {
    opacity: 1;
    transform: translateY(0);
  }
}

#brand-showcase .bs-scan__confidence {
  position: absolute;
  bottom: clamp(16px,2vw,30px);
  right: clamp(16px,2vw,30px);
  font-family: var(--font-mono);
  font-size: clamp(20px,2.2vw,34px);
  color: var(--bs-green);
  opacity: 0;
  text-align: right;
}

#brand-showcase .bs-scan__confidence small {
  display: block;
  margin-top: 2px;
  font-size: 9px;
  letter-spacing: .2em;
  color: rgba(245,242,235,.6);
}

#brand-showcase .bs-slide.is-scanning .bs-scan__confidence {
  animation: bsConfidenceFade .95s ease-in-out;
}

@keyframes bsConfidenceFade {
  0%, 100% {
    opacity: 0;
  }

  25%, 75% {
    opacity: 1;
  }
}

#brand-showcase .bs-showcase__controls {
  position: absolute;
  inset: 50% clamp(16px,3vw,54px) auto;
  transform: translateY(-50%);
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  pointer-events: none;
}

#brand-showcase .bs-arrow {
  width: clamp(52px,5vw,78px);
  height: clamp(52px,5vw,78px);
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.28);
  background: rgba(5,5,5,.35);
  color: #fff;
  display: grid;
  place-items: center;
  pointer-events: auto;
  backdrop-filter: blur(10px);
  transition: transform .4s ease, background-color .3s ease, color .3s ease;
}

#brand-showcase .bs-arrow:hover {
  transform: scale(1.07);
  background: #fff;
  color: #050505;
}

#brand-showcase .bs-arrow svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#brand-showcase .bs-arrow:disabled {
  opacity: .5;
  cursor: wait;
}

#brand-showcase .bs-showcase__note {
  position: absolute;
  left: 50%;
  bottom: -32px;
  transform: translateX(-50%);
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: .22em;
  color: rgba(255,255,255,.4);
  white-space: nowrap;
}

#brand-showcase .bs-showcase__bottom {
  position: absolute;
  left: clamp(20px,4vw,64px);
  right: clamp(20px,4vw,64px);
  bottom: clamp(30px,4vw,58px);
  z-index: 30;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
}

#brand-showcase .bs-showcase__bottom-left h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(24px,2.8vw,50px);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: -.05em;
  color: #fff;
}

#brand-showcase .bs-showcase__bottom-left p {
  margin: 8px 0 0;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .14em;
  color: var(--bs-muted);
}

#brand-showcase .bs-showcase__instruction {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .18em;
  color: rgba(245,242,235,.45);
}

#brand-showcase .bs-showcase__progress {
  position: absolute;
  left: clamp(20px,4vw,64px);
  right: clamp(20px,4vw,64px);
  bottom: 18px;
  height: 1px;
  background: rgba(255,255,255,.16);
  z-index: 30;
  overflow: hidden;
}

#brand-showcase .bs-showcase__progress span {
  display: block;
  height: 100%;
  background: #fff;
  transform-origin: left center;
  transform: scaleX(calc(1 / 14));
  transition: transform .6s cubic-bezier(.22,1,.36,1);
}

@media (max-width: 900px) {
  #brand-showcase .bs-slide {
    width: 80vw;
    height: 54vh;
  }

  #brand-showcase .bs-showcase__instruction {
    display: none;
  }
}

@media (max-width: 640px) {
  #brand-showcase .bs-slide {
    width: 86vw;
    height: 48vh;
  }

  #brand-showcase .bs-showcase__note {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  #brand-showcase .bs-slide {
    transition: opacity .3s ease;
  }

  #brand-showcase .bs-scan, #brand-showcase .bs-scan__line, #brand-showcase .bs-scan__grid,
    #brand-showcase .bs-scan__labels, #brand-showcase .bs-scan__confidence {
    animation: none !important;
    opacity: 0 !important;
  }
}

.visual-archive {
  position: relative;
  z-index: 270;
  min-height: 112svh;
  overflow: hidden;
  isolation: isolate;
}

.visual-archive__grid, .visual-archive__wash {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.visual-archive__grid {
  z-index: -3;
  background-image: linear-gradient(var(--archive-line) 1px, transparent 1px), linear-gradient(90deg, var(--archive-line) 1px, transparent 1px);
  background-size: 80px 80px;
  -webkit-mask-image: radial-gradient(circle at 63% 50%, #000 0%, transparent 73%);
  mask-image: radial-gradient(circle at 63% 50%, #000 0%, transparent 73%);
}

.visual-archive__inner {
  min-height: 112svh;
  padding: clamp(90px, 9vw, 145px) clamp(24px, 5vw, 82px) 0;
  display: flex;
  flex-direction: column;
}

.visual-archive__topline {
  display: grid;
  grid-template-columns: max-content 1fr max-content;
  align-items: center;
  gap: 20px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .18em;
  color: var(--archive-soft);
}

.visual-archive__topline i {
  display: block;
  height: 1px;
  background: var(--archive-line);
  animation: archiveLineBreath 5s ease-in-out infinite;
}

.visual-archive__layout {
  flex: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(380px, .94fr);
  align-items: center;
  gap: clamp(48px, 7vw, 130px);
  padding: clamp(72px, 8vw, 126px) 0 clamp(86px, 8vw, 120px);
}

.visual-archive__copy {
  position: relative;
  z-index: 3;
  overflow: visible;
}

.visual-archive__eyebrow {
  margin-bottom: 24px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .24em;
  color: var(--archive-soft);
}

.visual-archive__title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  width: max-content;
  max-width: 100%;
  overflow: visible;
  font-size: clamp(62px, 8.25vw, 150px);
  font-weight: 700;
  text-transform: uppercase;
}

.visual-archive__title-line {
  display: block;
  width: max-content;
  max-width: none;
  overflow: visible;
  padding: .13em .16em .15em .025em;
  margin: -.12em 0;
}

.visual-archive__title-line > span {
  display: block;
  overflow: visible;
  white-space: nowrap;
}

.visual-archive__title-line--ideas {
  margin-bottom: -.20em;
}

.visual-archive__title-line--signature {
  position: relative;
  z-index: 2;
  margin-top: -.18em;
  margin-bottom: -.23em;
  padding: .12em 0 .18em;
}

.visual-archive__title-line--experiences {
  margin-top: -.17em;
}

.visual-archive__become-handwritten {
  display: inline-block;
  padding: 0 .13em .06em .02em;
  text-transform: none;
  white-space: nowrap;
  transform-origin: left center;
}

.visual-archive__description {
  margin-top: clamp(34px, 4vw, 58px);
  font-size: clamp(15px, 1.25vw, 19px);
  color: var(--archive-soft);
}

.visual-archive__button {
  position: relative;
  margin-top: 34px;
  min-width: 250px;
  padding: 17px 21px 17px 25px;
  border: 1px solid var(--archive-ink);
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  overflow: hidden;
  background: var(--archive-ink);
  color: #fff;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .14em;
  transition: color .38s ease, transform .45s var(--ease);
}

.visual-archive__button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #75fa96;
  transform: translateX(-102%);
  transition: transform .55s var(--ease);
}

.visual-archive__button:hover::before {
  transform: translateX(0);
}

.visual-archive__button:hover {
  color: var(--archive-ink);
}

.visual-archive__button span, .visual-archive__button i {
  position: relative;
  z-index: 1;
}

.visual-archive__button i {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-style: normal;
  background: rgba(255,255,255,.12);
  transition: transform .45s var(--ease), background-color .3s ease;
}

.visual-archive__button:hover i {
  transform: rotate(45deg);
  background: rgba(17,16,13,.12);
}

.visual-archive__kinetic {
  position: relative;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  will-change: transform;
}

.visual-archive__footer {
  margin: 0 calc(clamp(24px, 5vw, 82px) * -1);
  border-top: 1px solid var(--archive-line);
  overflow: hidden;
}

.visual-archive__ticker {
  overflow: hidden;
  padding: 22px 0;
}

.visual-archive__ticker-track {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 28px;
  animation: archiveTicker 25s linear infinite;
}

.visual-archive__ticker-track span, .visual-archive__ticker-track i {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .2em;
  white-space: nowrap;
  color: var(--archive-soft);
}

.visual-archive__ticker-track i {
  font-style: normal;
  color: var(--archive-ink);
}

@keyframes archiveLineBreath {
  50% {
    transform: scaleX(.88);
    opacity: .45;
  }
}

@keyframes archiveTicker {
  to {
    transform: translateX(-50%);
  }
}

@media (max-width: 1000px) {
  .visual-archive {
    min-height: auto;
  }

  .visual-archive__inner {
    min-height: auto;
  }

  .visual-archive__layout {
    grid-template-columns: 1fr;
  }

  .visual-archive__kinetic {
    width: min(560px, 76vw);
    margin-top: 10px;
  }

  .visual-archive__title {
    width: 100%;
    font-size: clamp(64px, 13vw, 124px);
  }
}

@media (max-width: 700px) {
  .visual-archive__inner {
    padding: 88px 22px 0;
  }

  .visual-archive__topline {
    grid-template-columns: 1fr auto;
  }

  .visual-archive__topline i {
    display: none;
  }

  .visual-archive__layout {
    padding: 64px 0 76px;
  }

  .visual-archive__title {
    font-size: clamp(54px, 16vw, 90px);
    line-height: .74;
  }

  .visual-archive__kinetic {
    width: min(440px, 90vw);
  }

  .visual-archive__button {
    width: 100%;
  }

  .visual-archive__footer {
    margin: 0 -22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .visual-archive__orbit, .visual-archive__core, .visual-archive__satellite, .visual-archive__orbit-word, .visual-archive__ticker-track, .visual-archive__topline i {
    animation: none !important;
  }
}

:root {
  --archive-modal-width: min(1180px, 92vw);
  --archive-modal-height: calc(100dvh - 96px);
  --archive-modal-radius: 22px;
}

html.visual-archive-modal-open, body.visual-archive-modal-open {
  overflow: hidden;
  overscroll-behavior: none;
}

.visual-archive-modal {
  position: fixed;
  inset: 0;
  z-index: 500000;
  width: 100vw;
  height: 100dvh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .45s ease, visibility .45s ease;
}

.visual-archive-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.visual-archive-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(8,8,8,.5);
  backdrop-filter: blur(20px) saturate(70%);
  -webkit-backdrop-filter: blur(20px) saturate(70%);
  touch-action: none;
}

.visual-archive-modal__panel {
  position: relative;
  z-index: 2;
  width: var(--archive-modal-width);
  height: var(--archive-modal-height);
  max-height: var(--archive-modal-height);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(17,16,13,.16);
  border-radius: var(--archive-modal-radius);
  background: #fff;
  color: #11100d;
  box-shadow: 0 50px 140px rgba(0,0,0,.4);
  transform: translateY(48px) scale(.92);
  opacity: 0;
  filter: blur(6px);
  transition: transform .62s var(--ease), opacity .42s ease, filter .5s ease;
}

.visual-archive-modal.is-open .visual-archive-modal__panel {
  transform: translateY(0) scale(1);
  opacity: 1;
  filter: blur(0);
}

.visual-archive-modal__scroll {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y;
  flex: 1;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: #11100d transparent;
}

.visual-archive-modal__scroll::-webkit-scrollbar {
  width: 8px;
}

.visual-archive-modal__scroll::-webkit-scrollbar-track {
  background: transparent;
}

.visual-archive-modal__scroll::-webkit-scrollbar-thumb {
  background: #11100d;
  border-radius: 999px;
}

.visual-archive-modal__header {
  position: sticky;
  top: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: clamp(20px, 3vw, 34px) clamp(22px, 4vw, 44px);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(17,16,13,.1);
}

.visual-archive-modal__header p {
  margin-bottom: 8px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: .18em;
  color: rgba(17,16,13,.52);
}

.visual-archive-modal__header h2 {
  font-size: clamp(28px, 3.6vw, 52px);
  line-height: .9;
  letter-spacing: -.05em;
}

.visual-archive-modal__close {
  position: relative;
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1px solid #11100d;
  background: #fff;
  transition: transform .4s var(--ease), background-color .3s ease;
}

.visual-archive-modal__close:hover {
  transform: rotate(90deg);
  background: #75fa96;
}

.visual-archive-modal__close span {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 20px;
  height: 1.5px;
  background: #11100d;
}

.visual-archive-modal__close span:first-child {
  transform: translate(-50%,-50%) rotate(45deg);
}

.visual-archive-modal__close span:last-child {
  transform: translate(-50%,-50%) rotate(-45deg);
}

.visual-archive-modal__body {
  padding: 0 clamp(22px, 4vw, 44px) clamp(28px, 4vw, 48px);
}

.visual-archive-modal__intro {
  max-width: 70ch;
  margin: 22px 0 30px;
  color: rgba(17,16,13,.58);
  font-size: 13.5px;
  line-height: 1.6;
}

.visual-archive-modal__gallery {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.visual-archive-modal__item {
  position: relative;
  width: 100%;
  margin: 0;
  border-radius: 0;
  overflow: hidden;
  line-height: 0;
}

.visual-archive-modal__item img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.visual-archive-modal__item figcaption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 16px;
  z-index: 4;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  color: #fff;
}

.visual-archive-modal__item figcaption span {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: .18em;
}

.visual-archive-modal__item figcaption strong {
  font-family: var(--font-display);
  font-size: 26px;
  line-height: 1;
}

.visual-archive-modal__item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 60%, rgba(0,0,0,.55));
  pointer-events: none;
}

@media (max-width: 900px) {
  :root {
    --archive-modal-width: min(94vw, 900px);
    --archive-modal-height: calc(100dvh - 48px);
  }
}

@media (max-width: 700px) {
  :root {
    --archive-modal-width: calc(100vw - 16px);
    --archive-modal-height: calc(100dvh - 16px);
    --archive-modal-radius: 16px;
  }

  .visual-archive-modal {
    padding: 8px;
  }
}

.cap-showcase {
  --cap-line: rgba(245,242,235,.14);
  position: relative;
  width: 100%;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background: #0c0b09;
  color: #f5f2eb;
  padding: clamp(70px, 8vw, 110px) 0 0;
}

.cap-showcase__grid {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: .18;
  pointer-events: none;
  background-image: linear-gradient(var(--cap-line) 1px, transparent 1px), linear-gradient(90deg, var(--cap-line) 1px, transparent 1px);
  background-size: 76px 76px;
  -webkit-mask-image: radial-gradient(circle at 50% 40%, #000 0%, transparent 76%);
  mask-image: radial-gradient(circle at 50% 40%, #000 0%, transparent 76%);
}

.cap-showcase__top {
  position: relative;
  z-index: 3;
  display: flex;
  justify-content: space-between;
  padding: 0 clamp(22px, 4vw, 64px) clamp(40px, 5vw, 64px);
  font-family: var(--font-mono);
  font-size: clamp(10px, .78vw, 13px);
  letter-spacing: .22em;
  color: rgba(245,242,235,.5);
}

.cap-showcase__quad {
  position: relative;
  z-index: 2;
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 clamp(22px, 4vw, 64px);
  display: grid;
  grid-template-columns: 1fr min(360px, 30vw) 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: clamp(20px, 3vw, 56px);
  row-gap: clamp(48px, 6vw, 96px);
}

.cap-item {
  display: flex;
  flex-direction: column;
  gap: 22px;
  opacity: 0;
  transform: translateY(28px);
  filter: blur(6px);
  will-change: transform, opacity, filter;
}

.cap-item--tl {
  grid-column: 1;
  grid-row: 1;
  align-items: flex-start;
  text-align: left;
}

.cap-item--tr {
  grid-column: 3;
  grid-row: 1;
  align-items: flex-end;
  text-align: right;
}

.cap-item--bl {
  grid-column: 1;
  grid-row: 2;
  align-items: flex-start;
  text-align: left;
}

.cap-item--br {
  grid-column: 3;
  grid-row: 2;
  align-items: flex-end;
  text-align: right;
}

.cap-item__text {
  max-width: 30ch;
  font-size: clamp(14px, 1.1vw, 17px);
  line-height: 1.5;
  color: rgba(245,242,235,.72);
}

.cap-item__circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(120px, 11vw, 168px);
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid rgba(245,242,235,.42);
  font-family: var(--font-display);
  font-size: clamp(13px, 1vw, 16px);
  letter-spacing: -.01em;
  text-align: center;
  padding: 8px;
  transition: border-color .4s ease, transform .4s var(--ease), background-color .4s ease;
}

.cap-item:hover .cap-item__circle {
  border-color: #75fa96;
  transform: scale(1.06);
  background: rgba(117,250,150,.06);
}

.cap-showcase__portrait {
  grid-column: 2;
  grid-row: 1 / span 2;
  position: relative;
  width: 100%;
  aspect-ratio: 3 / 4;
  border-radius: 4px;
  overflow: hidden;
  opacity: 0;
  transform: scale(.92);
  filter: blur(10px);
  will-change: transform, opacity, filter;
}

.cap-showcase__portrait-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: linear-gradient(160deg, #1c1a16, #050505);
  border: 1px dashed rgba(245,242,235,.28);
}

.cap-showcase__portrait-placeholder span {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .2em;
  color: rgba(245,242,235,.6);
}

.cap-showcase__portrait-placeholder small {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: .1em;
  color: rgba(245,242,235,.35);
}

.cap-showcase__banner {
  z-index: 2;
  margin-top: clamp(56px, 7vw, 100px);
}

.cap-showcase__banner-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: linear-gradient(140deg, #1c2e22, #0b1310);
}

.cap-showcase__banner-placeholder--alt {
  background: linear-gradient(140deg, #10241f, #050b09);
}

.cap-showcase__banner-placeholder span {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .2em;
  color: rgba(245,242,235,.65);
}

.cap-showcase__banner-placeholder small {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: .1em;
  color: rgba(245,242,235,.35);
}

.cap-showcase__banner-logo {
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 18px;
  color: #fff;
}

.cap-showcase--two .cap-showcase__seam {
  position: absolute;
  left: 0;
  right: 0;
  top: -1px;
  height: clamp(80px, 12vw, 180px);
  z-index: 1;
  background: linear-gradient(180deg, #0c0b09 0%, rgba(12,11,9,0) 100%);
  pointer-events: none;
}

@media (max-width: 900px) {
  .cap-showcase__quad {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    row-gap: 40px;
  }

  .cap-item--tl, .cap-item--tr, .cap-item--bl, .cap-item--br {
    grid-column: 1;
    align-items: center;
    text-align: center;
  }

  .cap-item--tl {
    grid-row: 2;
  }

  .cap-item--tr {
    grid-row: 3;
  }

  .cap-item--bl {
    grid-row: 4;
  }

  .cap-item--br {
    grid-row: 5;
  }

  .cap-showcase__portrait {
    grid-column: 1;
    grid-row: 1;
    aspect-ratio: 4/3;
    max-width: 480px;
    margin: 0 auto;
  }

  .cap-item__text {
    max-width: 42ch;
  }
}

@media (max-width: 640px) {
  .cap-showcase {
    padding-top: 64px;
  }

  .cap-showcase__top {
    padding-bottom: 28px;
  }

  .cap-item__circle {
    width: 108px;
    font-size: 12px;
  }

  .cap-showcase__banner {
    height: 220px;
    margin-top: 44px;
  }

  .cap-showcase__banner-mark {
    left: 18px;
    bottom: 16px;
    gap: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cap-item, .cap-showcase__portrait {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

.cap-showcase__portrait-media,
  .cap-showcase__banner-media {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: inherit;
  background: rgba(255,255,255,0.03);
}

.cap-showcase__portrait-media img,
  .cap-showcase__banner-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.cap-showcase__portrait-media.is-empty img,
  .cap-showcase__banner-media.is-empty img {
  opacity: 0;
}

.cap-showcase__empty-note {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 20px;
  pointer-events: none;
}

.cap-showcase__empty-note span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  min-height: 52px;
  padding: 12px 18px;
  border: 1px dashed rgba(255,255,255,0.35);
  border-radius: 999px;
  color: rgba(255,255,255,0.72);
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  background: rgba(255,255,255,0.03);
}

.cap-showcase__banner {
  position: relative !important;
  width: 100% !important;
  height: clamp(420px, 55vw, 720px) !important;
  min-height: 420px !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.cap-showcase__banner-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

.cap-showcase__banner-video {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scale(1.01);
  pointer-events: none;
}

.cap-showcase__banner-fade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.06) 0%,
        rgba(0, 0, 0, 0.18) 100%
      ) !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

.cap-showcase__banner-mark {
  right: clamp(24px, 4vw, 70px) !important;
  pointer-events: none !important;
}

.cap-showcase__banner-media {
  background: #000;
}

.cap-showcase__banner-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cap-showcase__banner-mark {
  position: absolute !important;
  left: clamp(24px, 4vw, 70px) !important;
  bottom: clamp(24px, 4vw, 60px) !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

.cap-showcase__banner-logo {
  object-position: center !important;
  flex-shrink: 0 !important;
}

.cap-showcase__banner-tag {
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.18em;
  white-space: nowrap;
  color: #fff;
}

.cap-showcase__banner-logo {
  display: block !important;
  width: 58px !important;
  height: 58px !important;
  object-fit: contain !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

.proof--about {
  --about-green: #75fa96;
  --about-green-rgb: 117, 250, 150;
  --about-cream: #f5f2eb;
  --about-muted: rgba(245, 242, 235, 0.58);
  --about-mouse-x: 78%;
  --about-mouse-y: 42%;
  position: relative;
  z-index: 3;
  padding: 0;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  background: #020302;
  color: var(--about-cream);
}

.proof--about::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
        112deg,
        transparent 0 47.2%,
        rgba(255, 255, 255, 0.045) 47.26% 47.36%,
        transparent 47.42%
      ),
      linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.025),
        transparent 18%,
        transparent 80%,
        rgba(0, 0, 0, 0.48)
      );
}

.proof--about::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(
        circle at var(--about-mouse-x) var(--about-mouse-y),
        rgba(var(--about-green-rgb), 0.13),
        rgba(var(--about-green-rgb), 0.035) 15%,
        transparent 34%
      );
  opacity: 0.88;
  transition: opacity 0.45s ease;
}

.about-studio__sticky {
  position: sticky;
  top: 0;
  z-index: 6;
  display: flex;
  flex-direction: column;
  padding: clamp(96px, 8.5vw, 146px)
      clamp(24px, 5vw, 86px)
      clamp(92px, 8vw, 134px);
}

.about-studio__layout {
  position: relative;
  z-index: 7;
  width: min(1700px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(330px, 0.92fr)
      minmax(460px, 1.34fr)
      minmax(270px, 0.78fr);
  gap: clamp(42px, 5vw, 96px);
  align-items: center;
}

.about-studio__grid {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0.42;
  pointer-events: none;
  background-image: linear-gradient(
        rgba(var(--about-green-rgb), 0.055) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.038) 1px,
        transparent 1px
      );
  background-size: 72px 72px;
  -webkit-mask-image: radial-gradient(circle at 52% 50%, #000 0 42%, transparent 84%);
  mask-image: radial-gradient(circle at 52% 50%, #000 0 42%, transparent 84%);
  will-change: background-position;
}

.about-studio__glow {
  position: absolute;
  top: 50%;
  right: 3vw;
  z-index: 1;
  width: min(560px, 44vw);
  aspect-ratio: 1;
  border-radius: 50%;
  pointer-events: none;
  background: radial-gradient(
        circle,
        rgba(var(--about-green-rgb), 0.2),
        rgba(var(--about-green-rgb), 0.055) 35%,
        transparent 70%
      );
  filter: blur(20px);
  transform: translateY(-50%);
  will-change: transform, opacity;
}

.about-studio__kinetic-lines {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
}

.about-studio__line {
  position: absolute;
  display: block;
  pointer-events: none;
  will-change: transform, opacity;
}

.about-studio__line::after {
  content: "";
  position: absolute;
  right: -2px;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 12px currentColor,
      0 0 28px currentColor;
  transform: translateY(-50%);
}

.about-studio__line--one,
  .about-studio__line--two,
  .about-studio__line--three,
  .about-studio__line--six {
  left: -42vw;
  width: clamp(280px, 42vw, 760px);
  height: 1px;
  transform-origin: left center;
}

.about-studio__line--one {
  top: 14%;
  color: rgba(var(--about-green-rgb), 0.82);
  background: linear-gradient(90deg, transparent, currentColor 55%, transparent);
  animation: aboutSignalHorizontal 12s linear -3s infinite;
}

.about-studio__line--two {
  top: 37%;
  color: rgba(255, 255, 255, 0.42);
  background: linear-gradient(90deg, transparent, currentColor 58%, transparent);
  animation: aboutSignalHorizontal 16s linear -10s infinite;
}

.about-studio__line--three {
  top: 73%;
  color: rgba(var(--about-green-rgb), 0.48);
  background: linear-gradient(90deg, transparent, currentColor 52%, transparent);
  animation: aboutSignalHorizontal 19s linear -7s infinite;
}

.about-studio__line--six {
  top: 88%;
  color: rgba(255, 255, 255, 0.28);
  background: linear-gradient(90deg, transparent, currentColor 60%, transparent);
  animation: aboutSignalHorizontal 21s linear -15s infinite;
}

.about-studio__line--four,
  .about-studio__line--five {
  top: -70vh;
  width: 1px;
  height: clamp(340px, 48vh, 700px);
  transform-origin: center top;
}

.about-studio__line--four {
  left: 36%;
  color: rgba(255, 255, 255, 0.35);
  background: linear-gradient(180deg, transparent, currentColor 52%, transparent);
  animation: aboutSignalVertical 15s linear -5s infinite;
}

.about-studio__line--five {
  left: 76%;
  color: rgba(var(--about-green-rgb), 0.58);
  background: linear-gradient(180deg, transparent, currentColor 48%, transparent);
  animation: aboutSignalVertical 18s linear -12s infinite;
}

.about-studio__line--seven {
  left: 43%;
  top: -18%;
  width: 1px;
  height: 150%;
  color: rgba(var(--about-green-rgb), 0.22);
  background: linear-gradient(180deg, transparent, currentColor 35%, transparent 78%);
  transform: rotate(24deg);
  transform-origin: center;
  animation: aboutSignalDiagonal 9s ease-in-out infinite alternate;
}

@keyframes aboutSignalHorizontal {
  0% {
    opacity: 0;
    transform: translate3d(-18vw, 0, 0) scaleX(0.34);
  }

  12% {
    opacity: 0.72;
  }

  78% {
    opacity: 0.36;
  }

  100% {
    opacity: 0;
    transform: translate3d(185vw, 0, 0) scaleX(1.08);
  }
}

@keyframes aboutSignalVertical {
  0% {
    opacity: 0;
    transform: translate3d(0, -42vh, 0) scaleY(0.42);
  }

  18% {
    opacity: 0.58;
  }

  80% {
    opacity: 0.3;
  }

  100% {
    opacity: 0;
    transform: translate3d(0, 220vh, 0) scaleY(1.06);
  }
}

@keyframes aboutSignalDiagonal {
  from {
    opacity: 0.15;
    transform: translate3d(-3vw, -2vh, 0) rotate(24deg);
  }

  to {
    opacity: 0.52;
    transform: translate3d(4vw, 3vh, 0) rotate(24deg);
  }
}

.about-studio__ghost {
  position: absolute;
  left: -8vw;
  top: 52%;
  z-index: 1;
  width: max-content;
  transform: translateY(-50%);
  white-space: nowrap;
  pointer-events: none;
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      sans-serif;
  font-size: clamp(120px, 17vw, 320px);
  font-weight: 700;
  line-height: 0.78;
  letter-spacing: -0.075em;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.055);
  text-stroke: 1px rgba(255, 255, 255, 0.055);
  will-change: transform;
}

.about-studio__scan {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -8%;
  z-index: 4;
  width: 1px;
  pointer-events: none;
  background: linear-gradient(
        to bottom,
        transparent 4%,
        rgba(var(--about-green-rgb), 0.95) 24%,
        rgba(var(--about-green-rgb), 0.22) 70%,
        transparent 96%
      );
  box-shadow: 0 0 18px rgba(var(--about-green-rgb), 0.7),
      52px 0 90px rgba(var(--about-green-rgb), 0.07);
  opacity: 0.78;
  will-change: transform;
}

.about-studio__header {
  position: relative;
  z-index: 3;
  min-width: 0;
}

.about-studio__eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 30px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "IBM Plex Mono",
      monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.24em;
  color: rgba(245, 242, 235, 0.62);
}

.about-studio__eyebrow span {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: var(--about-green);
  box-shadow: 0 0 0 6px rgba(var(--about-green-rgb), 0.08),
      0 0 22px rgba(var(--about-green-rgb), 0.62);
  animation: aboutDotPulse 2.4s ease-in-out infinite;
}

@keyframes aboutDotPulse {
  0%,
    100% {
    transform: scale(0.92);
    box-shadow: 0 0 0 5px rgba(var(--about-green-rgb), 0.06),
        0 0 14px rgba(var(--about-green-rgb), 0.38);
  }

  50% {
    transform: scale(1.12);
    box-shadow: 0 0 0 9px rgba(var(--about-green-rgb), 0.02),
        0 0 30px rgba(var(--about-green-rgb), 0.72);
  }
}

.about-studio__title {
  display: flex;
  flex-direction: column;
  gap: 0.015em;
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      Arial,
      sans-serif;
  font-size: clamp(62px, 6.25vw, 118px);
  font-weight: 700;
  line-height: 0.82;
  letter-spacing: -0.075em;
  text-transform: uppercase;
  color: #ffffff;
}

.about-studio__title-line {
  display: block;
  overflow: hidden;
  padding: 0.07em 0.12em 0.12em;
  margin: -0.07em -0.12em -0.12em;
}

.about-studio__title-line > span {
  display: block;
  white-space: nowrap;
  will-change: transform, opacity, filter;
  text-shadow: 0 18px 42px rgba(0, 0, 0, 0.34);
}

.about-studio__manifesto {
  margin-top: 36px;
  max-width: 34ch;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif;
  font-size: clamp(10px, 0.78vw, 13px);
  font-weight: 500;
  line-height: 1.72;
  letter-spacing: 0.12em;
  color: rgba(245, 242, 235, 0.46);
}

.about-studio__coordinates {
  margin-top: 44px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "IBM Plex Mono",
      monospace;
  font-size: 8.5px;
  letter-spacing: 0.17em;
  color: rgba(245, 242, 235, 0.38);
}

.about-studio__coordinates i {
  width: 28px;
  height: 1px;
  background: linear-gradient(
        90deg,
        rgba(var(--about-green-rgb), 0.7),
        rgba(255, 255, 255, 0.08)
      );
}

.about-studio__story {
  position: relative;
  z-index: 5;
  min-width: 0;
}

.about-studio__paragraph {
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif;
  font-size: clamp(15px, 1.15vw, 20px);
  font-weight: 500;
  line-height: 1.46;
  letter-spacing: -0.025em;
  text-transform: uppercase;
  color: rgba(245, 242, 235, 0.76);
}

.about-studio__paragraph + .about-studio__paragraph {
  margin-top: clamp(36px, 3.2vw, 58px);
  padding-top: clamp(32px, 2.8vw, 50px);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.about-studio__paragraph--belief {
  color: rgba(245, 242, 235, 0.54);
}

.about-studio__paragraph [data-about-sentence] {
  display: block;
  position: relative;
  padding-left: 0;
  transition: color 0.45s ease,
      transform 0.58s cubic-bezier(0.22, 1, 0.36, 1),
      letter-spacing 0.58s cubic-bezier(0.22, 1, 0.36, 1),
      text-shadow 0.45s ease;
  will-change: transform, opacity, filter;
}

.about-studio__paragraph [data-about-sentence]::before {
  content: "";
  position: absolute;
  left: -20px;
  top: 0.72em;
  width: 0;
  height: 1px;
  background: var(--about-green);
  box-shadow: 0 0 14px rgba(var(--about-green-rgb), 0.52);
  transition: width 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.about-studio__paragraph [data-about-sentence]:hover {
  color: #ffffff;
  transform: translateX(12px);
  letter-spacing: -0.017em;
  text-shadow: 0 0 24px rgba(var(--about-green-rgb), 0.1);
}

.about-studio__paragraph [data-about-sentence]:hover::before {
  width: 12px;
}

.about-studio__signature-line {
  margin-top: 40px;
  display: grid;
  grid-template-columns: minmax(60px, 1fr) auto;
  align-items: center;
  gap: 18px;
}

.about-studio__signature-line > span {
  display: block;
  height: 1px;
  background: linear-gradient(
        90deg,
        var(--about-green),
        rgba(var(--about-green-rgb), 0.05)
      );
  box-shadow: 0 0 12px rgba(var(--about-green-rgb), 0.2);
  transform-origin: left;
}

.about-studio__signature-line small {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "IBM Plex Mono",
      monospace;
  font-size: 8.5px;
  letter-spacing: 0.17em;
  color: rgba(245, 242, 235, 0.42);
}

.about-studio__stamp-stage {
  --stamp-shine-x: 38%;
  --stamp-shine-y: 28%;
  position: relative;
  z-index: 6;
  width: min(100%, 410px);
  aspect-ratio: 1;
  justify-self: center;
  display: grid;
  place-items: center;
  perspective: 1100px;
  transform-style: preserve-3d;
  will-change: transform;
}

.about-studio__stamp-core {
  position: relative;
  z-index: 5;
  width: 79%;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 50%;
  transform-style: preserve-3d;
  will-change: transform, opacity, filter;
}

.about-studio__stamp-core img {
  width: 137%;
  max-width: none;
  height: auto;
  transform: translateZ(30px);
  filter: saturate(1.08)
      contrast(1.04)
      drop-shadow(0 34px 34px rgba(0, 0, 0, 0.56))
      drop-shadow(0 0 30px rgba(var(--about-green-rgb), 0.16));
  user-select: none;
  pointer-events: none;
}

.about-studio__stamp-shine {
  position: absolute;
  inset: 9%;
  z-index: 2;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0.36;
  mix-blend-mode: screen;
  background: radial-gradient(
        circle at var(--stamp-shine-x) var(--stamp-shine-y),
        rgba(255, 255, 255, 0.72),
        rgba(255, 255, 255, 0.1) 22%,
        transparent 48%
      );
  filter: blur(6px);
  transform: translateZ(44px);
}

.about-studio__stamp-orbit {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  overflow: visible;
  will-change: transform, opacity;
}

.about-studio__stamp-orbit text {
  fill: rgba(245, 242, 235, 0.45);
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "IBM Plex Mono",
      monospace;
  font-size: 10px;
  letter-spacing: 4.2px;
}

.about-studio__impact {
  position: absolute;
  inset: 11%;
  z-index: 1;
  display: grid;
  place-items: center;
  pointer-events: none;
}

.about-studio__impact span {
  position: absolute;
  width: 100%;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid rgba(var(--about-green-rgb), 0.28);
  opacity: 0;
}

.about-studio__stamp-caption {
  position: absolute;
  right: 0;
  bottom: 2%;
  z-index: 7;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 3px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "IBM Plex Mono",
      monospace;
  font-size: 8.5px;
  line-height: 1.2;
  letter-spacing: 0.15em;
  color: rgba(245, 242, 235, 0.42);
}

.about-studio__stamp-caption span:first-child {
  color: var(--about-green);
}

.about-studio__ticker {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 28px;
  z-index: 8;
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 13px 0;
  background: rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(4px);
}

.about-studio__ticker-track {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 24px;
  white-space: nowrap;
  animation: aboutStudioTicker 34s linear infinite;
}

.about-studio__ticker-track span,
  .about-studio__ticker-track i {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "IBM Plex Mono",
      monospace;
  font-size: 9px;
  font-style: normal;
  letter-spacing: 0.16em;
  color: rgba(245, 242, 235, 0.4);
}

.about-studio__ticker-track i {
  color: var(--about-green);
}

@keyframes aboutStudioTicker {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (max-width: 1260px) {
  .about-studio__layout {
    grid-template-columns: minmax(290px, 0.82fr)
        minmax(420px, 1.22fr)
        minmax(235px, 0.64fr);
    gap: 38px;
  }

  .about-studio__title {
    font-size: clamp(56px, 5.6vw, 86px);
  }

  .about-studio__paragraph {
    font-size: 15px;
  }
}

@media (max-width: 1024px) {
  .proof--about {
    min-height: auto;
  }

  .about-studio__sticky {
    position: relative;
    min-height: auto;
  }

  .about-studio__layout {
    grid-template-columns: 0.9fr 1.1fr;
    align-items: start;
  }

  .about-studio__stamp-stage {
    grid-column: 1 / -1;
    width: min(430px, 70vw);
    margin-top: 28px;
  }

  .about-studio__ticker {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    margin: 70px
        calc(clamp(24px, 5vw, 86px) * -1)
        -55px;
  }

  .about-studio__line--five,
    .about-studio__line--seven {
    opacity: 0.5;
  }
}

@media (max-width: 720px) {
  .about-studio__sticky {
    padding: 92px 22px 70px;
  }

  .about-studio__layout {
    display: flex;
    flex-direction: column;
    gap: 54px;
  }

  .about-studio__header,
    .about-studio__story {
    width: 100%;
  }

  .about-studio__title {
    font-size: clamp(52px, 17vw, 82px);
    line-height: 0.84;
  }

  .about-studio__manifesto {
    margin-top: 26px;
  }

  .about-studio__coordinates {
    margin-top: 28px;
  }

  .about-studio__paragraph {
    font-size: 14px;
    line-height: 1.56;
  }

  .about-studio__stamp-stage {
    width: min(360px, 92vw);
    align-self: center;
  }

  .about-studio__ghost {
    font-size: 120px;
  }

  .about-studio__scan {
    display: none;
  }

  .about-studio__ticker {
    margin: 54px -22px -30px;
  }

  .about-studio__line--two,
    .about-studio__line--four,
    .about-studio__line--six {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .about-studio__ticker-track,
    .about-studio__line,
    .about-studio__eyebrow span {
    animation: none !important;
  }

  .about-studio__kinetic-lines {
    opacity: 0.34 !important;
  }

  .about-studio__title-line > span,
    .about-studio__paragraph [data-about-sentence],
    .about-studio__stamp-core,
    .about-studio__stamp-orbit {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

.cap-showcase--capabilities-hero {
  position: relative !important;
  min-height: 100svh !important;
  padding: 0 !important;
  background: #100b07 !important;
  overflow: hidden !important;
}

.cap-showcase--capabilities-hero > .cap-showcase__grid,
  .cap-showcase--capabilities-hero > .cap-showcase__seam {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.cap-showcase--capabilities-hero .capabilities-hero {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  height: 100svh !important;
  min-height: 680px !important;
  margin: 0 !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #100b07 !important;
}

.cap-showcase--capabilities-hero .capabilities-hero__media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  background: #100b07 !important;
}

.cap-showcase--capabilities-hero .capabilities-hero__video {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scale(1.012) !important;
  pointer-events: none !important;
}

.capabilities-hero__green-band {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  height: 30.5%;
  background: #75fa96;
  pointer-events: none;
}

.capabilities-hero__content {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
}

.capabilities-hero__title {
  position: absolute;
  left: clamp(10px, 5vw, 110px);
  bottom: clamp(22px, 2.7vw, 48px);
  z-index: 6;
  display: flex;
  flex-direction: column;
  margin: 0;
  font-family: "Arial Black", var(--font-display);
  font-size: clamp(84px, 10.6vw, 205px);
  font-weight: 900;
  line-height: .72;
  letter-spacing: -.090em;
  text-transform: uppercase;
  color: #fff;
}

.capabilities-hero__title span {
  display: block;
  white-space: nowrap;
}

.capabilities-hero__origin {
  position: absolute;
  right: clamp(5px, 10vw, 90px);
  bottom: clamp(34px, 4vw, 72px);
  z-index: 6;
  display: flex;
  align-items: center;
  gap: clamp(14px, 1.5vw, 25px);
  color: #11100d;
}

.capabilities-hero__origin-image {
  position: relative;
  width: clamp(56px, 4.6vw, 84px);
  aspect-ratio: .62;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: transparent;
}

.capabilities-hero__origin-image img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  object-position: center;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.capabilities-hero__origin-copy {
  margin: 0;
  max-width: 15ch;
  font-family: "Arial Narrow", "Roboto Condensed", var(--font-display);
  font-size: clamp(15px, 1.34vw, 25px);
  font-weight: 700;
  line-height: .94;
  letter-spacing: -.025em;
  text-transform: uppercase;
  color: #11100d;
}

@media (max-width: 1100px) {
  .cap-showcase--capabilities-hero .capabilities-hero {
    min-height: 620px !important;
  }

  .capabilities-hero__title {
    font-size: clamp(72px, 11.7vw, 150px);
  }

  .capabilities-hero__origin {
    right: 28px;
    bottom: 32px;
  }
}

@media (max-width: 760px) {
  .cap-showcase--capabilities-hero,
    .cap-showcase--capabilities-hero .capabilities-hero {
    min-height: 590px !important;
    height: 100svh !important;
  }

  .capabilities-hero__green-band {
    height: 40%;
  }

  .capabilities-hero__title {
    left: 18px;
    right: 18px;
    bottom: 116px;
    font-size: clamp(54px, 15.7vw, 94px);
    line-height: .76;
  }

  .capabilities-hero__origin {
    left: 20px;
    right: 20px;
    bottom: 24px;
    justify-content: flex-end;
    gap: 12px;
  }

  .capabilities-hero__origin-image {
    width: 46px;
  }

  .capabilities-hero__origin-copy {
    font-size: 13px;
    line-height: .96;
  }
}

@media (max-width: 440px) {
  .cap-showcase--capabilities-hero,
    .cap-showcase--capabilities-hero .capabilities-hero {
    min-height: 540px !important;
  }

  .capabilities-hero__green-band {
    height: 43%;
  }

  .capabilities-hero__title {
    bottom: 122px;
    font-size: clamp(45px, 14.8vw, 70px);
  }

  .capabilities-hero__origin-copy {
    font-size: 11px;
  }
}

.hero--mark .hero-mark__content {
  transform: translateY(-40px);
}

.hero-mark__logo-wrap {
  position: relative;
  top: -20px;
}

.hero-mark__powered-video-wrap {
  position: relative;
  top: -130px;
  left: -10px;
}

.hero--mark .hero-mark__actions {
  position: relative;
  top: -150px;
}

.proof--about {
  min-height: 100vh;
}

.about-studio__sticky {
  min-height: 100vh;
  justify-content: flex-start;
  padding-top: 30px;
}

.mini-brand-curtain__eyebrow,
  .mini-brand-curtain__sub,
  .mini-brand-curtain__text,
  .philosophy-carousel__status {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif;
}

.mini-brand-curtain__title {
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      Arial,
      sans-serif;
  font-weight: 700;
  letter-spacing: -0.075em;
}

.mini-brand-curtain__text {
  font-weight: 500;
  letter-spacing: -0.025em;
}

.philosophy-carousel__arrow {
  border-color: rgba(22, 20, 15, 0.24);
  background: rgba(245, 242, 235, 0.8);
  color: #16140f;
  box-shadow: 0 0 0 rgba(117, 250, 150, 0);
  transition: color 0.35s ease,
      border-color 0.35s ease,
      background-color 0.35s ease,
      transform 0.45s var(--ease),
      box-shadow 0.35s ease;
}

.philosophy-carousel__arrow::before {
  background: #75fa96;
}

.philosophy-carousel__arrow:hover,
  .philosophy-carousel__arrow:focus-visible {
  color: #111111;
  border-color: #75fa96;
  background: #75fa96;
  transform: translateY(-3px) scale(1.07);
  box-shadow: 0 12px 28px rgba(117, 250, 150, 0.24),
      0 0 0 5px rgba(117, 250, 150, 0.08);
}

.philosophy-carousel__arrow:hover::before,
  .philosophy-carousel__arrow:focus-visible::before {
  transform: scale(1);
}

.philosophy-carousel__arrow--previous:hover svg,
  .philosophy-carousel__arrow--previous:focus-visible svg {
  transform: translateX(-2px);
}

.philosophy-carousel__arrow--next:hover svg,
  .philosophy-carousel__arrow--next:focus-visible svg {
  transform: translateX(2px);
}

.philosophy-carousel__arrow svg {
  transition: transform 0.4s var(--ease);
}

.cap-showcase--one.cap-editorial {
  --cap-editorial-ink: #11110f;
  --cap-editorial-paper: #f5f2eb;
  --cap-editorial-green: #75fa96;
}

.cap-showcase--one .cap-showcase__quad {
  position: relative;
  z-index: 5;
  width: min(1560px, calc(100% - 96px));
  min-height: clamp(500px, 36vw, 650px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(320px, 1fr)
      clamp(280px, 24vw, 410px)
      minmax(320px, 1fr);
  grid-template-rows: repeat(2, minmax(220px, 1fr));
  column-gap: clamp(34px, 4.2vw, 80px);
  row-gap: clamp(18px, 2vw, 38px);
  align-items: center;
  perspective: 1500px;
}

.cap-showcase--one .cap-item {
  position: relative;
  grid-template-columns: minmax(180px, 1fr)
      clamp(142px, 11vw, 188px);
}

.cap-showcase--one .cap-item--tl {
  grid-column: 1;
  grid-row: 1;
}

.cap-showcase--one .cap-item--bl {
  grid-column: 1;
  grid-row: 2;
}

.cap-showcase--one .cap-item--tr {
  grid-column: 3;
  grid-row: 1;
  grid-template-columns: clamp(142px, 11vw, 188px)
      minmax(180px, 1fr);
}

.cap-showcase--one .cap-item--br {
  grid-column: 3;
  grid-row: 2;
  grid-template-columns: clamp(142px, 11vw, 188px)
      minmax(180px, 1fr);
}

.cap-showcase--one .cap-item--tr .cap-item__text,
  .cap-showcase--one .cap-item--br .cap-item__text {
  grid-column: 2;
  grid-row: 1;
}

.cap-showcase--one .cap-item--tr .cap-item__circle,
  .cap-showcase--one .cap-item--br .cap-item__circle {
  grid-column: 1;
  grid-row: 1;
}

.cap-showcase--one .cap-item__circle {
  overflow: hidden;
}

.cap-showcase--one .cap-item__circle::before {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(17, 17, 15, 0);
  border-radius: 50%;
  transition: border-color 0.42s ease,
      transform 0.55s var(--ease);
}

.cap-showcase--one .cap-item:hover .cap-item__circle {
  color: #11110f;
}

.cap-showcase--one .cap-item:hover .cap-item__circle::before {
  border-color: rgba(17, 17, 15, 0.28);
  transform: scale(0.94);
}

.cap-editorial__image-slot {
  position: relative;
  margin: 0;
  overflow: hidden;
  background: linear-gradient(
        135deg,
        #171713,
        #050505
      );
  box-shadow: 0 28px 64px rgba(17, 17, 15, 0.16),
      0 0 0 1px rgba(17, 17, 15, 0.08);
  isolation: isolate;
}

.cap-editorial__image-slot > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}

.cap-showcase--one .cap-showcase__portrait {
  z-index: 4;
  aspect-ratio: auto;
  transform-style: preserve-3d;
}

.cap-showcase--one .cap-showcase__portrait::after {
  content: "";
  position: absolute;
  inset: 12px;
  z-index: 4;
  border: 1px solid rgba(245, 242, 235, 0.18);
  pointer-events: none;
}

.cap-showcase--one .cap-showcase__banner > img {
  z-index: 1;
}

.cap-showcase--one .cap-showcase__banner-logo {
  border: 0 !important;
  background: transparent !important;
}

.cap-editorial__signal-lines span {
  display: block;
  will-change: transform, opacity;
}

.cap-editorial__signal-lines span:nth-child(1) {
  animation: capEditorialSignal 14s linear -5s infinite;
}

.cap-editorial__signal-lines span:nth-child(2) {
  animation: capEditorialSignal 19s linear -13s infinite;
}

.cap-editorial__signal-lines span:nth-child(3) {
  animation: capEditorialSignal 17s linear -9s infinite;
}

.cap-editorial__signal-lines span:nth-child(4) {
  animation: capEditorialSignal 22s linear -17s infinite;
}

@media (max-width: 1180px) {
  .cap-showcase--one .cap-showcase__quad {
    grid-template-columns: minmax(250px, 1fr)
        clamp(250px, 28vw, 340px)
        minmax(250px, 1fr);
    column-gap: 26px;
  }

  .cap-showcase--one .cap-item,
    .cap-showcase--one .cap-item--tr,
    .cap-showcase--one .cap-item--br {
    grid-template-columns: 1fr 122px;
    gap: 18px;
  }

  .cap-showcase--one .cap-item--tr,
    .cap-showcase--one .cap-item--br {
    grid-template-columns: 122px 1fr;
  }

  .cap-showcase--one .cap-item__circle {
    width: 122px;
  }

  .cap-showcase--one .cap-item__text {
    font-size: 14px;
    padding-left: 16px;
  }
}

@media (max-width: 920px) {
  .cap-showcase--one .cap-showcase__top,
    .cap-showcase--one .cap-showcase__quad {
    width: calc(100% - 40px);
  }

  .cap-showcase--one .cap-showcase__quad {
    min-height: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
    gap: 22px;
  }

  .cap-showcase--one .cap-showcase__portrait {
    grid-column: 1 / -1;
    grid-row: 1;
    width: min(520px, 100%);
    height: auto;
    aspect-ratio: 4 / 3;
    margin: 0 auto 20px;
  }

  .cap-showcase--one .cap-item--tl,
    .cap-showcase--one .cap-item--bl,
    .cap-showcase--one .cap-item--tr,
    .cap-showcase--one .cap-item--br {
    grid-column: auto;
    grid-row: auto;
    min-height: 190px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    border-top: 1px solid rgba(17, 17, 15, 0.14);
  }

  .cap-showcase--one .cap-item--tr .cap-item__text,
    .cap-showcase--one .cap-item--br .cap-item__text,
    .cap-showcase--one .cap-item--tr .cap-item__circle,
    .cap-showcase--one .cap-item--br .cap-item__circle {
    order: initial;
  }

  .cap-showcase--one .cap-item__text {
    max-width: 100%;
    font-size: 15px;
  }

  .cap-showcase--one .cap-item__circle {
    width: 108px;
    flex: 0 0 108px;
  }
}

@media (max-width: 620px) {
  .cap-showcase--one.cap-editorial {
    padding-top: 76px;
  }

  .cap-showcase--one .cap-showcase__top,
    .cap-showcase--one .cap-showcase__quad {
    width: calc(100% - 34px);
  }

  .cap-showcase--one .cap-showcase__quad {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .cap-showcase--one .cap-showcase__portrait {
    grid-column: 1;
    aspect-ratio: 3 / 4;
  }

  .cap-showcase--one .cap-item--tl,
    .cap-showcase--one .cap-item--bl,
    .cap-showcase--one .cap-item--tr,
    .cap-showcase--one .cap-item--br {
    grid-column: 1;
    min-height: 170px;
  }

  .cap-showcase--one .cap-showcase__banner {
    height: 260px !important;
    min-height: 260px !important;
    margin-top: 42px !important;
  }

  .cap-showcase--one .cap-showcase__banner-tag {
    max-width: 18ch;
    text-align: right;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cap-showcase--one [data-cap-editorial-item],
    .cap-showcase--one [data-cap-editorial-circle],
    .cap-showcase--one [data-cap-editorial-portrait],
    .cap-showcase--one [data-cap-editorial-banner] {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    clip-path: none !important;
  }
}

.cap-showcase--one.cap-editorial {
  --cap-paper: #f5f2eb;
  --cap-ink: #11110f;
  --cap-green: #75fa96;
  position: relative;
  min-height: auto;
  padding: clamp(76px, 6vw, 110px) 0 0;
  overflow: hidden;
  background: var(--cap-paper);
  color: var(--cap-ink);
  isolation: isolate;
}

.cap-showcase--one.cap-editorial::before,
  .cap-showcase--one .cap-showcase__grid {
  display: none !important;
}

.cap-showcase--one .cap-showcase__top {
  position: relative;
  z-index: 6;
  width: min(1580px, calc(100% - 90px));
  margin: 0 auto;
  padding-bottom: clamp(34px, 3vw, 54px);
  justify-content: space-between;
  color: rgba(17, 17, 15, 0.5);
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif;
  font-size: clamp(9px, 0.68vw, 12px);
  font-weight: 500;
  letter-spacing: 0.18em;
}

.cap-showcase--one .cap-editorial__top-grid {
  position: relative;
  z-index: 5;
  width: 100%;
  display: grid;
  background: var(--cap-paper);
}

.cap-showcase--one .cap-editorial__side {
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  padding: clamp(10px, 1vw, 18px)
      clamp(36px, 5vw, 92px);
}

.cap-showcase--one .cap-editorial__side--left {
  padding-right: clamp(28px, 3.6vw, 70px);
}

.cap-showcase--one .cap-editorial__side--right {
  padding-left: clamp(28px, 3.6vw, 70px);
}

.cap-showcase--one .cap-item {
  min-width: 0;
  display: grid;
  align-items: center;
  gap: clamp(24px, 2.2vw, 42px);
  padding: clamp(20px, 2vw, 34px) 0;
  opacity: 1;
  transform: none;
  filter: none;
  will-change: transform, opacity, filter;
}

.cap-showcase--one .cap-editorial__side--left .cap-item {
  grid-template-columns: minmax(0, 1fr)
      clamp(138px, 10.5vw, 184px);
}

.cap-showcase--one .cap-editorial__side--right .cap-item {
  grid-template-columns: clamp(138px, 10.5vw, 184px)
      minmax(0, 1fr);
}

.cap-showcase--one .cap-item__text {
  position: relative;
  margin: 0;
  max-width: 270px;
  padding-left: 20px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif;
  font-size: clamp(15px, 1.12vw, 22px);
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -0.035em;
  text-transform: uppercase;
  color: var(--cap-ink);
  text-wrap: balance;
}

.cap-showcase--one .cap-editorial__side--right .cap-item__text {
  justify-self: end;
  text-align: left;
}

.cap-showcase--one .cap-item__text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.08em;
  bottom: 0.08em;
  width: 3px;
  border-radius: 999px;
  background: var(--cap-green);
  box-shadow: 0 0 18px rgba(117, 250, 150, 0.28);
  transform: scaleY(0.22);
  transform-origin: center;
  transition: transform 0.55s var(--ease),
      box-shadow 0.4s ease;
}

.cap-showcase--one .cap-item:hover .cap-item__text::before {
  transform: scaleY(1);
  box-shadow: 0 0 28px rgba(117, 250, 150, 0.56);
}

.cap-showcase--one .cap-item__circle {
  position: relative;
  width: clamp(138px, 10.5vw, 184px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  padding: 14px;
  border: 1.3px solid rgba(17, 17, 15, 0.72);
  border-radius: 50%;
  background: transparent;
  color: var(--cap-ink);
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif;
  font-size: clamp(12px, 0.95vw, 17px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
  text-align: center;
  transition: transform 0.55s var(--ease),
      background-color 0.42s ease,
      border-color 0.42s ease,
      box-shadow 0.42s ease;
}

.cap-showcase--one .cap-item:hover .cap-item__circle {
  transform: translateY(-5px) scale(1.045);
  background: var(--cap-green);
  border-color: var(--cap-ink);
  box-shadow: inset 0 0 0 7px rgba(245, 242, 235, 0.3),
      0 18px 42px rgba(117, 250, 150, 0.22);
}

.cap-showcase--one .cap-showcase__portrait {
  position: relative;
  grid-column: auto;
  grid-row: auto;
  margin: 0;
  overflow: hidden;
  border-radius: 0;
  background: #111;
  box-shadow: none;
  opacity: 1;
  transform: none;
  filter: none;
  will-change: transform, clip-path, filter;
}

.cap-showcase--one .cap-showcase__portrait > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transform: scale(1.02);
  filter: saturate(0.95)
      contrast(1.04);
}

.cap-showcase--one .cap-showcase__portrait::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.03),
        transparent 48%,
        rgba(0, 0, 0, 0.18)
      );
}

.cap-showcase--one .cap-showcase__portrait::after {
  display: none;
}

.cap-editorial__portrait-scan {
  position: absolute;
  left: -12%;
  top: 0;
  bottom: 0;
  z-index: 4;
  width: 2px;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(
        to bottom,
        transparent,
        var(--cap-green) 32%,
        rgba(117, 250, 150, 0.22) 76%,
        transparent
      );
  box-shadow: 0 0 20px rgba(117, 250, 150, 0.75),
      44px 0 80px rgba(117, 250, 150, 0.08);
}

.cap-showcase--one .cap-showcase__banner {
  position: relative !important;
  z-index: 7 !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  background: #111 !important;
}

.cap-showcase--one .cap-showcase__banner > img:first-child {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center 100% !important;
  transform: scale(1.01);
}

.cap-showcase--one .cap-showcase__banner-fade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.02),
        transparent 45%,
        rgba(0, 0, 0, 0.2)
      ) !important;
}

.cap-showcase--one .cap-showcase__banner-mark {
  position: absolute !important;
  left: clamp(26px, 4vw, 74px) !important;
  right: clamp(26px, 4vw, 74px) !important;
  bottom: clamp(24px, 3.4vw, 54px) !important;
  z-index: 4 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
  pointer-events: none !important;
}

.cap-showcase--one .cap-showcase__banner-logo {
  width: clamp(54px, 5vw, 82px) !important;
  height: clamp(54px, 5vw, 82px) !important;
  object-fit: contain !important;
}

.cap-showcase--one .cap-showcase__banner-tag {
  color: #ffffff;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif;
  font-size: clamp(9px, 0.82vw, 13px);
  font-weight: 500;
  letter-spacing: 0.08em;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.35);
}

.cap-editorial__signal-lines {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  pointer-events: none;
}

.cap-editorial__signal-lines span {
  position: absolute;
  width: clamp(240px, 30vw, 560px);
  height: 1px;
  opacity: 0.35;
  background: linear-gradient(
        90deg,
        transparent,
        rgba(117, 250, 150, 0.48),
        transparent
      );
  animation: capEditorialSignal 16s linear infinite;
}

.cap-editorial__signal-lines span:nth-child(1) {
  top: 13%;
  left: -42vw;
  animation-delay: -4s;
}

.cap-editorial__signal-lines span:nth-child(2) {
  top: 35%;
  left: -48vw;
  animation-delay: -11s;
  background: linear-gradient(
        90deg,
        transparent,
        rgba(17, 17, 15, 0.13),
        transparent
      );
}

.cap-editorial__signal-lines span:nth-child(3) {
  top: 58%;
  left: -40vw;
  animation-delay: -7s;
}

.cap-editorial__signal-lines span:nth-child(4) {
  top: 82%;
  left: -52vw;
  animation-delay: -15s;
  background: linear-gradient(
        90deg,
        transparent,
        rgba(17, 17, 15, 0.12),
        transparent
      );
}

@keyframes capEditorialSignal {
  0% {
    opacity: 0;
    transform: translate3d(-18vw, 0, 0) scaleX(0.35);
  }

  14% {
    opacity: 0.42;
  }

  82% {
    opacity: 0.2;
  }

  100% {
    opacity: 0;
    transform: translate3d(188vw, 0, 0) scaleX(1.08);
  }
}

@media (max-width: 1100px) {
  .cap-showcase--one .cap-editorial__top-grid {
    grid-template-columns: minmax(0, 1fr)
        clamp(260px, 29vw, 340px)
        minmax(0, 1fr);
  }

  .cap-showcase--one .cap-editorial__side {
    padding-inline: 26px;
  }

  .cap-showcase--one .cap-editorial__side--left .cap-item {
    grid-template-columns: 1fr 118px;
    gap: 16px;
  }

  .cap-showcase--one .cap-editorial__side--right .cap-item {
    grid-template-columns: 118px 1fr;
    gap: 16px;
  }

  .cap-showcase--one .cap-item__circle {
    width: 118px;
  }

  .cap-showcase--one .cap-item__text {
    font-size: 14px;
    padding-left: 15px;
  }
}

@media (max-width: 820px) {
  .cap-showcase--one .cap-editorial__top-grid {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cap-showcase--one .cap-showcase__portrait {
    grid-row: 1;
    width: min(560px, 100%);
    aspect-ratio: 4 / 3;
    margin: 0 auto;
  }

  .cap-showcase--one .cap-editorial__side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
    gap: 18px;
    padding: 24px 20px;
  }

  .cap-showcase--one .cap-editorial__side--left {
    grid-row: 2;
  }

  .cap-showcase--one .cap-editorial__side--right {
    grid-row: 3;
  }

  .cap-showcase--one .cap-item,
    .cap-showcase--one .cap-editorial__side--left .cap-item,
    .cap-showcase--one .cap-editorial__side--right .cap-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    min-height: 190px;
    padding: 18px;
    border-top: 1px solid rgba(17, 17, 15, 0.13);
  }

  .cap-showcase--one .cap-item__text {
    max-width: 100%;
  }

  .cap-showcase--one .cap-item__circle {
    width: 104px;
    flex: 0 0 104px;
  }
}

@media (max-width: 560px) {
  .cap-showcase--one .cap-showcase__top {
    width: calc(100% - 34px);
  }

  .cap-showcase--one .cap-editorial__side {
    grid-template-columns: 1fr;
  }

  .cap-showcase--one .cap-showcase__portrait {
    aspect-ratio: 3 / 4;
  }

  .cap-showcase--one .cap-showcase__banner {
    height: 260px !important;
    min-height: 260px !important;
  }

  .cap-showcase--one .cap-showcase__banner-tag {
    max-width: 18ch;
    text-align: right;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cap-editorial__signal-lines span {
    animation: none !important;
  }
}

.cap-showcase--one.cap-editorial {
  padding-top: 0 !important;
}

.cap-showcase--one .cap-showcase__top {
  display: none !important;
}

.cap-showcase--one .cap-editorial__top-grid {
  margin-top: 0 !important;
  padding-top: 0 !important;
  align-items: stretch;
}

.cap-showcase--one .cap-editorial__side {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.cap-showcase--one .cap-showcase__portrait {
  margin-top: 0 !important;
}

.cap-showcase--one .cap-showcase__portrait > img {
  object-position: center center;
}

.cap-showcase--one .cap-showcase__banner {
  margin-top: 0 !important;
}

@media (max-width: 820px) {
  .cap-showcase--one .cap-editorial__top-grid {
    min-height: auto;
  }

  .cap-showcase--one .cap-showcase__portrait {
    min-height: 0;
    height: auto;
  }

  .cap-showcase--one .cap-editorial__side {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
}

.cap-showcase--one .cap-editorial__top-grid {
  min-height: clamp(50px, 25vw,30px) !important;
}

.cap-showcase--one .cap-editorial__side {
  row-gap: 0;
}

.cap-showcase--one .cap-editorial__side .cap-item {
  min-height: auto;
  padding-top: 12px;
  padding-bottom: 12px;
}

.cap-showcase--one .cap-showcase__banner {
  height: 320px !important;
  min-height: 320px !important;
}

.cap-showcase--one .cap-editorial__top-grid {
  grid-template-columns: minmax(0, 1fr)
      clamp(220px, 30vw, 400px)
      minmax(0, 1fr) !important;
}

.cap-showcase--one .cap-showcase__portrait {
  width: 100% !important;
  height: 430px !important;
  min-height: 430px !important;
  align-self: center;
}

.cap-showcase--one
  .cap-editorial__side--left
  .cap-item__text {
  padding-left: 0;
  padding-right: 20px;
}

.cap-showcase--one
  .cap-editorial__side--left
  .cap-item__text::before {
  left: auto;
  right: 0;
}

.cap-showcase--one
  .cap-editorial__side--right
  .cap-item__text {
  padding-left: 20px;
  padding-right: 0;
}

.cap-showcase--one
  .cap-editorial__side--right
  .cap-item__text::before {
  left: 0;
  right: auto;
}

.visual-archive {
  --archive-ink: #0d0d0b;
  --archive-soft: rgba(13, 13, 11, 0.58);
  --archive-line: rgba(13, 13, 11, 0.13);
  --archive-green: #75fa96;
  --archive-mouse-x: 70%;
  --archive-mouse-y: 38%;
  background: #ffffff !important;
  color: var(--archive-ink);
}

.visual-archive__grid {
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

.visual-archive__wash {
  z-index: -3 !important;
  background: radial-gradient(
        circle at var(--archive-mouse-x) var(--archive-mouse-y),
        rgba(117, 250, 150, 0.22),
        rgba(117, 250, 150, 0.07) 18%,
        transparent 39%
      ),
      radial-gradient(
        circle at 16% 82%,
        rgba(117, 250, 150, 0.06),
        transparent 28%
      ) !important;
  filter: blur(1px);
  will-change: transform, background-position;
}

.visual-archive::before {
  content: "";
  position: absolute;
  top: -28%;
  bottom: -28%;
  left: 55%;
  z-index: -2;
  width: clamp(70px, 8vw, 150px);
  pointer-events: none;
  background: linear-gradient(
        180deg,
        transparent,
        rgba(13, 13, 11, 0.035) 28%,
        rgba(117, 250, 150, 0.055) 54%,
        transparent 82%
      );
  transform: rotate(29deg);
  transform-origin: center;
  animation: archiveSoftBeam 8s ease-in-out infinite alternate;
}

.visual-archive::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.82),
        transparent 19%,
        transparent 82%,
        rgba(255, 255, 255, 0.9)
      );
}

@keyframes archiveSoftBeam {
  from {
    opacity: 0.36;
    transform: translateX(-3vw) rotate(29deg);
  }

  to {
    opacity: 0.8;
    transform: translateX(4vw) rotate(29deg);
  }
}

.visual-archive__signals {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}

.visual-archive__signal {
  position: absolute;
  display: block;
  height: 1px;
  width: clamp(260px, 34vw, 660px);
  opacity: 0;
  will-change: transform, opacity;
}

.visual-archive__signal::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 14px currentColor,
      0 0 30px currentColor;
  transform: translateY(-50%);
}

.visual-archive__signal--one,
  .visual-archive__signal--three,
  .visual-archive__signal--five {
  left: -46vw;
  color: rgba(117, 250, 150, 0.58);
  background: linear-gradient(
        90deg,
        transparent,
        currentColor 52%,
        transparent
      );
}

.visual-archive__signal--one {
  top: 16%;
  animation: archiveSignalHorizontal 15s linear -4s infinite;
}

.visual-archive__signal--three {
  top: 58%;
  animation: archiveSignalHorizontal 19s linear -12s infinite;
}

.visual-archive__signal--five {
  top: 88%;
  animation: archiveSignalHorizontal 22s linear -17s infinite;
}

.visual-archive__signal--two,
  .visual-archive__signal--four {
  top: -70vh;
  width: 1px;
  height: clamp(320px, 46vh, 680px);
  color: rgba(13, 13, 11, 0.19);
  background: linear-gradient(
        180deg,
        transparent,
        currentColor 48%,
        transparent
      );
}

.visual-archive__signal--two {
  left: 38%;
  animation: archiveSignalVertical 18s linear -8s infinite;
}

.visual-archive__signal--four {
  left: 82%;
  color: rgba(117, 250, 150, 0.32);
  animation: archiveSignalVertical 21s linear -15s infinite;
}

@keyframes archiveSignalHorizontal {
  0% {
    opacity: 0;
    transform: translate3d(-12vw, 0, 0) scaleX(0.3);
  }

  14% {
    opacity: 0.65;
  }

  82% {
    opacity: 0.28;
  }

  100% {
    opacity: 0;
    transform: translate3d(190vw, 0, 0) scaleX(1.08);
  }
}

@keyframes archiveSignalVertical {
  0% {
    opacity: 0;
    transform: translate3d(0, -40vh, 0) scaleY(0.4);
  }

  18% {
    opacity: 0.46;
  }

  82% {
    opacity: 0.2;
  }

  100% {
    opacity: 0;
    transform: translate3d(0, 220vh, 0) scaleY(1.05);
  }
}

.visual-archive__halo {
  position: absolute;
  right: clamp(-150px, -8vw, -70px);
  top: 20%;
  z-index: -2;
  width: clamp(360px, 38vw, 690px);
  aspect-ratio: 1;
  border: 1px solid rgba(117, 250, 150, 0.16);
  border-radius: 50%;
  pointer-events: none;
  box-shadow: inset 0 0 100px rgba(117, 250, 150, 0.045),
      0 0 90px rgba(117, 250, 150, 0.04);
  will-change: transform, opacity;
}

.visual-archive__title,
  .visual-archive__title-line--ideas,
  .visual-archive__title-line--experiences {
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      Arial,
      sans-serif !important;
  font-weight: 700 !important;
}

.visual-archive__title {
  letter-spacing: -0.082em !important;
  line-height: 0.7 !important;
}

.visual-archive__become-handwritten {
  font-family: "Baker Script",
      "Segoe Script",
      cursive !important;
  font-size: 0.94em !important;
  font-weight: 400 !important;
  line-height: 0.78 !important;
  letter-spacing: -0.03em !important;
  color: var(--archive-green) !important;
  -webkit-text-fill-color: var(--archive-green) !important;
  transform: rotate(-4deg)
      translateY(0.035em) !important;
  text-shadow: 0 8px 28px rgba(117, 250, 150, 0.14);
  will-change: transform, opacity, filter, clip-path;
}

.visual-archive__eyebrow,
  .visual-archive__topline,
  .visual-archive__description,
  .visual-archive__button,
  .visual-archive__orbit-word,
  .visual-archive__ticker-track span,
  .visual-archive__ticker-track i {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Arial,
      sans-serif !important;
  font-weight: 500;
}

.visual-archive__eyebrow,
  .visual-archive__topline,
  .visual-archive__orbit-word,
  .visual-archive__ticker-track span,
  .visual-archive__ticker-track i {
  letter-spacing: 0.16em;
}

.visual-archive__description {
  max-width: 52ch;
  letter-spacing: -0.022em;
  line-height: 1.62;
}

.visual-archive__kinetic {
  transform-style: preserve-3d;
  perspective: 1300px;
}

.visual-archive__button {
  box-shadow: 0 14px 34px rgba(13, 13, 11, 0.12);
}

.visual-archive__button:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 44px rgba(117, 250, 150, 0.2);
}

@media (max-width: 700px) {
  .visual-archive__signal--two,
    .visual-archive__signal--four {
    display: none;
  }

  .visual-archive__halo {
    right: -220px;
    top: 42%;
  }

  .visual-archive__title {
    letter-spacing: -0.07em !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .visual-archive::before,
    .visual-archive__signal {
    animation: none !important;
  }

  .visual-archive__signals {
    opacity: 0.28 !important;
  }

  .visual-archive__become-handwritten {
    opacity: 1 !important;
    filter: none !important;
    clip-path: none !important;
  }
}

.visual-archive__kinetic {
  width: min(720px, 57vw) !important;
  max-width: none !important;
  justify-self: center;
}

.visual-archive__title-line--experiences {
  transform: translateY(-50px);
}

.visual-archive__button,
  .visual-archive__button span {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em;
}

.hero--mark .hero-mark__actions .btn,
  .hero--mark .hero-mark__actions .btn span {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em;
}

.hospitality-feature {
  --hospitality-green: #75fa96;
  --hospitality-ink: #090a09;
  --hospitality-line: rgba(9, 10, 9, 0.15);
  position: relative;
  z-index: 280;
  width: 100%;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background: var(--hospitality-green);
  color: var(--hospitality-ink);
}

.hospitality-feature::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -4;
  pointer-events: none;
  background: radial-gradient(
        circle at 72% 42%,
        rgba(255, 255, 255, 0.28),
        transparent 28%
      ),
      radial-gradient(
        circle at 15% 86%,
        rgba(255, 255, 255, 0.1),
        transparent 26%
      ),
      linear-gradient(
        125deg,
        rgba(255, 255, 255, 0.09),
        transparent 42%,
        rgba(0, 0, 0, 0.025)
      );
}

.hospitality-feature::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  pointer-events: none;
  opacity: 0.22;
  background-image: linear-gradient(
        rgba(9, 10, 9, 0.08) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(9, 10, 9, 0.08) 1px,
        transparent 1px
      );
  background-size: 92px 92px;
  -webkit-mask-image: linear-gradient(
        90deg,
        transparent,
        #000 22%,
        #000 82%,
        transparent
      );
  mask-image: linear-gradient(
        90deg,
        transparent,
        #000 22%,
        #000 82%,
        transparent
      );
}

.hospitality-feature__inner {
  position: relative;
  z-index: 5;
  width: min(1720px, 100%);
  min-height: 100svh;
  margin: 0 auto;
  padding: clamp(72px, 7vw, 118px)
      clamp(28px, 3.8vw, 72px)
      clamp(82px, 7vw, 120px);
  display: grid;
  align-items: center;
}

.hospitality-feature__copy {
  position: relative;
  z-index: 5;
  min-width: 0;
  align-self: center;
}

.hospitality-feature__eyebrow {
  margin: 0 0 clamp(12px, 1.4vw, 22px);
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: clamp(17px, 1.55vw, 30px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.035em;
  text-transform: uppercase;
}

.hospitality-feature__title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin: 0;
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      Arial,
      sans-serif;
  font-size: clamp(48px, 5.45vw, 104px);
  font-weight: 700;
  line-height: 0.88;
  letter-spacing: -0.065em;
  text-transform: uppercase;
}

.hospitality-feature__title > span {
  display: block;
  white-space: nowrap;
  will-change: transform, opacity, filter;
}

.hospitality-feature__sub {
  margin: clamp(28px, 3vw, 48px) 0 0;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: clamp(18px, 1.65vw, 32px);
  font-weight: 500;
  line-height: 0.98;
  letter-spacing: -0.04em;
  text-transform: uppercase;
}

.hospitality-feature__brand {
  width: clamp(104px, 9.2vw, 158px);
  margin-top: clamp(22px, 2.4vw, 38px);
}

.hospitality-feature__brand img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  object-fit: contain;
  filter: brightness(0);
}

.hospitality-feature__center {
  position: relative;
  z-index: 7;
  width: 100%;
  display: grid;
  place-items: center;
  perspective: 1200px;
  transform-style: preserve-3d;
}

.hospitality-feature__media {
  position: relative;
  z-index: 5;
  align-self: stretch;
  min-width: 0;
  display: flex;
  align-items: flex-end;
  margin: 0;
  pointer-events: none;
}

.hospitality-feature__image-shell {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  will-change: transform, opacity, filter, clip-path;
}

.hospitality-feature__image {
  position: relative;
  z-index: 3;
  display: block;
  filter: drop-shadow(0 30px 34px rgba(9, 10, 9, 0.2));
  transform-origin: center bottom;
}

.hospitality-feature__image-shadow {
  position: absolute;
  left: 10%;
  right: 4%;
  bottom: 1.5%;
  z-index: 1;
  height: 10%;
  border-radius: 50%;
  background: radial-gradient(
        ellipse,
        rgba(9, 10, 9, 0.26),
        transparent 68%
      );
  filter: blur(14px);
}

.hospitality-feature__ambient {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}

.hospitality-feature__beam {
  position: absolute;
  display: block;
  width: clamp(280px, 36vw, 720px);
  height: 1px;
  background: linear-gradient(
        90deg,
        transparent,
        rgba(9, 10, 9, 0.25),
        transparent
      );
  opacity: 0;
  will-change: transform, opacity;
}

.hospitality-feature__beam--one {
  top: 18%;
  left: -44vw;
  animation: hospitalityBeam 15s linear -5s infinite;
}

.hospitality-feature__beam--two {
  top: 54%;
  left: -52vw;
  background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.66),
        transparent
      );
  animation: hospitalityBeam 21s linear -14s infinite;
}

.hospitality-feature__beam--three {
  top: 82%;
  left: -42vw;
  animation: hospitalityBeam 18s linear -10s infinite;
}

.hospitality-feature__dot {
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--hospitality-ink);
  opacity: 0.68;
  animation: hospitalityDotFloat 4.8s ease-in-out infinite;
}

.hospitality-feature__dot--one {
  left: 8%;
  top: 18%;
}

.hospitality-feature__dot--two {
  left: 58%;
  top: 13%;
  width: 10px;
  height: 10px;
  animation-delay: -1.7s;
}

.hospitality-feature__dot--three {
  right: 5%;
  bottom: 17%;
  width: 6px;
  height: 6px;
  background: #ffffff;
  border: 1px solid var(--hospitality-ink);
  animation-delay: -3.1s;
}

.hospitality-feature__footer {
  position: absolute;
  left: clamp(28px, 3.8vw, 72px);
  right: clamp(28px, 3.8vw, 72px);
  bottom: 24px;
  z-index: 8;
  display: flex;
  align-items: center;
  gap: 18px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(9, 10, 9, 0.52);
}

.hospitality-feature__footer i {
  flex: 1;
  height: 1px;
  background: rgba(9, 10, 9, 0.16);
}

.hospitality-feature__image-shell.is-missing-media {
  border: 1px dashed rgba(9, 10, 9, 0.2);
  border-radius: 36px;
}

.hospitality-feature__image-shell.is-missing-media::after {
  content: "RIGHT IMAGE AREA";
  position: absolute;
  inset: 0;
  z-index: 2;
  display: grid;
  place-items: center;
  font-family: "IBM Plex Mono", monospace;
  font-size: 10px;
  letter-spacing: 0.16em;
  color: rgba(9, 10, 9, 0.42);
}

@keyframes hospitalityBeam {
  0% {
    opacity: 0;
    transform: translate3d(-16vw, 0, 0) scaleX(0.3);
  }

  14% {
    opacity: 0.6;
  }

  82% {
    opacity: 0.28;
  }

  100% {
    opacity: 0;
    transform: translate3d(190vw, 0, 0) scaleX(1.08);
  }
}

@keyframes hospitalityDotFloat {
  0%,
    100% {
    transform: translateY(0) scale(1);
  }

  50% {
    transform: translateY(-15px) scale(1.16);
  }
}

@media (max-width: 1200px) {
  .hospitality-feature__inner {
    grid-template-columns: minmax(0, 1fr)
        clamp(155px, 15vw, 220px)
        minmax(320px, 0.85fr);
    gap: 26px;
  }

  .hospitality-feature__title {
    font-size: clamp(45px, 5.2vw, 76px);
  }

  .hospitality-feature__image-shell {
    min-height: 470px;
  }
}

@media (max-width: 900px) {
  .hospitality-feature {
    min-height: auto;
  }

  .hospitality-feature__inner {
    min-height: auto;
    padding: 96px
        24px
        82px;
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .hospitality-feature__copy {
    width: min(760px, 100%);
  }

  .hospitality-feature__title > span {
    white-space: normal;
  }

  .hospitality-feature__center {
    min-height: 260px;
  }

  .hospitality-feature__media {
    min-height: 520px;
    justify-content: center;
  }

  .hospitality-feature__image-shell {
    width: min(620px, 100%);
    height: 560px;
    min-height: 0;
  }

  .hospitality-feature__footer {
    display: none;
  }
}

@media (max-width: 580px) {
  .hospitality-feature__inner {
    padding: 82px
        18px
        64px;
    gap: 34px;
  }

  .hospitality-feature__eyebrow {
    font-size: 15px;
  }

  .hospitality-feature__title {
    font-size: clamp(42px, 13.4vw, 68px);
    line-height: 0.91;
  }

  .hospitality-feature__sub {
    font-size: 18px;
  }

  .hospitality-feature__brand {
    width: 100px;
  }

  .hospitality-feature__center {
    min-height: 220px;
  }

  .hospitality-feature__media {
    min-height: 390px;
  }

  .hospitality-feature__image-shell {
    height: 420px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hospitality-feature__beam,
    .hospitality-feature__dot,
    .hospitality-feature__logo-orbit,
    .hospitality-feature__video-glare {
    animation: none !important;
  }

  .hospitality-feature [data-hospitality-title-line],
    .hospitality-feature [data-hospitality-eyebrow],
    .hospitality-feature [data-hospitality-copy],
    .hospitality-feature [data-hospitality-brand],
    .hospitality-feature [data-hospitality-video-shell],
    .hospitality-feature [data-hospitality-media] {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    filter: none !important;
    clip-path: none !important;
  }
}

.services-overview {
  --services-blue: #38a5d4;
  --services-blue-light: #a9d9eb;
  --services-paper: #f5f5f1;
  --services-ink: #080909;
  position: relative;
  z-index: 281;
  width: 100%;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  color: var(--services-ink);
  background: linear-gradient(
        180deg,
        var(--services-blue) 0%,
        #69b9dc 35%,
        var(--services-blue-light) 62%,
        var(--services-paper) 100%
      );
}

.services-overview::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  pointer-events: none;
  background: radial-gradient(
        circle at 82% 28%,
        rgba(255, 255, 255, 0.38),
        transparent 28%
      ),
      linear-gradient(
        115deg,
        rgba(255, 255, 255, 0.08),
        transparent 48%
      );
}

.services-overview__inner {
  position: relative;
  z-index: 5;
  width: min(1720px, 100%);
  min-height: 100svh;
  margin: 0 auto;
  padding: clamp(70px, 6vw, 108px)
      clamp(30px, 4vw, 74px)
      clamp(90px, 8vw, 130px);
  display: grid;
  align-items: center;
}

.services-overview__content {
  min-width: 0;
}

.services-overview__header {
  margin-bottom: clamp(30px, 3vw, 54px);
}

.services-overview__eyebrow {
  margin: 0 0 12px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(8, 9, 9, 0.52);
}

.services-overview__title {
  margin: 0;
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      Arial,
      sans-serif;
  font-size: clamp(48px, 5.7vw, 106px);
  font-weight: 700;
  line-height: 0.88;
  letter-spacing: -0.1em;
  text-transform: uppercase;
  color: var(--services-ink);
}

.services-overview__groups {
  display: grid;
  grid-template-columns: minmax(300px, 1fr)
      minmax(300px, 1fr);
  column-gap: clamp(38px, 5vw, 90px);
  row-gap: clamp(34px, 4vw, 60px);
}

.services-overview__group {
  position: relative;
  min-width: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(8, 9, 9, 0.22);
  will-change: transform,
      opacity,
      filter;
}

.services-overview__group:nth-child(2) {
  grid-column: 1;
}

.services-overview__group:nth-child(3) {
  grid-column: 2;
  grid-row: 1 / span 2;
}

.services-overview__group::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 0;
  height: 2px;
  background: #75fa96;
  box-shadow: 0 0 14px rgba(117, 250, 150, 0.48);
  transition: width 0.65s
      cubic-bezier(0.22, 1, 0.36, 1);
}

.services-overview__group:hover::before {
  width: 100%;
}

.services-overview__group h3 {
  margin: 0 0 14px;
  display: flex;
  align-items: baseline;
  gap: 8px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: clamp(14px, 1.15vw, 20px);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -0.035em;
  text-transform: uppercase;
}

.services-overview__group h3 span {
  color: rgba(8, 9, 9, 0.6);
}

.services-overview__group ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.services-overview__group li {
  position: relative;
  padding-left: 26px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: clamp(13px, 1vw, 18px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.025em;
  text-transform: uppercase;
  color: rgba(8, 9, 9, 0.88);
  transition: transform 0.4s
      cubic-bezier(0.22, 1, 0.36, 1),
      color 0.3s ease;
}

.services-overview__group li::before {
  content: "•";
  position: absolute;
  left: 2px;
  top: 0;
  color: var(--services-ink);
}

.services-overview__group li:hover {
  color: #000;
  transform: translateX(8px);
}

.services-overview__media {
  position: relative;
  min-width: 0;
  margin: 0;
  align-self: stretch;
  display: flex;
  align-items: flex-end;
  pointer-events: none;
}

.services-overview__image-shell {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  will-change: transform,
      opacity,
      filter,
      clip-path;
}

.services-overview__image {
  position: relative;
  z-index: 3;
  display: block;
  background: transparent;
  filter: drop-shadow(
        0 30px 36px
        rgba(8, 9, 9, 0.18)
      );
  transform-origin: center bottom;
}

.services-overview__image-shadow {
  position: absolute;
  left: 10%;
  right: 4%;
  bottom: 1%;
  z-index: 1;
  height: 10%;
  border-radius: 50%;
  background: radial-gradient(
        ellipse,
        rgba(8, 9, 9, 0.24),
        transparent 68%
      );
  filter: blur(15px);
}

.services-overview__ambient {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}

.services-overview__line {
  position: absolute;
  width: clamp(280px, 36vw, 720px);
  height: 1px;
  opacity: 0;
  background: linear-gradient(
        90deg,
        transparent,
        rgba(8, 9, 9, 0.24),
        transparent
      );
  animation: servicesOverviewLine
      17s
      linear
      infinite;
}

.services-overview__line--one {
  top: 18%;
  left: -48vw;
  animation-delay: -6s;
}

.services-overview__line--two {
  top: 55%;
  left: -54vw;
  background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.7),
        transparent
      );
  animation-duration: 22s;
  animation-delay: -14s;
}

.services-overview__line--three {
  top: 83%;
  left: -42vw;
  animation-duration: 19s;
  animation-delay: -10s;
}

.services-overview__footer {
  position: absolute;
  left: clamp(30px, 4vw, 74px);
  right: clamp(30px, 4vw, 74px);
  bottom: 24px;
  z-index: 8;
  display: flex;
  align-items: center;
  gap: 18px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(8, 9, 9, 0.48);
}

.services-overview__footer i {
  flex: 1;
  height: 1px;
  background: rgba(8, 9, 9, 0.15);
}

@keyframes servicesOverviewLine {
  0% {
    opacity: 0;
    transform: translate3d(-15vw, 0, 0)
        scaleX(0.3);
  }

  15% {
    opacity: 0.58;
  }

  82% {
    opacity: 0.24;
  }

  100% {
    opacity: 0;
    transform: translate3d(190vw, 0, 0)
        scaleX(1.08);
  }
}

@media (max-width: 1050px) {
  .services-overview__inner {
    grid-template-columns: minmax(0, 1.2fr)
        minmax(280px, 0.8fr);
    gap: 34px;
  }

  .services-overview__groups {
    grid-template-columns: 1fr;
  }

  .services-overview__group:nth-child(2),
    .services-overview__group:nth-child(3) {
    grid-column: 1;
    grid-row: auto;
  }

  .services-overview__image-shell {
    min-height: 460px;
  }
}

@media (max-width: 760px) {
  .services-overview {
    min-height: auto;
  }

  .services-overview__inner {
    min-height: auto;
    padding: 88px
        20px
        72px;
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .services-overview__title {
    font-size: clamp(46px, 14vw, 76px);
  }

  .services-overview__groups {
    gap: 34px;
  }

  .services-overview__media {
    min-height: 420px;
    justify-content: center;
  }

  .services-overview__image-shell {
    width: min(520px, 100%);
    height: 460px;
    min-height: 0;
  }

  .services-overview__footer {
    display: none;
  }
}

@media (max-width: 480px) {
  .services-overview__inner {
    padding-inline: 17px;
  }

  .services-overview__title {
    font-size: 43px;
  }

  .services-overview__group h3 {
    font-size: 14px;
  }

  .services-overview__group li {
    font-size: 13px;
  }

  .services-overview__image-shell {
    height: 380px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .services-overview__line {
    animation: none !important;
  }

  .services-overview [data-services-title],
    .services-overview [data-services-reveal],
    .services-overview [data-services-group],
    .services-overview [data-services-media] {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    filter: none !important;
    clip-path: none !important;
  }
}

@media (max-width: 900px) {
  .hospitality-feature__image-shell,
    .services-overview__image-shell {
    width: min(100%, 620px) !important;
    height: 560px !important;
    min-height: 0 !important;
  }
}

@media (max-width: 580px) {
  .hospitality-feature__image-shell,
    .services-overview__image-shell {
    height: 430px !important;
  }
}

.hospitality-feature__inner {
  grid-template-columns: minmax(0, 0.95fr)
      clamp(160px, 13vw, 230px)
      minmax(520px, 1.15fr) !important;
  gap: clamp(20px, 2vw, 38px) !important;
}

.hospitality-feature__media {
  overflow: visible !important;
  justify-content: center !important;
}

.hospitality-feature__image-shell {
  width: 650px !important;
  max-width: none !important;
  height: 720px !important;
  min-height: 720px !important;
  overflow: visible !important;
  transform: scale(1.22) !important;
  transform-origin: center bottom !important;
}

.hospitality-feature__image {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center bottom !important;
}

.services-overview__inner {
  grid-template-columns: minmax(0, 1fr)
      minmax(500px, 0.82fr) !important;
  gap: clamp(25px, 3vw, 55px) !important;
}

.services-overview__media {
  overflow: visible !important;
  justify-content: center !important;
}

.services-overview__image-shell {
  width: 650px !important;
  max-width: none !important;
  height: 720px !important;
  min-height: 720px !important;
  overflow: visible !important;
  transform: scale(1.22) !important;
  transform-origin: center bottom !important;
}

.services-overview__image {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center bottom !important;
}

.hospitality-feature::after {
  display: none !important;
  background: none !important;
}

.kinetic-story-max {
  --ksm-bg: #0b0e0b;
  --ksm-ink: #f2f3ee;
  --ksm-soft: rgba(242, 243, 238, 0.42);
  --ksm-final-image-width: 200px;
  --ksm-image-text-gap: 26px;
  position: relative;
  z-index: 288;
  width: 100%;
  background: var(--ksm-bg);
  color: var(--ksm-ink);
}

.kinetic-story-max__sticky {
  isolation: isolate;
  background: var(--ksm-bg);
}

.kinetic-story-max__background-type {
  position: absolute;
  inset: clamp(88px, 9.5vh, 138px)
      clamp(28px, 5.4vw, 96px)
      clamp(58px, 6.5vh, 102px);
  z-index: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      Arial,
      sans-serif;
  font-size: clamp(100px, 14.25vw, 278px);
  font-weight: 700;
  line-height: 0.64;
  letter-spacing: -0.095em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.37);
  pointer-events: none;
  user-select: none;
  will-change: transform;
}

.kinetic-story-max__background-type span {
  display: block;
  white-space: nowrap;
}

.kinetic-story-max__background-type span:nth-child(2),
  .kinetic-story-max__background-type span:nth-child(3) {
  align-self: flex-end;
}

.kinetic-story-max__meta {
  position: absolute;
  top: clamp(90px, 10.2vh, 136px);
  z-index: 16;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: clamp(9px, 0.68vw, 12px);
  font-weight: 500;
  line-height: 1;
  color: rgba(242, 243, 238, 0.34);
}

.kinetic-story-max__meta--left {
  left: clamp(24px, 7vw, 116px);
}

.kinetic-story-max__meta--right {
  right: clamp(24px, 7vw, 116px);
}

.kinetic-story-max__right-mark {
  position: absolute;
  top: clamp(130px, 14.2vh, 194px);
  right: clamp(24px, 7vw, 116px);
  z-index: 16;
  width: 3px;
  height: clamp(44px, 6vh, 74px);
  background: rgba(242, 243, 238, 0.21);
  opacity: 0;
  transform: scaleY(0);
  transform-origin: top center;
  will-change: opacity, transform;
}

.kinetic-story-max__media {
  position: absolute;
  left: 50%;
  top: 15%;
  z-index: 8;
  width: clamp(218px, 17.2vw, 400px);
  aspect-ratio: 0.735;
  margin: 0;
  opacity: 0;
  transform: translate3d(-50%, 30px, 0)
      scale(0.7);
  transform-origin: center center;
  will-change: transform,
      opacity,
      filter;
}

.kinetic-story-max__media-frame {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 15px;
  background: #030403;
  box-shadow: 0 38px 100px rgba(0, 0, 0, 0.48);
  isolation: isolate;
}

.kinetic-story-max__placeholder,
  .kinetic-story-max__image {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  background: #030403;
  user-select: none;
  pointer-events: none;
}

.kinetic-story-max__image {
  filter: grayscale(1)
      contrast(1.08);
}

.kinetic-story-max__media-shade {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0) 42%,
        rgba(0, 0, 0, 0.28) 100%
      );
}

.kinetic-story-max__copy {
  position: absolute;
  left: 50%;
  top: 73%;
  z-index: 18;
  width: min(980px, 80vw);
  transform: translateX(-50%);
  text-align: center;
  pointer-events: none;
}

.kinetic-story-max__sentence {
  margin: 0;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: clamp(11px, 0.92vw, 16px);
  font-weight: 500;
  line-height: 1.48;
  letter-spacing: -0.026em;
  text-transform: uppercase;
  color: rgba(242, 243, 238, 0.94);
}

.kinetic-story-max.is-ready
  .kinetic-story-max__sentence {
  visibility: visible;
}

.kinetic-story-max__line {
  display: block;
  min-height: 1.48em;
  overflow: visible;
}

.kinetic-story-max__word {
  display: inline-block;
  white-space: nowrap;
  margin-right: 0.29em;
}

.kinetic-story-max__word:last-child {
  margin-right: 0;
}

.kinetic-story-max__char {
  position: relative;
  display: inline-block;
  opacity: 0;
  transform-origin: center center;
  will-change: transform,
      opacity,
      filter;
}

.kinetic-story-max__bottom-mark {
  position: absolute;
  left: clamp(24px, 7vw, 116px);
  bottom: clamp(72px, 8.8vh, 116px);
  z-index: 16;
  width: clamp(42px, 4.2vw, 70px);
  height: 3px;
  background: rgba(242, 243, 238, 0.27);
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  will-change: opacity, transform;
}

.kinetic-story-max__button {
  position: absolute;
  left: 56%;
  bottom: clamp(52px, 6.5vh, 86px);
  z-index: 22;
  min-width: clamp(126px, 11.5vw, 178px);
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 22px;
  border: 1px solid rgba(242, 243, 238, 0.22);
  border-radius: 999px;
  background: rgba(11, 14, 11, 0.35);
  color: rgba(242, 243, 238, 0.58);
  opacity: 0;
  transform: translate3d(-50%, 18px, 0);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: border-color 0.3s ease,
      background-color 0.3s ease,
      color 0.3s ease;
  will-change: opacity, transform;
}

.kinetic-story-max__button span {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
  font-size: 9px;
  font-weight: 500;
  line-height: 1;
}

.kinetic-story-max__button:hover,
  .kinetic-story-max__button:focus-visible {
  border-color: #75fa96;
  background: #75fa96;
  color: #0b0e0b;
}

@media (max-width: 1050px) {
  .kinetic-story-max {
    height: 470svh;
  }

  .kinetic-story-max__background-type {
    font-size: clamp(86px, 16vw, 182px);
  }

  .kinetic-story-max__media {
    top: 16%;
    width: clamp(204px, 27vw, 296px);
  }

  .kinetic-story-max__copy {
    top: 72%;
    width: min(880px, 88vw);
  }

  .kinetic-story-max__sentence {
    font-size: clamp(10px, 1.4vw, 14px);
  }
}

@media (max-width: 700px) {
  .kinetic-story-max {
    --ksm-final-image-width: 170px;
    --ksm-image-text-gap: 16px;
  }

  .kinetic-story-max__background-type {
    inset: 84px 15px 62px;
    justify-content: space-around;
    font-size: clamp(62px, 22vw, 114px);
    line-height: 0.76;
  }

  .kinetic-story-max__background-type span:nth-child(2),
    .kinetic-story-max__background-type span:nth-child(3) {
    align-self: flex-start;
  }

  .kinetic-story-max__meta {
    top: 74px;
    font-size: 8px;
  }

  .kinetic-story-max__meta--left {
    left: 17px;
  }

  .kinetic-story-max__meta--right {
    right: 17px;
  }

  .kinetic-story-max__right-mark {
    top: 107px;
    right: 17px;
    height: 37px;
  }

  .kinetic-story-max__media {
    top: 15%;
    width: clamp(176px, 49vw, 238px);
  }

  .kinetic-story-max__copy {
    top: 67%;
    width: calc(100% - 24px);
  }

  .kinetic-story-max__sentence {
    font-size: clamp(8px, 2.45vw, 11px);
    line-height: 1.55;
  }

  .kinetic-story-max__line {
    min-height: 1.55em;
  }

  .kinetic-story-max__bottom-mark {
    left: 17px;
    bottom: 58px;
    height: 2px;
  }

  .kinetic-story-max__button {
    bottom: 39px;
    min-width: 116px;
    min-height: 37px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kinetic-story-max {
    height: 100svh;
    min-height: 640px;
  }

  .kinetic-story-max__sticky {
    position: relative;
  }

  .kinetic-story-max__sentence {
    visibility: visible;
  }

  .kinetic-story-max__char {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }

  .kinetic-story-max__media {
    opacity: 1 !important;
    transform: translate3d(-50%, -32px, 0)
        scale(1.34) !important;
  }

  .kinetic-story-max__right-mark {
    opacity: 1 !important;
    transform: scaleY(1) !important;
  }

  .kinetic-story-max__bottom-mark {
    opacity: 1 !important;
    transform: scaleX(1) !important;
  }

  .kinetic-story-max__button {
    opacity: 1 !important;
    transform: translate3d(-50%, 0, 0) !important;
  }
}

.kinetic-story-max {
  height: 100svh !important;
  min-height: 640px !important;
  overflow: visible !important;
}

.kinetic-story-max__sticky {
  position: relative !important;
  top: auto !important;
  width: 100%;
  height: 100svh;
  min-height: 640px;
  overflow: hidden;
}

.kinetic-story-max.is-ready .kinetic-story-max__char {
  visibility: visible;
}

.kinetic-story-max__sentence {
  visibility: visible !important;
}

.kinetic-story-max__media,
  .kinetic-story-max__char,
  .kinetic-story-max__right-mark,
  .kinetic-story-max__bottom-mark,
  .kinetic-story-max__button,
  .kinetic-story-max__background-type {
  will-change: transform, opacity, filter;
}

@media (max-width: 700px) {
  .kinetic-story-max {
    height: 100svh !important;
    min-height: 560px !important;
  }

  .kinetic-story-max__sticky {
    height: 100svh;
    min-height: 560px;
  }
}

.floating-nav__links a.nav-roll-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 10px 0;
  overflow: visible;
  line-height: 1;
  perspective: 700px;
  text-decoration: none;
  cursor: pointer;
}

.nav-roll-link__viewport {
  position: relative;
  display: block;
  height: 1.15em;
  overflow: hidden;
  white-space: nowrap;
}

.nav-roll-link__line {
  display: flex;
  align-items: center;
  width: max-content;
  white-space: pre;
  pointer-events: none;
}

.nav-roll-link__line--primary {
  position: relative;
}

.nav-roll-link__line--secondary {
  position: absolute;
  left: 0;
  top: 100%;
}

.nav-roll-link__char {
  display: inline-block;
  min-width: 0.15em;
  transform-origin: 50% 50%;
  backface-visibility: hidden;
  will-change: transform, opacity;
  transition: transform 0.58s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.32s ease;
}

.nav-roll-link__line--primary .nav-roll-link__char {
  opacity: 1;
  transform: translate3d(0, 0, 0)
      rotateX(0deg);
}

.nav-roll-link__line--secondary .nav-roll-link__char {
  opacity: 0;
  transform: translate3d(0, 18%, 0)
      rotateX(-62deg);
}

.nav-roll-link.is-hovered
  .nav-roll-link__line--primary
  .nav-roll-link__char {
  opacity: 0;
  transform: translate3d(0, -118%, 0)
      rotateX(62deg);
  transition-delay: calc(var(--char-index) * 0.026s);
}

.nav-roll-link.is-hovered
  .nav-roll-link__line--secondary
  .nav-roll-link__char {
  opacity: 1;
  transform: translate3d(0, -100%, 0)
      rotateX(0deg);
  transition-delay: calc(var(--char-index) * 0.026s + 0.035s);
}

.nav-roll-link:not(.is-hovered)
  .nav-roll-link__line--primary
  .nav-roll-link__char {
  transition-delay: calc(var(--char-reverse-index) * 0.018s);
}

.nav-roll-link:not(.is-hovered)
  .nav-roll-link__line--secondary
  .nav-roll-link__char {
  transition-delay: calc(var(--char-reverse-index) * 0.018s);
}

.nav-roll-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3px;
  height: 1px;
  background: currentColor;
  opacity: 0.5;
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform 0.48s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.25s ease;
}

.nav-roll-link.is-hovered::after,
  .nav-roll-link:focus-visible::after {
  opacity: 0.82;
  transform: scaleX(1);
  transform-origin: left center;
}

@media (prefers-reduced-motion: reduce) {
  .nav-roll-link__char {
    transition: opacity 0.2s ease !important;
    transform: none !important;
  }

  .nav-roll-link__line--secondary {
    display: none;
  }

  .nav-roll-link.is-hovered
    .nav-roll-link__line--primary
    .nav-roll-link__char {
    opacity: 0.62;
  }
}

.floating-nav__links .nav-roll-link {
  transition: color 0.35s ease;
}

.floating-nav__links .nav-roll-link.is-hovered {
  color: #75fa96 !important;
}

.partners-grid-section {
  --partners-bg: #f5f2eb;
  --partners-ink: #16140f;
  --partners-line: rgba(22, 20, 15, 0.15);
  --partners-green: #75fa96;
  position: relative;
  z-index: 292;
  width: 100%;
  min-height: 118svh;
  overflow: hidden;
  isolation: isolate;
  background: radial-gradient(
        circle at 8% 18%,
        rgba(117, 250, 150, 0.15),
        transparent 22%
      ),
      linear-gradient(
        180deg,
        #faf7f0 0%,
        var(--partners-bg) 100%
      );
  color: var(--partners-ink);
}

.partners-grid-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  pointer-events: none;
  background-image: linear-gradient(
        rgba(22, 20, 15, 0.025) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(22, 20, 15, 0.025) 1px,
        transparent 1px
      );
  background-size: 72px 72px;
  -webkit-mask-image: linear-gradient(
        90deg,
        transparent 0%,
        #000 35%,
        #000 100%
      );
  mask-image: linear-gradient(
        90deg,
        transparent 0%,
        #000 35%,
        #000 100%
      );
}

.partners-grid-section__ambient {
  position: absolute;
  inset: 0;
  z-index: -2;
  overflow: hidden;
  pointer-events: none;
}

.partners-grid-section__ambient span {
  position: absolute;
  width: 1px;
  height: 150%;
  background: linear-gradient(
        180deg,
        transparent,
        rgba(22, 20, 15, 0.11),
        transparent
      );
  transform: rotate(18deg);
  animation: partnersAmbientLine 10s ease-in-out infinite;
}

.partners-grid-section__ambient span:nth-child(1) {
  left: 42%;
  top: -25%;
}

.partners-grid-section__ambient span:nth-child(2) {
  left: 69%;
  top: -35%;
  animation-delay: -3.2s;
}

.partners-grid-section__ambient span:nth-child(3) {
  left: 91%;
  top: -30%;
  animation-delay: -6.1s;
}

@keyframes partnersAmbientLine {
  0%,
    100% {
    transform: translate3d(0, -2%, 0)
        rotate(18deg);
    opacity: 0.3;
  }

  50% {
    transform: translate3d(0, 5%, 0)
        rotate(18deg);
    opacity: 0.8;
  }
}

.partners-grid-section__inner {
  width: 100%;
  min-height: 118svh;
  display: grid;
  grid-template-columns: minmax(260px, 0.38fr)
      minmax(0, 1.62fr);
  gap: clamp(34px, 4vw, 76px);
  padding: clamp(94px, 8vw, 142px)
      clamp(24px, 3.8vw, 72px)
      clamp(80px, 7vw, 126px);
}

.partners-grid-section__heading {
  position: sticky;
  top: 112px;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.partners-grid-section__heading p {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 0;
  font-family: "Helvetica LT Std Bold",
      var(--font-display);
  font-size: clamp(
        22px,
        2vw,
        34px
      );
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.045em;
}

.partners-grid-section__heading p i {
  display: block;
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  border-radius: 50%;
  background: var(--partners-ink);
  animation: partnersDotPulse 2.8s ease-in-out infinite;
}

@keyframes partnersDotPulse {
  50% {
    transform: scale(0.65);
    background: var(--partners-green);
    box-shadow: 0 0 0 8px rgba(117, 250, 150, 0.14);
  }
}

.partners-grid-section__heading > span {
  max-width: 22ch;
  font-family: var(--font-mono);
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: 0.18em;
  color: rgba(22, 20, 15, 0.48);
}

.partners-grid-section__grid {
  display: grid;
  grid-template-columns: repeat(
        4,
        minmax(0, 1fr)
      );
  align-content: start;
  border-top: 1px solid
      var(--partners-line);
  border-left: 1px solid
      var(--partners-line);
}

.partner-logo-card {
  position: relative;
  min-height: clamp(
        190px,
        20vw,
        280px
      );
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 18px
      clamp(16px, 1.6vw, 28px)
      20px;
  overflow: hidden;
  isolation: isolate;
  border-right: 1px solid
      var(--partners-line);
  border-bottom: 1px solid
      var(--partners-line);
  background: rgba(250, 247, 240, 0.25);
  transition: background-color 0.45s ease,
      transform 0.6s var(--ease),
      color 0.35s ease;
}

.partner-logo-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--partners-green);
  transform: translateY(102%);
  transition: transform 0.62s var(--ease);
}

.partner-logo-card:hover::before,
  .partner-logo-card:focus-within::before {
  transform: translateY(0);
}

.partner-logo-card:hover {
  transform: translateY(-6px);
}

.partner-logo-card__index {
  align-self: flex-end;
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.16em;
  color: rgba(22, 20, 15, 0.42);
}

.partner-logo-card__media {
  position: relative;
  min-height: 116px;
  display: grid;
  place-items: center;
}

.partner-logo-card__media img {
  width: min(78%, 170px);
  max-height: 112px;
  object-fit: contain;
  object-position: center;
  filter: grayscale(1)
      contrast(1.08);
  transition: transform 0.7s var(--ease),
      filter 0.45s ease;
}

.partner-logo-card:hover
  .partner-logo-card__media img {
  transform: scale(1.09)
      rotate(-1.5deg);
  filter: grayscale(0)
      contrast(1.02);
}

.partner-logo-card p {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.13em;
  color: rgba(22, 20, 15, 0.55);
}

@media (max-width: 1100px) {
  .partners-grid-section__inner {
    grid-template-columns: 1fr;
  }

  .partners-grid-section__heading {
    position: relative;
    top: auto;
  }

  .partners-grid-section__grid {
    grid-template-columns: repeat(
          3,
          minmax(0, 1fr)
        );
  }
}

@media (max-width: 760px) {
  .partners-grid-section {
    min-height: auto;
  }

  .partners-grid-section__inner {
    min-height: auto;
    padding: 88px
        18px
        82px;
  }

  .partners-grid-section__grid {
    grid-template-columns: repeat(
          2,
          minmax(0, 1fr)
        );
  }

  .partner-logo-card {
    min-height: 175px;
  }
}

@media (max-width: 460px) {
  .partners-grid-section__grid {
    grid-template-columns: 1fr;
  }

  .partner-logo-card {
    min-height: 190px;
  }
}

.navigation-footer {
  --navigation-bg: #0b0d0b;
  --navigation-ink: #f5f2eb;
  --navigation-soft: rgba(245, 242, 235, 0.52);
  --navigation-line: rgba(245, 242, 235, 0.15);
  --navigation-green: #75fa96;
  position: relative;
  z-index: 295;
  width: 100%;
  min-height: 112svh;
  overflow: hidden;
  isolation: isolate;
  background: radial-gradient(
        circle at 82% 22%,
        rgba(117, 250, 150, 0.08),
        transparent 22%
      ),
      radial-gradient(
        circle at 22% 86%,
        rgba(43, 47, 236, 0.06),
        transparent 26%
      ),
      var(--navigation-bg);
  color: var(--navigation-ink);
}

.navigation-footer::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -6;
  opacity: 0.17;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
  background-size: 190px 190px;
  mix-blend-mode: soft-light;
}

.navigation-footer__ambient {
  position: absolute;
  inset: 0;
  z-index: -2;
  overflow: hidden;
  pointer-events: none;
  transform: translate3d(
        calc(var(--navigation-pointer-x, 0) * 1px),
        calc(var(--navigation-pointer-y, 0) * 1px),
        0
      );
  transition: transform 0.8s var(--ease);
}

.navigation-footer__ghost {
  position: absolute;
  font-family: "Helvetica LT Std Bold",
      "Arial Black",
      sans-serif;
  font-size: clamp(
        170px,
        24vw,
        460px
      );
  font-weight: 700;
  line-height: 0.7;
  letter-spacing: -0.105em;
  color: rgba(0, 0, 0, 0.24);
  user-select: none;
  white-space: nowrap;
}

.navigation-footer__ghost--one {
  left: -3%;
  top: 6%;
  animation: navigationGhostDriftOne
      14s
      ease-in-out
      infinite;
}

.navigation-footer__ghost--two {
  right: -4%;
  bottom: 4%;
  animation: navigationGhostDriftTwo
      17s
      ease-in-out
      infinite;
}

@keyframes navigationGhostDriftOne {
  50% {
    transform: translate3d(4%, 10%, 0)
        rotate(-2deg);
  }
}

@keyframes navigationGhostDriftTwo {
  50% {
    transform: translate3d(-5%, -8%, 0)
        rotate(2deg);
  }
}

.navigation-footer__orbit {
  position: absolute;
  border: 1px solid
      rgba(245, 242, 235, 0.12);
  border-radius: 50%;
  animation: navigationOrbit
      18s
      linear
      infinite;
}

.navigation-footer__orbit::before,
  .navigation-footer__orbit::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--navigation-green);
}

.navigation-footer__orbit::before {
  left: 50%;
  top: -4px;
}

.navigation-footer__orbit::after {
  right: 12%;
  bottom: 8%;
}

.navigation-footer__orbit--one {
  width: 440px;
  height: 440px;
  left: 48%;
  top: -255px;
}

.navigation-footer__orbit--two {
  width: 310px;
  height: 310px;
  right: -150px;
  top: 31%;
  animation-direction: reverse;
  animation-duration: 13s;
}

.navigation-footer__orbit--three {
  width: 230px;
  height: 230px;
  left: -100px;
  bottom: -70px;
  animation-duration: 10s;
}

@keyframes navigationOrbit {
  to {
    transform: rotate(360deg);
  }
}

.navigation-footer__beam {
  position: absolute;
  width: 1px;
  height: 125%;
  background: linear-gradient(
        180deg,
        transparent,
        rgba(117, 250, 150, 0.3),
        transparent
      );
  transform: rotate(24deg);
  animation: navigationBeamShift
      8s
      ease-in-out
      infinite;
}

.navigation-footer__beam--one {
  left: 35%;
  top: -15%;
}

.navigation-footer__beam--two {
  left: 61%;
  top: -12%;
  animation-delay: -2.8s;
}

.navigation-footer__beam--three {
  left: 84%;
  top: -20%;
  animation-delay: -5.4s;
}

@keyframes navigationBeamShift {
  50% {
    transform: translate3d(70px, 0, 0)
        rotate(24deg);
    opacity: 0.25;
  }
}

.navigation-footer__particle {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--navigation-ink);
  animation: navigationParticleFloat
      6s
      ease-in-out
      infinite;
}

.navigation-footer__particle--one {
  left: 8%;
  top: 12%;
}

.navigation-footer__particle--two {
  left: 54%;
  top: 18%;
  width: 5px;
  height: 5px;
  background: var(--navigation-green);
  animation-delay: -2s;
}

.navigation-footer__particle--three {
  right: 7%;
  top: 54%;
  animation-delay: -3.4s;
}

.navigation-footer__particle--four {
  left: 42%;
  bottom: 10%;
  width: 12px;
  height: 12px;
  background: transparent;
  border: 1px solid var(--navigation-ink);
  animation-delay: -4.5s;
}

@keyframes navigationParticleFloat {
  50% {
    transform: translate3d(0, -32px, 0)
        scale(1.45);
  }
}

.navigation-footer__floating-word {
  position: absolute;
  padding: 7px 11px;
  border: 1px solid
      rgba(245, 242, 235, 0.13);
  border-radius: 999px;
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 0.16em;
  color: rgba(245, 242, 235, 0.32);
  animation: navigationWordFloat
      7s
      ease-in-out
      infinite;
}

.navigation-footer__floating-word--one {
  left: 45%;
  top: 15%;
}

.navigation-footer__floating-word--two {
  right: 12%;
  bottom: 22%;
  animation-delay: -2.6s;
}

.navigation-footer__floating-word--three {
  left: 28%;
  bottom: 9%;
  animation-delay: -4.2s;
}

@keyframes navigationWordFloat {
  50% {
    transform: translate3d(14px, -16px, 0)
        rotate(3deg);
  }
}

.navigation-footer__inner {
  position: relative;
  z-index: 5;
  width: 100%;
  min-height: 112svh;
  display: flex;
  flex-direction: column;
  padding: clamp(82px, 7vw, 118px)
      clamp(24px, 3.8vw, 72px)
      28px;
}

.navigation-footer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding-bottom: 28px;
  border-bottom: 1px solid
      var(--navigation-line);
}

.navigation-footer__header p {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 0;
  font-family: "Helvetica LT Std Bold",
      var(--font-display);
  font-size: clamp(
        22px,
        2vw,
        34px
      );
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.045em;
}

.navigation-footer__header p i {
  display: block;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: var(--navigation-ink);
  box-shadow: 0 0 0 0
      rgba(117, 250, 150, 0);
  animation: navigationHeaderDot
      2.6s
      ease-in-out
      infinite;
}

@keyframes navigationHeaderDot {
  50% {
    background: var(--navigation-green);
    box-shadow: 0 0 0 9px
        rgba(117, 250, 150, 0.1);
  }
}

.navigation-footer__header > span {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.18em;
  color: var(--navigation-soft);
}

.navigation-footer__layout {
  flex: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr)
      minmax(360px, 0.9fr);
  gap: clamp(
        60px,
        9vw,
        170px
      );
  align-items: start;
  padding: clamp(54px, 6vw, 96px)
      0
      54px;
}

.navigation-footer__menu {
  display: flex;
  flex-direction: column;
}

.navigation-footer__menu a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
  min-height: clamp(
        74px,
        7vw,
        112px
      );
  padding: 6px
      0;
  overflow: hidden;
  border-bottom: 1px solid
      var(--navigation-line);
  color: var(--navigation-ink);
  transition: color 0.35s ease,
      padding-left 0.55s var(--ease);
}

.navigation-footer__menu a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--navigation-green);
  transform: translateX(-101%);
  transition: transform 0.62s var(--ease);
}

.navigation-footer__menu a:hover::before,
  .navigation-footer__menu a:focus-visible::before {
  transform: translateX(0);
}

.navigation-footer__menu a:hover,
  .navigation-footer__menu a:focus-visible {
  color: #0b0d0b;
  padding-left: 24px;
}

.navigation-footer__menu a span {
  font-family: "Helvetica LT Std Bold",
      var(--font-display);
  font-size: clamp(
        48px,
        5.35vw,
        98px
      );
  font-weight: 700;
  line-height: 0.82;
  letter-spacing: -0.075em;
}

.navigation-footer__menu a i {
  font-family: var(--font-body);
  font-size: clamp(
        20px,
        2vw,
        34px
      );
  font-style: normal;
  opacity: 0;
  transform: translate3d(
        -28px,
        22px,
        0
      );
  transition: opacity 0.35s ease,
      transform 0.52s var(--ease);
}

.navigation-footer__menu a:hover i,
  .navigation-footer__menu a:focus-visible i {
  opacity: 1;
  transform: translate3d(
        0,
        0,
        0
      );
}

.navigation-footer__details {
  display: grid;
  grid-template-columns: repeat(
        2,
        minmax(0, 1fr)
      );
  gap: clamp(
        46px,
        5vw,
        88px
      )
      clamp(
        26px,
        3vw,
        54px
      );
  padding-top: 7px;
}

.navigation-footer__detail-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.navigation-footer__detail-block--wide {
  grid-column: 1 / -1;
}

.navigation-footer__detail-block p {
  margin: 0 0 20px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.13em;
  color: var(--navigation-soft);
}

.navigation-footer__detail-block strong {
  max-width: 25ch;
  font-family: var(--font-body);
  font-size: clamp(
        17px,
        1.4vw,
        22px
      );
  font-weight: 500;
  line-height: 1.35;
}

.navigation-footer__detail-block a {
  position: relative;
  font-family: var(--font-body);
  font-size: clamp(
        18px,
        1.45vw,
        25px
      );
  font-weight: 500;
  line-height: 1.2;
  transition: color 0.3s ease,
      transform 0.4s var(--ease);
}

.navigation-footer__detail-block a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4px;
  height: 1px;
  background: var(--navigation-green);
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform 0.45s var(--ease);
}

.navigation-footer__detail-block a:hover,
  .navigation-footer__detail-block a:focus-visible {
  color: var(--navigation-green);
  transform: translateX(5px);
}

.navigation-footer__detail-block a:hover::after,
  .navigation-footer__detail-block a:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left center;
}

.navigation-footer__detail-block > span {
  max-width: 24ch;
  font-family: var(--font-body);
  font-size: clamp(
        15px,
        1.15vw,
        19px
      );
  line-height: 1.45;
  color: var(--navigation-soft);
}

.navigation-footer__signal-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.navigation-footer__signal-icons span {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border: 1px solid
      rgba(245, 242, 235, 0.1);
  background: rgba(245, 242, 235, 0.055);
  font-size: 25px;
  transition: background-color 0.35s ease,
      color 0.35s ease,
      transform 0.48s var(--ease);
}

.navigation-footer__signal-icons span:hover {
  color: #0b0d0b;
  background: var(--navigation-green);
  transform: translateY(-7px)
      rotate(5deg);
}

.navigation-footer__closing {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
  padding: 58px
      0
      46px;
  text-align: center;
  border-top: 1px solid
      var(--navigation-line);
}

.navigation-footer__closing > p {
  max-width: 15ch;
  margin: 0;
  font-family: "Helvetica LT Std Bold",
      var(--font-display);
  font-size: clamp(
        42px,
        5.7vw,
        102px
      );
  font-weight: 700;
  line-height: 0.88;
  letter-spacing: -0.07em;
}

.navigation-footer__back-top {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 14px
      20px;
  border: 1px solid
      rgba(245, 242, 235, 0.28);
  border-radius: 999px;
  overflow: hidden;
  isolation: isolate;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.17em;
  color: var(--navigation-ink);
  transition: color 0.35s ease,
      border-color 0.35s ease,
      transform 0.5s var(--ease);
}

.navigation-footer__back-top::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: var(--navigation-green);
  transform: scale(0);
  transform-origin: center;
  transition: transform 0.48s var(--ease);
}

.navigation-footer__back-top:hover,
  .navigation-footer__back-top:focus-visible {
  color: #0b0d0b;
  border-color: var(--navigation-green);
  transform: translateY(-6px);
}

.navigation-footer__back-top:hover::before,
  .navigation-footer__back-top:focus-visible::before {
  transform: scale(1);
}

.navigation-footer__back-top svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 0.5s var(--ease);
}

.navigation-footer__back-top:hover svg,
  .navigation-footer__back-top:focus-visible svg {
  transform: translateY(-4px);
}

.navigation-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-top: 25px;
  border-top: 1px solid
      var(--navigation-line);
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.15em;
  color: var(--navigation-soft);
}

@media (max-width: 1000px) {
  .navigation-footer__layout {
    grid-template-columns: 1fr;
  }

  .navigation-footer__details {
    padding-top: 20px;
  }
}

@media (max-width: 700px) {
  .navigation-footer__inner {
    padding: 82px
        18px
        24px;
  }

  .navigation-footer__header {
    align-items: flex-start;
    flex-direction: column;
  }

  .navigation-footer__menu a {
    min-height: 75px;
  }

  .navigation-footer__menu a span {
    font-size: clamp(
          42px,
          15vw,
          70px
        );
  }

  .navigation-footer__details {
    grid-template-columns: 1fr;
  }

  .navigation-footer__detail-block--wide {
    grid-column: auto;
  }

  .navigation-footer__closing {
    padding-top: 50px;
  }

  .navigation-footer__closing > p {
    font-size: clamp(
          42px,
          13vw,
          70px
        );
  }

  .navigation-footer__bottom {
    align-items: flex-start;
    flex-direction: column;
  }

  .navigation-footer__orbit--one {
    left: 18%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .partners-grid-section__ambient span,
    .partners-grid-section__heading p i,
    .navigation-footer__ghost,
    .navigation-footer__orbit,
    .navigation-footer__beam,
    .navigation-footer__particle,
    .navigation-footer__floating-word,
    .navigation-footer__header p i {
    animation: none !important;
  }
}

.navigation-footer__details
  .navigation-footer__detail-block:nth-child(2) {
  position: relative;
  left: 70px;
}

.navigation-footer__detail-block:first-child a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: max-content;
  max-width: none;
  white-space: nowrap;
  flex-wrap: nowrap;
}

.partners-grid-section::before {
  display: none !important;
  background: none !important;
}

@media (min-width: 1101px) {
  .partners-grid-section__inner {
    grid-template-columns: minmax(250px, 0.34fr)
        minmax(0, 1.66fr);
    gap: clamp(
          28px,
          3vw,
          56px
        );
    padding-right: clamp(
          112px,
          8.5vw,
          168px
        );
  }

  .partners-grid-section__grid {
    width: calc(
          100% - 24px
        );
    transform: translateX(-28px);
  }
}

.partners-contact {
  --contact-background: #ffffff;
  --contact-ink: #16140f;
  --contact-soft: rgba(22, 20, 15, 0.5);
  --contact-line: rgba(22, 20, 15, 0.7);
  --contact-green: #75fa96;
  --contact-red: #e8402c;
  --contact-blue: #2b2fec;
  --contact-yellow: #ffd84d;
  --contact-accent: var(--contact-green);
  position: relative;
  z-index: 293;
  width: 100%;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background: var(--contact-background);
  color: var(--contact-ink);
  border-top: 1px solid
      rgba(22, 20, 15, 0.1);
}

.partners-contact::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 13%;
  width: min(
        620px,
        58vw
      );
  aspect-ratio: 1;
  z-index: -3;
  border: 1px solid
      rgba(22, 20, 15, 0.045);
  border-radius: 50%;
  transform: translateX(-50%);
  pointer-events: none;
}

.partners-contact__ambient {
  position: absolute;
  inset: 0;
  z-index: -2;
  overflow: hidden;
  pointer-events: none;
}

.partners-contact__ambient span {
  position: absolute;
  width: 1px;
  height: 145%;
  background: linear-gradient(
        180deg,
        transparent,
        rgba(22, 20, 15, 0.055),
        transparent
      );
  transform: rotate(18deg);
  animation: partnersContactLineFloat
      10s
      ease-in-out
      infinite;
}

.partners-contact__ambient span:nth-child(1) {
  left: 18%;
  top: -26%;
}

.partners-contact__ambient span:nth-child(2) {
  left: 50%;
  top: -36%;
  animation-delay: -3.2s;
}

.partners-contact__ambient span:nth-child(3) {
  left: 82%;
  top: -29%;
  animation-delay: -6.1s;
}

@keyframes partnersContactLineFloat {
  50% {
    transform: translate3d(
          24px,
          4%,
          0
        )
        rotate(18deg);
    opacity: 0.35;
  }
}

.partners-contact__inner {
  position: relative;
  z-index: 2;
  width: min(
        100%,
        1480px
      );
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
  padding: clamp(
        96px,
        8vw,
        146px
      )
      clamp(
        22px,
        5vw,
        82px
      )
      34px;
}

.partners-contact__header {
  width: min(
        100%,
        920px
      );
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.partners-contact__eyebrow {
  margin: 0 0 30px;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      var(--font-mono);
  font-size: clamp(
        9px,
        0.7vw,
        12px
      );
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--contact-soft);
}

.partners-contact__header h2 {
  max-width: 24ch;
  margin: 0;
  font-family: "Helvetica LT Std Bold",
      var(--font-display);
  font-size: clamp(
        36px,
        4.1vw,
        74px
      );
  font-weight: 700;
  line-height: 0.95;
  letter-spacing: -0.055em;
  text-wrap: balance;
}

.partners-contact__title-line {
  width: clamp(
        74px,
        7vw,
        120px
      );
  height: 3px;
  margin-top: clamp(
        30px,
        3vw,
        48px
      );
  background: var(--contact-ink);
  transform-origin: center;
}

.partners-contact__form {
  width: min(
        100%,
        760px
      );
  display: flex;
  flex-direction: column;
  gap: clamp(
        36px,
        4vw,
        62px
      );
  margin-top: clamp(
        92px,
        10vw,
        164px
      );
}

.partners-contact__field {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-bottom: 9px;
  cursor: text;
}

.partners-contact__field::before,
  .partners-contact__field::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
}

.partners-contact__field::before {
  background: var(--contact-line);
}

.partners-contact__field::after {
  height: 2px;
  background: var(--contact-accent);
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform
      0.55s
      var(--ease);
}

.partners-contact__field:hover::after,
  .partners-contact__field:focus-within::after {
  transform: scaleX(1);
  transform-origin: left center;
}

.partners-contact__field > span {
  display: inline-block;
  width: fit-content;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      var(--font-mono);
  font-size: clamp(
        10px,
        0.75vw,
        13px
      );
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.01em;
  color: rgba(
        22,
        20,
        15,
        0.72
      );
  transition: color
      0.32s
      ease,
      transform
      0.45s
      var(--ease);
}

.partners-contact__field:hover > span,
  .partners-contact__field:focus-within > span,
  .partners-contact__field.has-value > span {
  color: var(--contact-accent);
  transform: translateX(7px);
}

.partners-contact__field input,
  .partners-contact__field textarea {
  display: block;
  width: 100%;
  margin: 0;
  padding: 4px 0 8px;
  border: 0;
  border-radius: 0;
  outline: 0;
  background: transparent;
  color: var(--contact-ink);
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      var(--font-body);
  font-size: clamp(
        17px,
        1.3vw,
        22px
      );
  font-weight: 500;
  line-height: 1.5;
  caret-color: var(--contact-accent);
  resize: none;
  box-shadow: none;
}

.partners-contact__field input::selection,
  .partners-contact__field textarea::selection {
  background: var(--contact-accent);
  color: var(--contact-ink);
}

.partners-contact__field--message textarea {
  min-height: 118px;
}

.partners-contact__field.is-invalid::before {
  background: var(--contact-red);
}

.partners-contact__field.is-invalid > span {
  color: var(--contact-red);
}

.partners-contact__actions {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
  padding-top: 5px;
}

.partners-contact__submit {
  position: relative;
  min-width: 210px;
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 14px
      20px
      14px
      24px;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid
      var(--contact-ink);
  border-radius: 999px;
  background: var(--contact-ink);
  color: #ffffff;
  transition: color
      0.35s
      ease,
      border-color
      0.35s
      ease,
      transform
      0.48s
      var(--ease);
}

.partners-contact__submit::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: var(--contact-accent);
  transform: translateX(-102%);
  transition: transform
      0.55s
      var(--ease);
}

.partners-contact__submit:hover,
  .partners-contact__submit:focus-visible {
  color: var(--contact-ink);
  border-color: var(--contact-accent);
  transform: translateY(-5px);
}

.partners-contact__submit:hover::before,
  .partners-contact__submit:focus-visible::before {
  transform: translateX(0);
}

.partners-contact__submit span {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      var(--font-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
}

.partners-contact__submit i {
  font-family: var(--font-body);
  font-size: 20px;
  font-style: normal;
  transition: transform
      0.45s
      var(--ease);
}

.partners-contact__submit:hover i,
  .partners-contact__submit:focus-visible i {
  transform: translate3d(
        4px,
        -4px,
        0
      );
}

.partners-contact__status {
  min-height: 1.4em;
  margin: 0;
  font-family: var(--font-mono);
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: var(--contact-soft);
}

.partners-contact__status.is-error {
  color: var(--contact-red);
}

.partners-contact__status.is-success {
  color: var(--contact-accent);
}

.partners-contact__bottom {
  width: 100%;
  grid-template-columns: max-content
      1fr
      max-content;
  align-items: center;
  gap: 20px;
  margin-top: auto;
  padding-top: clamp(
        78px,
        8vw,
        126px
      );
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 0.16em;
  color: var(--contact-soft);
}

.partners-contact__bottom i {
  display: block;
  height: 1px;
  background: rgba(22, 20, 15, 0.12);
}

@media (max-width: 760px) {
  .partners-contact {
    min-height: auto;
  }

  .partners-contact__inner {
    min-height: auto;
    padding: 88px
        20px
        28px;
  }

  .partners-contact__header h2 {
    font-size: clamp(
          38px,
          12vw,
          62px
        );
  }

  .partners-contact__form {
    margin-top: 78px;
    gap: 44px;
  }

  .partners-contact__actions {
    align-items: flex-start;
    flex-direction: column;
  }

  .partners-contact__submit {
    width: 100%;
  }

  .partners-contact__bottom {
    grid-template-columns: 1fr;
    gap: 10px;
    padding-top: 82px;
  }

  .partners-contact__bottom i {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .partners-contact__ambient span {
    animation: none !important;
  }
}

@media (min-width: 901px) {
  .core-values__group[data-core-group="1"] {
    grid-template-columns: repeat(
          2,
          minmax(
            0,
            1fr
          )
        ) !important;
    grid-template-rows: auto
        auto;
    align-content: center !important;
    column-gap: clamp(
          20px,
          2.2vw,
          36px
        );
    row-gap: clamp(
          18px,
          2vw,
          30px
        );
    width: 100%;
    max-width: 100%;
  }

  .core-values__group[data-core-group="1"] .core-value {
    min-width: 0;
  }

  .core-values__group[data-core-group="1"] .core-value:nth-child(3) {
    grid-column: 1 /
        -1;
    width: calc(
          50% -
          clamp(
            10px,
            1.1vw,
            18px
          )
        );
    justify-self: center;
  }
}

.has-section-sequence {
  position: relative;
}

.section-sequence-label {
  position: absolute;
  left: 50%;
  top: clamp(
        78px,
        7vw,
        116px
      );
  z-index: 850;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: calc(
        100% -
        180px
      );
  margin: 0;
  padding: 0;
  transform: translateX(
        -50%
      );
  pointer-events: none;
  font-family: "Akzidenz Grotesk BQ Medium Extended",
      var(--font-mono);
  font-size: clamp(
        9px,
        0.72vw,
        12px
      );
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.09em;
  text-align: center;
  white-space: nowrap;
}

.section-sequence-label.is-light {
  color: rgba(
        22,
        20,
        15,
        0.52
      );
}

.section-sequence-label.is-dark {
  color: rgba(
        255,
        255,
        255,
        0.58
      );
}

.section-sequence-label::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0
      0
      6px;
  margin-right: 13px;
  border-radius: 50%;
  background: #75fa96;
  box-shadow: 0
      0
      18px
      rgba(
        117,
        250,
        150,
        0.5
      );
}

.section-sequence-label--inline {
  color: rgba(
        22,
        20,
        15,
        0.52
      );
}

.section-sequence-inset {
  position: absolute;
  left: clamp(
        24px,
        5vw,
        82px
      );
  right: clamp(
        72px,
        6.5vw,
        118px
      );
  bottom: clamp(
        18px,
        2.2vw,
        34px
      );
  z-index: 860;
  display: grid;
  grid-template-columns: max-content
      minmax(
        50px,
        1fr
      )
      max-content;
  align-items: center;
  gap: clamp(
        16px,
        2vw,
        32px
      );
  width: auto;
  margin: 0;
  padding: 0;
  pointer-events: none;
  font-family: var(--font-mono);
  font-size: clamp(
        8px,
        0.62vw,
        10px
      );
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.section-sequence-inset.is-light {
  color: rgba(
        22,
        20,
        15,
        0.48
      );
}

.section-sequence-inset.is-dark {
  color: rgba(
        255,
        255,
        255,
        0.56
      );
}

.section-sequence-inset i {
  display: block;
  width: 100%;
  height: 1px;
}

.section-sequence-inset.is-light i {
  background: rgba(
        22,
        20,
        15,
        0.14
      );
}

.section-sequence-inset.is-dark i {
  background: rgba(
        255,
        255,
        255,
        0.16
      );
}

.partners-contact__bottom {
  display: none !important;
}

.navigation-footer__header > span,
  .navigation-footer__bottom {
  letter-spacing: 0.16em;
}

section[id],
  footer[id],
  div[id] {
  scroll-margin-top: 0 !important;
}

.partners-contact__submit:disabled {
  cursor: wait;
  opacity: 0.72;
  transform: none !important;
}

.partners-contact__submit[aria-busy="true"]::before {
  transform: translateX(
        0
      );
}

@media (max-width: 760px) {
  .section-sequence-label {
    top: 76px;
    max-width: calc(
          100% -
          80px
        );
    font-size: 8px;
    letter-spacing: 0.07em;
  }

  .section-sequence-label::before {
    width: 5px;
    height: 5px;
    flex-basis: 5px;
    margin-right: 9px;
  }

  .section-sequence-inset {
    left: 20px;
    right: 58px;
    bottom: 18px;
    grid-template-columns: 1fr
        max-content;
    gap: 14px;
    font-size: 8px;
    letter-spacing: 0.12em;
  }

  .section-sequence-inset i {
    display: none;
  }

  .section-sequence-inset span:last-child {
    text-align: right;
  }
}

.hero--mark .hero-mark__bottom-right {
  bottom: clamp(
        62px,
        6vw,
        96px
      );
}

#about .about-studio__ticker {
  display: none !important;
}

.logo-work-section .logo-work-powered {
  display: none !important;
}

.logo-work-section .logo-work-selected {
  bottom: 7%;
}

.logo-work-section > .section-sequence-inset > span:first-child {
  display: none !important;
}

.logo-work-section > .section-sequence-inset {
  grid-template-columns: minmax(
        70px,
        1fr
      )
      max-content;
}

#glasses-reveal > .section-sequence-inset {
  bottom: 7px;
}

#brand-showcase > .section-sequence-inset > span:first-child {
  display: none !important;
}

#brand-showcase > .section-sequence-inset {
  grid-template-columns: minmax(
        70px,
        1fr
      )
      max-content;
}

#capabilities-strategy > .section-sequence-label,
  #capabilities-two > .section-sequence-label,
  #capabilities-experience > .section-sequence-label {
  display: none !important;
}

#capabilities-strategy > .section-sequence-inset > span:first-child,
  #capabilities-two > .section-sequence-inset > span:first-child,
  #capabilities-experience > .section-sequence-inset > span:first-child {
  display: none !important;
}

#capabilities-strategy > .section-sequence-inset,
  #capabilities-two > .section-sequence-inset,
  #capabilities-experience > .section-sequence-inset {
  grid-template-columns: minmax(
        70px,
        1fr
      )
      max-content;
}

#visual-archive .visual-archive__footer {
  display: none !important;
}

#hospitality-feature .hospitality-feature__footer,
  #services-overview .services-overview__footer {
  display: none !important;
}

#contact .partners-contact__actions {
  position: relative;
  top: -24px;
}

@media (max-width: 760px) {
  .hero--mark .hero-mark__bottom-right {
    bottom: 58px;
  }

  .logo-work-section .logo-work-selected {
    bottom: 58px;
  }

  #glasses-reveal > .section-sequence-inset {
    bottom: 7px;
  }

  #contact .partners-contact__actions {
    top: -14px;
  }
}

#hospitality-feature .hospitality-feature__center--empty {
  display: block !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

#hospitality-feature .hospitality-feature__inner {
  grid-template-columns: minmax(0, 0.95fr)
      clamp(160px, 13vw, 230px)
      minmax(520px, 1.15fr) !important;
  gap: clamp(
        20px,
        2vw,
        38px
      ) !important;
}

#hospitality-feature .hospitality-feature__media {
  justify-self: stretch;
  width: auto;
  max-width: none;
  overflow: visible !important;
  justify-content: center !important;
}

#partners.partners-grid-section {
  --partners-bg: #080a08;
  --partners-ink: #f5f2eb;
  --partners-line: rgba(245, 242, 235, 0.2);
  --partners-green: #75fa96;
  background: linear-gradient(
        110deg,
        rgba(4, 6, 4, 0.96) 0%,
        rgba(5, 8, 6, 0.84) 48%,
        rgba(4, 6, 4, 0.93) 100%
      ),
      url("../assets/images/partners-background.jpg")
      center
      center /
      cover
      no-repeat;
  color: var(--partners-ink);
}

#partners.partners-grid-section::before {
  display: none !important;
  content: none !important;
}

#partners .partners-grid-section__ambient span {
  background: linear-gradient(
        180deg,
        transparent,
        rgba(117, 250, 150, 0.2),
        transparent
      );
}

#partners .partners-grid-section__heading p {
  color: var(--partners-ink);
}

#partners .partners-grid-section__heading p i {
  background: var(--partners-green);
  box-shadow: 0 0 22px
      rgba(117, 250, 150, 0.38);
}

#partners .partners-grid-section__heading > span {
  color: rgba(245, 242, 235, 0.55);
}

#partners .partners-grid-section__grid {
  border: 0 !important;
  gap: clamp(
        10px,
        1.2vw,
        20px
      );
}

#partners .partner-logo-card {
  min-height: clamp(
        188px,
        18vw,
        252px
      );
  border: 0 !important;
  background: rgba(255, 255, 255, 0.018);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

#partners .partner-logo-card::before {
  background: rgba(117, 250, 150, 0.92);
}

#partners .partner-logo-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  opacity: 0.68;
  background: linear-gradient(
        90deg,
        var(--partners-line) 0 34%,
        transparent 34% 100%
      )
      left top /
      100% 1px
      no-repeat,

      linear-gradient(
        180deg,
        var(--partners-line) 0 30%,
        transparent 30% 100%
      )
      left top /
      1px 100%
      no-repeat,

      linear-gradient(
        270deg,
        var(--partners-line) 0 34%,
        transparent 34% 100%
      )
      right bottom /
      100% 1px
      no-repeat,

      linear-gradient(
        0deg,
        var(--partners-line) 0 30%,
        transparent 30% 100%
      )
      right bottom /
      1px 100%
      no-repeat;
  transition: opacity 0.35s ease,
      filter 0.35s ease;
}

#partners .partner-logo-card:hover::after,
  #partners .partner-logo-card:focus-within::after {
  opacity: 1;
  filter: drop-shadow(
        0 0 8px
        rgba(117, 250, 150, 0.22)
      );
}

#partners .partner-logo-card__index,
  #partners .partner-logo-card p {
  color: rgba(245, 242, 235, 0.58);
}

#partners .partner-logo-card__media img {
  filter: grayscale(1)
      brightness(0)
      invert(1)
      contrast(1.08);
  opacity: 0.92;
}

#partners .partner-logo-card:hover
  .partner-logo-card__media img,
  #partners .partner-logo-card:focus-within
  .partner-logo-card__media img {
  filter: grayscale(0)
      brightness(1)
      invert(0)
      contrast(1);
  opacity: 1;
}

#contact .partners-contact__form {
  width: min(
        100%,
        620px
      );
  gap: clamp(
        28px,
        3vw,
        44px
      );
  margin-top: clamp(
        62px,
        7vw,
        104px
      );
}

#contact .partners-contact__field--message textarea {
  min-height: 92px;
}

@media (max-width: 1000px) {
  #hospitality-feature .hospitality-feature__inner {
    grid-template-columns: minmax(0, 0.95fr)
        clamp(120px, 12vw, 180px)
        minmax(360px, 1.05fr) !important;
    gap: 22px !important;
  }
}

@media (max-width: 760px) {
  #hospitality-feature .hospitality-feature__inner {
    grid-template-columns: 1fr !important;
  }

  #hospitality-feature .hospitality-feature__center--empty {
    display: none !important;
  }

  #hospitality-feature .hospitality-feature__media {
    max-width: 560px;
    justify-self: center;
  }

  #partners .partners-grid-section__grid {
    gap: 10px;
  }

  #contact .partners-contact__form {
    width: min(
          100%,
          520px
        );
    margin-top: 58px;
  }
}

#contact .partners-contact__title-line {
  height: 1px;
  background: var(--contact-line);
}

.logo-work-section > .section-sequence-inset {
  bottom: 4px;
}

#capabilities-experience > .section-sequence-inset {
  display: none !important;
}

#visual-archive .visual-archive__topline i {
  display: none !important;
}

#visual-archive .visual-archive__topline {
  grid-template-columns: max-content
      max-content;
  justify-content: space-between;
}

#partners .partners-grid-section__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  max-width: none;
  line-height: 1.15;
}

#partners .partners-grid-section__meta strong {
  font: inherit;
  font-weight: 500;
  letter-spacing: inherit;
  color: inherit;
}

@media (max-width: 760px) {
  .logo-work-section > .section-sequence-inset {
    bottom: 3px;
  }

  #partners .partners-grid-section__meta {
    transform: translateY(
          -4px
        );
  }
}

#partners .partners-grid-section__meta {
  transform: translate(33px, -10px);
}

#partners > .section-sequence-label {
  top: 70px;
  left: 50%;
  transform: translateX(-50%);
}

.mini-brand-curtain > .section-sequence-inset {
  grid-template-columns: max-content
      minmax(50px, 1fr)
      max-content;
  justify-content: initial;
}

.mini-brand-curtain > .section-sequence-inset i {
  display: block !important;
  width: 100%;
  height: 1px;
  background: rgba(22, 20, 15, 0.14);
}

.logo-work-section > .section-sequence-inset i {
  display: none !important;
}

.logo-work-section > .section-sequence-inset {
  display: none !important;
}

.mini-brand-curtain .philosophy-carousel__motion-line {
  display: none !important;
}

#hospitality-feature .hospitality-feature__image-shadow {
  left: 60%;
  right: auto;
  width: 68%;
  height: 8%;
  bottom: 10%;
  transform: translateX(-50%);
  border-radius: 50%;
  background: radial-gradient(
      ellipse,
      rgba(9, 10, 9, 0.28),
      transparent 68%
    );
  filter: blur(14px);
}

#hospitality-feature .hospitality-feature__image {
  width: 130%;
  max-width: none;
  height: auto;
  transform-origin: center bottom;
  left: 15%;
}

#partners .partner-logo-card:nth-child(1)
  .partner-logo-card__media img,

  #partners .partner-logo-card:nth-child(11)
  .partner-logo-card__media img {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal;
}

@media (max-width: 768px) {
  .section-sequence-label {
    top: 72px !important;
    font-size: 10px !important;
    max-width: calc(100% - 48px) !important;
  }

  .section-sequence-inset {
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important;
    gap: 10px !important;
    font-size: 8px !important;
  }

  .hero--mark {
    min-height: 100svh !important;
    padding-top: 0 !important;
  }

  .hero-mark__logo-wrap {
    min-height: auto !important;
    margin-inline: auto !important;
  }

  .hero-mark__powered-video-wrap {
    overflow: visible !important;
  }

  .hero--mark .hero-mark__actions .btn {
    min-width: 0 !important;
  }

  .hero--mark .hero-mark__top-left {
    top: 24px !important;
    left: 18px !important;
  }

  .logo-work-section {
    min-height: 100svh !important;
  }

  .logo-work-photo {
    background-position: center top !important;
    -webkit-mask-position: center 52% !important;
    mask-position: center 52% !important;
    -webkit-mask-size: 132% auto !important;
    mask-size: 132% auto !important;
  }

  .logo-work-shape {
    width: 126vw !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .logo-work-powered {
    top: 22px !important;
    left: 18px !important;
  }

  .logo-work-selected {
    left: 20px !important;
    bottom: 44px !important;
  }

  .logo-work-selected h2 {
    font-size: clamp(64px, 20vw, 100px) !important;
    line-height: 0.8 !important;
  }

  .logo-work-meta {
    gap: 16px !important;
    font-size: 16px !important;
  }

  .logo-work-copyright {
    width: 38px !important;
    height: 38px !important;
    font-size: 22px !important;
    border-width: 2px !important;
  }

  .logo-work-tagline {
    right: 16px !important;
    bottom: 16px !important;
    font-size: 9px !important;
  }

  #glasses-reveal > .section-sequence-label {
    top: 76px !important;
  }

  .glasses-reveal__top {
    top: 108px !important;
    left: 20px !important;
    right: 20px !important;
  }

  .glasses-reveal__glasses {
    width: 190vw !important;
  }

  .glasses-reveal__circle {
    width: 112vw !important;
  }

  .glasses-reveal__circle--left {
    left: -72vw !important;
  }

  .glasses-reveal__circle--right {
    right: -72vw !important;
  }

  .cap-showcase--one.cap-editorial {
    padding-top: 96px !important;
  }

  .cap-showcase--one .cap-editorial__top-grid {
    width: calc(100% - 28px) !important;
    min-height: auto !important;
    margin: 0 auto !important;
    grid-template-columns: minmax(0, 1fr) minmax(112px, 33vw) minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
  }

  .cap-showcase--one .cap-editorial__side {
    padding: 0 !important;
    gap: 22px !important;
  }

  .cap-showcase--one .cap-editorial__side--left {
    padding-right: 8px !important;
  }

  .cap-showcase--one .cap-editorial__side--right {
    padding-left: 8px !important;
  }

  .cap-showcase--one .cap-item,
    .cap-showcase--one .cap-editorial__side--left .cap-item,
    .cap-showcase--one .cap-editorial__side--right .cap-item {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    align-content: start !important;
    padding: 0 !important;
  }

  .cap-showcase--one .cap-item__text {
    max-width: none !important;
    padding-left: 0 !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
  }

  .cap-showcase--one .cap-item__circle {
    width: 94px !important;
    height: 94px !important;
    font-size: 11px !important;
    margin-inline: 0 !important;
  }

  .cap-showcase--one .cap-editorial__center-image,
    .cap-showcase--one .cap-showcase__portrait {
    width: 100% !important;
    max-width: 132px !important;
    margin: 0 auto !important;
    align-self: center !important;
  }

  .cap-showcase--one .cap-showcase__portrait img,
    .cap-showcase--one .cap-editorial__center-image img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  .cap-showcase--one .cap-editorial__wide-image,
    .cap-showcase--one .cap-showcase__banner {
    width: calc(100% - 28px) !important;
    height: 220px !important;
    min-height: 220px !important;
    margin: 24px auto 0 !important;
    border-radius: 0 !important;
  }

  .cap-showcase__banner-mark {
    left: 16px !important;
    right: 16px !important;
    justify-content: flex-start !important;
    gap: 8px !important;
  }

  .cap-showcase__banner-tag {
    font-size: 10px !important;
  }

  #capabilities-two > .section-sequence-label {
    display: none !important;
  }

  .cap-showcase--capabilities-hero,
    .cap-showcase--capabilities-hero .capabilities-hero {
    min-height: 560px !important;
    height: 560px !important;
  }

  .cap-showcase--capabilities-hero .cap-showcase__banner {
    height: 560px !important;
    min-height: 560px !important;
  }

  .cap-showcase__banner-video,
    .capabilities-hero__video {
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1) !important;
  }

  .capabilities-hero__green-band {
    height: 38% !important;
  }

  .capabilities-hero__title {
    left: 18px !important;
    right: auto !important;
    top: 52% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    font-size: clamp(46px, 11.2vw, 72px) !important;
    line-height: 0.82 !important;
  }

  .capabilities-hero__origin {
    left: 18px !important;
    right: 18px !important;
    bottom: 28px !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .capabilities-hero__origin-image {
    width: 46px !important;
  }

  .capabilities-hero__origin-copy {
    max-width: 16ch !important;
    font-size: 12px !important;
    line-height: 0.96 !important;
  }

  #visual-archive > .section-sequence-label {
    top: 92px !important;
    left: 20px !important;
    transform: none !important;
    justify-content: flex-start !important;
  }

  .visual-archive__inner {
    width: calc(100% - 32px) !important;
  }

  .visual-archive__topline {
    margin-top: 22px !important;
    grid-template-columns: max-content 1fr max-content !important;
    gap: 10px !important;
    font-size: 10px !important;
  }

  .visual-archive__layout {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
    padding: 122px 0 34px !important;
  }

  .visual-archive__eyebrow {
    margin-bottom: 12px !important;
  }

  .visual-archive__title {
    width: 100% !important;
    font-size: clamp(44px, 14.2vw, 64px) !important;
    line-height: 0.78 !important;
  }

  .visual-archive__title-line,
    .visual-archive__title-line > span {
    white-space: normal !important;
  }

  .visual-archive__title-line--ideas,
    .visual-archive__title-line--experiences,
    .visual-archive__title-line--signature {
    margin: 0 !important;
    padding: 0 !important;
  }

  .visual-archive__become-handwritten {
    font-size: 1.05em !important;
    transform: rotate(-4deg) translateY(-0.05em) !important;
  }

  .visual-archive__description {
    max-width: 100% !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
  }

  .visual-archive__button {
    width: 100% !important;
    justify-content: center !important;
    margin-top: 22px !important;
  }

  .visual-archive__kinetic {
    min-height: 300px !important;
    width: 100% !important;
  }

  .hospitality-feature__inner {
    width: calc(100% - 24px) !important;
    min-height: 100svh !important;
    padding: 88px 0 64px !important;
    grid-template-columns: minmax(0, 1fr) minmax(136px, 40vw) !important;
    gap: 10px !important;
    align-items: start !important;
  }

  .hospitality-feature__center--empty {
    display: none !important;
  }

  .hospitality-feature__copy {
    padding-left: 8px !important;
    align-self: start !important;
  }

  .hospitality-feature__eyebrow {
    font-size: 18px !important;
    margin-bottom: 8px !important;
  }

  .hospitality-feature__title {
    font-size: clamp(34px, 11.5vw, 60px) !important;
    line-height: 0.88 !important;
  }

  .hospitality-feature__title > span {
    white-space: normal !important;
  }

  .hospitality-feature__sub {
    font-size: 16px !important;
    margin-top: 22px !important;
  }

  .hospitality-feature__brand {
    width: 72px !important;
    margin-top: 24px !important;
  }

  .hospitality-feature__media {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    margin-top: auto !important;
    padding-top: 34px !important;
  }

  .hospitality-feature__image-shell {
    width: 100% !important;
  }

  .hospitality-feature__image {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .hospitality-feature__image-shadow {
    bottom: 6px !important;
  }

  .hospitality-feature__footer {
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important;
    font-size: 8px !important;
  }

  .services-overview__inner {
    width: calc(100% - 24px) !important;
    padding: 96px 0 54px !important;
    grid-template-columns: minmax(0, 1fr) minmax(120px, 36vw) !important;
    gap: 10px !important;
    align-items: start !important;
  }

  .services-overview__content {
    padding-left: 8px !important;
  }

  .services-overview__eyebrow {
    max-width: 9ch !important;
    margin-bottom: 12px !important;
  }

  .services-overview__title {
    font-size: clamp(34px, 11.5vw, 58px) !important;
    line-height: 0.88 !important;
    letter-spacing: -0.08em !important;
    max-width: 7ch !important;
  }

  .services-overview__groups {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
    row-gap: 28px !important;
    margin-top: 24px !important;
  }

  .services-overview__group:nth-child(2),
    .services-overview__group:nth-child(3) {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .services-overview__group h3 {
    font-size: 13px !important;
  }

  .services-overview__group li {
    font-size: 12px !important;
    padding-left: 18px !important;
  }

  .services-overview__media {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: start !important;
    margin-top: 96px !important;
  }

  .services-overview__image-shell {
    width: 100% !important;
  }

  .services-overview__image {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .services-overview__footer {
    padding-inline: 16px !important;
    font-size: 8px !important;
    gap: 8px !important;
  }

  .navigation-footer__layout {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    padding: 34px 0 40px !important;
  }

  .navigation-footer__menu a span {
    font-size: clamp(34px, 11vw, 50px) !important;
  }

  .navigation-footer__details {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    padding-top: 0 !important;
  }

  .navigation-footer__detail-block,
    .navigation-footer__detail-block--wide {
    grid-column: auto !important;
    width: 100% !important;
    align-items: flex-start !important;
    text-align: left !important;
  }

  .navigation-footer__detail-block p {
    margin-bottom: 10px !important;
  }

  .navigation-footer__detail-block a {
    font-size: 18px !important;
  }

  .navigation-footer__signal-icons {
    justify-content: flex-start !important;
  }

  .navigation-footer__closing {
    align-items: flex-start !important;
    text-align: left !important;
    gap: 18px !important;
  }

  .navigation-footer__back-top {
    align-self: flex-start !important;
  }
}

@media (max-width: 420px) {
  .hero--mark .hero-mark__actions .btn {
    padding: 12px 16px !important;
    font-size: 12px !important;
  }

  .hospitality-feature__title,
    .services-overview__title,
    .capabilities-hero__title {
    word-break: normal !important;
  }

  .cap-showcase--one .cap-item__circle {
    width: 86px !important;
    height: 86px !important;
    font-size: 10px !important;
  }
}

@media (max-width: 768px) {
  .hero--mark .hero-mark__content {
    width: calc(100% - 32px) !important;
    padding-top: 84px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .hero-mark__logo-wrap {
    width: min(72vw, 280px) !important;
    max-width: 280px !important;
    margin: 0 auto 18px !important;
  }

  .hero-mark__logo {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  .hero-mark__powered-video-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: min(180px, 56vw) !important;
    height: 28px !important;
    margin: 0 auto 22px !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  .hero-mark__powered-video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  .hero--mark .hero-mark__actions {
    margin-top: 0 !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
  }

  .hero--mark .hero-mark__actions .btn {
    padding: 13px 18px !important;
    font-size: 13px !important;
  }

  .hero--mark .hero-mark__bottom-right {
    right: 14px !important;
    bottom: 34px !important;
    font-size: 12px !important;
  }
}

@media (max-width: 640px) {
  .hero-mark__powered-video-wrap {
    width: min(470px, 92vw) !important;
    height: 110px !important;
    margin-top: 60px !important;
    margin-bottom: 0 !important;
  }

  .hero-mark__powered-video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    transform: scale(1.18) !important;
    transform-origin: center !important;
  }

  .hero--mark .hero-mark__actions {
    margin-top: 38px !important;
    gap: 10px !important;
  }

  .hero--mark .hero-mark__bottom-right {
    bottom: 38px !important;
  }
}

@media (max-width: 640px) {
  #about .about-studio__title {
    margin-top: 50px !important;
  }
}

@media (max-width: 640px) {
  .logo-work-photo {
    -webkit-mask-size: 700% auto !important;
    mask-size: 700% auto !important;
    -webkit-mask-position: center 50% !important;
    mask-position: center 50% !important;
  }
}

@media (max-width: 640px) {
  .logo-work-photo {
    background-size: 140% auto !important;
    background-position: 45% 60% !important;
  }
}

@media (max-width: 640px) {
  .logo-work-selected {
    transform: translateX(-16px) !important;
  }
}

@media (max-width: 640px) {
  .logo-work-selected h2 {
    font-size: 80px !important;
  }
}

@media (max-width: 640px) {
  .vision-mission__panel--vision .vision-mission__panel-inner,
    .vision-mission__panel--mission .vision-mission__panel-inner {
    justify-content: flex-start !important;
    padding-top: 900px !important;
    padding-bottom: 10px !important;
    min-height: auto !important;
  }

  .vision-mission__panel--vision .vision-mission__main,
    .vision-mission__panel--mission .vision-mission__main {
    margin-top: 190px !important;
  }
}

@media (max-width: 640px) {
  .vision-mission__panel--vision .vision-mission__number,
    .vision-mission__panel--mission .vision-mission__number {
    margin-bottom: 920px !important;
  }
}

@media (max-width: 768px) {
  .vision-mission__panel--vision .vision-mission__main,
    .vision-mission__panel--mission .vision-mission__main {
    top: auto !important;
    bottom: clamp(470px, 30vh, 330px) !important;
  }
}

@media (max-width: 768px) {
  .vision-mission__panel--mission .vision-mission__main {
    transform: translateX(-6px) !important;
  }

  .vision-mission__panel--mission .vision-mission__title {
    font-size: 84px !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 768px) {
  .glasses-reveal__bottom p:nth-child(2) {
    transform: translate(-10px, -13px) !important;
  }
}

@media (max-width: 768px) {
  .glasses-reveal__bottom p:first-child {
    transform: translate(-9px, -8px) !important;
  }
}

@media (max-width: 768px) {
  #brand-showcase > .section-sequence-inset > span:last-child {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .bs-card {
    background: #000;
    overflow: hidden;
  }

  .bs-card__image {
    width: 100%;
    height: 100%;
    object-fit: contain !important;
    object-position: center center !important;
    background: #000;
  }
}

@media (max-width: 768px) {
  .cap-editorial__top-grid {
    position: relative;
    display: block;
    min-height: 900px;
    padding: 40px 20px 20px;
  }

  .cap-editorial__center-image,
    .cap-showcase__portrait.cap-editorial__center-image {
    position: absolute;
    top: -100px;
    left: 50%;
    transform: translateX(-50%);
    width: 170px;
    max-width: 170px;
    margin: 0;
    z-index: 3;
  }

  .cap-editorial__center-image img,
    .cap-showcase__portrait.cap-editorial__center-image img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
  }

  .cap-editorial__side {
    position: static;
    display: block;
  }

  .cap-item {
    position: absolute;
    width: 120px;
    text-align: center;
    z-index: 2;
  }

  .cap-item__text {
    font-size: 11px;
    line-height: 1.15;
    margin: 0 0 10px;
  }

  .cap-item__circle {
    width: 92px;
    height: 92px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 13px;
  }

  .cap-item--tl {
    top: -90px;
    left: -10px;
  }

  .cap-item--bl {
    top: -100px;
    left: -10px;
  }

  .cap-item--tr {
    top: -550px;
    right: -250px;
  }

  .cap-item--br {
    top: -550px;
    right: -250px;
  }
}

@media (max-width: 768px) {
  #capabilities-strategy .cap-editorial__top-grid,
    #capabilities-experience .cap-editorial__top-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr !important;
    align-items: start !important;
    column-gap: 12px !important;
    row-gap: 18px !important;
    padding: 0 14px !important;
  }

  #capabilities-strategy .cap-editorial__side,
    #capabilities-experience .cap-editorial__side {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 18px !important;
  }

  #capabilities-strategy .cap-item,
    #capabilities-experience .cap-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-top: 0 !important;
    min-height: 170px !important;
    position: relative !important;
  }

  #capabilities-strategy .cap-item__circle,
    #capabilities-experience .cap-item__circle {
    font-size: 14px !important;
    line-height: 1 !important;
  }

  #capabilities-strategy .cap-item__text,
    #capabilities-experience .cap-item__text {
    font-size: 10px !important;
    letter-spacing: 0 !important;
    position: relative !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__text::after,
    #capabilities-strategy .cap-item--bl .cap-item__text::after,
    #capabilities-experience .cap-item--tl .cap-item__text::after,
    #capabilities-experience .cap-item--bl .cap-item__text::after {
    content: "";
    position: absolute;
    right: -10px;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 18px;
    background: #75fa96;
    border-radius: 10px;
  }

  #capabilities-strategy .cap-item--tr .cap-item__text::before,
    #capabilities-strategy .cap-item--br .cap-item__text::before,
    #capabilities-experience .cap-item--tr .cap-item__text::before,
    #capabilities-experience .cap-item--br .cap-item__text::before {
    content: "";
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 18px;
    background: #75fa96;
    border-radius: 10px;
  }

  #capabilities-strategy .cap-editorial__center-image,
    #capabilities-experience .cap-editorial__center-image {
    margin: 0 !important;
    align-self: start !important;
    width: 100% !important;
    height: auto !important;
    overflow: hidden !important;
    background: transparent !important;
  }

  #capabilities-strategy .cap-editorial__center-image img,
    #capabilities-experience .cap-editorial__center-image img {
    display: block !important;
    width: 100% !important;
    height: 235px !important;
    object-fit: cover !important;
    object-position: center top !important;
  }

  #capabilities-strategy .cap-editorial__portrait-scan,
    #capabilities-experience .cap-editorial__portrait-scan {
    display: none !important;
  }

  #capabilities-strategy .cap-editorial__wide-image,
    #capabilities-experience .cap-editorial__wide-image {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-top: 18px !important;
  }

  #capabilities-strategy .cap-editorial__wide-image img,
    #capabilities-experience .cap-editorial__wide-image img {
    width: 100% !important;
    height: 130px !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
  }

  #capabilities-strategy .cap-showcase__banner-mark,
    #capabilities-experience .cap-showcase__banner-mark {
    left: 14px !important;
    right: 14px !important;
    bottom: 12px !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  #capabilities-strategy .cap-showcase__banner-tag,
    #capabilities-experience .cap-showcase__banner-tag {
    font-size: 12px !important;
    text-align: right !important;
  }
}

@media (max-width: 768px) {
  #capabilities-strategy .cap-item--tl,
    #capabilities-strategy .cap-item--bl,
    #capabilities-experience .cap-item--tl,
    #capabilities-experience .cap-item--bl {
    display: flex !important;
    flex-direction: column-reverse !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
  }

  #capabilities-strategy .cap-item__circle,
    #capabilities-experience .cap-item__circle {
    width: 92px !important;
    height: 92px !important;
    min-width: 92px !important;
    min-height: 92px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  #capabilities-strategy .cap-item__text,
    #capabilities-experience .cap-item__text {
    margin: 0 !important;
    text-align: center !important;
    max-width: 110px !important;
    line-height: 1.05 !important;
    align-self: center !important;
  }
}

@media (max-width: 768px) {
  #capabilities-strategy .cap-item--tr,
    #capabilities-strategy .cap-item--br {
    transform: translateY(35px) !important;
  }

  @media (max-width: 768px) {
    #capabilities-strategy .cap-item--tl,
    #capabilities-strategy .cap-item--bl {
      transform: translateY(-14px) !important;
    }
  }

  #capabilities-strategy .cap-item--tl .cap-item__text,
    #capabilities-strategy .cap-item--bl .cap-item__text {
    width: 100% !important;
    max-width: 105px !important;
    margin: 0 auto !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    text-align: center !important;
    align-self: center !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__circle,
    #capabilities-strategy .cap-item--bl .cap-item__circle {
    margin-left: auto !important;
    margin-right: auto !important;
    align-self: center !important;
  }
}

@media (max-width: 768px) {
  #capabilities-strategy .cap-editorial__top-grid {
    margin-bottom: 0 !important;
  }

  #capabilities-strategy .cap-editorial__center-image {
    min-height: 0 !important;
    aspect-ratio: auto !important;
    background: transparent !important;
    overflow: hidden !important;
  }

  #capabilities-strategy .cap-editorial__center-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }

  #capabilities-strategy .cap-item--tl:hover .cap-item__text::after,
  #capabilities-strategy .cap-item--bl:hover .cap-item__text::after,
  #capabilities-strategy .cap-item--tl:active .cap-item__text::after,
  #capabilities-strategy .cap-item--bl:active .cap-item__text::after,
  #capabilities-strategy .cap-item--tl:focus-within .cap-item__text::after,
  #capabilities-strategy .cap-item--bl:focus-within .cap-item__text::after {
    height: 34px !important;
    box-shadow: 0 0 18px rgba(117, 250, 150, 0.72) !important;
  }

  #capabilities-strategy .cap-editorial__wide-image {
    width: 100% !important;
    height: 130px !important;
    min-height: 130px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
  }

  #capabilities-strategy .cap-editorial__wide-image > img:first-child {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
  }
}

@media (max-width: 768px) {
  #capabilities-strategy.cap-showcase--one.cap-editorial {
    min-height: auto !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  #capabilities-strategy .cap-editorial__top-grid {
    align-items: stretch !important;
    gap: 0 !important;
    background: #f5f2eb !important;
  }

  #capabilities-strategy .cap-editorial__center-image,
  #capabilities-strategy .cap-showcase__portrait {
    grid-area: cap-center !important;
  }

  #capabilities-strategy .cap-editorial__side,
  #capabilities-strategy .cap-editorial__side--left,
  #capabilities-strategy .cap-editorial__side--right {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 clamp(4px, 1.8vw, 10px) !important;
    gap: 0 !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-item,
  #capabilities-strategy .cap-item--tl,
  #capabilities-strategy .cap-item--tr,
  #capabilities-strategy .cap-item--bl,
  #capabilities-strategy .cap-item--br,
  #capabilities-strategy .cap-editorial__side--left .cap-item,
  #capabilities-strategy .cap-editorial__side--right .cap-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: clamp(7px, 2.2vw, 14px) 0 !important;
    gap: clamp(7px, 2.2vw, 12px) !important;
    border: 0 !important;
    text-align: center !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-item__circle {
    order: 1 !important;
    flex: 0 0 auto !important;
    width: clamp(68px, 22vw, 100px) !important;
    height: clamp(68px, 22vw, 100px) !important;
    min-width: clamp(68px, 22vw, 100px) !important;
    min-height: clamp(68px, 22vw, 100px) !important;
    margin: 0 auto !important;
    padding: 7px !important;
    display: grid !important;
    place-items: center !important;
    align-self: center !important;
    font-size: clamp(8.5px, 2.55vw, 12px) !important;
    line-height: 1 !important;
    text-align: center !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__circle {
    font-size: clamp(8px, 2.35vw, 11px) !important;
  }

  #capabilities-strategy .cap-item__text,
  #capabilities-strategy .cap-item--tl .cap-item__text,
  #capabilities-strategy .cap-item--tr .cap-item__text,
  #capabilities-strategy .cap-item--bl .cap-item__text,
  #capabilities-strategy .cap-item--br .cap-item__text {
    order: 2 !important;
    position: relative !important;
    width: min(100%, 122px) !important;
    max-width: 122px !important;
    margin: 0 auto !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    align-self: center !important;
    color: #11110f !important;
    font-size: clamp(8px, 2.55vw, 12px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.03em !important;
    text-align: center !important;
    text-wrap: balance !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__text,
  #capabilities-strategy .cap-item--bl .cap-item__text {
    padding-left: 0 !important;
    padding-right: clamp(8px, 2.5vw, 13px) !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__text::before,
  #capabilities-strategy .cap-item--bl .cap-item__text::before {
    content: none !important;
    display: none !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__text::after,
  #capabilities-strategy .cap-item--bl .cap-item__text::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    left: auto !important;
    width: 3px !important;
    height: clamp(15px, 5vw, 22px) !important;
    border-radius: 999px !important;
    background: #75fa96 !important;
    box-shadow: none !important;
    transform: translateY(-50%) !important;
    transform-origin: center !important;
    transition: height 0.35s ease, box-shadow 0.35s ease !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__text,
  #capabilities-strategy .cap-item--br .cap-item__text {
    padding-left: clamp(8px, 2.5vw, 13px) !important;
    padding-right: 0 !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__text::after,
  #capabilities-strategy .cap-item--br .cap-item__text::after {
    content: none !important;
    display: none !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__text::before,
  #capabilities-strategy .cap-item--br .cap-item__text::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    right: auto !important;
    bottom: auto !important;
    width: 3px !important;
    height: clamp(15px, 5vw, 22px) !important;
    border-radius: 999px !important;
    background: #75fa96 !important;
    box-shadow: none !important;
    transform: translateY(-50%) !important;
    transform-origin: center !important;
    transition: height 0.35s ease, box-shadow 0.35s ease !important;
  }

  #capabilities-strategy .cap-item:hover .cap-item__text::before,
  #capabilities-strategy .cap-item:hover .cap-item__text::after,
  #capabilities-strategy .cap-item:active .cap-item__text::before,
  #capabilities-strategy .cap-item:active .cap-item__text::after,
  #capabilities-strategy .cap-item:focus-within .cap-item__text::before,
  #capabilities-strategy .cap-item:focus-within .cap-item__text::after {
    height: clamp(26px, 8vw, 36px) !important;
    box-shadow: 0 0 16px rgba(117, 250, 150, 0.68) !important;
  }

  #capabilities-strategy .cap-editorial__center-image,
  #capabilities-strategy .cap-showcase__portrait {
    align-self: stretch !important;
    justify-self: stretch !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    aspect-ratio: auto !important;
    border-radius: 0 !important;
    background: #111 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-editorial__center-image img,
  #capabilities-strategy .cap-showcase__portrait > img {
    display: block !important;
    max-width: none !important;
  }

  #capabilities-strategy .cap-editorial__portrait-scan {
    display: none !important;
  }

  #capabilities-strategy .cap-editorial__wide-image,
  #capabilities-strategy .cap-showcase__banner {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: clamp(120px, 38vw, 210px) !important;
    min-height: clamp(120px, 38vw, 210px) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: #111 !important;
  }

  #capabilities-strategy .cap-editorial__wide-image > img:first-child,
  #capabilities-strategy .cap-showcase__banner > img:first-child {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-showcase__banner-mark {
    left: 14px !important;
    right: 14px !important;
    bottom: 12px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 12px !important;
  }

  #capabilities-strategy .cap-showcase__banner-tag {
    max-width: none !important;
    font-size: clamp(8px, 2.5vw, 11px) !important;
    line-height: 1 !important;
    letter-spacing: 0.06em !important;
    white-space: nowrap !important;
    text-align: right !important;
  }
}

@media (max-width: 768px) {
  #capabilities-strategy .cap-editorial__top-grid {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 36% 28% 36% !important;
    grid-template-areas: "cap-left cap-center cap-right" !important;
    width: 100% !important;
    height: clamp(360px, 112vw, 520px) !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
    overflow: hidden !important;
  }

  #capabilities-strategy .cap-editorial__side--left,
  #capabilities-strategy .cap-editorial__side--right,
  #capabilities-strategy .cap-editorial__center-image {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-editorial__side--left {
    grid-area: cap-left !important;
    z-index: 3 !important;
  }

  #capabilities-strategy .cap-editorial__center-image {
    grid-area: cap-center !important;
    z-index: 2 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
  }

  #capabilities-strategy .cap-editorial__side--right {
    grid-area: cap-right !important;
    z-index: 3 !important;
  }

  #capabilities-strategy .cap-item,
  #capabilities-strategy .cap-item--tl,
  #capabilities-strategy .cap-item--tr,
  #capabilities-strategy .cap-item--bl,
  #capabilities-strategy .cap-item--br {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-editorial__center-image img,
  #capabilities-strategy .cap-showcase__portrait > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-showcase__banner-logo {
    width: 38px !important;
    height: 38px !important;
    max-width: 38px !important;
    max-height: 38px !important;
    object-fit: contain !important;
    transform: none !important;
  }
}

@media (max-width: 768px) {
  #capabilities-two,
  #capabilities-two .capabilities-hero,
  #capabilities-two .cap-showcase__banner {
    height: clamp(470px, 128vw, 560px) !important;
    min-height: clamp(470px, 128vw, 560px) !important;
  }

  #capabilities-two .capabilities-hero__title {
    left: 14px !important;
    right: auto !important;
    top: auto !important;
    bottom: 18px !important;
    width: min(61vw, 238px) !important;
    margin: 0 !important;
    transform: none !important;
    font-size: clamp(32px, 9.5vw, 43px) !important;
    line-height: 0.78 !important;
    letter-spacing: -0.075em !important;
  }

  #capabilities-two .capabilities-hero__title span {
    display: block !important;
    white-space: nowrap !important;
  }

  #capabilities-two .capabilities-hero__origin {
    left: auto !important;
    right: 12px !important;
    top: auto !important;
    bottom: 18px !important;
    width: min(34vw, 132px) !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 7px !important;
    transform: none !important;
  }

  #capabilities-two .capabilities-hero__origin-image {
    width: 34px !important;
    height: 56px !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
  }

  #capabilities-two .capabilities-hero__origin-video,
  #capabilities-two .capabilities-hero__origin-image video,
  #capabilities-two .capabilities-hero__origin-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
    border: 0 !important;
  }

  #capabilities-two .capabilities-hero__origin-copy {
    max-width: none !important;
    margin: 0 !important;
    font-size: clamp(7px, 2.1vw, 9px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.02em !important;
  }

  #capabilities-strategy .cap-editorial__top-grid,
  #capabilities-experience .cap-editorial__top-grid {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 31% 38% 31% !important;
    grid-template-areas: "cap-left cap-center cap-right" !important;
    width: 100% !important;
    height: clamp(310px, 82vw, 390px) !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
    align-items: stretch !important;
    overflow: hidden !important;
  }

  #capabilities-strategy .cap-editorial__side,
  #capabilities-experience .cap-editorial__side {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: grid !important;
    grid-template-rows: 1fr 1fr !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-editorial__side--left,
  #capabilities-experience .cap-editorial__side--left {
    grid-area: cap-left !important;
  }

  #capabilities-strategy .cap-editorial__side--right,
  #capabilities-experience .cap-editorial__side--right {
    grid-area: cap-right !important;
  }

  #capabilities-strategy .cap-editorial__center-image,
  #capabilities-experience .cap-editorial__center-image,
  #capabilities-strategy .cap-showcase__portrait,
  #capabilities-experience .cap-showcase__portrait {
    position: relative !important;
    grid-area: cap-center !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: #111 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-editorial__center-image img,
  #capabilities-experience .cap-editorial__center-image img,
  #capabilities-strategy .cap-showcase__portrait > img,
  #capabilities-experience .cap-showcase__portrait > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-editorial__portrait-scan,
  #capabilities-experience .cap-editorial__portrait-scan {
    display: none !important;
  }

  #capabilities-strategy .cap-item,
  #capabilities-experience .cap-item,
  #capabilities-strategy .cap-item--tl,
  #capabilities-strategy .cap-item--tr,
  #capabilities-strategy .cap-item--bl,
  #capabilities-strategy .cap-item--br,
  #capabilities-experience .cap-item--tl,
  #capabilities-experience .cap-item--tr,
  #capabilities-experience .cap-item--bl,
  #capabilities-experience .cap-item--br {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: clamp(4px, 1.8vw, 8px) 3px 0 !important;
    gap: clamp(6px, 1.8vw, 9px) !important;
    border: 0 !important;
    text-align: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-item--tl,
  #capabilities-strategy .cap-item--bl,
  #capabilities-experience .cap-item--tl,
  #capabilities-experience .cap-item--bl {
    flex-direction: column-reverse !important;
    justify-content: flex-end !important;
  }

  #capabilities-strategy .cap-item::before,
  #capabilities-strategy .cap-item::after,
  #capabilities-experience .cap-item::before,
  #capabilities-experience .cap-item::after,
  #capabilities-strategy .cap-item__circle::before,
  #capabilities-strategy .cap-item__circle::after,
  #capabilities-experience .cap-item__circle::before,
  #capabilities-experience .cap-item__circle::after {
    content: none !important;
    display: none !important;
  }

  #capabilities-strategy .cap-item__circle,
  #capabilities-experience .cap-item__circle {
    width: clamp(70px, 22vw, 96px) !important;
    height: clamp(70px, 22vw, 96px) !important;
    min-width: clamp(70px, 22vw, 96px) !important;
    min-height: clamp(70px, 22vw, 96px) !important;
    flex: 0 0 auto !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 auto !important;
    padding: 5px !important;
    border-radius: 50% !important;
    font-size: clamp(8px, 2.5vw, 11px) !important;
    line-height: 1 !important;
    letter-spacing: -0.025em !important;
    text-align: center !important;
    white-space: nowrap !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__circle,
  #capabilities-experience .cap-item--tr .cap-item__circle {
    font-size: clamp(7.5px, 2.25vw, 10px) !important;
  }

  #capabilities-strategy .cap-item__text,
  #capabilities-experience .cap-item__text {
    position: relative !important;
    width: calc(100% - 8px) !important;
    max-width: 13ch !important;
    margin: 0 auto !important;
    padding: 0 !important;
    font-size: clamp(6.7px, 1.95vw, 8.7px) !important;
    font-weight: 700 !important;
    line-height: 1.02 !important;
    letter-spacing: -0.035em !important;
    text-align: center !important;
    text-wrap: balance !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__text,
  #capabilities-strategy .cap-item--bl .cap-item__text,
  #capabilities-experience .cap-item--tl .cap-item__text,
  #capabilities-experience .cap-item--bl .cap-item__text {
    padding-right: 8px !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__text::before,
  #capabilities-strategy .cap-item--bl .cap-item__text::before,
  #capabilities-experience .cap-item--tl .cap-item__text::before,
  #capabilities-experience .cap-item--bl .cap-item__text::before {
    content: none !important;
    display: none !important;
  }

  #capabilities-strategy .cap-item--tl .cap-item__text::after,
  #capabilities-strategy .cap-item--bl .cap-item__text::after,
  #capabilities-experience .cap-item--tl .cap-item__text::after,
  #capabilities-experience .cap-item--bl .cap-item__text::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    left: auto !important;
    width: 3px !important;
    height: 18px !important;
    border-radius: 999px !important;
    background: #75fa96 !important;
    transform: translateY(-50%) !important;
    transition: height 0.3s ease, box-shadow 0.3s ease !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__text,
  #capabilities-strategy .cap-item--br .cap-item__text,
  #capabilities-experience .cap-item--tr .cap-item__text,
  #capabilities-experience .cap-item--br .cap-item__text {
    padding-left: 8px !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__text::after,
  #capabilities-strategy .cap-item--br .cap-item__text::after,
  #capabilities-experience .cap-item--tr .cap-item__text::after,
  #capabilities-experience .cap-item--br .cap-item__text::after {
    content: none !important;
    display: none !important;
  }

  #capabilities-strategy .cap-item--tr .cap-item__text::before,
  #capabilities-strategy .cap-item--br .cap-item__text::before,
  #capabilities-experience .cap-item--tr .cap-item__text::before,
  #capabilities-experience .cap-item--br .cap-item__text::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    right: auto !important;
    width: 3px !important;
    height: 18px !important;
    border-radius: 999px !important;
    background: #75fa96 !important;
    transform: translateY(-50%) !important;
    transition: height 0.3s ease, box-shadow 0.3s ease !important;
  }

  #capabilities-strategy .cap-item:hover .cap-item__text::before,
  #capabilities-strategy .cap-item:hover .cap-item__text::after,
  #capabilities-strategy .cap-item:active .cap-item__text::before,
  #capabilities-strategy .cap-item:active .cap-item__text::after,
  #capabilities-experience .cap-item:hover .cap-item__text::before,
  #capabilities-experience .cap-item:hover .cap-item__text::after,
  #capabilities-experience .cap-item:active .cap-item__text::before,
  #capabilities-experience .cap-item:active .cap-item__text::after {
    height: 30px !important;
    box-shadow: 0 0 14px rgba(117, 250, 150, 0.65) !important;
  }

  #capabilities-strategy .cap-editorial__wide-image,
  #capabilities-experience .cap-editorial__wide-image,
  #capabilities-strategy .cap-showcase__banner,
  #capabilities-experience .cap-showcase__banner {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: clamp(112px, 31vw, 150px) !important;
    min-height: clamp(112px, 31vw, 150px) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: #111 !important;
  }

  #capabilities-strategy .cap-editorial__wide-image > img:first-child,
  #capabilities-experience .cap-editorial__wide-image > img:first-child,
  #capabilities-strategy .cap-showcase__banner > img:first-child,
  #capabilities-experience .cap-showcase__banner > img:first-child {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }

  #capabilities-strategy .cap-showcase__banner-mark,
  #capabilities-experience .cap-showcase__banner-mark {
    left: 10px !important;
    right: 10px !important;
    bottom: 9px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }

  #capabilities-strategy .cap-showcase__banner-logo,
  #capabilities-experience .cap-showcase__banner-logo {
    width: 30px !important;
    height: 30px !important;
    max-width: 30px !important;
    max-height: 30px !important;
    object-fit: contain !important;
  }

  #capabilities-strategy .cap-showcase__banner-tag,
  #capabilities-experience .cap-showcase__banner-tag {
    max-width: none !important;
    margin-left: auto !important;
    font-size: clamp(7px, 2vw, 9px) !important;
    line-height: 1 !important;
    letter-spacing: 0.04em !important;
    white-space: nowrap !important;
    text-align: right !important;
  }
}

@media (max-width: 768px) {
  #capabilities-experience.cap-showcase--one.cap-editorial {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  #capabilities-experience .cap-editorial__top-grid {
    margin-top: 0 !important;
    padding-top: 0 !important;
    transform: none !important;
  }

  #capabilities-experience .cap-editorial__side,
  #capabilities-experience .cap-editorial__center-image,
  #capabilities-experience .cap-showcase__portrait {
    margin-top: 0 !important;
    top: auto !important;
  }
}

@media (max-width: 768px) {
  #hospitality-feature > .section-sequence-label {
    display: none !important;
  }

  #hospitality-feature .hospitality-feature__inner {
    margin: 0 !important;
    display: grid !important;
    grid-template-rows: 1fr !important;
    gap: 0 !important;
  }

  #hospitality-feature .hospitality-feature__center--empty {
    display: block !important;
    grid-column: 2 !important;
    width: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    visibility: hidden !important;
  }

  #hospitality-feature .hospitality-feature__copy {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #hospitality-feature .hospitality-feature__eyebrow {
    margin: 0 0 10px !important;
    line-height: 1 !important;
    letter-spacing: -0.03em !important;
    white-space: nowrap !important;
  }

  #hospitality-feature .hospitality-feature__title {
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
  }

  #hospitality-feature .hospitality-feature__title > span {
    display: block !important;
    white-space: nowrap !important;
  }

  #hospitality-feature .hospitality-feature__sub {
    margin: 20px 0 0 !important;
    line-height: 0.96 !important;
    letter-spacing: -0.035em !important;
  }

  #hospitality-feature .hospitality-feature__brand {
    margin: 20px 0 0 !important;
  }

  #hospitality-feature .hospitality-feature__media {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transform: none !important;
  }

  #hospitality-feature .hospitality-feature__image-shell {
    min-height: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
    transform-origin: center center !important;
  }

  #hospitality-feature .hospitality-feature__image {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    display: block !important;
    max-width: none !important;
  }

  #hospitality-feature .hospitality-feature__image-shadow {
    left: 8% !important;
    right: 3% !important;
  }

  #hospitality-feature .hospitality-feature__footer {
    display: none !important;
  }

  #services-overview > .section-sequence-label {
    display: none !important;
  }

  #services-overview .services-overview__inner {
    margin: 0 !important;
    display: grid !important;
    grid-template-rows: 1fr !important;
  }

  #services-overview .services-overview__content {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #services-overview .services-overview__header {
    margin: 0 0 16px !important;
  }

  #services-overview .services-overview__eyebrow {
    max-width: none !important;
    margin: 0 0 6px !important;
    line-height: 1.12 !important;
    letter-spacing: 0.16em !important;
  }

  #services-overview .services-overview__title {
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
    letter-spacing: -0.085em !important;
  }

  #services-overview .services-overview__groups {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr)
      minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    margin: 14px 0 0 !important;
  }

  #services-overview .services-overview__group {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 8px 0 0 !important;
    border-top: 1px solid rgba(8, 9, 9, 0.22) !important;
  }

  #services-overview .services-overview__group:nth-child(1) {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  #services-overview .services-overview__group:nth-child(2) {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  #services-overview .services-overview__group:nth-child(3) {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
  }

  #services-overview .services-overview__group h3 {
    margin: 0 0 6px !important;
    gap: 3px !important;
    letter-spacing: -0.025em !important;
  }

  #services-overview .services-overview__group li {
    letter-spacing: -0.018em !important;
  }

  #services-overview .services-overview__group li::before {
    left: 0 !important;
    top: 0 !important;
  }

  #services-overview .services-overview__media {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    overflow: visible !important;
    transform: none !important;
  }

  #services-overview .services-overview__image-shell {
    max-height: 720px !important;
    min-height: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    overflow: visible !important;
    transform-origin: center bottom !important;
  }

  #services-overview .services-overview__image {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    max-width: none !important;
  }

  #services-overview .services-overview__image-shadow {
    left: 8% !important;
    right: 3% !important;
    bottom: 1.5% !important;
    height: 8% !important;
  }

  #services-overview .services-overview__footer {
    display: none !important;
  }
}

@media (max-width: 768px) {
  #hospitality-feature {
    min-height: 0 !important;
    height: clamp(180px, 60vw, 250px) !important;
    overflow: hidden !important;
  }

  #hospitality-feature .hospitality-feature__inner {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 26px 8px 22px 14px !important;
    grid-template-columns: minmax(0, 60%) 0 minmax(0, 40%) !important;
    align-items: center !important;
  }

  #hospitality-feature .hospitality-feature__copy {
    align-self: center !important;
  }

  #hospitality-feature .hospitality-feature__eyebrow {
    margin-bottom: 7px !important;
    font-size: clamp(8px, 2.35vw, 10px) !important;
  }

  #hospitality-feature .hospitality-feature__title {
    font-size: clamp(18px, 5.25vw, 23px) !important;
    line-height: .9 !important;
    letter-spacing: -.065em !important;
  }

  #hospitality-feature .hospitality-feature__sub {
    margin-top: 14px !important;
    font-size: clamp(8px, 2.35vw, 10px) !important;
  }

  #hospitality-feature .hospitality-feature__brand {
    width: clamp(36px, 10vw, 44px) !important;
    margin-top: 14px !important;
  }

  #hospitality-feature .hospitality-feature__media {
    align-self: center !important;
    overflow: visible !important;
  }

  #hospitality-feature .hospitality-feature__image-shell {
    transform: translateX(-5px) !important;
  }

  #hospitality-feature .hospitality-feature__image-shadow {
    bottom: 9% !important;
    height: 7% !important;
  }

  #services-overview {
    min-height: 0 !important;
    height: clamp(180px, 60vw, 250px) !important;
    overflow: hidden !important;
  }

  #services-overview .services-overview__inner {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 24px 6px 18px 13px !important;
    grid-template-columns: minmax(0, 70%) minmax(0, 30%) !important;
    gap: 2px !important;
    align-items: center !important;
  }

  #services-overview .services-overview__content {
    align-self: center !important;
  }

  #services-overview .services-overview__header {
    margin-bottom: 10px !important;
  }

  #services-overview .services-overview__eyebrow {
    margin-bottom: 4px !important;
    font-size: clamp(6px, 1.65vw, 7px) !important;
  }

  #services-overview .services-overview__title {
    font-size: clamp(21px, 6.35vw, 27px) !important;
    line-height: .88 !important;
  }

  #services-overview .services-overview__groups {
    column-gap: 6px !important;
    row-gap: 7px !important;
    margin-top: 9px !important;
  }

  #services-overview .services-overview__group {
    padding-top: 5px !important;
  }

  #services-overview .services-overview__group h3 {
    margin-bottom: 4px !important;
    font-size: clamp(5.9px, 1.62vw, 6.8px) !important;
    line-height: 1.02 !important;
  }

  #services-overview .services-overview__group ul {
    gap: 1px !important;
  }

  #services-overview .services-overview__group li {
    padding-left: 7px !important;
    font-size: clamp(5px, 1.38vw, 5.9px) !important;
    line-height: 1.08 !important;
  }

  #services-overview .services-overview__media {
    align-self: center !important;
    align-items: flex-end !important;
  }

  #services-overview .services-overview__image-shell {
    transform: translateX(-3px) !important;
  }
}

@media (max-width: 640px) {
  body .intro-video-hero .intro-video-hero__badge[data-intro-badge] {
    position: absolute !important;
    left: 15% !important;
    top: 15% !important;
    right: auto !important;
    bottom: auto !important;
  }
}

@media (max-width: 768px) {
  #capabilities-strategy
  .cap-editorial__wide-image > img:first-child {
    object-position: 50% 88% !important;
  }
}

@media (max-width: 768px) {
  #capabilities-experience
  .cap-editorial__wide-image > img:first-child {
    object-position: 100% 100% !important;
  }
}

@media (max-width: 768px) {
  #capabilities-two .capabilities-hero__green-band {
    height: 90px !important;
  }
}

#capabilities-two > .section-sequence-inset > span:last-child {
  display: none !important;
}

@media (max-width: 768px) {
  #hospitality-feature {
    --hospitality-image-width: 220px;
    --hospitality-image-height: 290px;
    --hospitality-image-x: -20px;
    --hospitality-image-y: -140px;
  }

  #hospitality-feature .hospitality-feature__media,
  #hospitality-feature .hospitality-feature__image-shell {
    overflow: visible !important;
  }

  #hospitality-feature .hospitality-feature__image-shell {
    position: relative !important;
    width: var(--hospitality-image-width) !important;
    height: var(--hospitality-image-height) !important;
    left: var(--hospitality-image-x) !important;
    top: var(--hospitality-image-y) !important;
    max-width: none !important;
  }

  #hospitality-feature .hospitality-feature__image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }

  #services-overview {
    --services-image-width: 165px;
    --services-image-height: 245px;
    --services-image-x: 0px;
    --services-image-y: 0px;
  }

  #services-overview .services-overview__media,
  #services-overview .services-overview__image-shell {
    overflow: visible !important;
  }

  #services-overview .services-overview__image-shell {
    position: relative !important;
    width: var(--services-image-width) !important;
    height: var(--services-image-height) !important;
    left: var(--services-image-x) !important;
    top: var(--services-image-y) !important;
    max-width: none !important;
  }

  #services-overview .services-overview__image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }
}

@media (max-width: 768px) {
  #hospitality-feature .hospitality-feature__image-shell,
  #services-overview .services-overview__image-shell {
    overflow: visible !important;
  }
}

@media (max-width: 768px) {
  #hospitality-feature .hospitality-feature__image {
    transform: translate(10px, 115px) scale(1.7) !important;
    transform-origin: center bottom !important;
  }

  #services-overview .services-overview__image {
    transform: translate(-50px, -10px) scale(1.7) !important;
    transform-origin: center bottom !important;
  }
}

.partner-logo-card:nth-child(3) .partner-logo-card__media {
  background: transparent !important;
}

.partner-logo-card:nth-child(3) .partner-logo-card__media img {
  opacity: 1 !important;
  visibility: visible !important;
  filter: grayscale(1) invert(1) contrast(2) !important;
  mix-blend-mode: screen !important;
  object-fit: contain !important;
  background: transparent !important;
}

@media (max-width: 768px) {
  .navigation-footer__details
  .navigation-footer__detail-block:nth-child(2) {
    position: relative !important;
    left: -1px !important;
  }
}

#about .about-studio__grid {
  display: none !important;
  background: none !important;
}

#vision-mission .vision-mission__intro-title {
  font-family: "Akzidenz Grotesk BQ Medium Extended",
    "Helvetica Neue",
    Helvetica,
    Arial,
    sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: -0.045em !important;
}

#visual-archive .visual-archive__kinetic {
  display: none !important;
}

#visual-archive .visual-archive__layout {
  grid-template-columns: 1fr !important;
}

#visual-archive .visual-archive__copy {
  width: 100% !important;
  max-width: 1100px !important;
}

#hospitality-feature .hospitality-feature__brand {
  display: none !important;
}

#about > .section-sequence-label {
  display: none !important;
}
