@view-transition {
  navigation: auto;
}

:root {
  --v3-ease: cubic-bezier(.2,.72,.2,1);
  --v3-orange: #ffb84d;
  --v3-blue: #71c0e3;
  --v3-teal: #73aeb2;
  --v3-ink: #173039;
}

::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: .42s;
  animation-timing-function: var(--v3-ease);
}

.preview-v3 .brand {
  overflow: hidden;
}

.preview-v3 .brand img {
  animation: v3-brand-write 1.05s var(--v3-ease) both;
}

.preview-v3.js [data-reveal]:not(.is-visible) {
  opacity: 1;
  transform: none;
}

.preview-v3 .service-rail {
  padding-right: 8.6rem;
}

.ticker-toggle,
.fusion-replay {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 38px;
  border: 1px solid rgba(37,76,84,.16);
  border-radius: 999px;
  padding: .55rem .82rem;
  background: rgba(255,255,255,.82);
  color: #34545b;
  cursor: pointer;
  font: inherit;
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.ticker-toggle:hover,
.ticker-toggle:focus-visible,
.fusion-replay:hover,
.fusion-replay:focus-visible {
  border-color: var(--v3-teal);
  background: #fff;
  transform: translateY(-1px);
}

.ticker-toggle {
  position: absolute;
  right: .8rem;
  z-index: 3;
}

.service-rail[data-paused="true"] .service-rail-track,
.service-rail:focus-within .service-rail-track {
  animation-play-state: paused;
}

.fusion-v3-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 6% 12%, rgba(255,184,77,.13), transparent 27%),
    radial-gradient(circle at 92% 80%, rgba(113,192,227,.17), transparent 30%),
    linear-gradient(180deg, #fbfcf9, #f3f8f7);
}

.fusion-v3-section::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(31,72,79,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(31,72,79,.035) 1px, transparent 1px);
  background-size: 78px 78px;
  content: "";
  mask-image: linear-gradient(90deg, #000, transparent 76%);
  pointer-events: none;
}

.fusion-v3-section .shell {
  position: relative;
}

.fusion-stage {
  position: relative;
  margin-top: 3rem;
  overflow: hidden;
  border: 1px solid rgba(29,78,86,.14);
  border-radius: 34px;
  background: rgba(255,255,255,.68);
  box-shadow: 0 36px 100px rgba(24,74,82,.12);
  backdrop-filter: blur(22px) saturate(120%);
}

.fusion-stage-toolbar {
  display: flex;
  min-height: 64px;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid rgba(29,78,86,.11);
  padding: .75rem 1rem .75rem 1.25rem;
}

.fusion-stage-toolbar > span {
  display: flex;
  align-items: center;
  gap: .65rem;
  color: #4c6b71;
  font-size: .64rem;
  font-weight: 820;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.fusion-stage-toolbar > span::before {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--v3-orange), var(--v3-blue));
  box-shadow: 0 0 0 7px rgba(115,174,178,.1);
  content: "";
}

.fusion-visual {
  position: relative;
  display: grid;
  min-height: 570px;
  grid-template-columns: minmax(0,1fr) minmax(290px,.86fr) minmax(0,1fr);
  align-items: center;
  isolation: isolate;
}

.fusion-visual::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(255,184,77,.09), transparent 36%),
    linear-gradient(270deg, rgba(113,192,227,.12), transparent 36%);
  content: "";
}

.fusion-source {
  position: relative;
  z-index: 2;
  display: flex;
  min-height: 430px;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.5rem,3.6vw,3rem);
}

.fusion-source-legacy {
  border-right: 1px solid rgba(29,78,86,.09);
  background: linear-gradient(135deg, rgba(255,243,222,.86), rgba(255,255,255,.22));
}

.fusion-source-climatech {
  border-left: 1px solid rgba(29,78,86,.09);
  background: linear-gradient(225deg, rgba(224,244,248,.88), rgba(255,255,255,.2));
}

