/* HumanX-inspired Matilda presentation scoped to OmniEdge */
.hero .matilda-card {overflow:hidden;}
.hero .avatar-circle .omniedge-matilda-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;pointer-events:none;}
.hero .avatar-circle .omniedge-spatius-avatar-trigger{z-index:3;}
.hero .matilda-mic-row{margin-top:12px;}
.hero #micBtn.omniedge-talk-btn{appearance:none;width:auto;height:auto;min-width:172px;min-height:44px;padding:10px 24px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(62,60,94,.26);border-radius:999px;background:linear-gradient(120deg,rgba(255,255,255,.97),rgba(247,242,252,.97));color:#293553;font:600 14px/1.3 Inter,system-ui,sans-serif;box-shadow:0 5px 18px rgba(52,54,88,.12);cursor:pointer;animation:none;transform:none;transition:background .15s,transform .15s,box-shadow .15s;}
.hero #micBtn.omniedge-talk-btn:hover{background:#fff;transform:translateY(-2px);box-shadow:0 9px 24px rgba(52,54,88,.20);}
.hero #micBtn.omniedge-talk-btn:focus-visible{outline:3px solid #5a66db;outline-offset:3px;}
.hero #micBtn.omniedge-talk-btn span{font-size:19px;line-height:1;}
/* Override the previous full-viewport layout. */
#omniedgeMatildaModal:not([hidden]){position:fixed;inset:0;display:flex;align-items:center;justify-content:center;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:16px;box-sizing:border-box;background:rgba(5,23,22,.79);backdrop-filter:blur(7px);overflow:auto;z-index:2147482000;}
#omniedgeMatildaModal .omniedge-spatius-panel{position:relative;flex:none;width:min(92vw,790px);height:min(80dvh,610px);max-width:100%;max-height:100%;overflow:hidden;border-radius:18px;background:#edf5ef;box-shadow:0 26px 80px rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.6);}
#omniedgeMatildaModal iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#0d1516;display:block;}
#omniedgeMatildaModal #omniedgeMatildaModalClose{position:absolute;z-index:6;top:12px;right:12px;left:auto;display:grid;place-items:center;width:42px;height:42px;min-width:42px;min-height:42px;padding:0;color:#fff;background:rgba(29,53,51,.85);border:1px solid rgba(255,255,255,.22);border-radius:50%;font:30px/1 Arial,sans-serif;box-shadow:0 4px 12px #0003;cursor:pointer;}
#omniedgeMatildaModal #omniedgeMatildaModalClose:hover{background:#1e4039;}
#omniedgeMatildaModal #omniedgeMatildaModalClose:focus-visible{outline:3px solid #89cab2;outline-offset:3px;}
#omniedgeMatildaModal .omniedge-spatius-loading{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;pointer-events:none;overflow:auto;background:radial-gradient(ellipse at 50% 15%,#d9eee2,#edf5ef 52%,#fcfdfc);color:#173f36;font-family:Inter,system-ui,sans-serif;}
#omniedgeMatildaModal .omniedge-spatius-loading[hidden]{display:none!important;}
#omniedgeMatildaModal .omniedge-spatius-loading.is-error{pointer-events:auto;background:#edf5ef;}
.omniedge-loader-content{display:flex;flex-direction:column;align-items:center;max-width:460px;width:100%;margin:auto;}
.omniedge-loader-avatar{width:160px;height:160px;box-sizing:border-box;padding:7px;border:1px solid #a4cbb5;border-radius:50%;background:#ffffff99;box-shadow:0 0 0 12px #ffffff55,0 14px 34px #173f3618;margin:10px 0 26px;}
.omniedge-loader-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 25%;border-radius:50%;display:block;}
.omniedge-loader-kicker{font:700 10px/1.3 Inter,system-ui,sans-serif;letter-spacing:2.2px;color:#51836b;}
.omniedge-loader-content h2{color:#173f36;font:650 clamp(23px,3vw,32px)/1.25 Inter,system-ui,sans-serif;letter-spacing:-.5px;margin:14px 0 12px;}
.omniedge-loader-content p{color:#567064;font:400 14px/1.6 Inter,system-ui,sans-serif;margin:0;max-width:370px;}
.omniedge-loader-dots{display:flex;gap:7px;margin:22px 0 8px;}
.omniedge-loader-dots i{width:7px;height:7px;border-radius:50%;background:#438b70;animation:omniedge-dot 1.3s ease-in-out infinite;}
.omniedge-loader-dots i:nth-child(2){animation-delay:.16s}.omniedge-loader-dots i:nth-child(3){animation-delay:.32s}
@keyframes omniedge-dot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}
body.omniedge-modal-open{overflow:hidden!important;zoom:1!important;transform:none!important;}
@media(max-width:640px){#omniedgeMatildaModal:not([hidden]){padding:10px}#omniedgeMatildaModal .omniedge-spatius-panel{width:min(96vw,520px);height:min(76dvh,620px);border-radius:16px}.omniedge-loader-avatar{width:125px;height:125px;margin-bottom:23px}.omniedge-loader-content h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.omniedge-loader-dots i{animation:none;opacity:.7}}

/* HumanX reference: full-bleed portrait, white information header and video-overlay CTA. */
/* HumanX reference dimensions: video stage 482 x 518, plus a compact 64px header. */
.hero .matilda-card.omniedge-ambassador-card{max-width:482px;width:100%;padding:0!important;overflow:hidden;border-radius:21px;background:#fff;border:1px solid #dce7e1;box-shadow:0 20px 55px rgba(24,52,44,.12);color:#123f38;aspect-ratio:482 / 582}
.hero .omniedge-ambassador-head{min-height:64px;height:64px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:12px;background:#fff}
.hero .omniedge-ambassador-identity{display:flex;align-items:center;gap:11px;min-width:0}
.hero .omniedge-ambassador-mark{flex:0 0 35px;width:35px;height:35px;border-radius:50%;background:#e2f1e8;color:#167767;display:grid;place-items:center;font:600 14px/1 Inter,system-ui,sans-serif}
.hero .omniedge-ambassador-head .matilda-name{font-size:13px;font-weight:500;color:#0d2830;line-height:1.35}
.hero .omniedge-ambassador-head .matilda-role{font-size:12px;font-weight:650;color:#0d2830;margin-top:3px;line-height:1.3}
.hero .omniedge-ambassador-head .status-pill{display:inline-flex;gap:7px;align-items:center;background:#f5faf6;color:#243e3a;border:1px solid #dcebe1;padding:8px 11px;font-size:10px;white-space:nowrap;font-weight:600}
.hero .omniedge-ambassador-head .status-dot{background:#0d7868;flex-shrink:0}
.hero .omniedge-ambassador-stage{height:518px;min-height:0;flex:1 1 auto;padding:0!important;display:block;position:relative;overflow:hidden;background:#1d2824}
.hero .omniedge-ambassador-stage .omniedge-matilda-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block;pointer-events:none}
.hero .omniedge-ambassador-stage #hero-talk-button{position:absolute;z-index:2;left:50%;bottom:28px;transform:translateX(-50%);width:auto;height:auto;min-height:58px;min-width:190px;padding:13px 24px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;border:1px solid rgba(255,255,255,.87);background:rgba(91,61,48,.30);backdrop-filter:blur(9px);color:white;font:600 15px/1.3 Inter,system-ui,sans-serif;box-shadow:0 6px 22px #0003;cursor:pointer;text-align:center;white-space:nowrap}
.hero .omniedge-ambassador-stage #hero-talk-button:hover{background:rgba(55,49,39,.57)}
.hero .omniedge-ambassador-stage #hero-talk-button:focus-visible{outline:3px solid #ffffff;outline-offset:3px}
.hero .omniedge-ambassador-stage #hero-talk-button span{font-size:16px}
@media(max-width:640px){.hero .matilda-card.omniedge-ambassador-card{max-width:100%;aspect-ratio:auto}.hero .omniedge-ambassador-stage{height:min(107.5vw,518px)}.hero .omniedge-ambassador-head{padding:13px 16px}}
@media(min-width:851px){.hero .hero-banner{grid-template-columns:minmax(0,1.02fr) minmax(0,482px);align-items:center}}


/* FIX 2026-10-26: force preview video and CTA to stay INSIDE the card.
   Uses the real OmniEdge markup in index.html/new_landing.html. */
.hero .hero-banner .matilda-card.omniedge-ambassador-card {
  display:flex !important;
  flex-direction:column !important;
  position:relative !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:482px !important;
  height:auto !important;
  aspect-ratio:auto !important;
  padding:0 !important;
  margin:0 auto !important;
  overflow:hidden !important;
  border-radius:22px !important;
  background:#fff !important;
  isolation:isolate;
}
.hero .hero-banner .matilda-card.omniedge-ambassador-card .matilda-head.omniedge-ambassador-head {
  position:relative !important;
  z-index:1;
  display:flex !important;
  flex:0 0 64px !important;
  width:100% !important;
  height:64px !important;
  min-height:64px !important;
  box-sizing:border-box !important;
  padding:10px 18px !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  background:#fff !important;
}
.hero .hero-banner .omniedge-ambassador-identity {display:flex !important;align-items:center !important;gap:10px !important;min-width:0 !important;}
.hero .hero-banner .omniedge-ambassador-identity > div {min-width:0;text-align:left !important;}
.hero .hero-banner .omniedge-ambassador-identity .matilda-name,
.hero .hero-banner .omniedge-ambassador-identity .matilda-role {display:block !important;text-align:left !important;margin:0 !important;}
.hero .hero-banner .omniedge-ambassador-identity .matilda-name {font:500 13px/1.35 Inter,system-ui,sans-serif !important;color:#0d2830 !important;}
.hero .hero-banner .omniedge-ambassador-identity .matilda-role {font:650 12px/1.45 Inter,system-ui,sans-serif !important;color:#0d2830 !important;}
.hero .hero-banner .matilda-card.omniedge-ambassador-card > .matilda-avatar-stage.omniedge-ambassador-stage {
  position:relative !important;
  display:block !important;
  flex:none !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:482 / 518 !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#1d2824 !important;
}
.hero .hero-banner .omniedge-ambassador-stage > video.omniedge-matilda-preview {
  position:absolute !important;
  display:block !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 !important;
  object-fit:cover !important;
  object-position:center 25% !important;
  border:0 !important;
  border-radius:0 !important;
  pointer-events:none;
}
.hero .hero-banner .omniedge-ambassador-stage > #hero-talk-button {
  position:absolute !important;
  display:inline-flex !important;
  z-index:3 !important;
  left:50% !important;
  right:auto !important;
  top:auto !important;
  bottom:26px !important;
  transform:translateX(-50%) !important;
  width:auto !important;
  min-width:190px !important;
  max-width:calc(100% - 24px) !important;
  height:auto !important;
  min-height:56px !important;
  padding:12px 24px !important;
  margin:0 !important;
  border:1px solid rgba(255,255,255,.85) !important;
  border-radius:999px !important;
  background:rgba(79,60,49,.35) !important;
  backdrop-filter:blur(8px);
  color:#fff !important;
  font:600 15px/1.3 Inter,system-ui,sans-serif !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  cursor:pointer;
  white-space:nowrap;
}
@media (max-width:640px) {
  .hero .hero-banner .matilda-card.omniedge-ambassador-card {max-width:482px !important;}
  .hero .hero-banner .omniedge-ambassador-stage > #hero-talk-button {min-height:48px !important;bottom:18px !important;}
}


/* Compact first-screen OmniEdge hero, 2026-10-26.
   Keeps video fully clipped within its card and the two CTAs on one row. */
@media (min-width: 851px) {
  .hero .hero-banner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 390px) !important;
    gap: clamp(20px, 2.7vw, 42px) !important;
    padding: 22px clamp(24px, 4vw, 60px) 30px !important;
    min-height: 0 !important;
    align-items: start !important;
  }
  .hero .hero-banner .hero-banner-inner {
    max-width: none !important;
    width: 100% !important;
    align-self: center !important;
  }
  .hero .hero-banner .hero-title {
    font-size: clamp(32px, 3.1vw, 46px) !important;
    line-height: 1.14 !important;
    margin-bottom: 14px !important;
  }
  .hero .hero-banner .hero-lede {
    margin-bottom: 18px !important;
    line-height: 1.55 !important;
  }
  .hero .hero-banner .hero-actions {
    display: flex !important;
    flex-flow: row nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 12px !important;
    margin-top: 14px !important;
  }
  .hero .hero-banner .hero-actions .hero-btn,
  .hero .hero-banner .hero-actions .btn-primary {
    padding: 13px 19px !important;
    font-size: 14px !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
  }
  .hero .hero-banner .matilda-card.omniedge-ambassador-card {
    width: 100% !important;
    max-width: 390px !important;
    margin: 0 0 0 auto !important;
    justify-self: end !important;
  }
  .hero .hero-banner .matilda-card.omniedge-ambassador-card
    > .matilda-avatar-stage.omniedge-ambassador-stage {
    height: auto !important;
    aspect-ratio: 482 / 518 !important;
  }
}
@media (min-width: 851px) and (max-width: 1080px) {
  .hero .hero-banner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 330px) !important;
    gap: 20px !important;
    padding-inline: 22px !important;
  }
  .hero .hero-banner .matilda-card.omniedge-ambassador-card {
    max-width: 330px !important;
  }
  .hero .hero-banner .hero-title { font-size: clamp(28px, 3vw, 35px) !important; }
  .hero .hero-banner .hero-actions .hero-btn,
  .hero .hero-banner .hero-actions .btn-primary {
    padding: 11px 13px !important;
    font-size: 12px !important;
  }
}
@media (max-width: 850px) {
  .hero .hero-banner { padding-top: 22px !important; padding-bottom: 28px !important; }
  .hero .hero-banner .matilda-card.omniedge-ambassador-card {
    max-width: min(390px, 100%) !important;
  }
}
