/* AI Offline Translator — square neon mark on a black disc.
   Override PreGantt dusk tweaks (translateX / cover) that clip the penguin.
   Background: violet-teal sunset (shared dusk.css) — PreGantt uses cyan signal. */

body.theme-neon-dusk .slant-hero--stacked .slant-hero__visual {
  margin-left: auto;
  margin-right: auto;
  justify-self: center;
  width: min(100%, 280px);
}

body.theme-neon-dusk .slant-hero__visual {
  background: #000;
  padding: 0;
  overflow: hidden;
}

body.theme-neon-dusk .slant-hero__visual .hero-logo {
  /* Keep full neon art inside the circle — cover + PreGantt translateX clips the penguin. */
  object-fit: contain;
  object-position: center;
  width: 88%;
  height: 88%;
  max-width: 88%;
  max-height: 88%;
  margin: 0;
  border-radius: 0;
  transform: none;
}

body.theme-neon-dusk .header-brand--product .brand-logo-frame {
  background: #000;
  padding: 0;
}

body.theme-neon-dusk .header-brand--product .brand-logo-frame .brand-logo {
  object-fit: contain;
  object-position: center;
  width: 88%;
  height: 88%;
  border-radius: 0;
  transform: none;
  filter: none;
}

@media (max-width: 900px) {
  body.theme-neon-dusk .slant-hero--stacked .slant-hero__visual {
    width: min(100%, 240px);
    max-width: min(100%, 240px);
    margin: 0 auto 1.5rem;
  }
}

body.theme-neon-dusk .btn--hero {
  min-height: 3.35rem;
  padding: 0 2.35rem;
  font-size: 1.08rem;
  font-weight: 650;
  letter-spacing: -0.015em;
}

/* Feature illustrations / UI shots — light art on dusk, no dark vignette wash. */
body.theme-neon-dusk .feature-panel__visual:has(> img)::after {
  display: none;
}

body.theme-neon-dusk .feature-panel__visual > img {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, 0.14);
}

/*
 * Site-only crop for GIF UI frames (files untouched):
 * 10px left + 40px right. --img-w = natural image width in px.
 */
body.theme-neon-dusk .feature-panel__visual--trim-frame {
  overflow: hidden;
  border-radius: 18px;
}

body.theme-neon-dusk .feature-panel__visual--trim-frame > img {
  width: calc(100% * var(--img-w) / (var(--img-w) - 50));
  max-width: none;
  margin-left: calc(100% * -10 / (var(--img-w) - 50));
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