.fusion-source small,
.fusion-result > small {
  display: block;
  margin-bottom: 1.2rem;
  color: #476269;
  font-size: .62rem;
  font-weight: 830;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.legacy-wordmark {
  color: #2d3033;
  font-size: clamp(2.8rem,5.2vw,5.7rem);
  font-weight: 760;
  letter-spacing: -.07em;
  line-height: .88;
}

.fusion-source p {
  max-width: 330px;
  margin: 1.3rem 0 0;
  color: #3f5960;
  font-size: .78rem;
  line-height: 1.7;
}

.climatech-motion-logo {
  position: relative;
  display: flex;
  width: min(258px,100%);
  height: 88px;
  align-items: center;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 18px;
  padding: .82rem 1.05rem;
  background: linear-gradient(145deg,#123b4d 0%,#071e2d 72%,#061724 100%);
  box-shadow: 0 18px 46px rgba(9,43,58,.19),inset 0 1px 0 rgba(255,255,255,.11);
}

.climatech-motion-logo > img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.climatech-motion-logo::before {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.78), transparent);
  content: "";
  opacity: 0;
  pointer-events: none;
  transform: translateX(-120%);
}

.fusion-path {
  position: absolute;
  top: 50%;
  right: 20%;
  left: 20%;
  z-index: 1;
  height: 1px;
  background: linear-gradient(90deg, var(--v3-orange), var(--v3-teal), var(--v3-blue));
  transform: scaleX(.1);
  transform-origin: center;
}

.fusion-path::before,
.fusion-path::after {
  position: absolute;
  top: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 5px rgba(115,174,178,.2), 0 0 30px rgba(72,147,157,.34);
  content: "";
  transform: translateY(-50%);
}

.fusion-path::before { left: 0; }
.fusion-path::after { right: 0; }

.fusion-result {
  position: relative;
  z-index: 4;
  display: grid;
  width: min(390px,calc(100% - 2rem));
  min-height: 320px;
  place-items: center;
  align-content: center;
  justify-self: center;
  border: 1px solid rgba(255,255,255,.78);
  border-radius: 30px;
  padding: 2rem 1.3rem;
  background: rgba(255,255,255,.82);
  box-shadow: 0 26px 80px rgba(32,93,100,.18);
  text-align: center;
  backdrop-filter: blur(24px) saturate(125%);
}

.fusion-result::before {
  position: absolute;
  inset: -1px;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255,184,77,.48), transparent 34%, transparent 64%, rgba(113,192,227,.48));
  content: "";
  opacity: .45;
}

.fusion-logo-halves {
  position: relative;
  width: min(315px,100%);
  aspect-ratio: 1496 / 502;
}

.fusion-logo-halves img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.fusion-logo-left { clip-path: inset(0 50% 0 0); }
.fusion-logo-right { clip-path: inset(0 0 0 50%); }

.fusion-result p {
  max-width: 280px;
  margin: 1.25rem 0 0;
  color: #3e5960;
  font-size: .72rem;
  line-height: 1.58;
}

.fusion-steps {
  display: grid;
  margin: 0;
  border-top: 1px solid rgba(29,78,86,.1);
  padding: 0;
  list-style: none;
  grid-template-columns: repeat(3,1fr);
}

.fusion-steps li {
  min-height: 106px;
  border-right: 1px solid rgba(29,78,86,.1);
  padding: 1.2rem;
}

.fusion-steps li:last-child { border-right: 0; }

