.ece-app,
.ece-landing { min-height: 100svh; }

.ece-landing {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--ece-color-white);
}

.ece-landing__background,
.ece-landing__overlay { position: absolute; inset: 0; }

.ece-landing__background {
  z-index: -2;
  background: #202020 url("../assets/endutex-facade.jpg") center / cover no-repeat;
  transform: scale(1.02);
}

.ece-landing__overlay {
  z-index: -1;
  background: linear-gradient(180deg, rgba(0,0,0,.66), rgba(0,0,0,.18) 43%, rgba(0,0,0,.43));
}

.ece-landing__container {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: 100svh;
  max-width: var(--ece-content-width);
  padding: max(var(--ece-space-3), env(safe-area-inset-top)) var(--ece-space-3)
    calc(var(--ece-space-3) + env(safe-area-inset-bottom));
}

.ece-landing__content {
  display: flex;
  align-items: center;
  padding-block: var(--ece-space-5);
}

.ece-landing__footer {
  display: flex;
  justify-content: center;
  padding-bottom: clamp(1rem, 4vh, 2.5rem);
}

.ece-landing__cta {
  display: flex;
  width: min(100%, 24rem);
  flex-direction: column;
  align-items: center;
  gap: 0.85rem;
}

.ece-form-view {
  min-height: 100svh;
  background: var(--ece-color-grey-100);
}

.ece-form-shell {
  width: min(100%, var(--ece-form-width));
  padding: max(var(--ece-space-2), env(safe-area-inset-top)) var(--ece-space-2)
    calc(var(--ece-space-4) + env(safe-area-inset-bottom));
}

.ece-step-stage { min-height: 34rem; }

.ece-step-card {
  position: relative;
  width: 100%;
  padding: clamp(1.35rem, 5vw, 2.75rem);
  border: 1px solid var(--ece-color-grey-200);
  border-radius: var(--ece-radius-lg);
  background: var(--ece-color-white);
  box-shadow: var(--ece-shadow-card);
}

.ece-step-card__header { margin-bottom: var(--ece-space-4); }

.ece-step-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: var(--ece-space-4);
}

.ece-step-actions--split { justify-content: space-between; }
