/* Current public AXENOR TOP geometry, scoped to its hero. */
/* Stable TOP: one layout owner, fixed artwork ratios, no scroll-sized artwork. */
.ax-stable-hero {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: max(680px, var(--ax-hero-view-height, 100svh));
  padding: 140px clamp(28px, 3.4vw, 72px) 64px;
  display: flex;
  align-items: center;
  background: var(--ax-brand-surface, #fcfaf8);
  color: #101112;
}
.ax-stable-hero, .ax-stable-hero * { box-sizing: border-box; }
/* The TOP does not participate in generic below-the-fold section reveal effects. */
html.ax-motion-ready .ax-stable-hero.ax-motion-section { opacity: 1; translate: none; transition: none; }
.ax-stable-hero__inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 30fr) minmax(0, 70fr);
  align-items: center;
  gap: clamp(16px, 2vw, 32px);
  width: 100%;
  max-width: 1680px;
  margin-inline: auto;
}
.ax-stable-hero__copy { position: relative; z-index: 4; min-width: 0; padding-left: 30px; }
.ax-stable-hero__copy::before { content: ''; position: absolute; left: 0; top: 4px; bottom: 4px; width: 1px; background: #b38a3a; }
.ax-stable-hero__copy h1 {
  margin: 0;
  color: inherit;
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', serif;
  font-size: clamp(32px, 3.1vw, 54px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .015em;
}
.ax-stable-hero__copy h1 span { display: block; white-space: nowrap; }
.ax-stable-hero__desktop { position: relative; width: 100%; aspect-ratio: 1168 / 720; }
.ax-stable-hero__laptop { position: absolute; top: 0; left: 0; width: 100%; aspect-ratio: 1168 / 690; filter: drop-shadow(0 22px 25px rgb(17 19 21 / 12%)); }
.ax-stable-hero__phone { position: absolute; right: 1%; bottom: 3.5%; width: 19%; aspect-ratio: 364 / 752; z-index: 4; filter: drop-shadow(0 18px 22px rgb(10 12 14 / 18%)); }
.ax-stable-hero__hardware { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; display: block; object-fit: contain; z-index: 0; }
.ax-stable-hero__frame { z-index: 3; pointer-events: none; }
.ax-stable-hero__laptop-screen { position: absolute; top: 4.493%; left: 10.959%; width: 77.911%; height: 82.609%; border-radius: 1%; }
.ax-stable-hero__phone-screen { position: absolute; top: 3.59%; left: 7.967%; width: 84.341%; height: 92.686%; border-radius: 14.5% / 6.2%; }
.ax-stable-hero__laptop-screen, .ax-stable-hero__phone-screen { z-index: 1; overflow: hidden; isolation: isolate; background: #111; }
.ax-stable-hero__slide { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; display: block; object-fit: cover; object-position: center top; z-index: 1; }
.ax-stable-hero__slide.is-entering { z-index: 2; animation: ax-stable-screen-in 650ms ease-in-out both; }
.ax-stable-hero__mobile { position: relative; width: 100%; aspect-ratio: 853 / 1844; }
.ax-stable-hero__mobile-base { display: block; width: 100%; height: auto; }
.ax-stable-hero__mobile-plane { position: absolute; top: 0; left: 0; width: 853px; height: 1844px; transform-origin: 0 0; transform: scale(var(--ax-art-scale, 0)); pointer-events: none; }
.ax-stable-hero__mobile-laptop-surface, .ax-stable-hero__mobile-phone-surface { position: absolute; inset: 0; width: 853px; height: 1844px; isolation: isolate; }
.ax-stable-hero__mobile-laptop-surface { z-index: 1; clip-path: path('M134 601 L773 505 Q803 499 807 530 L790 1412 L54 1412 L108 629 Q110 607 134 601 Z'); }
.ax-stable-hero__mobile-projection { position: absolute; top: 0; left: 0; transform-origin: 0 0; }
.ax-stable-hero__browser-chrome { position: absolute; top: 0; left: 0; width: 720px; height: 58px; max-width: none; z-index: 2; }
.ax-stable-hero__browser-icons { display: block; width: 720px; height: 58px; max-width: none; }
.ax-stable-hero__browser-address { position: absolute; left: 322px; top: 19px; color: #f4f5f1; font: 17px/20px Arial, sans-serif; letter-spacing: .3px; white-space: nowrap; }
.ax-stable-hero__browser-label { position: absolute; left: 544px; top: 20px; width: 90px; color: #c9cdc6; font: 13px/18px sans-serif; text-align: center; white-space: nowrap; }
.ax-stable-hero__browser-page { position: absolute; top: 58px; bottom: 0; left: 0; right: 0; overflow: hidden; isolation: isolate; background: #252725; }
.ax-stable-hero__browser-page .ax-stable-hero__slide { object-fit: cover; object-position: left top; }
/* Restore the actual photographic housing above the laptop, including curved occlusion.
   No baked composite with a rectangular phone cut-out is used. */
.ax-stable-hero__mobile-phone-hardware { position: absolute; inset: 0; width: 853px; height: 1844px; max-width: none; z-index: 2; clip-path: path('M561 1062 C523 1059 494 1085 494 1138 L494 1731 C494 1776 510 1796 552 1794 L755 1789 C793 1788 808 1764 808 1718 L808 1152 C808 1105 791 1090 752 1085 Z'); }
/* Mask the common display surface once, not each fading image separately. */
.ax-stable-hero__mobile-phone-surface { z-index: 3; background: #08090a; clip-path: path('M567 1075 C542 1073 531 1093 531 1131 L531 1722 C531 1756 543 1770 568 1770 L761 1769 C787 1768 797 1750 797 1720 L797 1152 C797 1118 784 1100 757 1097 Z'); }
.ax-stable-hero__mobile-camera { position: absolute; inset: 0; width: 853px; height: 1844px; max-width: none; z-index: 4; }
.ax-stable-hero__motion { position: absolute; z-index: 5; bottom: 18px; left: clamp(20px, 3.4vw, 72px); display: inline-flex; justify-content: center; align-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid rgb(16 17 18 / 16%); border-radius: 50%; background: var(--ax-brand-surface, #fcfaf8); color: #44413b; cursor: pointer; transition: background-color 160ms ease; }
.ax-stable-hero__motion:hover { background: #eee8dd; }
.ax-stable-hero__motion:focus-visible { outline: 2px solid #755513; outline-offset: 4px; }
@keyframes ax-stable-screen-in { from { opacity: 0; } to { opacity: 1; } }
@media (min-width: 768px) and (max-width: 1100px) {
  .ax-stable-hero { padding: 128px 5vw 70px; }
  .ax-stable-hero__inner { grid-template-columns: 1fr; gap: 32px; }
  .ax-stable-hero__copy h1 { font-size: clamp(34px, 4.2vw, 44px); }
  .ax-stable-hero__desktop { width: min(100%, 900px); justify-self: center; }
}
@media (max-width: 767px) {
  .ax-stable-hero { display: block; padding: 0; min-height: 0; }
  .ax-stable-hero__inner { display: block; width: 100%; max-width: 600px; }
  .ax-stable-hero__copy { position: absolute; top: 12%; left: 7%; width: 86%; padding: 0; }
  .ax-stable-hero__copy::before { display: none; }
  .ax-stable-hero__copy h1 { font-size: clamp(26px, 6.7vw, 36px); line-height: 1.58; letter-spacing: .025em; }
}
@media (prefers-reduced-motion: reduce) {
  .ax-stable-hero__slide.is-entering { animation: none; }
  .ax-stable-hero__motion { transition: none; }
}

/* LP header remains unchanged; let the hero sit behind its existing header like the fixed public header. */
.website-lp .ax-stable-hero{margin-top:-78px}
.ax-stable-hero__visual{position:relative;min-width:0;width:100%}
.ax-stable-hero__screen-stack{position:absolute;inset:0;overflow:hidden}
.ax-stable-hero__motion[hidden],.ax-stable-hero__fallback{display:none}
@media(max-width:700px){.website-lp .ax-stable-hero{margin-top:-67px}}