.fusion-steps span {
  display: block;
  margin-bottom: .45rem;
  color: #526e74;
  font-size: .58rem;
  font-weight: 830;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.fusion-steps strong {
  display: block;
  color: var(--v3-ink);
  font-size: .82rem;
  line-height: 1.4;
}

.fusion-stage.is-playing .fusion-source-legacy {
  animation: v3-source-left 1.55s var(--v3-ease) both;
}

.fusion-stage.is-playing .fusion-source-climatech {
  animation: v3-source-right 1.55s var(--v3-ease) both;
}

.fusion-stage.is-playing .fusion-path {
  animation: v3-line-meet 1.2s .25s var(--v3-ease) both;
}

.fusion-stage.is-playing .fusion-result {
  animation: v3-result-arrive 1.15s .72s var(--v3-ease) both;
}

.fusion-stage.is-playing .fusion-logo-left {
  animation: v3-half-left 1.05s .84s var(--v3-ease) both;
}

.fusion-stage.is-playing .fusion-logo-right {
  animation: v3-half-right 1.05s .84s var(--v3-ease) both;
}

.fusion-stage.is-playing .climatech-motion-logo {
  animation: v3-climatech-breathe 1.45s .1s var(--v3-ease) both;
}

.fusion-stage.is-playing .climatech-motion-logo::before {
  animation: v3-logo-sweep 1.1s .48s ease-out both;
}

@keyframes v3-brand-write {
  from { clip-path: inset(0 100% 0 0); opacity: .35; transform: translateX(-8px); }
  to { clip-path: inset(0 0 0 0); opacity: 1; transform: none; }
}

@keyframes v3-source-left {
  0% { opacity: .58; transform: translateX(-34px); }
  58% { opacity: 1; transform: translateX(12px); }
  100% { opacity: .78; transform: none; }
}

@keyframes v3-source-right {
  0% { opacity: .58; transform: translateX(34px); }
  58% { opacity: 1; transform: translateX(-12px); }
  100% { opacity: .78; transform: none; }
}

@keyframes v3-line-meet {
  from { opacity: 0; transform: scaleX(.06); }
  to { opacity: 1; transform: scaleX(1); }
}

@keyframes v3-result-arrive {
  0% { opacity: 0; filter: blur(12px); transform: scale(.86); }
  70% { opacity: 1; filter: blur(0); transform: scale(1.025); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes v3-half-left {
  from { opacity: .15; filter: blur(8px); transform: translateX(-34px); }
  to { opacity: 1; filter: blur(0); transform: none; }
}

@keyframes v3-half-right {
  from { opacity: .15; filter: blur(8px); transform: translateX(34px); }
  to { opacity: 1; filter: blur(0); transform: none; }
}

@keyframes v3-climatech-breathe {
  0% { opacity: .45; transform: translateX(24px) scale(.96); }
  62% { opacity: 1; transform: translateX(-5px) scale(1.015); }
  100% { opacity: 1; transform: none; }
}

@keyframes v3-logo-sweep {
  0% { opacity: 0; transform: translateX(-120%); }
  30% { opacity: .8; }
  100% { opacity: 0; transform: translateX(120%); }
}

.anatomy-v3-section {
  position: relative;
  overflow: hidden;
  background: #fff;
}

.anatomy-instruction {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-top: 1rem;
  color: #547177;
  font-size: .65rem;
  font-weight: 760;
}

.anatomy-instruction::before {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--v3-orange);
  box-shadow: 0 0 0 6px rgba(255,184,77,.13);
  content: "";
}

.anatomy-stage {
  display: grid;
  min-height: 720px;
  margin-top: 3rem;
  overflow: hidden;
  border: 1px solid rgba(29,78,86,.14);
  border-radius: 32px;
  background: #0f2832;
  box-shadow: 0 34px 90px rgba(21,64,71,.16);
  grid-template-columns: minmax(0,1.55fr) minmax(330px,.65fr);
}

.anatomy-media {
  position: relative;
  min-width: 0;
  min-height: 720px;
  margin: 0;
  overflow: hidden;
}

.anatomy-media::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5,23,30,.34), transparent 42%, rgba(5,23,30,.12)),
    linear-gradient(180deg, rgba(5,23,30,.12), transparent 50%, rgba(5,23,30,.54));
  content: "";
  pointer-events: none;
}

.anatomy-media picture,
.anatomy-media img {
  display: block;
  width: 100%;
  height: 100%;
}

.anatomy-media img {
  object-fit: cover;
  filter: saturate(.72) contrast(1.04);
  transition: filter .5s ease, transform 1.2s var(--v3-ease);
}

.anatomy-stage:hover .anatomy-media img {
  filter: saturate(.84) contrast(1.03);
  transform: scale(1.015);
}

.anatomy-stage-cutaway {
  min-height: clamp(540px,43vw,620px);
  grid-template-columns: minmax(0,1.75fr) minmax(390px,.72fr);
}

.anatomy-stage-cutaway .anatomy-media {
  min-height: clamp(540px,43vw,620px);
}

.anatomy-stage-cutaway .anatomy-detail {
  padding: clamp(1.8rem,3vw,2.6rem);
}

