/* [project]/src/components/experience/EngineeringHero.module.css [app-client] (css) */
.EngineeringHero-module__4Nf8Yq__hero {
  isolation: isolate;
  color: #f4f6fa;
  background: #06080d;
  place-items: center;
  min-height: max(780px, min(930px, 100svh - 80px));
  display: grid;
  position: relative;
  overflow: clip;
}

.EngineeringHero-module__4Nf8Yq__art {
  z-index: -3;
  transform-origin: 50% 45%;
  pointer-events: none;
  position: absolute;
  inset: -12% -4% -10%;
}

.EngineeringHero-module__4Nf8Yq__field {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

.EngineeringHero-module__4Nf8Yq__reflection, .EngineeringHero-module__4Nf8Yq__echo {
  transform-origin: center;
  animation-play-state: paused !important;
}

.EngineeringHero-module__4Nf8Yq__reflection {
  animation: 16s ease-in-out infinite alternate EngineeringHero-module__4Nf8Yq__reflection;
}

.EngineeringHero-module__4Nf8Yq__echo {
  animation: 19s ease-in-out infinite alternate EngineeringHero-module__4Nf8Yq__echo;
}

.EngineeringHero-module__4Nf8Yq__hero[data-running="true"] .EngineeringHero-module__4Nf8Yq__reflection, .EngineeringHero-module__4Nf8Yq__hero[data-running="true"] .EngineeringHero-module__4Nf8Yq__echo {
  animation-play-state: running !important;
}

@keyframes EngineeringHero-module__4Nf8Yq__reflection {
  from {
    opacity: .8;
    transform: translate(-100px, 60px) scale(.88);
  }

  to {
    opacity: 1;
    transform: translate(160px, -100px) scale(1.12);
  }
}

@keyframes EngineeringHero-module__4Nf8Yq__echo {
  from {
    opacity: .55;
    transform: translate(100px, -80px);
  }

  to {
    opacity: .9;
    transform: translate(-130px, 60px);
  }
}

.EngineeringHero-module__4Nf8Yq__shade {
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(47% 29% at 50% 47%, #06080dc7, #06080d45 65%, #0000), linear-gradient(#06080d 0%, #06080d00 20% 65%, #06080d 98%), linear-gradient(90deg, #06080d 0%, #0000 18% 82%, #06080d 100%);
  position: absolute;
  inset: 0;
}

.EngineeringHero-module__4Nf8Yq__content {
  text-align: center;
  max-width: 1280px;
  padding: 150px 32px 185px;
}

.EngineeringHero-module__4Nf8Yq__content h1 {
  letter-spacing: -.062em;
  text-wrap: balance;
  text-shadow: 0 4px 36px #03050c80;
  margin: 0;
  font-size: clamp(48px, 5.5vw, 88px);
  font-weight: 500;
  line-height: 1.08;
}

.EngineeringHero-module__4Nf8Yq__content h1 em {
  color: #e7edfa;
  font-style: normal;
}

.EngineeringHero-module__4Nf8Yq__content > p {
  color: #c5ccda;
  text-wrap: pretty;
  max-width: 66ch;
  margin: 30px auto 0;
  font-size: clamp(17px, 1.3vw, 20px);
  line-height: 1.65;
}

.EngineeringHero-module__4Nf8Yq__actions {
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-top: 36px;
  display: flex;
}

.EngineeringHero-module__4Nf8Yq__actions a {
  color: #e5eafa;
  background: #0b101bcc;
  border: 1px solid #a2b6da40;
  border-radius: 8px;
  padding: 16px 25px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition: background .18s, box-shadow .18s, border-color .18s;
}

.EngineeringHero-module__4Nf8Yq__actions a:first-child {
  color: #172237;
  background: linear-gradient(160deg, #f7faff, #cfddf6);
  border-color: #e0e9fa;
  box-shadow: 0 2px 3px #0006, 0 0 22px #a1bdff18, inset 0 1px #fff;
}

.EngineeringHero-module__4Nf8Yq__actions a:hover {
  background: #1d2d4a;
  border-color: #99afd0;
}

.EngineeringHero-module__4Nf8Yq__actions a:first-child:hover {
  background: #fff;
  box-shadow: 0 0 30px #91b6ff3d;
}

.EngineeringHero-module__4Nf8Yq__bottom {
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  display: flex;
  position: absolute;
  bottom: 30px;
  left: max(24px, 6vw);
  right: max(24px, 6vw);
}

.EngineeringHero-module__4Nf8Yq__explore {
  color: #b2bfd4;
  align-items: center;
  gap: 14px;
  font-size: 13px;
  text-decoration: none;
  display: inline-flex;
}

.EngineeringHero-module__4Nf8Yq__scrollLine {
  background: linear-gradient(#0000, #b4c8ef);
  width: 1px;
  height: 32px;
}

.EngineeringHero-module__4Nf8Yq__pause {
  color: #b2bfd4;
  min-height: 44px;
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 9px;
  padding: 8px 4px;
  font-size: 12px;
  display: inline-flex;
}

.EngineeringHero-module__4Nf8Yq__pause:disabled {
  cursor: default;
}

.EngineeringHero-module__4Nf8Yq__explore:hover, .EngineeringHero-module__4Nf8Yq__pause:not(:disabled):hover {
  color: #fff;
}

.EngineeringHero-module__4Nf8Yq__hero a:focus-visible, .EngineeringHero-module__4Nf8Yq__hero button:focus-visible {
  outline-offset: 6px;
  outline: 3px solid #b6ceff;
}

html:not([data-enhanced]) .EngineeringHero-module__4Nf8Yq__pause {
  display: none;
}

@media (min-width: 1700px) {
  .EngineeringHero-module__4Nf8Yq__field {
    transform: scale(1.13);
  }
}

@media (max-width: 1100px) {
  .EngineeringHero-module__4Nf8Yq__hero {
    min-height: 790px;
  }

  .EngineeringHero-module__4Nf8Yq__art {
    inset: -8% -24%;
  }

  .EngineeringHero-module__4Nf8Yq__content {
    padding: 150px 36px 180px;
  }

  .EngineeringHero-module__4Nf8Yq__content h1 {
    font-size: clamp(48px, 6.5vw, 68px);
  }

  .EngineeringHero-module__4Nf8Yq__content > p {
    max-width: 57ch;
  }
}

@media (max-width: 600px) {
  .EngineeringHero-module__4Nf8Yq__hero {
    min-height: max(720px, 100svh - 72px);
  }

  .EngineeringHero-module__4Nf8Yq__art {
    inset: -7% -90% 0;
    transform: none !important;
  }

  .EngineeringHero-module__4Nf8Yq__field {
    transform: translateX(-4%);
  }

  .EngineeringHero-module__4Nf8Yq__content {
    padding: 150px 22px 140px;
  }

  .EngineeringHero-module__4Nf8Yq__content h1 {
    letter-spacing: -.058em;
    font-size: clamp(39px, 10.8vw, 58px);
    line-height: 1.09;
  }

  .EngineeringHero-module__4Nf8Yq__content h1 em {
    margin-top: 9px;
    display: inline-block;
  }

  .EngineeringHero-module__4Nf8Yq__content > p {
    max-width: 36ch;
    margin-top: 25px;
    font-size: 16px;
    line-height: 1.6;
  }

  .EngineeringHero-module__4Nf8Yq__actions {
    gap: 12px;
    margin-top: 28px;
  }

  .EngineeringHero-module__4Nf8Yq__actions a {
    padding: 15px 19px;
    font-size: 14px;
  }

  .EngineeringHero-module__4Nf8Yq__bottom {
    bottom: 22px;
    left: 22px;
    right: 22px;
  }

  .EngineeringHero-module__4Nf8Yq__explore {
    gap: 10px;
    font-size: 12px;
  }

  .EngineeringHero-module__4Nf8Yq__shade {
    background: radial-gradient(85% 39%, #06080d99, #0000), linear-gradient(#06080d 0%, #0000 22% 65%, #06080d 98%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .EngineeringHero-module__4Nf8Yq__art {
    transform: none !important;
  }

  .EngineeringHero-module__4Nf8Yq__reflection, .EngineeringHero-module__4Nf8Yq__echo {
    animation: none !important;
  }

  .EngineeringHero-module__4Nf8Yq__actions a {
    transition: none;
  }
}

/* [project]/src/components/experience/Cinema.module.css [app-client] (css) */
.Cinema-module__c4cqHq__demoBar {
  color: #c3cad7;
  border-bottom: 1px solid #ffffff15;
  justify-content: space-between;
  align-items: center;
  padding: 13px 20px;
  font-size: 12px;
  display: flex;
}

.Cinema-module__c4cqHq__recording {
  margin: 0;
}

.Cinema-module__c4cqHq__recording video {
  object-fit: contain;
  background: #08090c;
  width: 100%;
  height: auto;
  display: block;
}

.Cinema-module__c4cqHq__recording figcaption {
  color: #b9c3d3;
  background: #12161d;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  font-size: 11px;
  line-height: 1.5;
  display: flex;
}

.Cinema-module__c4cqHq__recording button {
  color: #f4f6fa;
  cursor: pointer;
  background: none;
  border: 1px solid #465065;
  border-radius: 5px;
  flex-shrink: 0;
  padding: 8px 12px;
  font-size: 12px;
}

.Cinema-module__c4cqHq__recording button:hover {
  background: #2a3444;
}

html:not([data-enhanced]) .Cinema-module__c4cqHq__recording button {
  display: none;
}

.Cinema-module__c4cqHq__textEquivalent {
  clip-path: inset(50%);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.Cinema-module__c4cqHq__mediaFallback {
  color: #cbd4e2;
  padding: 12px 20px;
  font-size: 13px;
}

.Cinema-module__c4cqHq__mediaFallback a {
  text-decoration: underline;
}

.Cinema-module__c4cqHq__software {
  color: #1a2633;
  background: #edf0f2;
  padding: 100px max(28px, 6vw) 60px;
  scroll-margin-top: 88px;
  overflow: clip;
}

.Cinema-module__c4cqHq__softwareHeading {
  justify-content: space-between;
  align-items: start;
  gap: 30px;
  max-width: 1560px;
  margin: 0 auto 70px;
  display: flex;
}

.Cinema-module__c4cqHq__softwareHeading > span {
  color: #566576;
  padding-top: 12px;
  font-size: 15px;
}

.Cinema-module__c4cqHq__softwareHeading h2 {
  letter-spacing: -.055em;
  width: 68%;
  margin: 0;
  font-size: clamp(50px, 6.3vw, 96px);
  font-weight: 500;
  line-height: 1.01;
}

.Cinema-module__c4cqHq__softwareHeading em {
  color: #718399;
  font-style: normal;
}

.Cinema-module__c4cqHq__softwareComposition {
  grid-template-columns: 1.9fr 1fr;
  align-items: center;
  gap: 6vw;
  max-width: 1560px;
  margin: 0 auto;
  display: grid;
}

.Cinema-module__c4cqHq__demoWindow {
  background: #fff;
  border: 1px solid #c3cdd6;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 20px 60px #253e5820;
}

.Cinema-module__c4cqHq__demoBar {
  color: #4d5b6c;
  background: #e1e7ec;
  border-bottom-color: #c3cdd6;
}

.Cinema-module__c4cqHq__demoBar span:last-child {
  color: #657486;
}

.Cinema-module__c4cqHq__softwareStory h3 {
  letter-spacing: -.035em;
  margin: 0 0 22px;
  font-size: clamp(23px, 2.1vw, 34px);
  font-weight: 500;
  line-height: 1.2;
}

.Cinema-module__c4cqHq__softwareStory > p {
  color: #4c5b6b;
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
}

.Cinema-module__c4cqHq__softwareStory ol {
  margin: 28px 0;
  padding: 0;
  list-style: none;
}

.Cinema-module__c4cqHq__softwareStory li {
  border-top: 1px solid #ccd5dd;
  flex-direction: column;
  gap: 4px;
  padding: 12px 0;
  display: flex;
}

.Cinema-module__c4cqHq__softwareStory li strong {
  font-size: 14px;
  font-weight: 600;
}

.Cinema-module__c4cqHq__softwareStory li span {
  color: #566576;
  font-size: 14px;
  line-height: 1.5;
}

.Cinema-module__c4cqHq__serviceLinks {
  flex-direction: column;
  align-items: start;
  gap: 15px;
  display: flex;
}

.Cinema-module__c4cqHq__serviceLinks a {
  color: #233e68;
  text-underline-offset: 5px;
  font-size: 14px;
  text-decoration: underline;
}

.Cinema-module__c4cqHq__softwareFoot {
  color: #596979;
  justify-content: space-between;
  align-items: end;
  gap: 36px;
  max-width: 1560px;
  margin: 55px auto 0;
  font-size: 12px;
  line-height: 1.6;
  display: flex;
}

.Cinema-module__c4cqHq__softwareFoot p {
  max-width: 60ch;
  margin: 0;
}

.Cinema-module__c4cqHq__softwareFoot span {
  white-space: nowrap;
}

.Cinema-module__c4cqHq__software a:focus-visible, .Cinema-module__c4cqHq__software button:focus-visible {
  outline-offset: 5px;
  outline: 3px solid #638bd0;
}

@media (max-width: 1100px) {
  .Cinema-module__c4cqHq__softwareComposition {
    grid-template-columns: 1fr;
    gap: 45px;
  }

  .Cinema-module__c4cqHq__softwareStory {
    grid-template-columns: 1fr 1fr;
    column-gap: 50px;
    display: grid;
  }

  .Cinema-module__c4cqHq__softwareStory h3 {
    font-size: 30px;
  }

  .Cinema-module__c4cqHq__softwareStory ol {
    grid-row: span 2;
    margin: 0;
  }

  .Cinema-module__c4cqHq__softwareStory > p {
    grid-area: 2 / 1;
  }

  .Cinema-module__c4cqHq__serviceLinks {
    margin-top: 25px;
  }
}

@media (max-width: 767px) {
  .Cinema-module__c4cqHq__demoBar {
    padding: 11px 13px;
    font-size: 11px;
  }

  .Cinema-module__c4cqHq__recording figcaption {
    padding: 10px;
    font-size: 10px;
  }

  .Cinema-module__c4cqHq__recording button {
    padding: 8px;
    font-size: 11px;
  }

  .Cinema-module__c4cqHq__software {
    padding: 55px 22px 36px;
  }

  .Cinema-module__c4cqHq__softwareHeading {
    margin-bottom: 35px;
    display: block;
  }

  .Cinema-module__c4cqHq__softwareHeading > span {
    margin-bottom: 22px;
    font-size: 13px;
    display: block;
  }

  .Cinema-module__c4cqHq__softwareHeading h2 {
    width: 100%;
    font-size: 58px;
  }

  .Cinema-module__c4cqHq__demoWindow {
    border-radius: 7px;
    transform: none !important;
  }

  .Cinema-module__c4cqHq__softwareComposition {
    gap: 32px;
  }

  .Cinema-module__c4cqHq__softwareStory {
    display: block;
  }

  .Cinema-module__c4cqHq__softwareStory h3 {
    margin-bottom: 16px;
    font-size: 28px;
  }

  .Cinema-module__c4cqHq__softwareStory ol {
    margin: 22px 0;
  }

  .Cinema-module__c4cqHq__softwareFoot {
    margin-top: 32px;
    display: block;
  }

  .Cinema-module__c4cqHq__softwareFoot span {
    margin-top: 18px;
    display: block;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Cinema-module__c4cqHq__demoWindow {
    transform: none !important;
  }
}

/* [project]/src/components/experience/Reconstruction.module.css [app-client] (css) */
.Reconstruction-module__xjdtNa__page {
  --ink: #f3f1f8;
  --dim: #ada8ba;
  --violet: #c3acff;
  --line: #ffffff24;
  color: var(--ink);
  background: #09090c;
}

.Reconstruction-module__xjdtNa__hero {
  color: #f3f1f8;
  background: radial-gradient(at 78% 45%, #22213b 0, #0000 49%), #09090c;
  padding: 38px max(5vw, 24px) 120px;
  position: relative;
  overflow: clip;
}

.Reconstruction-module__xjdtNa__heroTop {
  color: #b9b4c8;
  z-index: 2;
  justify-content: flex-end;
  gap: 24px;
  font-size: 14px;
  display: flex;
  position: relative;
}

.Reconstruction-module__xjdtNa__heroTop p {
  color: #ece9f3;
  margin: 0;
}

.Reconstruction-module__xjdtNa__heroTop p span {
  color: #aca5bb;
  margin-left: 24px;
}

.Reconstruction-module__xjdtNa__motionToggle {
  font: inherit;
  color: #c6bdd7;
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff25;
  border-radius: 30px;
  padding: 8px 12px;
  font-size: 12px;
}

.Reconstruction-module__xjdtNa__heroComposition {
  grid-template-columns: 1.05fr 1fr;
  align-items: center;
  max-width: 1720px;
  height: calc(100svh - 220px);
  min-height: 690px;
  max-height: 900px;
  margin: auto;
  display: grid;
  position: relative;
}

.Reconstruction-module__xjdtNa__heroCopy {
  z-index: 2;
  max-width: 750px;
  padding: 55px 0 65px;
}

.Reconstruction-module__xjdtNa__heroCopy h1 {
  letter-spacing: -.065em;
  margin: 0 0 32px;
  font-size: clamp(60px, 6.9vw, 114px);
  font-weight: 470;
  line-height: .99;
}

.Reconstruction-module__xjdtNa__heroCopy h1 em {
  color: #c3acff;
  font-style: normal;
}

.Reconstruction-module__xjdtNa__heroCopy > p {
  color: #c0bacb;
  max-width: 480px;
  font-size: clamp(17px, 1.4vw, 21px);
  line-height: 1.6;
}

.Reconstruction-module__xjdtNa__actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 22px;
  margin-top: 32px;
  font-size: 15px;
  display: flex;
}

.Reconstruction-module__xjdtNa__actions a {
  color: #f2edf9;
  border-bottom: 1px solid #76668f;
  padding: 14px 0;
  text-decoration: none;
}

.Reconstruction-module__xjdtNa__actions a:first-child {
  color: #17121e;
  background: #e5dcf7;
  border: 1px solid #e5dcf7;
  border-radius: 6px;
  padding: 14px 20px;
  transition: background .2s, transform .2s;
}

.Reconstruction-module__xjdtNa__actions a:first-child:hover {
  background: #fff;
  transform: translateY(-2px);
}

.Reconstruction-module__xjdtNa__heroVisual {
  perspective: 1100px;
  transform-origin: center;
  width: calc(100% + 8vw);
  margin: 0 -5vw 0 -50px;
  position: relative;
}

.Reconstruction-module__xjdtNa__heroVisual figcaption {
  text-align: center;
  color: #a49bb7;
  margin-top: 15px;
  font-size: 12px;
  line-height: 1.5;
  position: relative;
}

.Reconstruction-module__xjdtNa__section, .Reconstruction-module__xjdtNa__aiSection, .Reconstruction-module__xjdtNa__portfolio {
  max-width: 1920px;
  margin: auto;
  padding: 110px max(5vw, 24px);
}

.Reconstruction-module__xjdtNa__sectionIntro {
  grid-template-columns: 1.4fr 1fr;
  align-items: end;
  gap: 50px;
  margin-bottom: 65px;
  display: grid;
}

.Reconstruction-module__xjdtNa__sectionIntro h2 {
  letter-spacing: -.055em;
  margin: 0;
  font-size: clamp(40px, 5.2vw, 76px);
  font-weight: 440;
  line-height: 1.05;
}

.Reconstruction-module__xjdtNa__sectionIntro h2 em {
  color: #aa9bbf;
  font-style: normal;
}

.Reconstruction-module__xjdtNa__sectionIntro p {
  color: #b4adbf;
  max-width: 510px;
  margin: 0;
  font-size: 18px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__aiSection {
  background: radial-gradient(at 30% 55%, #201b3055, #0000 65%), #0b0b10;
  border-block: 1px solid #ffffff16;
  max-width: none;
}

.Reconstruction-module__xjdtNa__graphLayout {
  grid-template-columns: 1.65fr 1fr;
  align-items: center;
  gap: 24px;
  max-width: 1650px;
  margin: auto;
  display: grid;
}

.Reconstruction-module__xjdtNa__graph {
  min-width: 0;
  height: 640px;
  position: relative;
}

.Reconstruction-module__xjdtNa__graph > svg {
  fill: none;
  stroke: #b0a0cd20;
  stroke-width: .13px;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.Reconstruction-module__xjdtNa__graph > svg circle {
  stroke-dasharray: .3 1;
}

.Reconstruction-module__xjdtNa__graph > svg path[data-active="true"] {
  stroke: #cab5ee;
  stroke-width: .25px;
  transition: stroke .3s;
}

.Reconstruction-module__xjdtNa__crossConnections {
  stroke: #9a89b32b;
  stroke-dasharray: .6 1;
}

.Reconstruction-module__xjdtNa__aiCore {
  text-align: center;
  background: radial-gradient(at 30% 10%, #64517e, #1c1528 75%);
  border: 1px solid #ddc9ff80;
  border-radius: 30%;
  align-content: center;
  width: 100px;
  height: 100px;
  display: grid;
  position: absolute;
  top: 47%;
  left: 49%;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 55px #c9b1ff1c, inset 0 0 18px #cebaff20;
}

.Reconstruction-module__xjdtNa__aiCore > span {
  letter-spacing: -.05em;
  font-size: 40px;
  line-height: 1.15;
}

.Reconstruction-module__xjdtNa__aiCore small {
  color: #d1bfe9;
  font-size: 10px;
}

.Reconstruction-module__xjdtNa__cluster {
  width: 180px;
  position: absolute;
  transform: translate(-50%, -50%);
}

.Reconstruction-module__xjdtNa__cluster > button {
  text-align: left;
  color: #d9d4e2;
  cursor: pointer;
  background: #15141d;
  border: 1px solid #ffffff26;
  border-radius: 9px;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  padding: 12px;
  font-size: 13px;
  transition: border-color .25s, background .25s, transform .25s;
  display: flex;
}

.Reconstruction-module__xjdtNa__cluster > button:hover {
  border-color: var(--cluster-color);
  transform: translateY(-3px);
}

.Reconstruction-module__xjdtNa__cluster[data-selected="true"] > button {
  border-color: var(--cluster-color);
  color: #fff;
  background: #272033;
  box-shadow: 0 8px 30px #0004;
}

.Reconstruction-module__xjdtNa__clusterDot {
  background: var(--cluster-color);
  border-radius: 50%;
  flex: none;
  width: 6px;
  height: 6px;
}

.Reconstruction-module__xjdtNa__satelliteLabels {
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
  margin-top: 8px;
  display: flex;
}

.Reconstruction-module__xjdtNa__satelliteLabels span {
  color: #a9a1ba;
  background: #0c0b1280;
  border: 1px solid #ffffff12;
  border-radius: 4px;
  padding: 3px 6px;
  font-size: 10px;
}

.Reconstruction-module__xjdtNa__graphCaption {
  color: #a89ab9;
  font-size: 12px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.Reconstruction-module__xjdtNa__graphDetail {
  background: linear-gradient(145deg, #1b1723, #111016);
  border: 1px solid #ffffff21;
  border-radius: 16px;
  min-height: 580px;
  padding: 32px;
}

.Reconstruction-module__xjdtNa__classification {
  color: #c9b3e8;
  margin: 0 0 18px;
  font-size: 12px;
}

.Reconstruction-module__xjdtNa__graphDetail h3 {
  letter-spacing: -.035em;
  margin: 0 0 20px;
  font-size: 30px;
  font-weight: 480;
  line-height: 1.15;
}

.Reconstruction-module__xjdtNa__graphDetail p {
  color: #bdb4cd;
  font-size: 15px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__graphDetail a {
  color: #e1cdfb;
  text-underline-offset: 6px;
  margin-top: 24px;
  font-size: 14px;
  text-decoration-thickness: 1px;
  display: inline-block;
}

.Reconstruction-module__xjdtNa__nodeControls {
  flex-wrap: wrap;
  gap: 6px;
  margin: 24px 0;
  display: flex;
}

.Reconstruction-module__xjdtNa__nodeControls button {
  isolation: isolate;
  color: #c7bdcf;
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff20;
  border-radius: 20px;
  padding: 8px 11px;
  font-size: 12px;
  position: relative;
}

.Reconstruction-module__xjdtNa__nodeControls button > span:last-child {
  position: relative;
}

.Reconstruction-module__xjdtNa__nodeControls button[aria-pressed="true"] {
  color: #fff;
}

.Reconstruction-module__xjdtNa__selectedNode {
  background: #54416b;
  border-radius: 20px;
  position: absolute;
  inset: 0;
}

.Reconstruction-module__xjdtNa__nodeDetail {
  border-block: 1px solid #ffffff18;
  min-height: 125px;
  padding: 18px 0;
}

.Reconstruction-module__xjdtNa__nodeDetail h4 {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 500;
}

.Reconstruction-module__xjdtNa__nodeDetail p {
  margin: 0;
}

.Reconstruction-module__xjdtNa__graphDetail details {
  color: #b8adcb;
  margin-top: 16px;
  font-size: 13px;
}

.Reconstruction-module__xjdtNa__graphDetail summary {
  cursor: pointer;
}

.Reconstruction-module__xjdtNa__audiences {
  color: #1c1823;
  background: #e9e6ef;
  max-width: none;
}

.Reconstruction-module__xjdtNa__audiences .Reconstruction-module__xjdtNa__sectionIntro p {
  color: #605969;
}

.Reconstruction-module__xjdtNa__audiences .Reconstruction-module__xjdtNa__sectionIntro h2 em {
  color: #81748f;
}

.Reconstruction-module__xjdtNa__audienceGrid {
  grid-template-columns: .95fr 1.2fr 1fr;
  align-items: start;
  gap: 18px;
  display: grid;
}

.Reconstruction-module__xjdtNa__audienceStory {
  background: #dcd5e7;
  border-radius: 12px;
  min-width: 0;
  padding: 26px;
}

.Reconstruction-module__xjdtNa__audienceStory[data-type="business"] {
  color: #f2ecfa;
  background: #292134;
  margin-top: 48px;
}

.Reconstruction-module__xjdtNa__audienceStory[data-type="team"] {
  background: #cbc7d6;
  margin-top: 100px;
}

.Reconstruction-module__xjdtNa__audienceSelect {
  border: 0;
  text-align: left;
  width: 100%;
  color: inherit;
  cursor: pointer;
  background: none;
  border-bottom: 1px solid;
  justify-content: space-between;
  gap: 12px;
  padding: 0 0 16px;
  font-size: 13px;
  display: flex;
}

.Reconstruction-module__xjdtNa__audienceStory h3 {
  letter-spacing: -.045em;
  margin: 28px 0;
  font-size: clamp(24px, 2.5vw, 39px);
  font-weight: 470;
  line-height: 1.1;
}

.Reconstruction-module__xjdtNa__audienceStory > p {
  color: #554b61;
  font-size: 15px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__audienceStory > small {
  opacity: .75;
  margin-top: 26px;
  font-size: 11px;
  line-height: 1.5;
  display: block;
}

.Reconstruction-module__xjdtNa__audienceVisual {
  border-block: 1px solid #6a5a7f33;
  flex-direction: column;
  justify-content: center;
  height: 155px;
  margin-bottom: 26px;
  display: flex;
  position: relative;
}

.Reconstruction-module__xjdtNa__fileStack {
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  display: flex;
}

.Reconstruction-module__xjdtNa__fileStack span {
  background: #f5f1fa;
  border: 1px solid #aaa0b9;
  border-radius: 4px;
  padding: 8px 14px;
  font: 11px monospace;
}

.Reconstruction-module__xjdtNa__fileStack span:nth-child(2) {
  margin-left: 25px;
}

.Reconstruction-module__xjdtNa__fileStack span:nth-child(3) {
  margin-left: 50px;
}

.Reconstruction-module__xjdtNa__audienceVisual > p {
  color: #6e5c85;
  font-size: 22px;
  position: absolute;
  top: 0;
  right: 0;
}

.Reconstruction-module__xjdtNa__exchange {
  flex-direction: column;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  display: flex;
}

.Reconstruction-module__xjdtNa__exchange i {
  background: #a38bb9;
  width: 1px;
  height: 10px;
}

.Reconstruction-module__xjdtNa__exchange span, .Reconstruction-module__xjdtNa__exchange strong {
  border: 1px solid #bea1db44;
  border-radius: 4px;
  padding: 6px 16px;
}

.Reconstruction-module__xjdtNa__audienceVisual small {
  text-align: center;
  opacity: .7;
  margin-top: 14px;
  font-size: 10px;
}

.Reconstruction-module__xjdtNa__nativeSignature {
  justify-content: center;
  align-items: center;
  gap: 6px;
  display: flex;
}

.Reconstruction-module__xjdtNa__nativeSignature span {
  font: 10px monospace;
}

.Reconstruction-module__xjdtNa__nativeSignature code {
  border-inline: 1px solid #91849e;
  padding: 22px 8px;
  font-size: 24px;
}

.Reconstruction-module__xjdtNa__audienceDetail p {
  color: #554b61;
  border-top: 1px solid #a08dbb55;
  padding-top: 20px;
  font-size: 14px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__audienceStory[data-type="business"] p {
  color: #c8bdd3;
}

.Reconstruction-module__xjdtNa__audienceDetail:not([hidden]) {
  animation: .28s ease-out Reconstruction-module__xjdtNa__audience-detail;
}

@keyframes Reconstruction-module__xjdtNa__audience-detail {
  from {
    opacity: .75;
    transform: translateY(6px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.Reconstruction-module__xjdtNa__audienceDetail strong {
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 550;
  display: block;
}

.Reconstruction-module__xjdtNa__audienceDetail > div {
  gap: 12px;
  display: grid;
}

.Reconstruction-module__xjdtNa__audienceDetail a {
  color: inherit;
  text-underline-offset: 5px;
  font-size: 13px;
}

.Reconstruction-module__xjdtNa__softwareOffer, .Reconstruction-module__xjdtNa__integrationOffer {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 8vw;
  margin: 70px 0 120px;
  display: grid;
}

.Reconstruction-module__xjdtNa__serviceNumber {
  color: #b7a6d2;
  margin-bottom: 24px;
  font-size: 12px;
  display: block;
}

.Reconstruction-module__xjdtNa__softwareOffer h3, .Reconstruction-module__xjdtNa__integrationOffer h3 {
  letter-spacing: -.055em;
  margin: 0 0 26px;
  font-size: clamp(36px, 4.5vw, 66px);
  font-weight: 450;
  line-height: 1.07;
}

.Reconstruction-module__xjdtNa__softwareOffer p, .Reconstruction-module__xjdtNa__integrationOffer p {
  color: #b7b0c2;
  max-width: 490px;
  font-size: 17px;
  line-height: 1.7;
}

.Reconstruction-module__xjdtNa__deliveryNote {
  border-left: 2px solid #a88acc;
  padding-left: 18px;
  color: #ded0ed !important;
  font-size: 14px !important;
}

.Reconstruction-module__xjdtNa__inlineLinks {
  flex-wrap: wrap;
  gap: 12px 22px;
  margin-top: 24px;
  display: flex;
}

.Reconstruction-module__xjdtNa__inlineLinks a {
  color: #dfcff2;
  text-underline-offset: 6px;
  font-size: 14px;
}

.Reconstruction-module__xjdtNa__softwareBlueprint {
  background: radial-gradient(at 30% 20%, #3c2d4d, #15121c 70%);
  border: 1px solid #ffffff24;
  border-radius: 16px;
  gap: 14px;
  padding: 30px 45px;
  display: grid;
  transform: perspective(1000px) rotateY(-7deg);
  box-shadow: 30px 25px 60px #0004;
}

.Reconstruction-module__xjdtNa__softwareBlueprint > div {
  background: #b9a3d40c;
  border: 1px solid #bba6d933;
  border-radius: 7px;
  padding: 25px;
}

.Reconstruction-module__xjdtNa__softwareBlueprint span {
  color: #b7a4cf;
  font-size: 11px;
}

.Reconstruction-module__xjdtNa__blueprintTop b {
  letter-spacing: -.04em;
  margin-top: 15px;
  font-size: 32px;
  font-weight: 450;
  line-height: 1.2;
  display: block;
}

.Reconstruction-module__xjdtNa__blueprintMiddle p {
  color: #d7c8ea;
  margin: 12px 0;
  font-size: 17px;
}

.Reconstruction-module__xjdtNa__blueprintMiddle > div {
  gap: 10px;
  display: flex;
}

.Reconstruction-module__xjdtNa__blueprintMiddle i {
  color: #bcb0cb;
  border: 1px solid #ad9bb044;
  padding: 6px;
  font-size: 10px;
  font-style: normal;
}

.Reconstruction-module__xjdtNa__blueprintBottom > div {
  gap: 8px;
  margin-top: 15px;
  display: flex;
}

.Reconstruction-module__xjdtNa__blueprintBottom i {
  background: linear-gradient(#b8a2d835, #b8a2d80c);
  border: 1px solid #aa95c548;
  flex: 1;
  height: 30px;
}

.Reconstruction-module__xjdtNa__blueprintBottom p {
  color: #bdb0ce;
  margin: 14px 0 0;
  font: 11px monospace;
}

.Reconstruction-module__xjdtNa__softwareBlueprint > small {
  color: #aea0bf;
  text-align: center;
  font-size: 10px;
}

.Reconstruction-module__xjdtNa__exchangeVisual {
  background: linear-gradient(150deg, #131d27, #14121d);
  border: 1px solid #bac7dc20;
  border-radius: 16px;
  padding: 40px;
  position: relative;
}

.Reconstruction-module__xjdtNa__exchangeVisual > span {
  letter-spacing: -.04em;
  font-size: 30px;
}

.Reconstruction-module__xjdtNa__record {
  border-left: 2px solid #82abb4;
  gap: 8px;
  max-width: 240px;
  margin: 28px 0;
  padding-left: 20px;
  display: grid;
}

.Reconstruction-module__xjdtNa__record b {
  color: #a6c7d2;
  margin-bottom: 10px;
  font-size: 10px;
  font-weight: 400;
}

.Reconstruction-module__xjdtNa__record i {
  color: #b6b9cc;
  padding: 6px 0;
  font: 14px monospace;
}

.Reconstruction-module__xjdtNa__bridge {
  margin-top: -45px;
  margin-bottom: 24px;
  margin-left: 38%;
}

.Reconstruction-module__xjdtNa__bridge span {
  color: #9da5c1;
  font-size: 11px;
}

.Reconstruction-module__xjdtNa__bridge i {
  border-bottom: 1px solid #7b92b3;
  border-left: 1px solid #7b92b3;
  border-radius: 0 0 0 15px;
  width: 60%;
  height: 70px;
  display: block;
}

.Reconstruction-module__xjdtNa__resultStates {
  flex-wrap: wrap;
  gap: 8px;
  margin: 25px 0 45px;
  display: flex;
}

.Reconstruction-module__xjdtNa__resultStates span {
  color: #d3c8e2;
  border: 1px solid #b5aec435;
  border-radius: 5px;
  padding: 10px;
  font-size: 11px;
}

.Reconstruction-module__xjdtNa__resultStates span:nth-child(2) {
  color: #ddc3a7;
}

.Reconstruction-module__xjdtNa__resultStates span:last-child {
  color: #b7adc9;
}

.Reconstruction-module__xjdtNa__exchangeVisual small {
  color: #9c97ad;
  font-size: 10px;
}

.Reconstruction-module__xjdtNa__aiPrelude {
  border-top: 1px solid #ffffff20;
  grid-template-columns: 1.3fr 1fr;
  gap: 20px 60px;
  padding-top: 50px;
  display: grid;
}

.Reconstruction-module__xjdtNa__aiPrelude > .Reconstruction-module__xjdtNa__serviceNumber {
  grid-column: 1 / -1;
  margin: 0;
}

.Reconstruction-module__xjdtNa__aiPrelude h3 {
  letter-spacing: -.04em;
  margin: 0;
  font-size: clamp(29px, 3.3vw, 48px);
  font-weight: 450;
  line-height: 1.15;
}

.Reconstruction-module__xjdtNa__aiPrelude p {
  color: #b8b0c3;
  margin: 0;
  font-size: 17px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__aiPrelude > .Reconstruction-module__xjdtNa__inlineLinks {
  grid-column: 2;
}

.Reconstruction-module__xjdtNa__technicalDetails {
  grid-template-columns: 1fr 1fr;
  gap: 48px 64px;
  display: grid;
}

.Reconstruction-module__xjdtNa__technicalDetails article {
  border-top: 1px solid #ffffff26;
  padding-top: 30px;
}

.Reconstruction-module__xjdtNa__technicalDetails article:last-child {
  grid-column: 1 / -1;
  max-width: 960px;
}

.Reconstruction-module__xjdtNa__technicalDetails h3 {
  letter-spacing: -.03em;
  margin: 0 0 20px;
  font-size: clamp(23px, 2.2vw, 34px);
  font-weight: 500;
  line-height: 1.2;
}

.Reconstruction-module__xjdtNa__technicalDetails p {
  color: #c0bdca;
  max-width: 66ch;
  margin-bottom: 20px;
  font-size: 17px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__technicalDetails p.Reconstruction-module__xjdtNa__deliveryNote {
  color: #e2ddea;
  font-size: 15px;
}

.Reconstruction-module__xjdtNa__technicalDetails a {
  text-underline-offset: 5px;
  text-decoration: underline;
}

@media (max-width: 767px) {
  .Reconstruction-module__xjdtNa__technicalDetails {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .Reconstruction-module__xjdtNa__technicalDetails p {
    font-size: 16px;
  }
}

.Reconstruction-module__xjdtNa__technicalList article {
  border-top: 1px solid #ffffff21;
  grid-template-columns: .6fr 1.5fr 1fr;
  align-items: center;
  gap: 35px;
  padding: 38px 0;
  display: grid;
}

.Reconstruction-module__xjdtNa__technicalList article > span {
  color: #b3a2c6;
  font-size: 12px;
}

.Reconstruction-module__xjdtNa__technicalList h3 {
  letter-spacing: -.035em;
  margin: 0 0 12px;
  font-size: 27px;
  font-weight: 450;
}

.Reconstruction-module__xjdtNa__technicalList p {
  color: #b4adbf;
  max-width: 520px;
  font-size: 15px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__technicalList a {
  color: #decaf5;
  text-underline-offset: 5px;
  font-size: 14px;
}

.Reconstruction-module__xjdtNa__technicalList code {
  color: #b9a6d2;
  justify-self: end;
  font-size: 13px;
}

.Reconstruction-module__xjdtNa__buildMarks {
  justify-content: end;
  align-items: center;
  display: flex;
}

.Reconstruction-module__xjdtNa__buildMarks b {
  color: #b9a6d2;
  border: 1px solid #ffffff25;
  padding: 10px 7px;
  font: 12px monospace;
}

.Reconstruction-module__xjdtNa__buildMarks i {
  background: #8a779f;
  width: 12px;
  height: 1px;
}

.Reconstruction-module__xjdtNa__projectSequence {
  grid-template-columns: 1.25fr 1fr;
  align-items: start;
  gap: 7vw;
  display: grid;
}

.Reconstruction-module__xjdtNa__projectStage {
  min-width: 0;
  position: sticky;
  top: 100px;
}

.Reconstruction-module__xjdtNa__projectTabs {
  gap: 8px;
  margin-bottom: 18px;
  display: flex;
}

.Reconstruction-module__xjdtNa__projectTabs button {
  color: #a99eb9;
  cursor: pointer;
  background: none;
  border: 0;
  border-bottom: 2px solid #0000;
  flex: 1;
  padding: 12px 10px;
  font-size: 13px;
}

.Reconstruction-module__xjdtNa__projectTabs button[aria-pressed="true"] {
  color: #f2e8fc;
  border-color: #b69ae2;
}

.Reconstruction-module__xjdtNa__projectMedia {
  aspect-ratio: 1.1;
  background: #11121a;
  border: 1px solid #ffffff26;
  border-radius: 12px;
  position: relative;
  overflow: hidden;
}

.Reconstruction-module__xjdtNa__projectLayer {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .4s, transform .6s, visibility .4s;
  position: absolute;
  inset: 0;
  transform: scale(.97);
}

.Reconstruction-module__xjdtNa__projectLayer[data-visible="true"] {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

.Reconstruction-module__xjdtNa__relayLayer {
  background: radial-gradient(at 60% 35%, #334362, #151722 70%);
}

.Reconstruction-module__xjdtNa__relayLayer > span {
  letter-spacing: -.05em;
  color: #c3d1ed;
  font-size: clamp(25px, 3.4vw, 55px);
  font-weight: 500;
  line-height: 1.1;
  position: absolute;
  top: 12%;
  left: 7%;
}

.Reconstruction-module__xjdtNa__relayLayer > span em {
  color: #8d9db6;
  font-style: normal;
}

.Reconstruction-module__xjdtNa__relayLayer img {
  object-fit: contain;
  border-radius: 15px;
  width: auto;
  height: 87%;
  position: absolute;
  top: 7%;
  right: 11%;
  box-shadow: 0 18px 45px #0006;
}

.Reconstruction-module__xjdtNa__relayArchitecture {
  color: #afbedb;
  flex-direction: column;
  gap: 12px;
  font-size: 12px;
  display: flex;
  position: absolute;
  bottom: 10%;
  left: 7%;
}

.Reconstruction-module__xjdtNa__relayArchitecture i {
  background: #a2aed566;
  width: 1px;
  height: 20px;
}

.Reconstruction-module__xjdtNa__replaiLayer {
  background: linear-gradient(140deg, #222028, #0d0e13);
  flex-direction: column;
  justify-content: center;
  padding: 9%;
  display: flex;
}

.Reconstruction-module__xjdtNa__replaiLayer > span {
  letter-spacing: .1em;
  color: #d5c5ed;
  margin-bottom: 22px;
  font-size: 13px;
}

.Reconstruction-module__xjdtNa__replaiLayer img {
  object-fit: contain;
  width: 100%;
  height: auto;
  max-height: 70%;
  box-shadow: 0 12px 35px #0005;
}

.Reconstruction-module__xjdtNa__replaiLayer p {
  color: #bfb1cf;
  margin-top: 20px;
  font: 12px monospace;
}

.Reconstruction-module__xjdtNa__yvexLayer {
  background: radial-gradient(at 70% 20%, #3b2c4d, #17121f 70%);
  flex-direction: column;
  padding: 9%;
  display: flex;
}

.Reconstruction-module__xjdtNa__yvexLayer > span {
  letter-spacing: -.06em;
  font-size: clamp(35px, 5vw, 80px);
  line-height: 1;
}

.Reconstruction-module__xjdtNa__numericField {
  flex: 1;
  grid-template-columns: repeat(8, 1fr);
  gap: 6px;
  width: 70%;
  max-height: 220px;
  margin: 20px auto;
  display: grid;
  transform: perspective(700px) rotateX(25deg) rotateZ(-8deg);
}

.Reconstruction-module__xjdtNa__numericField i {
  background: linear-gradient(135deg, #d0b9ed, #b299c74d);
  border: 1px solid #e0cbf455;
  border-radius: 3px;
}

.Reconstruction-module__xjdtNa__numericalProof {
  color: #d3c1e2;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  font-size: 11px;
  display: flex;
}

.Reconstruction-module__xjdtNa__numericalProof b {
  border-block: 1px solid #bda3d855;
  padding: 10px 0;
  font-weight: 400;
}

.Reconstruction-module__xjdtNa__numericalProof i {
  color: #ad97c0;
  font-style: normal;
}

.Reconstruction-module__xjdtNa__yvexLayer p {
  color: #b7a6ca;
  margin: 18px 0 0;
  font-size: 10px;
}

.Reconstruction-module__xjdtNa__projectCaption {
  color: #a59ab3;
  min-height: 36px;
  margin-top: 15px;
  font-size: 11px;
  line-height: 1.6;
}

.Reconstruction-module__xjdtNa__projectNarrative article {
  border-top: 1px solid #ffffff1a;
  flex-direction: column;
  justify-content: center;
  min-height: 64vh;
  padding: 45px 0;
  scroll-margin-top: 140px;
  display: flex;
}

.Reconstruction-module__xjdtNa__projectNarrative article > span {
  color: #b8a5d0;
  font-size: 12px;
}

.Reconstruction-module__xjdtNa__projectNarrative h3 {
  letter-spacing: -.05em;
  margin: 20px 0 25px;
  font-size: clamp(34px, 4vw, 58px);
  font-weight: 450;
  line-height: 1.1;
}

.Reconstruction-module__xjdtNa__projectNarrative h4 {
  letter-spacing: -.025em;
  margin: 0 0 18px;
  font-size: 24px;
  font-weight: 450;
  line-height: 1.25;
}

.Reconstruction-module__xjdtNa__projectNarrative p {
  color: #b8afc6;
  font-size: 16px;
  line-height: 1.65;
}

.Reconstruction-module__xjdtNa__projectNarrative .Reconstruction-module__xjdtNa__projectProof {
  color: #a99cb8;
  border-top: 1px solid #ffffff17;
  padding-top: 18px;
  font-size: 13px;
}

.Reconstruction-module__xjdtNa__projectNarrative a {
  color: #dfc9fc;
  text-underline-offset: 6px;
  align-self: start;
  margin-top: 18px;
  font-size: 14px;
}

.Reconstruction-module__xjdtNa__methodSummary {
  border-top: 1px solid #ffffff20;
  grid-template-columns: 1fr 1.2fr;
  align-items: center;
  gap: 9vw;
  display: grid;
}

.Reconstruction-module__xjdtNa__methodSummary h2 {
  letter-spacing: -.05em;
  margin: 0 0 28px;
  font-size: clamp(35px, 4vw, 58px);
  font-weight: 450;
  line-height: 1.1;
}

.Reconstruction-module__xjdtNa__methodSummary h2 em {
  color: #ac9cbd;
  font-style: normal;
}

.Reconstruction-module__xjdtNa__methodSummary p {
  color: #b8afc6;
  font-size: 17px;
  line-height: 1.7;
}

.Reconstruction-module__xjdtNa__methodSummary a {
  color: #ddc7f5;
  text-underline-offset: 6px;
  margin-top: 16px;
  font-size: 14px;
  display: inline-block;
}

.Reconstruction-module__xjdtNa__methodMark {
  border-left: 1px solid #b29dc340;
  grid-template-columns: 1fr;
  width: 100%;
  max-width: 400px;
  margin: auto;
  padding-left: 30px;
  display: grid;
}

.Reconstruction-module__xjdtNa__methodMark span, .Reconstruction-module__xjdtNa__methodMark strong {
  letter-spacing: -.03em;
  color: #c1aecf;
  padding: 15px 0;
  font-size: 25px;
  font-weight: 400;
}

.Reconstruction-module__xjdtNa__methodMark strong {
  color: #f0dfff;
}

.Reconstruction-module__xjdtNa__methodMark i {
  border-left: 1px solid #a68aba;
  height: 25px;
  margin-left: 7px;
}

.Reconstruction-module__xjdtNa__methodMark > div {
  color: #a594b5;
  border-top: 1px solid #a38eaf44;
  margin-top: 20px;
  padding-top: 15px;
  font-size: 12px;
}

@keyframes Reconstruction-module__xjdtNa__trace {
  to {
    stroke-dashoffset: -840px;
  }
}

@media (min-width: 1800px) {
  .Reconstruction-module__xjdtNa__heroComposition {
    min-height: 780px;
  }

  .Reconstruction-module__xjdtNa__graph {
    height: 720px;
  }

  .Reconstruction-module__xjdtNa__cluster {
    width: 210px;
  }

  .Reconstruction-module__xjdtNa__cluster > button {
    font-size: 15px;
  }

  .Reconstruction-module__xjdtNa__satelliteLabels span {
    font-size: 12px;
  }
}

@media (max-width: 1100px) {
  .Reconstruction-module__xjdtNa__heroComposition {
    min-height: 640px;
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 {
    font-size: 7vw;
  }

  .Reconstruction-module__xjdtNa__heroVisual {
    margin-left: -15px;
  }

  .Reconstruction-module__xjdtNa__graphLayout {
    grid-template-columns: 1fr;
  }

  .Reconstruction-module__xjdtNa__graph {
    width: 100%;
    max-width: 850px;
    height: 640px;
    margin: auto;
  }

  .Reconstruction-module__xjdtNa__graphDetail {
    width: 100%;
    max-width: 850px;
    min-height: 560px;
    margin: auto;
  }

  .Reconstruction-module__xjdtNa__nodeDetail {
    min-height: 100px;
  }
}

@media (max-width: 767px) {
  .Reconstruction-module__xjdtNa__hero {
    padding-top: 22px;
  }

  .Reconstruction-module__xjdtNa__heroTop {
    font-size: 12px;
  }

  .Reconstruction-module__xjdtNa__heroTop p span {
    margin: 4px 0;
    display: block;
  }

  .Reconstruction-module__xjdtNa__motionToggle {
    align-self: start;
    padding: 5px 9px;
    font-size: 10px;
  }

  .Reconstruction-module__xjdtNa__heroComposition {
    flex-direction: column;
    height: auto;
    min-height: 0;
    display: flex;
  }

  .Reconstruction-module__xjdtNa__heroCopy {
    width: 100%;
    padding: 45px 0 20px;
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 {
    margin-bottom: 24px;
    font-size: clamp(49px, 11vw, 78px);
    line-height: 1.01;
  }

  .Reconstruction-module__xjdtNa__heroCopy > p {
    max-width: 500px;
    font-size: 16px;
    line-height: 1.65;
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 br:first-of-type {
    display: none;
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 em {
    display: block;
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 em br {
    display: none;
  }

  .Reconstruction-module__xjdtNa__actions {
    gap: 10px 18px;
    margin-top: 24px;
    font-size: 13px;
  }

  .Reconstruction-module__xjdtNa__heroVisual {
    width: 104%;
    margin: 15px -2% 24px;
    transform: none !important;
  }

  .Reconstruction-module__xjdtNa__heroVisual figcaption {
    font-size: 10px;
  }

  .Reconstruction-module__xjdtNa__assembly {
    transform: rotateX(15deg) rotateY(-8deg);
  }

  .Reconstruction-module__xjdtNa__interfaceBody {
    gap: 10px;
    padding: 10px;
  }

  .Reconstruction-module__xjdtNa__plateBar {
    height: 24px;
    padding: 7px;
  }

  .Reconstruction-module__xjdtNa__plateBar span {
    font-size: 8px;
  }

  .Reconstruction-module__xjdtNa__sidebar b {
    width: 20px;
    height: 20px;
  }

  .Reconstruction-module__xjdtNa__sidebar {
    gap: 7px;
  }

  .Reconstruction-module__xjdtNa__wireframe span {
    margin-bottom: 10px;
    font-size: 10px;
  }

  .Reconstruction-module__xjdtNa__wireframe > div {
    margin: 10px 0;
  }

  .Reconstruction-module__xjdtNa__wireframe i {
    height: 28px;
  }

  .Reconstruction-module__xjdtNa__wireframe em {
    font-size: 7px;
  }

  .Reconstruction-module__xjdtNa__contractPlate {
    padding: 11px;
  }

  .Reconstruction-module__xjdtNa__contractPlate > span, .Reconstruction-module__xjdtNa__computePlate > span, .Reconstruction-module__xjdtNa__outputPlate > span {
    font-size: 9px;
  }

  .Reconstruction-module__xjdtNa__contractPlate code {
    margin: 10px 0;
    font-size: 10px;
  }

  .Reconstruction-module__xjdtNa__contractPlate > div {
    margin: 7px 0;
    font-size: 8px;
  }

  .Reconstruction-module__xjdtNa__contractPlate small {
    margin-top: 10px;
    font-size: 7px;
  }

  .Reconstruction-module__xjdtNa__computePlate {
    padding: 12px;
  }

  .Reconstruction-module__xjdtNa__processor {
    width: 50px;
    height: 50px;
    margin: 15px auto;
  }

  .Reconstruction-module__xjdtNa__processor strong {
    font-size: 28px;
  }

  .Reconstruction-module__xjdtNa__processor i {
    display: none;
  }

  .Reconstruction-module__xjdtNa__computePlate p {
    font-size: 7px;
  }

  .Reconstruction-module__xjdtNa__outputPlate {
    padding: 12px;
  }

  .Reconstruction-module__xjdtNa__outputPlate b {
    margin: 12px 0;
    font-size: 14px;
  }

  .Reconstruction-module__xjdtNa__assemblyCoordinate {
    font-size: 6px;
  }

  .Reconstruction-module__xjdtNa__section, .Reconstruction-module__xjdtNa__aiSection, .Reconstruction-module__xjdtNa__portfolio {
    padding: 70px 24px;
  }

  .Reconstruction-module__xjdtNa__sectionIntro {
    margin-bottom: 35px;
    display: block;
  }

  .Reconstruction-module__xjdtNa__sectionIntro h2 {
    font-size: 40px;
  }

  .Reconstruction-module__xjdtNa__sectionIntro p {
    margin-top: 24px;
    font-size: 16px;
  }

  .Reconstruction-module__xjdtNa__graph {
    height: auto;
    padding: 0 0 40px;
  }

  .Reconstruction-module__xjdtNa__graph > svg, .Reconstruction-module__xjdtNa__satelliteLabels {
    display: none;
  }

  .Reconstruction-module__xjdtNa__aiCore {
    width: 90px;
    height: 90px;
    margin: 0 auto 24px;
    position: relative;
    top: auto;
    left: auto;
    transform: none;
  }

  .Reconstruction-module__xjdtNa__clusterControls {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    display: grid;
  }

  .Reconstruction-module__xjdtNa__cluster {
    position: static;
    transform: none;
    width: auto !important;
  }

  .Reconstruction-module__xjdtNa__cluster > button {
    height: 64px;
    padding: 10px;
    font-size: 12px;
  }

  .Reconstruction-module__xjdtNa__graphCaption {
    font-size: 11px;
    bottom: 0;
  }

  .Reconstruction-module__xjdtNa__graphLayout {
    gap: 18px;
  }

  .Reconstruction-module__xjdtNa__graphDetail {
    border-radius: 12px;
    padding: 24px;
  }

  .Reconstruction-module__xjdtNa__graphDetail h3 {
    font-size: 27px;
  }

  .Reconstruction-module__xjdtNa__nodeDetail {
    min-height: 160px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Reconstruction-module__xjdtNa__tracePulse {
    animation: none;
  }

  .Reconstruction-module__xjdtNa__heroVisual {
    transform: none !important;
  }

  .Reconstruction-module__xjdtNa__cluster > button, .Reconstruction-module__xjdtNa__actions a:first-child {
    transition: none;
  }

  .Reconstruction-module__xjdtNa__cluster > button:hover, .Reconstruction-module__xjdtNa__actions a:first-child:hover {
    transform: none;
  }
}

@media (max-width: 1100px) {
  .Reconstruction-module__xjdtNa__audienceGrid {
    gap: 12px;
  }

  .Reconstruction-module__xjdtNa__audienceStory {
    padding: 20px;
  }

  .Reconstruction-module__xjdtNa__audienceStory h3 {
    font-size: 27px;
  }

  .Reconstruction-module__xjdtNa__audienceVisual {
    height: 140px;
  }

  .Reconstruction-module__xjdtNa__nativeSignature {
    gap: 3px;
  }

  .Reconstruction-module__xjdtNa__nativeSignature span {
    font-size: 8px;
  }

  .Reconstruction-module__xjdtNa__technicalList article {
    grid-template-columns: .6fr 1.5fr;
  }

  .Reconstruction-module__xjdtNa__technicalList article > code, .Reconstruction-module__xjdtNa__technicalList article > .Reconstruction-module__xjdtNa__buildMarks {
    display: none;
  }
}

@media (max-width: 999px) {
  .Reconstruction-module__xjdtNa__hero {
    padding-bottom: 35px;
  }

  .Reconstruction-module__xjdtNa__projectSequence {
    display: block;
  }

  .Reconstruction-module__xjdtNa__projectStage {
    max-width: 640px;
    margin: auto;
    position: relative;
    top: auto;
  }

  .Reconstruction-module__xjdtNa__projectNarrative article {
    border-top: 0;
    min-height: 0;
    padding: 25px 0;
    display: none;
  }

  .Reconstruction-module__xjdtNa__projectNarrative article[data-active="true"] {
    display: flex;
  }

  .Reconstruction-module__xjdtNa__projectNarrative {
    max-width: 640px;
    margin: auto;
  }

  .Reconstruction-module__xjdtNa__projectMedia {
    aspect-ratio: 1.2;
  }

  .Reconstruction-module__xjdtNa__relayLayer > span {
    font-size: 48px;
  }

  .Reconstruction-module__xjdtNa__yvexLayer > span {
    font-size: 65px;
  }

  .Reconstruction-module__xjdtNa__projectCaption {
    min-height: 40px;
  }

  .Reconstruction-module__xjdtNa__projectNarrative h3 {
    margin-top: 12px;
    font-size: 38px;
  }

  .Reconstruction-module__xjdtNa__projectNarrative h4 {
    font-size: 23px;
  }

  .Reconstruction-module__xjdtNa__projectNarrative p {
    font-size: 16px;
  }
}

@media (max-width: 767px) {
  .Reconstruction-module__xjdtNa__audienceGrid {
    flex-direction: column;
    gap: 16px;
    display: flex;
  }

  .Reconstruction-module__xjdtNa__audienceStory {
    width: 100%;
    padding: 24px;
  }

  .Reconstruction-module__xjdtNa__audienceStory[data-type="business"], .Reconstruction-module__xjdtNa__audienceStory[data-type="team"] {
    margin-top: 0;
  }

  .Reconstruction-module__xjdtNa__audienceStory h3 {
    margin: 24px 0;
    font-size: 32px;
  }

  .Reconstruction-module__xjdtNa__audienceStory[data-open="false"] .Reconstruction-module__xjdtNa__audienceVisual {
    display: none;
  }

  .Reconstruction-module__xjdtNa__audienceVisual {
    height: 145px;
  }

  .Reconstruction-module__xjdtNa__nativeSignature span {
    font-size: 12px;
  }

  .Reconstruction-module__xjdtNa__softwareOffer, .Reconstruction-module__xjdtNa__integrationOffer {
    grid-template-columns: 1fr;
    gap: 35px;
    margin: 45px 0 75px;
  }

  .Reconstruction-module__xjdtNa__softwareOffer h3, .Reconstruction-module__xjdtNa__integrationOffer h3 {
    font-size: 40px;
  }

  .Reconstruction-module__xjdtNa__softwareOffer p, .Reconstruction-module__xjdtNa__integrationOffer p {
    font-size: 16px;
  }

  .Reconstruction-module__xjdtNa__softwareBlueprint {
    padding: 22px;
    transform: none;
  }

  .Reconstruction-module__xjdtNa__softwareBlueprint > div {
    padding: 20px;
  }

  .Reconstruction-module__xjdtNa__blueprintTop b {
    font-size: 28px;
  }

  .Reconstruction-module__xjdtNa__integrationOffer > div:first-child {
    order: 2;
  }

  .Reconstruction-module__xjdtNa__exchangeVisual {
    padding: 28px;
  }

  .Reconstruction-module__xjdtNa__bridge {
    margin-left: 48%;
  }

  .Reconstruction-module__xjdtNa__resultStates {
    gap: 6px;
  }

  .Reconstruction-module__xjdtNa__resultStates span {
    padding: 8px;
    font-size: 10px;
  }

  .Reconstruction-module__xjdtNa__aiPrelude {
    padding-top: 35px;
    display: block;
  }

  .Reconstruction-module__xjdtNa__aiPrelude h3 {
    margin: 20px 0;
    font-size: 31px;
  }

  .Reconstruction-module__xjdtNa__aiPrelude p {
    font-size: 16px;
  }

  .Reconstruction-module__xjdtNa__aiPrelude > .Reconstruction-module__xjdtNa__inlineLinks {
    margin-top: 25px;
  }

  .Reconstruction-module__xjdtNa__technicalList article {
    padding: 30px 0;
    display: block;
  }

  .Reconstruction-module__xjdtNa__technicalList h3 {
    margin-top: 16px;
    font-size: 27px;
  }

  .Reconstruction-module__xjdtNa__technicalList article > code, .Reconstruction-module__xjdtNa__technicalList article > .Reconstruction-module__xjdtNa__buildMarks {
    display: none;
  }

  .Reconstruction-module__xjdtNa__projectTabs {
    gap: 4px;
  }

  .Reconstruction-module__xjdtNa__projectTabs button {
    padding: 10px 4px;
    font-size: 12px;
  }

  .Reconstruction-module__xjdtNa__relayLayer > span {
    font-size: 30px;
  }

  .Reconstruction-module__xjdtNa__relayLayer img {
    right: 8%;
  }

  .Reconstruction-module__xjdtNa__relayArchitecture {
    gap: 7px;
    font-size: 10px;
  }

  .Reconstruction-module__xjdtNa__relayArchitecture i {
    height: 10px;
  }

  .Reconstruction-module__xjdtNa__projectMedia {
    aspect-ratio: 1;
  }

  .Reconstruction-module__xjdtNa__yvexLayer > span {
    font-size: 45px;
  }

  .Reconstruction-module__xjdtNa__numericField {
    gap: 4px;
    width: 80%;
    max-height: 135px;
  }

  .Reconstruction-module__xjdtNa__numericalProof {
    font-size: 8px;
  }

  .Reconstruction-module__xjdtNa__yvexLayer p {
    font-size: 9px;
  }

  .Reconstruction-module__xjdtNa__projectCaption {
    min-height: 55px;
  }

  .Reconstruction-module__xjdtNa__methodSummary {
    flex-direction: column-reverse;
    gap: 35px;
    display: flex;
  }

  .Reconstruction-module__xjdtNa__methodSummary h2 {
    font-size: 35px;
  }

  .Reconstruction-module__xjdtNa__methodSummary p {
    font-size: 16px;
  }

  .Reconstruction-module__xjdtNa__methodMark {
    max-width: none;
    padding-left: 20px;
  }

  .Reconstruction-module__xjdtNa__methodMark span, .Reconstruction-module__xjdtNa__methodMark strong {
    padding: 7px 0;
    font-size: 22px;
  }

  .Reconstruction-module__xjdtNa__methodMark i {
    height: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Reconstruction-module__xjdtNa__projectLayer {
    transition: none;
    transform: none;
  }

  .Reconstruction-module__xjdtNa__softwareBlueprint {
    transform: none;
  }
}

.Reconstruction-module__xjdtNa__heroVisual {
  perspective: 1100px;
  width: 100%;
  margin: 0;
}

.Reconstruction-module__xjdtNa__heroVisual figcaption {
  margin-top: 30px;
  font-size: 11px;
}

.Reconstruction-module__xjdtNa__heroAssemblyMotion {
  transform-origin: 50%;
}

.Reconstruction-module__xjdtNa__interfacePlate, .Reconstruction-module__xjdtNa__contractPlate, .Reconstruction-module__xjdtNa__computePlate, .Reconstruction-module__xjdtNa__outputPlate {
  background: linear-gradient(125deg, #302b40, #14121c 75%);
}

.Reconstruction-module__xjdtNa__hero [data-running="true"], .Reconstruction-module__xjdtNa__hero[data-running="true"] .Reconstruction-module__xjdtNa__computePlate {
  animation-play-state: running;
}

.Reconstruction-module__xjdtNa__hero .Reconstruction-module__xjdtNa__computePlate {
  animation: 8s ease-in-out infinite paused Reconstruction-module__xjdtNa__assembly-breathe;
}

:is(html:not([data-enhanced]) .Reconstruction-module__xjdtNa__motionToggle, html:not([data-enhanced]) .Reconstruction-module__xjdtNa__graphPause) {
  visibility: hidden;
}

html:not([data-enhanced]) .Reconstruction-module__xjdtNa__audienceDetail {
  display: block;
}

html:not([data-enhanced]) .Reconstruction-module__xjdtNa__projectNarrative article {
  display: flex;
}

.Reconstruction-module__xjdtNa__graph > svg path[data-active="true"] {
  stroke-dasharray: 2 1;
  animation: 18s linear infinite paused Reconstruction-module__xjdtNa__graph-trace;
}

.Reconstruction-module__xjdtNa__aiSection[data-running="true"] .Reconstruction-module__xjdtNa__graph > svg path[data-active="true"] {
  animation-play-state: running;
}

.Reconstruction-module__xjdtNa__graphPause {
  color: #b1a3c1;
  cursor: pointer;
  background: none;
  border: 0;
  border-bottom: 1px solid #766783;
  padding: 5px 0;
  font-size: 11px;
  position: absolute;
  bottom: 3px;
  right: 0;
}

.Reconstruction-module__xjdtNa__hero:has( + section) {
  border-bottom: 1px solid #ffffff1c;
}

@keyframes Reconstruction-module__xjdtNa__assembly-breathe {
  0%, 100% {
    transform: translateZ(65px) translateY(0);
  }

  50% {
    transform: translateZ(65px) translateY(-8px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .Reconstruction-module__xjdtNa__hero .Reconstruction-module__xjdtNa__computePlate {
    animation: none;
  }
}

@media (max-width: 767px) {
  .Reconstruction-module__xjdtNa__graphDetail {
    min-height: 760px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Reconstruction-module__xjdtNa__audienceDetail:not([hidden]) {
    animation: none;
  }
}

@keyframes Reconstruction-module__xjdtNa__graph-trace {
  to {
    stroke-dashoffset: -36px;
  }
}

@media (max-width: 999px) {
  .Reconstruction-module__xjdtNa__heroComposition {
    flex-direction: column;
    align-items: start;
    height: auto;
    min-height: 0;
    max-height: none;
    display: flex;
  }

  .Reconstruction-module__xjdtNa__heroCopy {
    max-width: 700px;
    padding: 45px 0 20px;
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 {
    font-size: clamp(49px, 8.7vw, 78px);
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 > br:first-child, .Reconstruction-module__xjdtNa__heroCopy h1 em br {
    display: none;
  }

  .Reconstruction-module__xjdtNa__heroVisual {
    flex-shrink: 0;
    align-self: center;
    max-width: 700px;
    margin: 10px 0 35px;
  }

  .Reconstruction-module__xjdtNa__heroAssemblyMotion {
    transform: none !important;
  }

  .Reconstruction-module__xjdtNa__assembly {
    transform: rotateX(15deg) rotateY(-8deg);
  }

  .Reconstruction-module__xjdtNa__heroVisual figcaption {
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .Reconstruction-module__xjdtNa__heroCopy h1 {
    letter-spacing: -.055em;
    font-size: clamp(45px, 11.5vw, 68px);
  }

  .Reconstruction-module__xjdtNa__heroCopy h1 em {
    display: block;
  }

  .Reconstruction-module__xjdtNa__heroVisual {
    width: 100%;
    margin: 10px 0 30px;
  }

  .Reconstruction-module__xjdtNa__heroVisual figcaption {
    font-size: 9px;
  }

  .Reconstruction-module__xjdtNa__graphPause, .Reconstruction-module__xjdtNa__graphCaption {
    font-size: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Reconstruction-module__xjdtNa__heroAssemblyMotion {
    transform: none !important;
  }

  .Reconstruction-module__xjdtNa__hero[data-running="true"] .Reconstruction-module__xjdtNa__computePlate, .Reconstruction-module__xjdtNa__graph > svg path[data-active="true"] {
    animation: none;
  }

  .Reconstruction-module__xjdtNa__motionToggle, .Reconstruction-module__xjdtNa__graphPause {
    display: none;
  }
}

/* [project]/src/components/services/HomeServices.module.css [app-client] (css) */
.HomeServices-module__ojUReG__section {
  max-width: 1440px;
  padding: 100px var(--gutter);
  margin: auto;
}

.HomeServices-module__ojUReG__section header {
  grid-template-columns: 1.15fr 1fr;
  align-items: end;
  gap: 70px;
  margin-bottom: 50px;
  display: grid;
}

.HomeServices-module__ojUReG__section h2 {
  letter-spacing: -.045em;
  font-size: clamp(35px, 4.3vw, 62px);
  line-height: 1.08;
}

.HomeServices-module__ojUReG__section header p {
  color: var(--muted);
  font-size: 19px;
  line-height: 1.65;
}

.HomeServices-module__ojUReG__grid {
  grid-template-columns: 1fr 1fr;
  gap: 0 64px;
  display: grid;
}

.HomeServices-module__ojUReG__grid article {
  border-top: 1px solid var(--line);
  padding: 34px 0;
}

.HomeServices-module__ojUReG__grid h3 {
  letter-spacing: -.03em;
  margin-bottom: 20px;
  font-size: 28px;
}

.HomeServices-module__ojUReG__grid p {
  color: var(--muted);
  font-size: 17px;
  line-height: 1.7;
}

.HomeServices-module__ojUReG__grid .HomeServices-module__ojUReG__example {
  color: #cdbcec;
  margin-top: 18px;
  font-size: 15px;
}

.HomeServices-module__ojUReG__links {
  flex-wrap: wrap;
  gap: 12px 22px;
  margin-top: 24px;
  font-size: 14px;
  display: flex;
}

.HomeServices-module__ojUReG__links a {
  text-underline-offset: 5px;
  text-decoration: underline;
}

.HomeServices-module__ojUReG__all {
  color: #19141f;
  background: #e3daf1;
  border-radius: 7px;
  margin-top: 18px;
  padding: 14px 20px;
  display: inline-block;
}

@media (max-width: 750px) {
  .HomeServices-module__ojUReG__section {
    padding-top: 65px;
    padding-bottom: 65px;
  }

  .HomeServices-module__ojUReG__section header, .HomeServices-module__ojUReG__grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .HomeServices-module__ojUReG__section header p {
    font-size: 17px;
  }

  .HomeServices-module__ojUReG__grid {
    gap: 0;
  }

  .HomeServices-module__ojUReG__grid h3 {
    font-size: 25px;
  }
}

/* [project]/src/components/projects/Portfolio.module.css [app-client] (css) */
.Portfolio-module__2Z2feW__page {
  max-width: 1440px;
  padding: 60px var(--gutter) 110px;
  margin: auto;
}

.Portfolio-module__2Z2feW__intro {
  grid-template-columns: 1fr 1fr;
  align-items: end;
  gap: 70px;
  margin-bottom: 64px;
  display: grid;
}

.Portfolio-module__2Z2feW__intro h1 {
  letter-spacing: -.05em;
  font-size: clamp(44px, 6vw, 82px);
  line-height: 1.02;
}

.Portfolio-module__2Z2feW__intro p {
  color: var(--muted);
  font-size: 20px;
  line-height: 1.65;
}

.Portfolio-module__2Z2feW__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 60px 32px;
  display: grid;
}

.Portfolio-module__2Z2feW__project {
  min-width: 0;
}

.Portfolio-module__2Z2feW__media {
  aspect-ratio: 1.5;
  border: 1px solid var(--line);
  background: #10141c;
  border-radius: 14px;
  display: block;
  overflow: hidden;
}

.Portfolio-module__2Z2feW__media > div {
  height: 100%;
  min-height: 0;
  transition: transform .55s var(--ease);
}

:is(.Portfolio-module__2Z2feW__media .cover-caption, .Portfolio-module__2Z2feW__media .cover-name) {
  display: none;
}

.Portfolio-module__2Z2feW__media > div, .Portfolio-module__2Z2feW__heroMedia > div {
  width: 100%;
  container-type: size;
}

:is(.Portfolio-module__2Z2feW__media .relay-device, .Portfolio-module__2Z2feW__heroMedia .relay-device) {
  width: 34cqh;
  top: 10%;
  right: 26%;
  transform: rotate(6deg);
}

:is(.Portfolio-module__2Z2feW__media .relay-device--back, .Portfolio-module__2Z2feW__heroMedia .relay-device--back) {
  width: 31cqh;
  top: 16%;
  right: 49%;
  transform: rotate(-7deg);
}

:is(.Portfolio-module__2Z2feW__heroMedia .project-cover--codex-relay .cover-name, .Portfolio-module__2Z2feW__heroMedia .project-cover--yvex .cover-name) {
  display: none;
}

:is(.Portfolio-module__2Z2feW__media .compute-stack, .Portfolio-module__2Z2feW__heroMedia .compute-stack) {
  gap: 2cqh;
  width: 55%;
  top: 50%;
  left: 22.5%;
  transform: translateY(-50%) rotate(-9deg);
}

:is(.Portfolio-module__2Z2feW__media .compute-stack > div, .Portfolio-module__2Z2feW__heroMedia .compute-stack > div) {
  padding: 3cqh 4cqh;
  font-size: 3cqh;
}

.Portfolio-module__2Z2feW__media .replai-terminal-cover {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  inset: 0 !important;
  transform: none !important;
}

:is(.Portfolio-module__2Z2feW__heroMedia .project-cover--replai .cover-name, .Portfolio-module__2Z2feW__heroMedia .project-cover--replai .cover-caption) {
  display: none;
}

.Portfolio-module__2Z2feW__heroMedia .replai-terminal-cover {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  inset: 0 !important;
  transform: none !important;
}

.Portfolio-module__2Z2feW__media:hover > div, .Portfolio-module__2Z2feW__media:focus-visible > div {
  transform: scale(1.025);
}

.Portfolio-module__2Z2feW__meta {
  color: var(--muted);
  justify-content: space-between;
  gap: 18px;
  margin: 22px 0 15px;
  font-size: 13px;
  display: flex;
}

.Portfolio-module__2Z2feW__project h2 {
  letter-spacing: -.035em;
  margin: 0 0 15px;
  font-size: 32px;
}

.Portfolio-module__2Z2feW__project p {
  color: var(--muted);
  margin: 0 0 18px;
  font-size: 17px;
  line-height: 1.65;
}

.Portfolio-module__2Z2feW__project .Portfolio-module__2Z2feW__stack {
  color: #cdbcec;
  font-size: 14px;
}

.Portfolio-module__2Z2feW__read {
  color: var(--accent);
  text-underline-offset: 5px;
  font-size: 15px;
  text-decoration: underline;
}

.Portfolio-module__2Z2feW__breadcrumb {
  color: var(--muted);
  gap: 12px;
  margin-bottom: 35px;
  font-size: 14px;
  display: flex;
}

.Portfolio-module__2Z2feW__hero {
  grid-template-columns: 1fr 1fr;
  align-items: end;
  gap: 64px;
  margin-bottom: 40px;
  display: grid;
}

.Portfolio-module__2Z2feW__hero h1 {
  letter-spacing: -.05em;
  margin: 15px 0 25px;
  font-size: clamp(44px, 6vw, 84px);
  line-height: 1.04;
}

.Portfolio-module__2Z2feW__hero p {
  color: var(--muted);
  font-size: 20px;
  line-height: 1.6;
}

.Portfolio-module__2Z2feW__hero a {
  border: 1px solid var(--line);
  border-radius: 7px;
  margin-top: 22px;
  padding: 12px 20px;
  display: inline-block;
}

.Portfolio-module__2Z2feW__heroMedia {
  margin: 40px 0 70px;
}

.Portfolio-module__2Z2feW__heroMedia > div {
  border: 1px solid var(--line);
  border-radius: 16px;
  height: clamp(300px, 51vw, 720px);
  min-height: 0;
  overflow: hidden;
}

.Portfolio-module__2Z2feW__heroMedia figcaption {
  color: var(--subtle);
  max-width: 900px;
  margin-top: 16px;
  font-size: 13px;
  line-height: 1.6;
}

.Portfolio-module__2Z2feW__sections {
  grid-template-columns: 210px minmax(0, 1fr);
  gap: 60px;
  display: grid;
}

.Portfolio-module__2Z2feW__localNav {
  color: var(--muted);
  align-self: start;
  gap: 16px;
  font-size: 14px;
  display: grid;
  position: sticky;
  top: 120px;
}

.Portfolio-module__2Z2feW__chapter {
  border-top: 1px solid var(--line);
  padding: 40px 0;
  scroll-margin-top: 120px;
}

.Portfolio-module__2Z2feW__chapter h2 {
  letter-spacing: -.025em;
  margin-bottom: 25px;
  font-size: 32px;
}

.Portfolio-module__2Z2feW__chapter h3 {
  margin: 25px 0 13px;
  font-size: 22px;
}

.Portfolio-module__2Z2feW__chapter p, .Portfolio-module__2Z2feW__chapter li {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.75;
}

.Portfolio-module__2Z2feW__chapter ul {
  gap: 14px;
  padding-left: 20px;
  display: grid;
}

.Portfolio-module__2Z2feW__chapter a {
  color: var(--accent);
}

.Portfolio-module__2Z2feW__references {
  flex-wrap: wrap;
  gap: 18px;
  display: flex;
}

.Portfolio-module__2Z2feW__next {
  border-top: 1px solid var(--line);
  justify-content: space-between;
  gap: 20px;
  margin-top: 60px;
  padding-top: 32px;
  display: flex;
}

@media (max-width: 900px) {
  .Portfolio-module__2Z2feW__intro, .Portfolio-module__2Z2feW__hero {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .Portfolio-module__2Z2feW__sections {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .Portfolio-module__2Z2feW__localNav {
    flex-wrap: wrap;
    gap: 14px 24px;
    display: flex;
    position: static;
  }

  .Portfolio-module__2Z2feW__heroMedia {
    margin-bottom: 40px;
  }
}

@media (max-width: 600px) {
  .Portfolio-module__2Z2feW__page {
    padding-top: 38px;
  }

  .Portfolio-module__2Z2feW__grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .Portfolio-module__2Z2feW__intro {
    margin-bottom: 38px;
  }

  .Portfolio-module__2Z2feW__intro p, .Portfolio-module__2Z2feW__hero p {
    font-size: 18px;
  }

  .Portfolio-module__2Z2feW__meta {
    font-size: 12px;
  }

  .Portfolio-module__2Z2feW__project h2 {
    font-size: 28px;
  }

  .Portfolio-module__2Z2feW__chapter p, .Portfolio-module__2Z2feW__chapter li {
    font-size: 17px;
  }

  .Portfolio-module__2Z2feW__chapter {
    padding: 28px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Portfolio-module__2Z2feW__media > div {
    transition: none;
  }
}

/*# sourceMappingURL=src_components_0jl708nsy99cx._.css.map*/