.art-canvas {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 6;
  pointer-events: none;
  display: block;
}
.scene-viewport {
  position: relative;
  min-width: 0;
  overflow: hidden;
  isolation: auto;
}
.scene-poster {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity .45s;
}
.scene-viewport[data-rendered=true] > .scene-poster {
  opacity: 0;
  pointer-events: none;
}
.scene-note,
.scene-caption {
  position: relative;
  z-index: 7;
}
.hero {
  padding-top: 46px;
  gap: 30px 35px;
}
.hero-art {
  margin: 0;
  align-self: center;
  overflow: visible;
}
.hero-scene {
  height: 610px;
  margin-inline: -35px;
  overflow: hidden;
}
.hero-scene > .scene-poster {
  object-fit: contain;
  mix-blend-mode: lighten;
  animation: none;
  transform: none;
}
.hero-art figcaption {
  border: 0;
  justify-content: center;
  font-size: 10px;
  color: var(--muted);
  padding-top: 8px;
  letter-spacing: .04em;
  position: relative;
  z-index: 7;
}
.hero-foot {
  margin-top: 5px;
  padding-block: 22px;
}
.hero-foot a {
  border-bottom: 1px solid var(--line);
  padding-bottom: 5px;
}
.button {
  border-radius: 4px;
  font-size: 12px;
  letter-spacing: .01em;
  gap: 0;
  padding: 15px 26px;
  min-height: 51px;
}
.button-primary {
  --button-bg:var(--accent);
  --button-fg:var(--canvas);
  --button-border:var(--accent);
}
.button-quiet {
  --button-bg:transparent;
  --button-fg:var(--text);
  --button-border:#53607e;
}
.button-quiet:hover {
  --button-bg:var(--text);
  --button-fg:var(--canvas);
  --button-border:var(--text);
}
.nav-cta {
  min-height: 43px;
  padding: 11px 23px;
  font-size: 11px;
  margin-left: 18px;
}
.contact-action {
  border: 1px solid #8d4b45;
  border-radius: 4px;
  min-height: 51px;
  padding: 17px 25px;
  letter-spacing: 0;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.4;
  transition: background .25s, color .25s;
  white-space: nowrap;
}
.big-contact:hover .contact-action {
  background: var(--canvas);
  color: var(--coral);
}
.connection-story {
  border-top: 1px solid var(--line);
  padding-top: 90px;
}
.story-layout {
  gap: 80px;
  margin-top: 35px;
}
.connection-visual {
  position: sticky;
  top: 130px;
  align-self: start;
  height: 520px;
  border: 0;
  background: transparent;
  overflow: visible;
  perspective: none;
}
.core-scene {
  height: 470px;
  margin-inline: -30px;
}
.scene-note {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid var(--line);
  padding-top: 15px;
  font-size: 9px;
  color: var(--muted);
}
.scene-state {
  color: var(--accent);
  text-align: right;
}
.sculptural-fallback {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 15px;
  background:
    radial-gradient(
      ellipse at 50% 45%,
      #1e2a52,
      transparent 65%);
  color: var(--muted);
  font-size: 12px;
  letter-spacing: .06em;
}
.story-step {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-top: 1px solid var(--line);
  min-height: 57vh;
  padding-block: 65px;
}
.story-step:last-child {
  padding-bottom: 75px;
}
.direction-link {
  background: transparent;
  border: 0;
  border-block: 1px solid var(--line);
  padding: 40px 0;
  gap: 80px;
}
.concept-preview-art {
  height: 330px;
  position: relative;
  background:
    radial-gradient(
      ellipse at 50% 50%,
      #27315b80,
      transparent 75%);
  perspective: 700px;
  overflow: hidden;
}
.preview-screen {
  position: absolute;
  left: 23%;
  top: 12%;
  width: 53%;
  height: 78%;
  background: #dce2ff;
  padding: 30px 24px;
  border-radius: 14px;
  transform: rotateY(-18deg) rotateZ(-6deg);
  color: #17223d;
  box-shadow: 15px 20px 50px #0005;
  transition: transform .8s var(--ease);
  z-index: 2;
}
.preview-screen > span {
  font-size: 29px;
  letter-spacing: -.06em;
  font-weight: 600;
  line-height: 1.05;
  display: block;
  max-width: 150px;
}
.preview-screen i {
  display: block;
  margin-top: 22px;
  width: 65%;
  height: 4px;
  background: #7886b3;
}
.preview-screen i + i {
  width: 42%;
  margin-top: 10px;
}
.preview-screen b {
  display: block;
  font-size: 9px;
  padding: 12px;
  margin-top: 28px;
  background: #17223d;
  color: #eef0ff;
  border-radius: 4px;
  text-align: center;
}
.preview-structure {
  position: absolute;
  left: 33%;
  top: 10%;
  width: 48%;
  height: 80%;
  border: 1px solid #8394cc88;
  border-radius: 14px;
  transform: rotateY(-18deg) rotateZ(6deg);
}
.preview-structure i {
  display: block;
  width: 40%;
  height: 22%;
  border: 1px solid #ff927466;
  margin: 20px auto;
}
.direction-link:hover .preview-screen {
  transform: translateX(-15px) rotateY(-24deg) rotateZ(-9deg);
}
.services-workspace {
  display: grid;
  grid-template-columns: .85fr 1.2fr;
  gap: 90px;
  align-items: start;
}
.services-aside {
  position: sticky;
  top: 120px;
  padding-bottom: 25px;
}
.network-scene {
  height: 390px;
  margin-inline: -30px;
}
.services-aside > .eyebrow {
  font-size: 9px;
  margin: 18px 0 22px;
  color: var(--accent);
  max-width: 300px;
}
.service-panel {
  grid-template-columns: 25px 1fr;
  gap: 22px;
  padding-block: 40px 65px;
}
.service-panel h2 {
  font-size: clamp(32px, 3.4vw, 49px);
}
.service-panel .large-copy {
  font-size: 15px;
}
.panel-index > span {
  display: none;
}
.service-jump {
  gap: 0;
  border-block: 1px solid var(--line);
  padding-block: 12px;
  margin-bottom: 35px;
}
.service-jump a {
  border: 0;
  border-radius: 0;
  padding: 10px 16px 10px 0;
  margin-right: 22px;
  min-height: 44px;
  color: var(--muted);
}
.service-jump a:hover {
  color: var(--coral);
  background: none;
}
.materials-scene {
  height: 540px;
  background:
    radial-gradient(
      ellipse at 50% 80%,
      #1b2743,
      transparent 70%);
}
.studio-workbench figcaption {
  position: relative;
  z-index: 7;
}
.studio-workbench .scene-poster {
  aspect-ratio: auto;
  max-height: none;
  object-fit: cover;
}
.contact-scene {
  height: 225px;
  margin: 25px -20px 0;
}
.contact-fallback {
  background:
    radial-gradient(
      ellipse at 45% 50%,
      #6b77aa40,
      transparent 65%);
}
.contact-meta {
  margin-top: 25px;
}
.experience-lab {
  border: 1px solid var(--line);
  background: #10182f;
}
.experience-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  padding: 26px 32px;
  border-bottom: 1px solid var(--line);
  position: relative;
  z-index: 7;
}
.experiment-label {
  font-size: 11px;
  color: var(--muted);
  margin-top: 8px;
}
.segmented {
  gap: 7px;
}
.segmented button {
  border-radius: 4px;
  padding: 13px 20px;
  min-height: 47px;
}
.experience-stage {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  min-height: 620px;
  gap: 20px;
  padding: 25px 40px 30px 0;
}
.product-scene {
  height: 580px;
}
.product-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(
      ellipse,
      #26305288,
      transparent 70%);
}
.product-fallback > span {
  font-size: 58px;
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.06em;
  color: var(--accent);
  transform: rotate(-9deg);
}
.product-fallback i {
  font-style: normal;
  color: var(--coral);
}
.experience-panels {
  position: relative;
  z-index: 8;
  max-width: 480px;
  justify-self: center;
  width: 100%;
}
.customer-demo {
  border-radius: 15px;
  background: #e8ebff;
  color: #17223d;
  padding: 34px;
  box-shadow: 0 24px 60px #0003;
}
.demo-brand {
  font-size: 25px;
  font-weight: 750;
  line-height: 1;
  letter-spacing: -.06em;
  display: flex;
  align-items: center;
}
.demo-brand > span {
  color: #bd4c3b;
}
.demo-brand small {
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-left: auto;
  font-weight: 650;
  max-width: 90px;
  line-height: 1.6;
  text-align: right;
  color: #465780;
}
.demo-kicker {
  margin-top: 45px;
  font-size: 11px;
  color: #4d5d82;
  letter-spacing: .04em;
}
.customer-demo h2 {
  font-size: 49px;
  line-height: 1.05;
  margin-top: 12px;
  letter-spacing: -.065em;
}
.demo-description {
  font-size: 12px;
  color: #4d5d82;
  margin-top: 18px;
}
.demo-result {
  padding: 13px 15px;
  border: 1px solid #7c8fbe;
  border-radius: 4px;
  margin-top: 18px;
  color: #17223d;
  font-size: 14px;
  font-weight: 700;
}
.demo-slots {
  border: 0;
  padding: 0;
  margin: 28px 0 24px;
  display: flex;
  gap: 9px;
}
.demo-slots legend {
  font-size: 10px;
  margin-bottom: 12px;
}
.demo-slots label {
  margin: 0;
  position: relative;
  flex: 1;
  text-align: center;
}
.demo-slots input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  inset: 50%;
}
.demo-slots label span {
  display: block;
  border: 1px solid #8694bb;
  border-radius: 4px;
  font-size: 12px;
  padding: 12px 8px;
  font-weight: 650;
  cursor: pointer;
  transition: background .2s, border-color .2s;
}
.demo-slots input:checked + span {
  background: #c5ceff;
  border-color: #4a5f9e;
}
.demo-slots input:focus-visible + span {
  outline: 3px solid #a34a3d;
  outline-offset: 3px;
}
.demo-reserve {
  width: 100%;
  background: #17223d;
  color: #eef0ff;
  border-color: #17223d;
}
.demo-reserve:hover {
  --button-bg:#32446b;
  --button-fg:#fff;
  --button-border:#32446b;
  background: #32446b;
  color: #fff;
}
.demo-reserve:disabled {
  cursor: wait;
  opacity: .7;
  transform: none;
}
.demo-feedback {
  font-size: 10px;
  line-height: 1.6;
  color: #465780;
  min-height: 38px;
  margin-top: 16px;
}
.system-demo > .eyebrow {
  color: var(--coral);
}
.system-demo h2 {
  font-size: 42px;
  margin: 20px 0 28px;
}
.demo-system-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.demo-trace {
  list-style: none;
  margin: 0 0 25px;
  padding: 0;
}
.demo-trace li {
  display: flex;
  gap: 17px;
  padding: 19px 0;
  border-top: 1px solid var(--line);
}
.demo-trace li > span {
  font-size: 10px;
  color: var(--muted);
  padding-top: 3px;
}
.demo-trace h3 {
  font-size: 21px;
  letter-spacing: -.035em;
}
.demo-trace p {
  font-size: 12px;
  color: var(--muted);
  margin-top: 9px;
  max-width: 330px;
}
.demo-trace small {
  font-size: 10px;
  color: var(--muted);
  display: block;
  margin-top: 10px;
}
.demo-trace li[data-status=complete] > span,
.demo-trace li[data-status=complete] small {
  color: var(--coral);
}
.experience-caption {
  position: relative;
  z-index: 7;
  border-top: 1px solid var(--line);
  padding: 20px 32px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 25px;
}
.experience-caption [data-view-caption] {
  font-size: 13px;
  color: var(--muted);
  max-width: 690px;
}
.experience-caption button {
  white-space: nowrap;
  font-size: 11px;
  min-height: 44px;
}
.experiment-status {
  font-size: 11px;
  color: var(--accent);
  min-height: 18px;
  margin-top: 8px;
}
.simulation-note {
  font-size: 10px;
  color: var(--muted);
  padding: 0 32px 22px;
  position: relative;
  z-index: 7;
  max-width: 850px;
}
[hidden] {
  display: none !important;
}
@media (min-width: 1600px) {
  .hero-scene {
    height: 670px;
  }
  .hero {
    padding-top: 55px;
  }
}
@media (max-width: 1100px) {
  .hero-scene {
    height: 560px;
    margin-inline: -20px;
  }
  .services-workspace {
    gap: 50px;
    grid-template-columns: .8fr 1.2fr;
  }
  .network-scene {
    height: 330px;
  }
  .experience-stage {
    padding: 25px;
    grid-template-columns: .9fr 1fr;
  }
  .customer-demo {
    padding: 25px;
  }
  .customer-demo h2 {
    font-size: 40px;
  }
  .product-scene {
    height: 540px;
  }
  .experience-toolbar {
    padding: 22px;
    gap: 20px;
  }
  .experience-toolbar > .segmented {
    max-width: 340px;
    justify-content: end;
  }
  .segmented button {
    padding: 12px 15px;
    font-size: 11px;
  }
  .system-demo h2 {
    font-size: 36px;
  }
  .materials-scene {
    height: 470px;
  }
}
@media (max-width: 760px) {
  .hero {
    padding-top: 35px;
  }
  .hero-scene {
    height: 380px;
    margin: 20px -20px 0;
  }
  .hero-art {
    margin: 0;
  }
  .hero-art figcaption {
    font-size: 9px;
    padding: 0 0 12px;
  }
  .hero-foot {
    margin-top: 20px;
  }
  .button {
    min-height: 48px;
    padding: 13px 20px;
    font-size: 11px;
  }
  .hero-actions .button {
    padding: 13px 17px;
    gap: 0;
  }
  .nav-cta {
    min-height: 42px;
    padding: 10px 16px;
    font-size: 10px;
    margin-left: auto;
  }
  .big-contact {
    flex-wrap: wrap;
    gap: 25px;
  }
  .contact-action {
    min-height: 47px;
    padding: 14px 18px;
    font-size: 11px;
    margin: 0 0 0 auto;
  }
  .contact-band-bottom {
    padding-top: 22px;
  }
  .connection-story {
    padding-top: 60px;
  }
  .story-layout {
    margin-top: 25px;
  }
  .connection-visual {
    top: 80px;
    height: 315px;
    z-index: 3;
    background: var(--canvas);
    box-shadow: 0 10px 0 var(--canvas);
  }
  .core-scene {
    height: 280px;
    margin-inline: 0;
  }
  .scene-note {
    padding-top: 10px;
    font-size: 8px;
    gap: 15px;
  }
  .story-step {
    min-height: 61vh;
    padding: 45px 10px;
  }
  .story-step:last-child {
    padding-bottom: 60px;
  }
  .direction-link {
    gap: 28px;
    padding: 25px 0;
  }
  .concept-preview-art {
    height: 280px;
  }
  .preview-screen {
    padding: 25px 20px;
  }
  .preview-screen > span {
    font-size: 27px;
  }
  .preview-screen b {
    font-size: 8px;
    margin-top: 25px;
  }
  .services-workspace {
    display: block;
  }
  .services-aside {
    position: relative;
    top: auto;
    padding-bottom: 40px;
  }
  .network-scene {
    height: 300px;
    margin-inline: 0;
  }
  .services-aside > .eyebrow {
    margin-top: 5px;
    max-width: none;
    font-size: 9px;
  }
  .service-jump {
    margin-bottom: 15px;
    padding-block: 8px;
  }
  .service-jump a {
    font-size: 10px;
    margin-right: 14px;
    padding-right: 8px;
  }
  .service-panel {
    padding-block: 35px 45px;
    gap: 17px;
  }
  .service-panel h2 {
    font-size: 31px;
  }
  .service-panel .large-copy {
    font-size: 14px;
  }
  .service-tags > span {
    font-size: 9px;
  }
  .materials-scene {
    height: 360px;
  }
  .studio-workbench .scene-poster {
    aspect-ratio: auto;
  }
  .contact-scene {
    height: 210px;
    margin: 15px 0 0;
  }
  .contact-layout {
    gap: 25px;
  }
  .experience-toolbar {
    display: block;
    padding: 21px 18px;
  }
  .experience-toolbar > .segmented {
    max-width: none;
    justify-content: start;
    margin-top: 20px;
    gap: 8px;
  }
  .segmented button {
    font-size: 10px;
    min-height: 45px;
    padding: 12px 14px;
  }
  .experience-stage {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0 18px 25px;
    min-height: 0;
  }
  .product-scene {
    height: 360px;
    width: 100%;
    margin-top: 5px;
  }
  .experience-panels {
    max-width: 440px;
    width: 100%;
  }
  .customer-demo {
    padding: 27px 23px;
    border-radius: 11px;
  }
  .demo-brand {
    font-size: 26px;
  }
  .demo-kicker {
    margin-top: 35px;
  }
  .customer-demo h2 {
    font-size: 43px;
  }
  .demo-description {
    font-size: 12px;
  }
  .demo-slots {
    margin-block: 25px 22px;
    gap: 7px;
  }
  .demo-slots label span {
    font-size: 11px;
    padding: 12px 6px;
  }
  .demo-feedback {
    font-size: 10px;
  }
  .demo-reserve {
    font-size: 11px;
  }
  .system-demo {
    padding: 12px 5px;
  }
  .system-demo h2 {
    font-size: 36px;
  }
  .demo-trace h3 {
    font-size: 21px;
  }
  .demo-trace p {
    font-size: 13px;
  }
  .demo-trace small {
    font-size: 10px;
  }
  .experience-caption {
    padding: 18px;
    display: block;
  }
  .experience-caption > p {
    font-size: 12px;
  }
  .experience-caption button {
    margin-top: 10px;
  }
  .simulation-note {
    font-size: 10px;
    padding: 0 18px 20px;
  }
  .product-fallback > span {
    font-size: 48px;
  }
}
@media (max-width: 374px) {
  .hero-scene {
    height: 330px;
    margin-inline: -16px;
  }
  .hero-actions .button {
    font-size: 10px;
    padding-inline: 14px;
  }
  .nav-cta {
    padding: 10px 13px;
  }
  .connection-visual {
    height: 295px;
  }
  .core-scene {
    height: 260px;
  }
  .product-scene {
    height: 310px;
  }
  .experience-toolbar > .eyebrow {
    font-size: 8px;
  }
  .customer-demo {
    padding: 23px 18px;
  }
  .customer-demo h2 {
    font-size: 36px;
  }
  .demo-brand small {
    font-size: 7px;
  }
  .contact-action {
    margin-left: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .art-canvas {
    transition: none;
  }
  .scene-poster {
    transition: none;
  }
  .preview-screen {
    transition: none;
  }
}
/* Homepage: one idea, different worlds. Each chapter owns a readable, fixed palette. */
body[data-page=index] { --canvas:#0b1023; }
.signature-world { min-height: min(860px, calc(100svh - 90px)); display:grid;grid-template-columns:1.08fr 1fr; align-items:center; position:relative; padding-top:56px; }
.signature-copy {position:relative;z-index:7;padding-bottom:35px;}
.signature-copy>.eyebrow {margin-bottom:30px;color:#b9c1dd;font-size:9px;}
.signature-copy h1 {font-size:clamp(44px,4.25vw,68px);font-weight:500;line-height:1.08;letter-spacing:-.06em;max-width:700px;}
.signature-copy h1 em {font-family:Georgia,serif;font-weight:400;color:#b8b5f0;letter-spacing:-.055em;}
.signature-copy h1>span {color:#9faacd;display:inline-block;margin-top:15px;}
.signature-intro {font-size:15px;color:#b8c0d8;max-width:390px;margin-top:27px;}
.signature-copy .hero-actions {display:flex;align-items:center;gap:27px;margin-top:31px;}
.signature-copy .button {gap:19px;padding-inline:23px;white-space:nowrap;}
.signature-explore {font-size:11px;border-bottom:1px solid #56617e;padding-block:10px;}
.signature-explore span {margin-left:9px;}
.signature-art {min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;}
.signature-scene {height:560px;margin:0 -20px 0 -45px;}
.signature-scene>.scene-poster,.return-scene>.scene-poster,.commerce-scene>.scene-poster {object-fit:contain;mix-blend-mode:lighten;}
.signature-art figcaption {position:relative;z-index:7;display:flex;justify-content:space-between;margin:0 15px 35px 20px;font-size:9px;color:#a9b2ce;text-transform:uppercase;letter-spacing:.08em;}
.journey-start {grid-column:1/-1;border-top:1px solid #303c58;display:flex;justify-content:space-between;align-items:center;padding-block:24px;font-size:10px;margin-top:22px;gap:20px;}
.journey-start>a {display:flex;align-items:center;gap:17px;}
.journey-line {width:40px;height:1px;background:#a9adf2;}
.journey-start>div {display:flex;gap:25px;align-items:center;color:#b9c1d7;}
.journey-start button {border:0;background:none;padding:10px 0;color:inherit;font-size:10px;border-bottom:1px solid #606d89;}
.world {position:relative;padding-top:85px;isolation:isolate;}
.world-heading {display:grid;grid-template-columns:1fr 3fr 1fr;gap:25px;align-items:start;padding-bottom:58px;}
.world-heading>.eyebrow {padding-top:12px;font-size:9px;}
.world-heading h2 {font-size:clamp(36px,4vw,62px);font-weight:500;line-height:1.08;}
.world-heading h2 em {font-family:Georgia,serif;font-weight:400;}
.world-heading>div>p {font-size:13px;max-width:360px;margin-top:22px;color:var(--world-muted);}
.world-classification {font-size:9px;text-align:right;padding-top:12px;color:var(--world-muted);line-height:1.7;}
.editorial-world {--world-bg:#f4efe7;--world-surface:#eae3d8;--world-text:#24211e;--world-muted:#62594f;--world-accent:#a94f38;--world-cta:#823c2b;background:var(--world-bg);color:var(--world-text);}
.world-interface {position:relative;z-index:7;transform-origin:50% 60%;}
.editorial-interface {background:#eae3d8;border:1px solid #cec5b7;padding:32px 36px 0;}
.editorial-masthead {display:flex;align-items:center;justify-content:space-between;padding-bottom:27px;border-bottom:1px solid #c8bba9;}
.still-wordmark {font-family:Georgia,serif;font-size:37px;letter-spacing:-.06em;line-height:1;}
.still-wordmark>span {display:block;font-family:Manrope,sans-serif;font-size:7px;letter-spacing:.18em;margin-top:13px;}
.editorial-masthead>a {font-size:10px;display:flex;gap:26px;}
.editorial-layout {display:grid;grid-template-columns:1.15fr 1fr;min-height:550px;padding-top:30px;gap:40px;}
.editorial-cover {position:relative;min-height:540px;overflow:hidden;background:#d2c6b2;}
.editorial-cover>img {position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 38%;}
.image-caption {position:absolute;bottom:0;left:0;right:0;padding:50px 24px 20px;color:#fff9f4;background:linear-gradient(transparent,rgba(25,21,18,.84));font-family:Georgia,serif;font-style:italic;font-size:21px;}
.image-caption small {display:block;font:8px/1.5 Manrope,sans-serif;margin-top:7px;color:#eee8df;}
.editorial-letter {padding:37px 30px 10px 0;display:flex;flex-direction:column;align-items:flex-start;}
.editorial-letter>.eyebrow {font-size:8px;color:#823c2b;margin-bottom:28px;}
.editorial-letter h3 {font-family:Georgia,serif;font-size:clamp(40px,4.8vw,73px);font-weight:400;letter-spacing:-.06em;line-height:1;}
.editorial-letter h3 em {color:#a94f38;font-weight:400;}
.editorial-letter>p {font-size:12px;max-width:270px;margin-top:25px;line-height:1.8;color:#62594f;}
.editorial-link {font-size:10px;border-bottom:1px solid #a94f38;padding-bottom:10px;margin-top:25px;display:flex;gap:40px;color:#823c2b;}
.editorial-edition {font-size:7px;letter-spacing:.15em;margin-top:auto;padding-top:30px;color:#62594f;}
.interface-foot {display:flex;justify-content:space-between;gap:20px;font-size:8px;color:var(--world-muted);padding-block:20px;}
.chapter-connection {display:flex;gap:20px;align-items:center;padding-block:38px 45px;}
.connection-mark {font-size:60px;font-weight:750;letter-spacing:-.1em;line-height:1;color:var(--world-accent);}
.chapter-connection>p {font-size:10px;line-height:1.5;color:var(--world-muted);}
.chapter-connection strong {font-weight:500;color:var(--world-text);}
.chapter-connection>span:last-child {margin-left:auto;font-size:22px;}
.home-services {padding-block:100px;}
.home-services>h2 {font-size:clamp(33px,3.5vw,52px);margin:22px 0 45px;}
.home-service-list>a {display:grid;grid-template-columns:50px 1fr 30px;align-items:center;gap:20px;padding-block:25px;border-top:1px solid #344160;}
.home-service-list>a:last-child {border-bottom:1px solid #344160;}
.home-service-list h3 {font-size:clamp(20px,2.2vw,31px);letter-spacing:-.035em;}
.home-service-list>a>span {font-size:11px;color:#b8b5f0;}
.home-evidence {font-size:11px;color:#b8c0d8;max-width:740px;margin-top:27px;}
.home-evidence a {text-decoration:underline;text-underline-offset:4px;}
.return-world {display:grid;grid-template-columns:1.2fr 1fr;align-items:center;border-top:1px solid #344160;padding-block:50px 20px;}
.return-copy {position:relative;z-index:7;}
.return-copy>.eyebrow {color:#aab4ce;font-size:9px;margin-bottom:24px;}
.return-copy h2 {font-size:clamp(44px,5vw,76px);font-weight:500;}
.return-copy h2 em {font-family:Georgia,serif;font-weight:400;color:#b8b5f0;}
.return-copy>p:not(.eyebrow) {font-size:13px;color:#b8c0d8;margin-top:24px;}
.return-copy .button {margin-top:29px;gap:30px;}
.return-scene {height:390px;}
.return-signature {grid-column:1/-1;font-size:10px;color:#b8c0d8;letter-spacing:.04em;padding-block:25px;}
body[data-page=index] .site-footer {margin-top:35px;}
html[data-motion=off] .world-interface {transform:none!important;}
@media(min-width:1500px){.signature-world{padding-top:65px}.signature-scene{height:630px}}
@media(max-width:1100px){.signature-copy h1{font-size:48px}.signature-world{grid-template-columns:1.1fr 1fr}.signature-scene{height:510px}.signature-copy .hero-actions{gap:18px;flex-wrap:wrap}.world-heading{grid-template-columns:1fr 3fr}.world-classification{display:none}.editorial-layout{gap:28px}.editorial-letter{padding-right:0}.editorial-cover{min-height:480px}.editorial-letter h3{font-size:54px}.editorial-letter>.eyebrow{font-size:7px}}
@media(max-width:760px){
 .signature-world{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-top:28px;}
 .signature-copy{padding:0}.signature-copy>.eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:23px}.signature-copy h1{font-size:clamp(38px,8.1vw,58px);max-width:580px;line-height:1.08;letter-spacing:-.05em}.signature-copy h1>span{margin-top:9px}.signature-intro{font-size:13px;max-width:340px;margin-top:22px}.signature-copy .hero-actions{margin-top:23px;gap:20px}.signature-copy .button{font-size:11px;min-height:48px;padding-inline:19px}.signature-explore{font-size:10px}.signature-art{margin-top:0}.signature-scene{height:335px;margin:0 -10px}.signature-art figcaption{font-size:7px;margin:0 0 16px;letter-spacing:.05em}.journey-start{margin-top:0;flex-wrap:wrap;padding-block:20px;font-size:9px;gap:12px}.journey-start>div{width:100%;justify-content:space-between;gap:12px}.journey-start button{font-size:9px}.journey-line{width:25px}
 .world{padding-top:49px}.world-heading{display:block;padding-bottom:32px}.world-heading>.eyebrow{font-size:8px;padding:0;margin-bottom:21px}.world-heading h2{font-size:38px;letter-spacing:-.045em}.world-heading>div>p{font-size:12px;margin-top:18px;max-width:330px}.world-interface{transform:none!important}.editorial-interface{padding:22px 19px 0}.editorial-masthead{padding-bottom:20px}.still-wordmark{font-size:29px}.still-wordmark>span{font-size:5px;letter-spacing:.1em;margin-top:8px}.editorial-masthead>a{font-size:8px;gap:10px}.editorial-layout{display:flex;flex-direction:column;gap:0;padding-top:20px}.editorial-cover{min-height:330px;max-height:440px;height:83vw}.editorial-letter{padding:28px 0 10px}.editorial-letter>.eyebrow{font-size:7px;margin-bottom:20px}.editorial-letter h3{font-size:48px}.editorial-letter h3 br:first-child{display:none}.editorial-letter>p{font-size:12px;max-width:320px;margin-top:20px}.editorial-edition{font-size:6px;padding-top:25px}.image-caption{font-size:19px;padding-inline:18px}.image-caption small{font-size:7px}.interface-foot{font-size:7px;line-height:1.7;padding-block:17px;gap:12px}.interface-foot>span:last-child{display:none}.chapter-connection{padding-block:25px 30px;gap:15px}.connection-mark{font-size:45px}.chapter-connection>p{font-size:9px}
 .home-services{padding-block:65px}.home-services>h2{font-size:34px;margin:20px 0 30px}.home-service-list>a{grid-template-columns:24px 1fr 15px;gap:12px;padding-block:23px}.home-service-list h3{font-size:21px;line-height:1.2}.home-evidence{font-size:10px}.return-world{display:flex;flex-direction:column;align-items:stretch;padding-top:40px}.return-copy>.eyebrow{font-size:8px}.return-copy h2{font-size:44px}.return-copy>p:not(.eyebrow){font-size:12px}.return-scene{height:260px}.return-signature{font-size:8px;padding-block:5px 20px}.signature-copy,.return-copy{z-index:7}
}
@media(prefers-reduced-motion:reduce){.world-interface{transform:none!important}.scene-poster{transition:none}.signature-world{min-height:0}}
/* Reading sizes are maintained in miniature interfaces; only decorative edition marks use microtype. */
.signature-copy>.eyebrow,.journey-start,.journey-start button,.signature-art figcaption,.world-heading>.eyebrow,.world-classification,.return-copy>.eyebrow,.return-signature {font-size:11px;}
.signature-intro,.world-heading>div>p,.editorial-letter>p,.return-copy>p:not(.eyebrow),.home-evidence {font-size:14px;}
.signature-explore,.editorial-masthead>a,.editorial-link {font-size:12px;min-height:44px;display:inline-flex;align-items:center;}
.journey-start button,.journey-start>div>a {min-height:44px;display:inline-flex;align-items:center;}
.editorial-letter>.eyebrow,.interface-foot,.image-caption small,.chapter-connection>p {font-size:11px;}
.editorial-edition {font-size:9px;}.still-wordmark>span {font-size:8px;}
@media(max-width:760px){.signature-copy>.eyebrow{font-size:10px}.signature-art figcaption{font-size:10px}.signature-intro,.world-heading>div>p,.editorial-letter>p,.return-copy>p:not(.eyebrow){font-size:14px}.journey-start,.journey-start button,.world-heading>.eyebrow,.return-copy>.eyebrow,.return-signature,.editorial-letter>.eyebrow,.interface-foot,.image-caption small,.chapter-connection>p{font-size:11px}.home-evidence{font-size:12px}.editorial-masthead>a{font-size:11px}.editorial-edition{font-size:9px}.still-wordmark>span{font-size:7px}.signature-copy .button{font-size:12px}.signature-explore{font-size:12px}.editorial-link{font-size:12px}.editorial-masthead{gap:12px;align-items:flex-start}.image-caption{font-size:19px}.journey-start>div{align-items:center}}
.opening-worlds{position:relative;}
.opening-art-track{position:absolute;top:0;right:max(36px,calc((100vw - 1320px)/2));width:min(47%,640px);pointer-events:none;z-index:6;}
.opening-art-track .signature-art{position:sticky;top:90px;height:610px;display:flex;transform-origin:80% 15%;will-change:transform;}
.opening-art-track .signature-scene{height:560px;flex:none;width:100%;margin:0;}
.signature-world{grid-template-rows:1fr auto;}
.signature-world>.signature-copy{grid-column:1;}
.signature-world>.journey-start{grid-row:2;}
.world-heading{position:relative;z-index:7;}
@media(max-width:760px){.opening-art-track{position:static;width:auto;height:auto!important;display:contents}.opening-art-track .signature-art{position:relative;top:auto;height:auto;transform:none!important;display:none}.signature-world{position:relative;padding-bottom:355px}.signature-world>.journey-start{position:absolute;bottom:0;left:0;right:0;z-index:7}.signature-world:after{content:'';display:block;height:260px;position:absolute;bottom:112px;left:0;right:0;background:url('/assets/images/studio/poster-story.avif?v=3ccca5c3f0c6e9f6') center/contain no-repeat}.editorial-letter h3 br:first-child{display:initial}.home-services>.eyebrow,.signature-copy>.eyebrow{font-size:11px}}
@media(prefers-reduced-motion:reduce){.opening-art-track .signature-art{position:relative;top:40px;transform:none!important}.opening-art-track{height:620px!important}}
.commerce-world{--world-bg:#25152e;--world-surface:#34203f;--world-text:#fff9f4;--world-muted:#ccbdd6;--world-accent:#ff9279;--world-cta:#ff9279;background:var(--world-bg);color:var(--world-text);}
.commerce-interface{border:1px solid #674a73;background:#2d1a37;padding:28px 36px 0;}
.shop-masthead{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #674a73;padding-bottom:25px;gap:20px;}
.shop-wordmark{font-size:32px;letter-spacing:-.065em;font-weight:700;line-height:1;display:flex;align-items:center;gap:20px;}
.shop-wordmark>span{font-size:10px;font-weight:500;letter-spacing:.2em;}
.shop-edition{font-size:11px;color:#ccbdd6;}
.shop-bag{background:none;border:0;padding:11px 0;font-size:12px;min-height:44px;display:flex;gap:15px;align-items:center;}
.shop-bag>span{background:#e7ddf3;color:#25152e;display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;font-size:11px;}
.product-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:30px;padding-top:35px;}
.product-stage{min-height:570px;position:relative;background:radial-gradient(ellipse at 50% 40%,#654870 0%,#42264d 42%,#34203f 72%);overflow:hidden;display:flex;flex-direction:column;justify-content:center;}
.product-backdrop{font-size:clamp(90px,11vw,165px);color:#e7ddf3;opacity:.12;font-weight:700;letter-spacing:-.07em;line-height:.8;position:absolute;top:50px;left:30px;}
.commerce-scene{height:490px;position:relative;}
.product-art-caption{position:relative;z-index:7;font-size:11px;color:#e7ddf3;text-align:center;padding:18px;}
.product-details{padding:35px 30px 10px;}
.product-details>.eyebrow{font-size:11px;color:#d6c6e1;margin-bottom:25px;}
.product-details h3{font-size:clamp(45px,4.9vw,76px);font-weight:500;letter-spacing:-.055em;}
.product-details h3 em{color:#ff9279;font-style:normal;}
.product-description{font-size:14px;color:#d6c6e1;max-width:340px;margin-top:23px;}
.product-price{display:flex;align-items:baseline;gap:16px;margin-block:25px;}
.product-price strong{font-size:24px;font-weight:500;letter-spacing:-.04em;}.product-price>span{font-size:11px;color:#ccbdd6;}
.finish-options{border:0;padding:0;margin:0 0 24px;display:flex;gap:20px;}.finish-options legend{font-size:12px;color:#d6c6e1;padding:0;margin-bottom:10px;}.finish-options label{display:flex;align-items:center;gap:9px;min-height:44px;font-size:12px;cursor:pointer;}.finish-options input{accent-color:#ff9279;width:16px;height:16px;margin:0;}.finish-swatch{height:20px;width:20px;display:inline-block;border-radius:50%;border:1px solid #f7effb80;}.lilac-swatch{background:#b8b5f0}.coral-swatch{background:#ff9279}
.shop-add{--button-bg:#ff9279;--button-fg:#25152e;--button-border:#ff9279;display:flex;width:100%;justify-content:space-between;font-size:13px;}
.shop-status{font-size:12px;color:#d6c6e1;min-height:42px;margin-top:14px;line-height:1.6;}
.demo-bag{border-top:1px solid #674a73;margin-top:27px;padding:25px 0;display:grid;grid-template-columns:1fr auto;gap:15px;}.demo-bag[hidden]{display:none}.demo-bag h4{font-size:22px;font-weight:500;letter-spacing:-.03em;margin:10px 0}.demo-bag p{font-size:12px;color:#d6c6e1;}.demo-bag .eyebrow{font-size:11px}.bag-actions{display:flex;align-items:center;gap:20px}.bag-actions button{min-height:44px;font-size:12px;border:0;border-bottom:1px solid #aa87ba;background:none;padding:10px 0}.bag-actions button:disabled{opacity:.5;cursor:default}.checkout-status{grid-column:1/-1;}
.connected-world{--world-bg:#0a1826;--world-surface:#102536;--world-text:#e7f1f5;--world-muted:#b1c6d3;--world-accent:#59d6c4;--world-cta:#59d6c4;background:var(--world-bg);color:var(--world-text);}
.forma-interface{border:1px solid #436071;background:#102536;padding:28px 36px 0;}
.forma-masthead{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #436071;padding-bottom:25px;gap:20px;}.forma-wordmark{display:flex;align-items:center;gap:10px;font-size:27px;letter-spacing:-.06em;font-weight:650}.forma-symbol{color:#0a1826;background:#59d6c4;border-radius:8px;width:33px;height:33px;display:grid;place-items:center;font-size:25px;font-family:Georgia,serif;}.forma-masthead>span:nth-child(2){font-size:12px;color:#b1c6d3;}.demo-pill{border:1px solid #436071;border-radius:20px;padding:7px 12px;font-size:11px;color:#bcece6;}
.forma-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;padding:45px 15px;}.booking-intro>.eyebrow{font-size:11px;color:#a6c5d2;margin-bottom:25px;}.booking-intro h3{font-size:clamp(40px,4vw,59px);font-weight:500;letter-spacing:-.05em;}.booking-intro h3 em{font-style:normal;color:#59d6c4;}.booking-intro>p:not(.eyebrow){font-size:14px;color:#b1c6d3;max-width:310px;margin-top:22px;}.forma-note{display:flex;gap:16px;align-items:center;margin-top:30px;}.forma-note>span:first-child{font-size:34px;color:#59d6c4}.forma-note>span:last-child{font-size:11px;line-height:1.7;color:#b1c6d3;}
.booking-panel{background:#e7f1f5;color:#0a1826;padding:28px;border-radius:5px;align-self:start;}.booking-panel>.eyebrow{font-size:11px;color:#365567;margin-bottom:17px;}.booking-service-label{display:block;font-size:13px;margin-bottom:9px;}.booking-panel select{width:100%;min-height:49px;border:1px solid #7895aa;background:#f8fcfd;color:#0a1826;border-radius:3px;padding:9px;font-size:14px;}.booking-times{border:0;padding:0;margin:28px 0 25px;display:flex;gap:10px;}.booking-times legend{font-size:11px;color:#365567;margin-bottom:14px;}.booking-times label{flex:1;position:relative;cursor:pointer;}.booking-times input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;}.booking-times span{display:block;text-align:center;border:1px solid #7895aa;padding:12px 4px;border-radius:3px;font-size:13px;min-height:46px;}.booking-times input:checked+span{background:#0a1826;border-color:#0a1826;color:#e7f1f5}.booking-times input:focus-visible+span{outline:3px solid #a94f38;outline-offset:3px;}.booking-confirm{--button-bg:#0a1826;--button-fg:#e7f1f5;--button-border:#0a1826;width:100%;display:flex;justify-content:space-between;font-size:13px;}.booking-confirm:disabled{cursor:progress;opacity:.65}.booking-feedback{font-size:12px;color:#365567;margin-top:17px;line-height:1.7;min-height:40px}.booking-reset{border:0;border-bottom:1px solid #365567;background:none;color:#0a1826;padding:10px 0;min-height:44px;font-size:12px;margin-top:10px;}
.system-reveal{border-top:1px solid #436071;padding-top:27px;}.system-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.system-heading>.eyebrow{font-size:11px;color:#59d6c4;}.system-heading>p{font-size:12px;color:#b1c6d3;}.system-flow{list-style:none;padding:0;margin:27px 0 8px;display:grid;grid-template-columns:repeat(3,1fr);gap:23px;}.system-flow li{display:flex;align-items:flex-start;gap:12px;padding:17px 0 24px;position:relative;}.system-step-number{font-size:11px;color:#b1c6d3;border:1px solid #436071;border-radius:50%;width:29px;height:29px;flex:none;display:grid;place-items:center;}.system-flow h4{font-size:15px;font-weight:500;letter-spacing:-.02em;margin:0 0 10px;}.system-flow p{font-size:12px;color:#b1c6d3;line-height:1.65;}.system-arrow,.system-check{font-size:18px;color:#7895aa;margin-left:auto}.system-flow li[data-complete=true] .system-step-number{background:#59d6c4;color:#0a1826;border-color:#59d6c4}.system-flow li[data-complete=true] h4,.system-flow li[data-complete=true] .system-check{color:#59d6c4}.forma-interface .interface-foot{border-top:1px solid #436071}.forma-interface .interface-foot a{color:#bcece6;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center;}.forma-interface .interface-foot{align-items:center}
@media(max-width:1100px){.product-details{padding-inline:10px}.product-layout{gap:20px;grid-template-columns:1fr 1fr}.product-stage{min-height:550px}.forma-layout{gap:30px;padding-inline:0}.booking-panel{padding:23px}.system-flow{gap:15px}.system-flow li{gap:8px}.system-flow h4{font-size:14px}.system-arrow{display:none}}
@media(max-width:760px){
 .commerce-interface,.forma-interface{padding:22px 19px 0}.shop-masthead{padding-bottom:20px;gap:10px}.shop-wordmark{font-size:26px;gap:10px}.shop-wordmark>span{font-size:8px;letter-spacing:.12em}.shop-edition{display:none}.shop-bag{font-size:11px;gap:8px}.product-layout{display:flex;flex-direction:column;padding-top:20px;gap:0}.product-stage{min-height:0}.commerce-scene{height:340px}.product-backdrop{font-size:120px;top:33px;left:15px}.product-art-caption{font-size:11px;padding:0 15px 20px}.product-details{padding:29px 0 0}.product-details h3{font-size:49px}.product-details>.eyebrow{margin-bottom:19px}.product-description{font-size:14px;margin-top:20px}.product-price{margin-block:21px}.shop-status{font-size:12px}.demo-bag{display:flex;flex-direction:column}.demo-bag[hidden]{display:none}.bag-actions{gap:20px;flex-wrap:wrap}.demo-bag .eyebrow{font-size:10px}
 .forma-masthead{padding-bottom:20px;gap:10px}.forma-wordmark{font-size:25px}.forma-masthead>span:nth-child(2){display:none}.demo-pill{font-size:10px;padding:6px 9px}.forma-layout{display:flex;flex-direction:column;gap:26px;padding-block:28px}.booking-intro h3{font-size:44px}.booking-intro h3 br:nth-child(2){display:initial}.booking-intro>.eyebrow{font-size:11px;margin-bottom:20px}.booking-intro>p:not(.eyebrow){font-size:14px;max-width:350px}.forma-note{margin-top:20px;gap:12px}.forma-note>span:last-child{font-size:11px}.booking-panel{padding:20px 17px;width:100%;}.booking-times{gap:7px}.booking-times legend{font-size:11px}.booking-times span{font-size:12px}.booking-panel>.eyebrow{font-size:11px}.system-heading{display:block}.system-heading>p{margin-top:11px}.system-flow{display:flex;flex-direction:column;gap:0;margin-block:12px 10px}.system-flow li{gap:15px;border-bottom:1px solid #294658;padding-block:20px}.system-flow li:last-child{border:0}.system-flow h4{font-size:15px}.system-flow p{font-size:12px}.system-arrow{display:block;transform:rotate(90deg);padding-right:5px}.system-heading>.eyebrow{font-size:11px}.forma-interface .interface-foot{display:block}.forma-interface .interface-foot a{margin-top:8px;font-size:11px;min-height:44px}.connected-world .world-heading h2{font-size:36px}
 html.journey-ready .opening-art-track{display:none}.journey-ready .signature-world{padding-bottom:0}.journey-ready .signature-world:after{display:none}.journey-ready .signature-world>.signature-art{display:flex;position:static;top:auto;height:auto;transform:none!important;margin-top:0}.journey-ready .signature-world>.signature-art .signature-scene{height:335px;width:100%;margin:0}.journey-ready .signature-world>.signature-art figcaption{font-size:11px;margin:0 0 15px}.journey-ready .signature-world>.journey-start{position:static}
}
.home-services>.eyebrow{font-size:11px;}
/* One shared sculpture moves through the two inter-world handoffs. These reserved
   bands keep geometry clear of controls and collapse for static/touch layouts. */
.world-bridge-scene{position:fixed;pointer-events:none;z-index:6;left:0;top:0;width:1px;height:1px;}
.world-bridge-scene[hidden]{display:none;}
.world-bridge-scene>.scene-poster{object-fit:contain;}
.world-bridge-anchor{height:210px;max-width:430px;flex:1;margin-inline:auto;}
.chapter-connection:has(.world-bridge-anchor){padding-block:10px;min-height:230px;}
html[data-motion=off] .world-bridge-anchor,html:not(.journey-ready) .world-bridge-anchor{display:none;}
html[data-motion=off] .chapter-connection:has(.world-bridge-anchor),html:not(.journey-ready) .chapter-connection:has(.world-bridge-anchor){min-height:0;padding-block:38px 45px;}
@media(max-width:999px),(prefers-reduced-motion:reduce){.world-bridge-anchor,.world-bridge-scene{display:none!important}.chapter-connection:has(.world-bridge-anchor){min-height:0;padding-block:25px 30px}}