.anatomy-stage-cutaway .anatomy-detail h3 {
  font-size: clamp(2.15rem,3vw,3.5rem);
  overflow-wrap: break-word;
}

.anatomy-media-cutaway {
  isolation: isolate;
  background:
    radial-gradient(circle at 18% 82%,rgba(42,142,218,.14),transparent 28%),
    radial-gradient(circle at 84% 18%,rgba(113,192,227,.1),transparent 30%),
    #071522;
}

.anatomy-media-cutaway::after {
  background:
    linear-gradient(90deg,rgba(3,14,25,.16),transparent 28%,rgba(3,14,25,.04)),
    linear-gradient(180deg,rgba(3,14,25,.08),transparent 48%,rgba(3,14,25,.22));
}

.anatomy-media-cutaway img {
  object-fit: contain;
  object-position: center;
  filter: saturate(.92) contrast(1.045);
}

.anatomy-stage:hover .anatomy-media-cutaway img {
  filter: saturate(1) contrast(1.04);
  transform: scale(1.01);
}

.anatomy-media-cutaway .anatomy-grid {
  opacity: .16;
  background-image:
    linear-gradient(rgba(113,192,227,.11) 1px,transparent 1px),
    linear-gradient(90deg,rgba(113,192,227,.11) 1px,transparent 1px);
}

.anatomy-grid {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-image:
    linear-gradient(rgba(255,255,255,.1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.1) 1px, transparent 1px);
  background-size: 76px 76px;
  mask-image: linear-gradient(90deg, #000, transparent 84%);
  pointer-events: none;
}

.anatomy-hotspot {
  position: absolute;
  top: var(--y);
  left: var(--x);
  z-index: 4;
  display: grid;
  min-width: 48px;
  min-height: 48px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.8);
  border-radius: 999px;
  padding: 0;
  background: rgba(11,43,52,.72);
  box-shadow: 0 10px 30px rgba(0,0,0,.2), 0 0 0 9px rgba(255,255,255,.1);
  color: #fff;
  cursor: pointer;
  font: inherit;
  transform: translate(-50%,-50%);
  transition: min-width .28s var(--v3-ease), padding .28s var(--v3-ease), background .2s ease, box-shadow .2s ease;
  backdrop-filter: blur(12px);
}

.anatomy-hotspot span {
  font-size: .61rem;
  font-weight: 850;
  letter-spacing: .06em;
}

.anatomy-hotspot strong {
  display: none;
  margin-left: .15rem;
  font-size: .62rem;
  letter-spacing: .03em;
  white-space: nowrap;
}

.anatomy-hotspot:hover,
.anatomy-hotspot:focus-visible,
.anatomy-hotspot[aria-pressed="true"] {
  min-width: 112px;
  padding-inline: .8rem;
  background: rgba(255,255,255,.94);
  box-shadow: 0 16px 42px rgba(0,0,0,.24), 0 0 0 10px rgba(114,194,230,.16);
  color: var(--v3-ink);
}

.anatomy-hotspot:hover strong,
.anatomy-hotspot:focus-visible strong,
.anatomy-hotspot[aria-pressed="true"] strong {
  display: inline;
}

.anatomy-detail {
  position: relative;
  z-index: 3;
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  border-left: 1px solid rgba(255,255,255,.12);
  padding: clamp(1.8rem,4vw,3.5rem);
  background:
    radial-gradient(circle at 90% 10%, rgba(113,192,227,.14), transparent 30%),
    linear-gradient(150deg, #102f39, #081e27);
  color: #fff;
}

.anatomy-index {
  display: flex;
  align-items: baseline;
  gap: .6rem;
  margin-bottom: 3.2rem;
}

.anatomy-index span {
  color: var(--v3-blue);
  font-size: clamp(3.5rem,7vw,7rem);
  font-weight: 300;
  letter-spacing: -.08em;
  line-height: .7;
}

.anatomy-index small {
  color: #7f9ca5;
  font-size: .58rem;
  text-transform: uppercase;
}

.anatomy-detail .kicker { color: var(--v3-orange); }

.anatomy-detail h3 {
  margin: .7rem 0 0;
  color: #fff;
  font-size: clamp(2.3rem,4vw,4.7rem);
  letter-spacing: -.06em;
  line-height: .95;
}

.anatomy-detail > p:not(.kicker) {
  margin: 1.3rem 0 0;
  color: #aec2c8;
  font-size: .8rem;
  line-height: 1.7;
}

.anatomy-detail ul {
  display: grid;
  margin: 1.8rem 0 0;
  padding: 0;
  list-style: none;
  gap: .75rem;
}

.anatomy-detail li {
  display: flex;
  align-items: center;
  gap: .7rem;
  color: #d5e3e6;
  font-size: .7rem;
  font-weight: 700;
}

.anatomy-detail li::before {
  width: 18px;
  height: 1px;
  background: linear-gradient(90deg, var(--v3-orange), var(--v3-blue));
  content: "";
}

.anatomy-signature {
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,.13);
  padding-top: 1rem;
  color: #78949c;
  font-size: .62rem;
}

