.page-products.page-markets .markets-contact {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 36px 40px;
  overflow: hidden;
  background: radial-gradient(ellipse at 78% 40%, #d8eaff9c, transparent 53%), radial-gradient(ellipse at 98% 98%, #ffe9b58f, transparent 43%), linear-gradient(115deg, #f4f9ff, #fcfdff);
}
.page-markets .markets-contact::before { content: ""; position: absolute; z-index: -1; width: 115%; height: 70%; left: -8%; bottom: -42%; border: 1px solid #fff; border-radius: 50%; transform: rotate(10deg); background: #ffffff3d; }
.page-markets .markets-contact-copy { position: relative; z-index: 4; min-width: 0; }
.page-products.page-markets .markets-contact h2 { max-width: none; font-size: clamp(1.9rem, 3vw, 2.85rem); line-height: 1.12; letter-spacing: -.045em; }
.page-markets .markets-contact p { max-width: 42ch; line-height: 1.6; }
.page-products.page-markets .markets-contact .portfolio-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.page-markets .markets-contact .portfolio-button { width: fit-content; max-width: 100%; }
.page-markets .markets-contact-visual { position: relative; width: 100%; aspect-ratio: 600 / 430; min-width: 0; isolation: isolate; pointer-events: none; }
.page-markets .markets-contact-aura { position: absolute; width: 62%; aspect-ratio: 1; left: 24%; top: 14%; border-radius: 50%; border: 1px solid #ffffffb0; background: radial-gradient(circle at 32% 23%, #fff9, #b7d9ff4f 54%, #fff1 74%); box-shadow: inset 12px 7px 30px #fff8; }
.page-markets .markets-contact-tracks { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.page-markets .markets-contact-hand { position: absolute; z-index: 2; width: 61%; height: 103%; left: 25%; top: 1%; mix-blend-mode: multiply; mask-image: radial-gradient(ellipse 52% 55% at 50% 45%, #000 55%, transparent 95%); }
.page-markets .markets-contact-hand :is(img, video) { position: absolute; display: block; width: 100%; height: 100%; object-fit: contain; }
.page-markets .markets-contact-hand video { opacity: 0; }
.page-markets .markets-contact-visual.hand-ready video { opacity: 1; }
.page-markets .markets-orbit-item { position: absolute; width: 92px; display: grid; justify-items: center; gap: 5px; transform: translate(-50%, -42%); will-change: left, top; }
.page-markets .markets-orbit-bubble { width: 60px; height: 60px; display: grid; place-items: center; border-radius: 50%; border: 1px solid #fff; background: radial-gradient(circle at 30% 22%, #fffe, #f3f8ff9c 48%, #e3effc80 70%, #ffffffdf 85%); box-shadow: inset 2px 3px 5px #fff, inset -2px -3px 6px #c5daef70, 0 5px 15px -8px #7897b45c; }
.page-markets .markets-orbit-crop { display: block; position: relative; width: 46px; height: 46px; overflow: hidden; }
.page-markets .markets-orbit-icon { display: block; position: absolute; width: 438.28125%; height: auto; max-width: none; }
.page-markets .markets-orbit-name { color: #294565; font-size: .61rem; line-height: 1.25; text-align: center; text-shadow: 0 1px 5px #fff; }
@media (max-width: 1000px) {
  .page-products.page-markets .markets-contact { padding: 32px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .page-markets .markets-orbit-bubble { width: 50px; height: 50px; }
  .page-markets .markets-orbit-crop { width: 39px; height: 39px; }
  .page-markets .markets-orbit-item { width: 78px; }
  .page-markets .markets-orbit-name { font-size: .55rem; }
}
@media (max-width: 800px) {
  .page-products.page-markets .markets-contact { grid-template-columns: 1fr; gap: 20px; padding: 30px; }
  .page-markets .markets-contact-visual { max-width: 560px; justify-self: center; }
  .page-markets .markets-contact-copy h2 { font-size: clamp(1.9rem, 5vw, 2.7rem); }
}
@media (max-width: 600px) {
  .page-products.page-markets .markets-contact { padding: 28px 24px 18px; gap: 22px; }
  .page-products.page-markets .markets-contact .portfolio-actions { display: grid; justify-items: start; margin-top: 24px; }
  .page-markets .markets-contact-visual { width: calc(100% + 20px); }
  .page-markets .markets-orbit-item { width: 66px; gap: 3px; }
  .page-markets .markets-orbit-bubble { width: 40px; height: 40px; }
  .page-markets .markets-orbit-crop { width: 32px; height: 32px; }
  .page-markets .markets-orbit-name { font-size: .47rem; }
}
@media (prefers-reduced-motion: reduce) {
  .page-markets .markets-contact-visual.hand-ready video { opacity: 0; transition: none; }
  .page-markets .markets-orbit-item { will-change: auto; }
}
