/* /about-us/ opener — full-screen photo, dark fade, white uppercase type bottom-left */
.lah { position: relative; isolation: isolate; overflow: hidden; width: 100vw; margin-left: calc(50% - 50vw);
  min-height: max(560px, calc(100vh - 150px)); min-height: max(560px, calc(100svh - 150px)); display: flex; align-items: flex-end; background: #05070d; color: #fff; }
.lah::before { content: ""; position: absolute; inset: 0; z-index: -2;
  background: linear-gradient(0deg, rgba(4, 6, 12, .92) 0%, rgba(4, 6, 12, .55) 38%, rgba(4, 6, 12, .1) 70%, rgba(4, 6, 12, .35) 100%),
              linear-gradient(90deg, rgba(4, 6, 12, .7) 0%, rgba(4, 6, 12, 0) 60%); }
.lah-in { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 max(24px, env(safe-area-inset-left, 0px)) clamp(64px, 9vh, 110px); box-sizing: border-box; }
.lah-eye { margin: 0 0 14px; font-size: 13px; font-weight: 700; letter-spacing: .3em; text-transform: uppercase; color: #ff5a6e; }
.lah-h { margin: 0; font-size: clamp(44px, 7vw, 104px); line-height: .98; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; color: #fff; text-wrap: balance; }
.lah-pillars { list-style: none; margin: 20px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 0; font-size: clamp(14px, 1.3vw, 18px); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: rgba(255, 255, 255, .9); }
.lah-pillars li { display: inline-flex; align-items: center; }
.lah-pillars li + li::before { content: ""; width: 26px; height: 1px; margin: 0 16px; background: rgba(255, 90, 110, .7); }
.lah-pillars button { position: relative; background: none; border: 0; padding: 6px 0 10px; font: inherit; letter-spacing: inherit; text-transform: inherit; color: rgba(255, 255, 255, .55); cursor: pointer; transition: color .3s ease; }
.lah-pillars button:hover, .lah-pillars .on button { color: #fff; }
.lah-pillars button i { position: absolute; left: 0; bottom: 0; height: 2px; width: 0; background: #ff5a6e; }
.lah-pillars .on button i { animation: lahBar 6s linear forwards; }
@keyframes lahBar { to { width: 100%; } }
.lah-pillars button:focus-visible { outline: 2px solid #ff5a6e; outline-offset: 4px; }
.lah-txt { margin: 20px 0 0; max-width: 40em; font-size: clamp(15px, 1.15vw, 17.5px); line-height: 1.75; color: rgba(255, 255, 255, .78); }
.lah-cta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.lah-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 30px; border: 2px solid #fff; color: #fff !important; background: transparent;
  font-size: 14px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; text-decoration: none !important; transition: background .2s ease, color .2s ease; }
.lah-btn:hover, .lah-btn:focus-visible { background: #fff; color: #0b0f1a !important; }
.lah-btn.is-ghost { border-color: rgba(255, 255, 255, .45); letter-spacing: .04em; }
.lah-btn:focus-visible { outline: 3px solid #ff5a6e; outline-offset: 3px; }
.lah-down { position: absolute; left: 50%; bottom: 22px; width: 26px; height: 42px; margin-left: -13px; border: 2px solid rgba(255, 255, 255, .6); border-radius: 14px; }
.lah-down span { position: absolute; left: 50%; top: 8px; width: 4px; height: 8px; margin-left: -2px; border-radius: 2px; background: #fff; animation: lahDot 1.8s ease-in-out infinite; }
@keyframes lahDot { 0% { opacity: 0; transform: translateY(0); } 30% { opacity: 1; } 100% { opacity: 0; transform: translateY(14px); } }
@media (prefers-reduced-motion: reduce) { .lah-bg, .lah-down span { animation: none; transition: none; transform: none; } .lah-pillars .on button i { animation: none; width: 100%; } }
@media (max-width: 640px) { .lah-pillars { flex-direction: column; } .lah-pillars li + li::before { display: none; } .lah-down { display: none; } .lah-btn { flex: 1 1 100%; } }

.lah-bgs { position: absolute; inset: 0; z-index: -3; }
.lah-bg { position: absolute; inset: 0; background-size: cover; opacity: 0; transform: scale(1.08); transition: opacity 1.4s ease, transform 7s ease-out; }
.lah-bg.on { opacity: 1; transform: scale(1); }
.lah-cv { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; pointer-events: none; }
.elementor-1129 > .elementor-element-luxah01.e-con.e-parent { padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; }

/* about hero sits under the floating header (see lux-hero-overlay) */
.lah { min-height: max(620px, 100vh); min-height: max(620px, 100svh); }
.lah::before { background: linear-gradient(180deg, rgba(4, 6, 12, .62) 0%, rgba(4, 6, 12, 0) calc(var(--hdr, 160px) + 80px)),
  linear-gradient(0deg, rgba(4, 6, 12, .92) 0%, rgba(4, 6, 12, .55) 38%, rgba(4, 6, 12, .1) 70%, rgba(4, 6, 12, .2) 100%),
  linear-gradient(90deg, rgba(4, 6, 12, .7) 0%, rgba(4, 6, 12, 0) 60%) !important; }