.case-film-v3-section {
  position: relative;
  background: #f8faf8;
}

.case-film {
  display: grid;
  margin-top: 3rem;
  gap: clamp(2rem,5vw,5rem);
  grid-template-columns: minmax(0,1.16fr) minmax(340px,.7fr);
  align-items: start;
}

.case-film-media {
  position: sticky;
  top: 110px;
  height: calc(100svh - 150px);
  min-height: 620px;
  max-height: 780px;
  overflow: hidden;
  border-radius: 30px;
  background: #102a34;
  box-shadow: 0 30px 80px rgba(24,68,75,.16);
}

.case-film-media figure {
  position: absolute;
  inset: 0;
  margin: 0;
  opacity: 0;
  transform: scale(1.035);
  transition: opacity .6s ease, transform 1.2s var(--v3-ease);
}

.case-film-media figure[data-active="true"] {
  z-index: 1;
  opacity: 1;
  transform: none;
}

.case-film-media picture,
.case-film-media img {
  display: block;
  width: 100%;
  height: 100%;
}

.case-film-media img {
  object-fit: cover;
  filter: saturate(.82) contrast(1.03);
}

.case-film-media figure::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(4,24,31,.88));
  content: "";
}

.case-film-media figcaption {
  position: absolute;
  right: clamp(1.2rem,3vw,2.2rem);
  bottom: clamp(1.2rem,3vw,2.2rem);
  left: clamp(1.2rem,3vw,2.2rem);
  z-index: 2;
  color: #fff;
}

.case-film-media figcaption span {
  display: block;
  margin-bottom: .55rem;
  color: var(--v3-orange);
  font-size: .6rem;
  font-weight: 830;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.case-film-media figcaption strong {
  display: block;
  max-width: 660px;
  font-size: clamp(1.5rem,3.1vw,3.2rem);
  letter-spacing: -.045em;
  line-height: 1;
}

.case-film-chapters {
  display: grid;
  padding-bottom: 6vh;
  gap: 7vh;
}

.case-film-chapters article {
  min-height: 42vh;
  border-top: 1px solid rgba(29,78,86,.16);
  padding: 2rem .25rem;
  opacity: .42;
  transition: opacity .35s ease, transform .5s var(--v3-ease);
}

.case-film-chapters article[data-active="true"],
.case-film-chapters article:focus-visible {
  opacity: 1;
  transform: translateX(-8px);
}

.case-film-chapters article > span {
  display: block;
  margin-bottom: 2.5rem;
  color: var(--v3-teal);
  font-size: 3.2rem;
  font-weight: 320;
  letter-spacing: -.06em;
}

.case-film-chapters h3 {
  margin: .7rem 0 0;
  color: var(--v3-ink);
  font-size: clamp(2rem,3.7vw,4rem);
  letter-spacing: -.055em;
  line-height: .98;
}

.case-film-chapters article > p:not(.kicker) {
  margin: 1.2rem 0 0;
  color: #60777d;
  font-size: .78rem;
  line-height: 1.72;
}

.case-film-chapters ul {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 1.5rem 0 0;
  padding: 0;
  list-style: none;
}

.case-film-chapters li {
  border: 1px solid rgba(29,78,86,.13);
  border-radius: 999px;
  padding: .48rem .7rem;
  background: #fff;
  color: #49666c;
  font-size: .61rem;
  font-weight: 730;
}

@supports (animation-timeline: view()) {
  .anatomy-stage {
    animation: v3-stage-rise linear both;
    animation-timeline: view();
    animation-range: entry 12% cover 38%;
  }

  @keyframes v3-stage-rise {
    from { clip-path: inset(8% 3% 8% 3% round 36px); transform: translateY(28px); }
    to { clip-path: inset(0 round 32px); transform: none; }
  }
}

/* Refinamento final desktop — contraste, densidade editorial e leitura */
.preview-v3 .capability-card h3 {
  font-size: clamp(1.24rem,1.48vw,1.4rem);
  letter-spacing: -.04em;
}

.preview-v3 .blog-card {
  min-height: 292px;
  padding: 1.5rem;
}

.preview-v3 .blog-card h3 {
  margin-top: 1.85rem;
}

.preview-v3 .contact-section .contact-direct div {
  color: var(--ink);
}

.preview-v3 .site-footer .footer-brand img {
  width: min(250px,100%);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  padding: .62rem .82rem;
  background: linear-gradient(135deg,rgba(255,255,255,.98),rgba(235,247,249,.94));
  box-shadow: 0 14px 38px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.8);
}

@media (max-width: 1080px) {
  .fusion-visual {
    min-height: 720px;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }

  .fusion-result {
    position: absolute;
    right: 50%;
    bottom: 2.2rem;
    width: min(440px,calc(100% - 2rem));
    min-height: 270px;
    transform: translateX(50%);
  }

  .fusion-stage.is-playing .fusion-result {
    animation-name: v3-result-arrive-mobile;
  }

  .fusion-path {
    top: auto;
    right: 28%;
    bottom: 174px;
    left: 28%;
  }

  @keyframes v3-result-arrive-mobile {
    0% { opacity: 0; filter: blur(12px); transform: translateX(50%) scale(.86); }
    70% { opacity: 1; filter: blur(0); transform: translateX(50%) scale(1.025); }
    100% { opacity: 1; transform: translateX(50%) scale(1); }
  }

  .anatomy-stage { grid-template-columns: 1fr; }
  .anatomy-media { min-height: 620px; }
  .anatomy-stage-cutaway { min-height: 0; }
  .anatomy-stage-cutaway .anatomy-media-cutaway { aspect-ratio: 1672 / 941; min-height: 0; }
  .anatomy-stage-cutaway .anatomy-hotspot { top: var(--y-art); }
  .anatomy-detail { min-height: 480px; border-top: 1px solid rgba(255,255,255,.12); border-left: 0; }

  .case-film { grid-template-columns: 1fr; }
  .case-film-media { position: relative; top: auto; height: 70svh; min-height: 560px; }
  .case-film-chapters { grid-template-columns: repeat(3,1fr); padding-bottom: 0; gap: 1px; }
  .case-film-chapters article { min-height: 390px; border: 1px solid rgba(29,78,86,.12); padding: 1.5rem; opacity: 1; }
  .case-film-chapters article > span { margin-bottom: 2.2rem; }
}

@media (max-width: 720px) {
  .preview-v3 .section { padding-block: 4rem; }
  .preview-v3 .section-head { margin-bottom: 2.15rem; }
  .preview-v3 .service-rail { padding-right: 0; }
  .ticker-toggle { display: none; }

  .fusion-stage {
    margin-inline: -2px;
    border-radius: 24px;
  }

  .fusion-stage-toolbar {
    align-items: flex-start;
    flex-direction: column;
    padding: 1rem;
  }

  .fusion-visual {
    display: flex;
    min-height: 930px;
    flex-direction: column;
  }

  .fusion-source {
    min-height: 230px;
    padding: 1.45rem;
  }

  .fusion-source-legacy {
    border-right: 0;
    border-bottom: 1px solid rgba(29,78,86,.09);
  }

  .fusion-source-climatech {
    border-top: 1px solid rgba(29,78,86,.09);
    border-left: 0;
  }

  .legacy-wordmark { font-size: 3.4rem; }

  .fusion-result {
    position: relative;
    right: auto;
    bottom: auto;
    order: 2;
    width: calc(100% - 2rem);
    min-height: 255px;
    margin: 1rem auto;
    transform: none;
  }

  .fusion-source-legacy { order: 1; }
  .fusion-source-climatech { order: 3; }
  .fusion-path { display: none; }

  .fusion-stage.is-playing .fusion-result {
    animation-name: v3-result-arrive;
  }

  .fusion-steps { grid-template-columns: 1fr; }
  .fusion-steps li { min-height: 88px; border-right: 0; border-bottom: 1px solid rgba(29,78,86,.1); }
  .fusion-steps li:last-child { border-bottom: 0; }

  .anatomy-stage { min-height: 0; border-radius: 24px; }
  .anatomy-media { min-height: 560px; }
  .anatomy-stage-cutaway .anatomy-media-cutaway {
    display: grid;
    min-height: 0;
    padding: .6rem .7rem 1rem;
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-template-rows: auto repeat(2,48px);
    gap: .42rem;
    aspect-ratio: auto;
  }
  .anatomy-stage-cutaway .anatomy-media-cutaway img {
    width: 100%;
    height: auto;
    grid-column: 1 / -1;
    grid-row: 1;
    aspect-ratio: 1672 / 941;
  }
  .anatomy-stage-cutaway .anatomy-grid { display: none; }
  .anatomy-stage-cutaway .anatomy-hotspot,
  .anatomy-stage-cutaway .anatomy-hotspot:hover,
  .anatomy-stage-cutaway .anatomy-hotspot:focus-visible,
  .anatomy-stage-cutaway .anatomy-hotspot[aria-pressed="true"] {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    min-width: 0;
    min-height: 44px;
    padding: 0;
    grid-row: auto;
    transform: none;
  }
  .anatomy-hotspot { min-width: 44px; min-height: 44px; }
  .anatomy-hotspot:hover,
  .anatomy-hotspot:focus-visible,
  .anatomy-hotspot[aria-pressed="true"] { min-width: 44px; padding: 0; }
  .anatomy-hotspot strong { display: none !important; }
  .anatomy-detail { min-height: 520px; padding: 1.5rem; }
  .anatomy-index { margin-bottom: 2.2rem; }

  .case-film-media { height: 68svh; min-height: 480px; border-radius: 24px; }
  .case-film-chapters {
    width: 100%;
    overflow-x: auto;
    padding: 0 5vw .7rem 0;
    gap: .75rem;
    grid-template-columns: none;
    grid-auto-columns: minmax(78vw,390px);
    grid-auto-flow: column;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .case-film-chapters::-webkit-scrollbar { display: none; }
  .case-film-chapters article { min-height: 315px; scroll-snap-align: start; }

  .preview-v3 .process-grid,
  .preview-v3 .blog-grid {
    width: 100%;
    overflow-x: auto;
    padding: 0 5vw .7rem 0;
    gap: .75rem;
    grid-template-columns: none;
    grid-auto-columns: minmax(78vw,390px);
    grid-auto-flow: column;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .preview-v3 .process-grid::-webkit-scrollbar,
  .preview-v3 .blog-grid::-webkit-scrollbar { display: none; }

  .preview-v3 .process-grid li:nth-child(n),
  .preview-v3 .blog-card {
    min-height: 315px;
    scroll-snap-align: start;
  }
}

@media (min-width:421px) and (max-width:720px) {
  .preview-v3 .capability-grid { grid-template-columns: repeat(2,1fr); }
  .preview-v3 .capability-card { min-height: 305px; padding: 1rem; }
  .preview-v3 .capability-icon { width: 46px; height: 46px; margin-top: 1.35rem; }
  .preview-v3 .capability-card h3 { margin-top: 1rem; font-size: 1.2rem; }
  .preview-v3 .capability-card p { font-size: .72rem; line-height: 1.52; }
  .preview-v3 .capability-foot { padding-top: .75rem; font-size: .56rem; }
}

@media (prefers-reduced-motion: reduce) {
  .preview-v3 .brand img,
  .fusion-stage *,
  .anatomy-stage *,
  .case-film *,
  .service-rail-track {
    animation: none !important;
    transition: none !important;
  }

  .fusion-source,
  .fusion-result,
  .fusion-logo-halves img,
  .fusion-path {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }
}
