.agentic-home {
  --home-action: #122b3b;
  --home-action-alt: #254b60;
  --home-action-hover: #21475b;
  --home-brand-accent: #17695b;
  --home-ink: #122b3b;
  --home-muted: #5b6c75;
  --home-line: #dce4e5;
  --home-paper: #f2f6f5;
  color: var(--home-ink);
  background: #ffffff;
  font-family: var(--font-sans);
  line-height: 1.4;
  overflow-x: clip;
}

.agentic-home main { max-width: none; margin: 0; padding: 0; }
.agentic-home section { margin: 0; }
.agentic-home button, .agentic-home input { font: inherit; }
.agentic-home a { color: inherit; text-decoration: none; }
.agentic-home a:hover { text-decoration: none; }
.agentic-home h1, .agentic-home h2, .agentic-home h3, .agentic-home p { margin: 0; }
.agentic-home [hidden] { display: none !important; }
.agentic-home :is(a, button, summary):focus-visible { outline: 3px solid var(--home-brand-accent); outline-offset: 5px; }
.agentic-home button { cursor: pointer; }
.agentic-home .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.home-skip { position: absolute; top: 12px; left: 12px; z-index: 10; padding: 12px 16px; border-radius: 8px; background: #ffffff; color: var(--home-action) !important; transform: translateY(-150%); }
.home-skip:focus { transform: translateY(0); }

.home-hero {
  position: relative;
  isolation: isolate;
  overflow: clip;
  width: 100%;
  min-height: 650px; height: auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; column-gap: 64px; padding: 58px max(32px, calc((100vw - 1200px) / 2)) 0;
  color: var(--home-ink);
  background: #f3f6f4;
}
.home-hero-art { min-width: 0; width: 100%; max-width: 510px; margin: 0; justify-self: end; overflow: hidden; border: 1px solid #173747; border-radius: 18px; color: #ffffff; background: #122b3b; box-shadow: 0 22px 48px -26px rgb(15 42 57 / 32%); }

.home-topbar { position: relative; z-index: 5; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; max-width: 1264px; height: 80px; margin: 0 auto; padding: 0 32px; background: #ffffff; }
.home-brand { display: inline-flex; flex-wrap: wrap; align-items: center; column-gap: 10px; max-width: 250px; font-size: 24px; font-weight: 600; letter-spacing: -.7px; line-height: 1.05; }
.home-brand .brand-mark { width: 40px; height: 28px; flex: 0 0 40px; }
.home-brand .brand-dot { color: var(--home-brand-accent); }
.home-footer .brand-dot { color: #a6d4c7; }
.home-top-actions { display: flex; justify-content: flex-end; gap: 10px; align-items: center; white-space: nowrap; }
.home-button { display: inline-flex; justify-content: center; align-items: center; gap: 16px; min-height: 44px; padding: 12px 20px; border: 1px solid transparent; border-radius: 9px; background: var(--home-action); color: #ffffff !important; font-size: 14px; font-weight: 600; line-height: 1.1; transition: background 160ms ease, transform 160ms ease; }
.home-button:hover { background: var(--home-action-hover); }
.home-button.is-outline { color: var(--home-ink) !important; background: #ffffff; border-color: #dddddd; }
.home-button.is-outline:hover { background: #f3f6f4; border-color: #c3c3c3; }
.home-top-actions .home-button, .home-hero-actions .home-button { border-radius: 999px; min-height: 42px; font-size: 13px; }
.home-hero-heading { min-width: 0; max-width: 590px; margin: 0; padding: 0 0 18px; text-align: left; }
.home-hero-eyebrow { margin-bottom: 20px !important; color: var(--home-brand-accent); font-size: 12px; font-weight: 600; letter-spacing: .04em; }
.home-hero-heading h1 { max-width: 590px; font-size: clamp(42px, 4.2vw, 60px); font-weight: 500; line-height: 1.02; letter-spacing: -.045em; text-wrap: balance; }
.home-hero-heading h1 span { display: block; }
.home-hero-description { max-width: 430px; margin-top: 22px !important; color: #536670; font-size: 17px; line-height: 1.55; text-wrap: pretty; }
.home-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.home-hero-actions .home-button { padding: 13px 23px; min-height: 45px; }
.home-nav-shell { position: relative; }
.home-nav { display: flex; align-items: center; gap: 4px; white-space: nowrap; }
.home-nav > a { padding: 12px 14px; color: #526570; font-size: 13px; font-weight: 500; line-height: 1; transition: color 160ms ease; }
.home-nav > a:hover { color: var(--home-action); }
.home-hero-products { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; width: 100%; margin-top: 46px; }
.home-hero-product { display: flex; align-items: center; gap: 12px; padding: 20px 0; border-top: 1px solid var(--home-line); }
.home-hero-product > :first-child { display: grid; flex: 0 0 32px; place-items: center; width: 32px; height: 32px; color: #2b6b66; font-size: 23px; }
.home-hero-product svg { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.home-hero-product strong { display: block; color: #324d5c; font-size: 14px; font-weight: 600; }
.home-hero-product small { display: block; margin-top: 3px; color: var(--home-muted); font-size: 11px; }
.home-hero-product:hover strong { color: var(--home-action); }
#home-nav-toggle { display: none; }


.home-hero-assurance { display: flex; align-items: center; gap: 8px; margin-top: 25px !important; color: #536b6d; font-size: 12px; }
.home-hero-assurance > span { color: #17695b; }
.home-infra-body { padding: 26px 26px 12px; }
.home-hero-art svg { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.home-infra-app { display: flex; align-items: center; gap: 13px; padding: 17px 19px; border: 1px solid #dce4e5; border-radius: 9px; color: var(--home-ink); background: #f5f8f6; }
.home-infra-app > svg { flex: 0 0 25px; width: 25px; height: 25px; color: #527870; }
.home-infra-app h2 { font-size: 16px; font-weight: 600; letter-spacing: -.02em; }
.home-infra-app p { margin-top: 3px; color: #526971; font-size: 10px; }
.home-infra-connector { position: relative; display: flex; justify-content: center; align-items: center; height: 45px; }
.home-infra-connector::before { position: absolute; top: 0; bottom: 0; left: 50%; width: 1px; content: ""; background: #60858c; }
.home-infra-connector::after { position: absolute; bottom: 0; left: calc(50% - 3px); width: 6px; height: 6px; content: ""; border-right: 1px solid #8bb1b5; border-bottom: 1px solid #8bb1b5; transform: rotate(45deg); }
.home-infra-connector span { position: relative; padding: 2px 9px; border: 1px solid #486975; border-radius: 4px; color: #d1e3e5; background: #122b3b; font-size: 9px; letter-spacing: .06em; }
.home-infra-platform { padding: 18px 16px 0; border: 1px solid #658c8e; border-radius: 11px; background: #183c49; box-shadow: 0 10px 25px rgb(0 0 0 / 10%); }
.home-infra-brand { display: flex; align-items: center; gap: 8px; margin-bottom: 17px; font-size: 18px; font-weight: 600; letter-spacing: -.03em; }
.home-infra-brand .brand-mark { width: 38px; height: 27px; }
.home-infra-layer { margin-left: auto; color: #bad2d4; font-size: 9px; font-weight: 400; letter-spacing: 0; }
.home-infra-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.home-infra-products a { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 14px 10px 13px; border: 1px solid #4e737d; border-radius: 7px; background: #244b57; }
.home-infra-products a:hover { border-color: #9ac4bd; background: #2c5660; }
.home-infra-products svg { width: 24px; height: 24px; margin-bottom: 14px; color: #b1d8ce; }
.home-infra-products strong { font-size: 12px; font-weight: 600; white-space: nowrap; letter-spacing: -.02em; }
.home-infra-products small { margin-top: 4px; color: #c2d5d9; font-size: 9px; }
.home-infra-controls { display: flex; justify-content: center; align-items: center; gap: 8px; min-height: 46px; color: #c8deda; font-size: 10px; }
.home-infra-controls svg { width: 15px; height: 15px; color: #9ecabd; }
.home-infra-controls i { width: 2px; height: 2px; border-radius: 50%; background: #9ecabd; }
.home-infra-connector.is-outbound { height: 26px; }
.home-infra-checkout { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border: 1px solid #4a6977; border-radius: 8px; color: #e0eaec; background: #193441; font-size: 12px; }
.home-infra-checkout svg { width: 21px; height: 21px; color: #a9c7c8; }
.home-infra-checkout-arrow { margin-left: auto; color: #a9c7c8; font-size: 18px; }
.home-infra-result { display: flex; justify-content: center; align-items: center; gap: 9px; padding: 18px 0 2px; color: #d4e6e2; font-size: 11px; }
.home-infra-result svg { width: 17px; height: 17px; color: #93bdb2; }
.home-infra-result small { margin-left: 4px; color: #9cb8c2; font-size: 9px; }
.home-hero-art figcaption { padding: 3px 16px 17px; color: #9cb8c2; font-size: 9px; text-align: center; }

.home-section { max-width: 1264px; margin: 0 auto !important; padding: 118px 32px 0; scroll-margin-top: 32px; }
.home-section-heading { max-width: 760px; margin: 0 auto 72px; text-align: center; }
.home-section-heading h2 { font-size: clamp(28px, 2.55vw, 38px); font-weight: 600; line-height: 1.12; letter-spacing: -.045em; text-wrap: balance; }
.home-section-heading p { max-width: 620px; margin: 17px auto 0; color: var(--home-muted); font-size: 16px; line-height: 1.45; text-wrap: balance; }
.home-usecase-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; padding: 20px 4px 42px; }
.home-usecase { overflow: hidden; border: 1px solid var(--home-line); border-radius: 12px; background: #ffffff; box-shadow: 0 8px 24px rgb(0 0 0 / 4%); }
.home-window-bar { display: flex; align-items: center; justify-content: center; gap: 4px; min-height: 28px; padding: 6px 12px; border-bottom: 1px solid rgb(0 0 0 / 7%); background: #f2f6f5; color: #687a82; font-size: 10px; line-height: 1; }
.home-window-bar > i { width: 5px; height: 5px; border: 1px solid currentColor; border-radius: 50%; }
.home-window-bar > span:nth-child(2) { flex: 1; text-align: center; }
.home-window-bar > span:first-child, .home-window-bar > span:last-child { opacity: .65; }
.home-usecase-content { min-height: 330px; display: flex; flex-direction: column; padding: 28px 26px 23px; }
.home-case-number { color: var(--home-action); font-size: 51px; font-weight: 700; line-height: 1; letter-spacing: -.06em; }
.home-usecase h3 { margin-top: 20px; font-size: 25px; font-weight: 600; line-height: 1.1; letter-spacing: -.035em; }
.home-usecase-content > p { margin-top: 12px; font-size: 18px; line-height: 1.3; letter-spacing: -.025em; }
.home-case-footer { margin-top: auto; padding-top: 25px; color: var(--home-muted); font-size: 12px; }
.home-case-footer strong { display: block; color: var(--home-ink); font-weight: 600; }
.home-case-footer span { display: block; margin-top: 4px; font-size: 10px; }

.home-products { padding-top: 142px; }
.home-vault, .home-product { overflow: hidden; border: 1px solid var(--home-line); border-radius: 18px; background: #ffffff; box-shadow: 0 8px 30px rgb(18 43 59 / 3%); }
.home-vault { display: grid; grid-template-columns: 1.1fr 1fr; padding: 10px; }
.home-product-visual { position: relative; overflow: hidden; display: grid; place-items: center; min-width: 0; height: 400px; border-radius: 11px; color: #ffffff; background: radial-gradient(ellipse at 50% 75%, #254d5b 0, #142f40 56%, #102634 100%); }
.home-visual-caption { position: absolute; bottom: 16px; left: 12px; right: 12px; color: #a5b9c1; font-size: 9px; font-weight: 400; text-align: center; }
.home-product-copy { align-self: center; padding: 38px 40px; }
.home-product-copy h3 { font-size: 30px; font-weight: 600; line-height: 1.1; letter-spacing: -.04em; }
.home-product-copy p { max-width: 380px; margin-top: 16px; color: var(--home-muted); font-size: 16px; line-height: 1.4; }
.home-product-copy .home-button { margin-top: 24px; padding: 11px 17px; min-height: 38px; font-size: 12px; border-radius: 6px; }
.home-card-stack { position: relative; width: 270px; height: 180px; transform: none; }
.home-payment-card { position: relative; display: block; width: 260px; height: 164px; padding: 22px; overflow: hidden; border: 1px solid rgb(255 255 255 / 24%); border-radius: 12px; color: #ffffff; background: linear-gradient(120deg, #295260 0, #183a4a 60%, #214656 100%); box-shadow: 0 18px 26px rgb(0 0 0 / 24%); font-size: 13px; text-align: left; }
.home-payment-card > :first-child { display: block; font-weight: 600; }
.home-payment-card > span:nth-child(4) { position: absolute; left: 22px; bottom: 23px; max-width: 145px; font-size: 10px; }
.home-payment-card > small { position: absolute; left: 22px; bottom: 10px; color: #c1c1c1; font-size: 8px; }
.home-card-stack > .home-payment-card { position: absolute; top: 0; left: 0; z-index: 3; }
.home-card-stack > .home-payment-card:nth-child(2) { transform: translate(12px, 32px); z-index: 2; background: linear-gradient(125deg, #769b98, #3a656a); }
.home-card-stack > .home-payment-card:nth-child(3) { transform: translate(24px, 63px); z-index: 1; background: linear-gradient(125deg, #c1d8cc, #789d98); }
.home-card-chip { display: block; width: 29px; height: 23px; margin-top: 23px; border: 1px solid #969696; border-radius: 5px; background: repeating-linear-gradient(90deg, transparent 0 8px, #8c8c8c 8px 9px), repeating-linear-gradient(0deg, #d6d6d6 0 7px, #8c8c8c 7px 8px); }
.home-card-number { position: absolute; bottom: 20px; right: 20px; color: rgb(255 255 255 / 60%); font-size: 10px; letter-spacing: 2px; }
.home-product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; margin-top: 30px; }
.home-product { padding: 10px; }
.home-product .home-product-copy { padding: 26px 12px 21px; }
.home-product .home-product-copy p { max-width: 440px; }
.home-store-visual { display: flex; flex-direction: column; justify-content: center; gap: 22px; }
.home-store-grid { display: grid; grid-template-columns: repeat(5, 54px); gap: 15px; transform: none; }
.home-store-tile { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; width: 54px; height: 54px; padding: 4px; border: 1px solid rgb(255 255 255 / 40%); border-radius: 12px; background: #244959; color: #ffffff; font-size: 21px; font-weight: 700; box-shadow: inset 0 2px 3px rgb(255 255 255 / 25%), 0 3px 0 #2b2b2b, 0 8px 12px rgb(0 0 0 / 24%); transition: transform 160ms ease; }
.home-store-tile:hover { background: #315b69; }
.home-store-tile:active { background: #315b69; }
.home-store-tile span { width: 100%; overflow: hidden; font-size: 7px; line-height: 1.1; font-weight: 500; text-overflow: ellipsis; }
.home-store-caption { position: absolute; top: 24px; left: 15%; right: 15%; display: flex; justify-content: space-between; gap: 12px; color: #bdbdbd; font-size: 10px; transform: none; }
.home-issuing-window { width: min(86%, 430px); overflow: hidden; border: 1px solid #c1d2d6; border-radius: 9px; background: #f9f9f9; color: #2e2e2e; box-shadow: 0 24px 28px rgb(0 0 0 / 36%); transform: none; }
.home-issuing-window .home-window-bar { background: #dddddd; }
.home-card-list { padding: 12px 16px 16px; margin: 0; list-style: none; }
.home-card-list li { display: grid; grid-template-columns: 1fr auto; align-items: center; row-gap: 5px; column-gap: 10px; padding: 12px 0; border-bottom: 1px solid #e5e5e5; font-size: 12px; }
.home-card-list li:last-child { border-bottom: 0; }
.home-card-list li :is(small, span) { color: #7b7b7b; font-size: 10px; }
.home-card-list li strong { font-size: 12px; font-weight: 600; }
.home-card-list-heading { display: flex; justify-content: space-between; gap: 12px; padding: 17px 16px 0; font-size: 13px; }
.home-card-list-heading span { color: #939393; font-size: 9px; }
.home-card-list li strong, .home-card-list li > span { grid-column: 1; }
.home-card-list li em { grid-column: 2; grid-row: 1 / span 2; padding: 4px 7px; border-radius: 4px; background: #ebebeb; color: #7c7c7c; font-size: 9px; font-style: normal; }
.home-card-list li em.is-active { background: #e5f2eb; color: #17614e; }

.home-integration { display: grid; grid-template-columns: .9fr 1.1fr; gap: 12px; padding: 12px; border: 1px solid #e5e5e5; border-radius: 18px; background: var(--home-paper); box-shadow: none; }
.home-integration + .home-integration { margin-top: 32px; }
.home-integration-copy { align-self: center; padding: 36px 32px; }
.home-integration-copy h3 { font-size: 32px; font-weight: 600; line-height: 1.05; letter-spacing: -.045em; }
.home-integration-copy > p { margin-top: 18px; color: var(--home-muted); font-size: 15px; line-height: 1.4; }
.home-integration-tabs { display: flex; flex-direction: column; gap: 8px; margin-top: 26px; }
.home-integration-tabs [role="tab"] { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; min-height: 45px; padding: 12px 14px; border: 1px solid #d6d6d6; border-radius: 7px; background: #ffffff; color: #313131; font-size: 13px; font-weight: 600; text-align: left; box-shadow: 0 2px 2px rgb(0 0 0 / 8%); }
.home-integration-tabs [role="tab"][aria-selected="true"] { border-color: #17695b; background: #e7f1ec; box-shadow: none; }
.home-integration-tabs [role="tab"] small { font-size: 15px; line-height: 1; font-weight: 400; }
.home-integration-tabs [role="tab"] > span { font-weight: 400; color: #929292; }
.home-integration-stage { position: relative; min-width: 0; min-height: 590px; border-radius: 11px; color: #e2e2e2; background: #122b3b; }
.home-tab-panels, .home-code-panel { position: relative; height: 100%; min-height: inherit; }
.home-code-window { position: relative; width: calc(100% - 40px); margin: 20px auto; overflow: hidden; border: 1px solid #2f2f2f; border-radius: 6px; background: #131313; box-shadow: 0 10px 22px rgb(0 0 0 / 15%); }
.home-code-bar { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 36px; padding: 10px 15px; border-bottom: 1px solid #353535; color: #9d9d9d; font-size: 10px; }
.home-copy { margin: -4px -6px -4px 0; padding: 5px 8px; border: 1px solid #424242; border-radius: 4px; color: #d0d0d0; background: #262626; font-size: 10px; }
.home-copy:hover { background: #3e3e3e; }
.home-code-block, pre.home-code-block, .home-code-block pre { max-width: 100%; min-height: 294px; margin: 0; padding: 17px; border: 0; border-radius: 0; background: transparent; color: #c3c3c3; font-family: var(--font-mono); font-size: 10px; line-height: 1.85; text-align: left; overflow-x: auto; white-space: pre; }
.home-code-block pre { padding: 0; }
.home-code-block code { font: inherit; }
.home-code-overlay { position: absolute; right: 20px; bottom: 28px; width: min(77%, 390px); overflow: hidden; border: 1px solid #787878; border-radius: 7px; background: #f9f9f9; color: #3c3c3c; box-shadow: 0 20px 28px rgb(0 0 0 / 28%); transform: rotate(-2deg); font-size: 11px; }
.home-code-overlay > :not(.home-window-bar) { margin: 0; padding: 12px 17px; }
.home-code-overlay .home-window-bar { background: #e0e0e0; }
.home-code-overlay ul { margin: 0; padding: 0 17px 17px; list-style: none; }
.home-code-overlay li { padding: 8px 0; border-top: 1px solid #e5e5e5; color: #757575; }
.home-code-overlay strong { font-size: 12px; }
.home-checkout-preview > div { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.home-preview-tag { padding: 3px 6px; border-radius: 4px; background: #ececec; color: #7d7d7d; font-size: 8px; }
.home-checkout-preview > p { margin-top: 15px !important; color: #7c7c7c; }
.home-code-overlay .home-preview-total { display: block; margin-top: 7px; font-size: 26px; font-weight: 600; line-height: 1.2; letter-spacing: -.04em; }
.home-preview-total small { color: #909090; font-size: 10px; letter-spacing: 0; }
.home-checkout-preview ol { margin: 13px 0 11px; padding: 0; list-style: none; }
.home-checkout-preview li { font-size: 10px; padding: 6px 0; }
.home-checkout-preview li::before { content: "✓"; padding-right: 8px; color: #7b7b7b; }
.home-preview-approved { display: block; padding: 7px 9px; border: 1px solid #dadada; border-radius: 4px; background: #ececec; color: #526570; font-size: 9px; }
.home-integration.is-reversed { grid-template-columns: 1.1fr .9fr; margin-top: 32px; }
.home-integration.is-reversed .home-integration-stage { grid-column: 1; grid-row: 1; }
.home-integration.is-reversed .home-integration-copy { grid-column: 2; grid-row: 1; }
.home-message-preview { position: absolute; right: 24px; bottom: 24px; width: min(75%, 350px); padding: 20px 18px; border: 1px solid #656565; border-radius: 11px; background: linear-gradient(120deg, #28505f, #163545); box-shadow: 0 18px 25px rgb(0 0 0 / 30%); color: #ededed; font-size: 12px; transform: none; }
.home-message-preview > :is(p, div) { max-width: 92%; margin-bottom: 11px; padding: 9px 12px; border-radius: 14px; background: #e3e3e3; color: #2d2d2d; }
.home-message-preview > :is(p, div):last-child { margin: 0 0 0 auto; width: max-content; max-width: 100%; background: var(--home-action-alt); color: #ffffff; }
.home-message-preview .home-message-bar { display: flex; justify-content: space-between; width: 100%; max-width: none; margin-bottom: 13px; padding: 0; border-radius: 0; background: transparent; color: #dbdbdb; font-size: 10px; }
.home-message-preview .home-chat-card { padding: 13px 13px 8px; border: 1px solid #7f7f7f; border-radius: 12px; background: #122b3b; color: #ffffff; }
.home-chat-card > span:first-child { display: flex; align-items: center; gap: 5px; color: #bcbcbc; font-size: 10px; }
.home-chat-card .brand-mark { width: 16px; height: 16px; }
.home-chat-card strong { display: block; margin-top: 10px; font-size: 26px; font-weight: 600; letter-spacing: -.04em; }
.home-chat-card small { display: block; margin-top: 3px; color: #959595; font-size: 8px; }
.home-chat-approve { display: block; margin-top: 12px; padding: 8px 0 3px; border-top: 1px solid #454545; color: #cfcfcf; font-size: 9px; }
.home-message-preview .home-chat-bubble.is-reply { margin-left: auto; background: var(--home-action-alt); color: #ffffff; }
.home-message-preview > small { display: block; color: #acacac; font-size: 8px; text-align: center; }

.home-ecosystem-grid { position: relative; isolation: isolate; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 36px; row-gap: 44px; padding: 10px 0 20px; }
.home-ecosystem-grid::before { content: ""; position: absolute; inset: 60px 10% 60px; z-index: -1; background: linear-gradient(90deg, transparent 49.8%, #e0e0e0 49.8% 50.2%, transparent 50.2%), repeating-linear-gradient(0deg, transparent 0 99px, #e0e0e0 99px 100px); }
.home-ecosystem-tile { overflow: hidden; border: 1px solid #dbdbdb; border-radius: 9px; background: #ffffff; box-shadow: 0 3px 0 #efefef, 0 8px 15px rgb(0 0 0 / 4%); transform: none; text-align: center; }
.home-ecosystem-tile:nth-child(3n) { transform: none; }
.home-ecosystem-tile:nth-child(4n + 2) { transform: none; }
.home-ecosystem-symbol { display: inline-flex; justify-content: center; align-items: center; width: 33px; height: 33px; margin: 19px 5px 19px 13px; color: var(--home-action); font-size: 24px; vertical-align: middle; }
.home-ecosystem-name { display: inline-block; margin: 0 12px 0 0; font-size: 12px; font-weight: 600; vertical-align: middle; }
.home-mission { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 660px; max-width: 940px; margin: 0 auto !important; padding: 85px 24px; text-align: center; }
.home-mission-orbit { position: relative; display: grid; place-items: center; width: 420px; max-width: 100%; height: 260px; margin-bottom: 40px; }
.home-mission-orbit::before, .home-mission-orbit::after { content: ""; position: absolute; width: 390px; max-width: 100%; height: 180px; border: 1px solid #e1e1e1; border-radius: 50%; transform: rotate(-25deg); }
.home-mission-orbit::after { transform: rotate(25deg); border-color: #e4e4e4; }
.home-mission-orbit .home-payment-card { transform: rotate(-12deg); background: linear-gradient(125deg, #295462, #122b3b); box-shadow: 0 20px 40px rgb(0 0 0 / 18%); }
.home-mission h2 { max-width: 680px; font-size: clamp(32px, 4vw, 54px); font-weight: 600; line-height: 1.04; letter-spacing: -.05em; text-wrap: balance; }
.home-mission p { max-width: 590px; margin-top: 18px; color: var(--home-muted); font-size: 16px; line-height: 1.5; }
.home-mission .home-button { margin-top: 27px; }

.home-faq-window { max-width: 950px; margin: 0 auto 145px; overflow: hidden; border: 1px solid #dfdfdf; border-radius: 12px; background: #fbfbfb; box-shadow: 0 8px 32px rgb(18 43 59 / 4%); }
.home-faq-window > .home-window-bar { min-height: 35px; background: #eaeaea; font-size: 11px; }
.home-faq-content { padding: 54px 66px 56px; }
.home-faq-content > h2 { font-size: 38px; font-weight: 600; line-height: 1.1; letter-spacing: -.045em; text-align: center; }
.home-faq-content > p { margin-top: 16px; color: var(--home-muted); font-size: 15px; text-align: center; }
.home-faq-tabs { display: flex; justify-content: center; gap: 5px; margin: 28px auto 30px; }
.home-faq-tabs [role="tab"] { padding: 10px 20px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: #7d7d7d; font-size: 13px; font-weight: 600; }
.home-faq-tabs [role="tab"][aria-selected="true"] { border-color: #d7d7d7; background: #ebebeb; color: #414141; }
.home-faq-tabs [role="tab"] > span { display: none; }
.home-faq-panel details { border-top: 1px solid var(--home-line); }
.home-faq-panel details:last-child { border-bottom: 1px solid #e3e3e3; }
.home-faq-panel summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 19px 0; color: #303030; font-size: 16px; font-weight: 600; list-style: none; cursor: pointer; }
.home-faq-panel summary::-webkit-details-marker { display: none; }
.home-faq-panel summary::after { content: "+"; color: #838383; font-size: 24px; font-weight: 400; line-height: 1; }
.home-faq-panel details[open] summary::after { content: "−"; }
.home-faq-panel details > p { max-width: 680px; padding: 0 30px 22px 0; color: #757575; font-size: 14px; line-height: 1.55; }
.home-faq-panel details a { color: var(--home-brand-accent); text-decoration: underline; text-underline-offset: 3px; }

.home-footer { position: relative; overflow: hidden; padding-top: 78px; color: #ffffff; background: var(--home-action); }
.home-footer-top { display: grid; grid-template-columns: 1.2fr 1.6fr; gap: 80px; max-width: 1264px; margin: 0 auto; padding: 0 32px 45px; }
.home-footer-brand h2 { font-size: 30px; line-height: 1.1; font-weight: 600; letter-spacing: -.04em; }
.home-footer-brand p { max-width: 320px; margin-top: 18px; color: rgb(255 255 255 / 75%); font-size: 15px; line-height: 1.4; }
.home-footer-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 25px; }
.home-footer-links nav { display: flex; flex-direction: column; gap: 10px; font-size: 12px; line-height: 1.2; }
.home-footer-links nav :is(h3, strong) { margin-bottom: 5px; font-size: 11px; font-weight: 500; color: rgb(255 255 255 / 50%); }
.home-footer-links a { color: rgb(255 255 255 / 88%); }
.home-footer-links a:hover { color: #ffffff; text-decoration: underline; text-underline-offset: 4px; }
.home-footer-bottom { display: flex; justify-content: space-between; gap: 25px; max-width: 1264px; margin: 0 auto; padding: 0 32px 42px; color: rgb(255 255 255 / 60%); font-size: 10px; }
.home-footer-marquee { display: flex; align-items: center; justify-content: space-evenly; gap: 30px; min-width: 850px; padding: 15px 25px; border-top: 1px solid rgb(255 255 255 / 15%); border-bottom: 1px solid rgb(255 255 255 / 15%); color: rgb(255 255 255 / 50%); font-size: 11px; white-space: nowrap; }
.home-footer-wordmark { width: 100%; padding: 24px 16px 0; color: #35505e; font-size: clamp(78px, 15.9vw, 265px); font-weight: 700; line-height: .84; letter-spacing: -.045em; text-align: center; white-space: nowrap; user-select: none; }

@media (min-width: 768px) {
  .home-nav { display: flex !important; }
  .home-nav > .home-nav-start, .home-nav > .home-nav-support { display: none; }
}

@media (max-width: 1050px) and (min-width: 768px) {
  .home-hero { height: auto; }
  .home-hero { column-gap: 30px; padding: 48px 28px 0; }
  .home-hero-heading { padding: 0; }
  .home-hero-heading h1 { font-size: 46px; }
  .home-hero-description { font-size: 16px; }
  .home-flow-body { padding: 16px; }
  .home-hero-products { padding-bottom: 12px; }
  .home-topbar { gap: 14px; padding: 0 28px; }
  .home-topbar .home-brand { font-size: 22px; }
  .home-top-actions .is-outline { display: none; }
  .home-nav > a { padding: 11px 10px; font-size: 12px; }
  .home-section { padding-left: 28px; padding-right: 28px; }
  .home-usecase-grid { gap: 20px; }
  .home-usecase-content { min-height: 350px; padding: 25px 20px 20px; }
  .home-usecase h3 { font-size: 23px; }
  .home-usecase-content > p { font-size: 16px; }
  .home-product-visual { height: 340px; }
  .home-product-copy { padding: 32px 26px; }
  .home-integration-copy { padding: 28px 20px; }
  .home-integration-copy h3 { font-size: 28px; }
  .home-ecosystem-grid { column-gap: 22px; }
  .home-ecosystem-symbol { display: flex; margin: 14px auto 2px; }
  .home-ecosystem-name { display: block; margin: 0 7px 18px; }
  .home-footer-top { gap: 40px; }
}

@media (max-width: 767px) {
  .home-hero { display: flex; flex-direction: column; align-items: stretch; min-height: 0; padding: 40px 22px 0; gap: 0; }
  .home-hero-heading { padding: 0; max-width: 520px; margin: 0 auto; width: 100%; }
  .home-infra-body { padding: 20px 15px 10px; }
  .home-infra-app { padding: 14px 12px; gap: 9px; }
  .home-infra-app h2 { font-size: 15px; }
  .home-infra-app p { font-size: 9px; }
  .home-infra-platform { padding: 15px 10px 0; }
  .home-infra-brand { font-size: 16px; gap: 6px; margin-bottom: 14px; }
  .home-infra-brand .brand-mark { width: 32px; height: 23px; }
  .home-infra-layer { font-size: 8px; }
  .home-infra-products { gap: 5px; }
  .home-infra-products a { padding: 12px 6px; }
  .home-infra-products strong { font-size: 10px; }
  .home-infra-products small { font-size: 8px; }
  .home-infra-result { gap: 6px; font-size: 10px; }
  .home-infra-result small { display: block; margin: 2px 0 0; font-size: 9px; }
  .home-hero-eyebrow { margin-bottom: 17px !important; font-size: 11px; }
  .home-hero-art { align-self: center; margin-top: 34px; border-radius: 14px; }
  .home-topbar { display: flex; justify-content: space-between; height: 72px; gap: 10px; padding: 0 20px; }
  .home-brand { max-width: 175px; font-size: 20px; gap: 6px; }
  .home-brand .brand-mark { width: 36px; height: 26px; flex-basis: 36px; }
  .home-top-actions { display: none; }
  .home-hero-heading h1 { max-width: 500px; font-size: clamp(32px, 8.6vw, 48px); line-height: 1.08; letter-spacing: -.04em; }
  .home-hero-description { max-width: 350px; margin-top: 19px !important; font-size: 15px; line-height: 1.5; }
  .home-hero-actions { gap: 10px; margin-top: 24px; }
  .home-hero-actions .home-button { min-height: 42px; padding: 12px 19px; font-size: 12px; }
  .home-nav-shell { position: static; margin-left: auto; }
  #home-nav-toggle { display: grid; place-items: center; width: 44px; min-height: 44px; padding: 10px; border: 0; background: #ffffff; color: #324d5c; font-size: 0; line-height: 1; }
  #home-nav-toggle span { font-family: var(--app-font-native-sans); font-size: 20px; }
  .home-nav { position: absolute; top: calc(100% - 7px); left: 20px; right: 20px; display: flex; flex-direction: column; align-items: stretch; gap: 4px; max-height: calc(100svh - 90px); overflow-y: auto; padding: 10px; border: 1px solid #e3e3e3; border-radius: 12px; background: #ffffff; box-shadow: 0 16px 35px rgb(0 0 0 / 12%); }
  .home-nav[data-open="false"] { display: none; }
  .home-nav > a { padding: 14px; border-radius: 7px; color: #5e5e5e; font-size: 13px; }
  .home-nav > a:hover { background: #f6f6f6; }
  .home-nav > .home-nav-start { color: #ffffff; background: var(--home-action); }
  .home-hero-products { gap: 12px; width: 100%; max-width: 510px; align-self: center; margin-top: 32px; }
  .home-hero-product { display: block; padding: 15px 0 19px; }
  .home-hero-product > :first-child { display: flex; justify-content: flex-start; width: 26px; height: 25px; margin-bottom: 7px; font-size: 20px; }
  .home-hero-product strong { font-size: 12px; }
  .home-hero-product small { margin-top: 4px; font-size: 9px; line-height: 1.25; }
  .home-section { max-width: 540px; padding: 76px 22px 0; scroll-margin-top: 18px; }
  .home-section-heading { margin-bottom: 40px; }
  .home-section-heading h2 { font-size: 29px; line-height: 1.08; }
  .home-section-heading p { margin-top: 15px; font-size: 14px; line-height: 1.45; }
  .home-usecase-grid { grid-template-columns: 1fr; gap: 32px; max-width: 380px; margin: 0 auto; padding: 0 6px 0; }
  .home-usecase-content { min-height: 290px; padding: 26px 24px 22px; }
  .home-usecase h3 { font-size: 26px; }
  .home-usecase-content > p { font-size: 18px; }
  .home-products { padding-top: 92px; }
  .home-vault { grid-template-columns: 1fr; padding: 8px; }
  .home-product-visual { height: 325px; }
  .home-product-copy { padding: 28px 17px 24px; }
  .home-product-copy h3 { font-size: 29px; }
  .home-product-copy p { margin-top: 13px; font-size: 15px; }
  .home-product-copy .home-button { margin-top: 20px; }
  .home-product-grid { grid-template-columns: 1fr; gap: 26px; margin-top: 26px; }
  .home-product { padding: 8px; }
  .home-product .home-product-copy { padding: 26px 16px 24px; }
  .home-store-grid { grid-template-columns: repeat(5, 44px); gap: 12px; }
  .home-store-tile { width: 44px; height: 44px; border-radius: 10px; font-size: 18px; }
  .home-store-tile span { font-size: 6px; }
  .home-issuing-window { width: 87%; }
  .home-card-list { padding: 8px 12px 12px; }
  .home-card-list li { padding: 12px 0; font-size: 10px; }
  .home-card-list li strong { font-size: 11px; }
  .home-integration { grid-template-columns: 1fr; gap: 0; padding: 8px; }
  .home-integration-copy { padding: 25px 17px 29px; }
  .home-integration-copy h3 { font-size: 29px; }
  .home-integration-copy > p { font-size: 14px; }
  .home-integration-tabs { gap: 8px; margin-top: 21px; }
  .home-integration-tabs [role="tab"] { min-height: 43px; }
  .home-integration-stage { min-height: 470px; }
  .home-code-window { width: calc(100% - 24px); margin: 12px auto; }
  .home-code-bar { padding: 9px 11px; }
  .home-code-block, pre.home-code-block, .home-code-block pre { padding: 12px; font-size: 9px; line-height: 1.75; }
  .home-code-block pre { padding: 0; }
  .home-code-overlay { right: 13px; bottom: 17px; width: 82%; font-size: 10px; }
  .home-code-overlay > :not(.home-window-bar) { padding: 10px 12px; }
  .home-code-overlay ul { padding: 0 12px 10px; }
  .home-integration.is-reversed { grid-template-columns: 1fr; }
  .home-integration.is-reversed .home-integration-copy { grid-column: 1; grid-row: 1; }
  .home-integration.is-reversed .home-integration-stage { grid-column: 1; grid-row: 2; }
  .home-message-preview { right: 13px; bottom: 18px; width: 82%; padding: 16px 14px; font-size: 11px; }
  .home-ecosystem-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; row-gap: 25px; padding: 5px 2px; }
  .home-ecosystem-tile:nth-child(4n + 2) { transform: none; }
  .home-ecosystem-symbol { display: flex; margin: 13px auto 2px; }
  .home-ecosystem-name { display: block; margin: 0 7px 17px; font-size: 11px; }
  .home-mission { min-height: 580px; padding: 72px 22px 45px; }
  .home-mission-orbit { margin-bottom: 30px; height: 240px; overflow: clip; }
  .home-mission h2 { font-size: 37px; }
  .home-mission p { margin-top: 18px; font-size: 14px; }
  .home-faq-window { margin-bottom: 80px; }
  .home-faq-content { padding: 33px 21px 30px; }
  .home-faq-content > h2 { font-size: 30px; }
  .home-faq-content > p { margin-top: 13px; font-size: 13px; }
  .home-faq-tabs { gap: 3px; margin: 22px 0 20px; }
  .home-faq-tabs [role="tab"] { padding: 9px 12px; font-size: 12px; }
  .home-faq-panel summary { padding: 17px 0; font-size: 14px; gap: 14px; }
  .home-faq-panel details > p { padding: 0 3px 20px 0; font-size: 13px; }
  .home-footer { padding-top: 65px; }
  .home-footer-top { grid-template-columns: 1fr; gap: 38px; padding: 0 25px 35px; }
  .home-footer-brand h2 { font-size: 28px; }
  .home-footer-brand p { max-width: 280px; font-size: 14px; }
  .home-footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 18px; }
  .home-footer-links nav { font-size: 12px; }
  .home-footer-bottom { display: flex; flex-direction: column; gap: 8px; padding: 0 25px 30px; }
  .home-footer-marquee { justify-content: flex-start; gap: 26px; padding: 14px 25px; font-size: 10px; }
  .home-footer-wordmark { font-size: 15.9vw; padding: 22px 8px 2px; }
}

/* A complete architecture is the baseline; CSS scores are enhancement only. */
.agentic-home { --home-motion-feedback: 160ms; --home-motion-entry: 700ms; --home-motion-ease: cubic-bezier(.23, 1, .32, 1); }
.home-scene-controls[hidden], .home-motion-steps[hidden] { display: none; }
.home-scene-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; padding: 9px 16px; border-bottom: 1px solid #54737b; color: #bed4d5; font-size: 10px; }
.home-scene-controls > div { display: flex; gap: 5px; }
.home-scene-controls button { display: grid; place-items: center; width: 30px; height: 28px; padding: 0; border: 1px solid #64848c; border-radius: 5px; background: #173b49; color: #ebf4ef; font: inherit; font-size: 17px; cursor: pointer; transition: background var(--home-motion-feedback) ease; }
.home-scene-controls button:disabled { opacity: .4; cursor: default; }
.home-scene-controls button:focus-visible, .home-motion-steps button:focus-visible { outline: 2px solid #d4eee3; outline-offset: 3px; }
.home-scene-progress { display: block; visibility: hidden; height: 2px; overflow: hidden; background: #355661; }
[data-motion-ready="true"] > .home-scene-progress { visibility: visible; }
.home-scene-progress i { display: block; width: 100%; height: 100%; background: #b7daca; transform-origin: left; }
.home-request-context { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding-bottom: 14px; color: #a9c8cc; font-size: 9px; }
.home-request-context code { padding: 4px 6px; border: 1px solid #527781; border-radius: 4px; color: #c6e5d9; font-family: var(--font-mono); font-size: 9px; }
.home-motion-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; margin: 3px 26px 16px; }
.home-motion-steps button { position: relative; display: flex; align-items: center; justify-content: center; gap: 5px; min-width: 0; min-height: 34px; padding: 7px 4px; border: 1px solid #51727b; border-radius: 5px; color: #bbd2d4; background: #163744; font: inherit; font-size: 9px; cursor: pointer; }
.home-motion-steps button span { color: #8caeb4; font-size: 8px; }
.home-motion-steps button::after { position: absolute; inset: -1px; border: 1px solid #b7daca; border-radius: inherit; content: ""; opacity: 0; pointer-events: none; }
.home-motion-steps button[aria-pressed="true"]::after { opacity: 1; }
.home-infra-body { perspective: 1200px; }
:is(.home-infra-app, .home-infra-platform, .home-infra-controls, .home-infra-checkout, .home-infra-result) { position: relative; transform-origin: 50% 0; }
:is(.home-infra-app, .home-infra-controls, .home-infra-checkout, .home-infra-result)::after { position: absolute; inset: -3px; border: 1px solid #b7daca; border-radius: 10px; content: ""; opacity: 0; pointer-events: none; }
.home-infra-result::after { inset: 5px -4px -2px; }
.home-infra-controls::after { inset: 6px 0; border-radius: 5px; }
.home-infra-connector::before { width: 2px; opacity: .75; }
.home-infra-connector::after { border-color: #b7daca; }
.home-flow-packet { position: absolute; top: 1px; left: calc(50% - 3px); width: 6px; height: 6px; border-radius: 2px; background: #c8ecdb; opacity: 0; pointer-events: none; }
[data-motion-step] :is(.home-infra-app, .home-infra-controls, .home-infra-checkout, .home-infra-result)::after { opacity: 0 !important; }
[data-motion-step="0"] .home-infra-app::after,
[data-motion-step="1"] .home-infra-controls::after,
[data-motion-step="2"] .home-infra-checkout::after,
[data-motion-step="3"] .home-infra-result::after { opacity: 1 !important; }
.home-product-visual > .home-scene-controls { position: absolute; top: 12px; right: 14px; left: 14px; z-index: 5; min-height: 36px; padding: 0 0 9px; border-bottom-color: #54737b; }
.home-product-visual > .home-scene-progress { position: absolute; bottom: 0; right: 0; left: 0; }
.home-card-stack { perspective: 1000px; }

@media (prefers-reduced-motion: no-preference) {
  [data-motion-ready="true"] > .home-scene-progress i { animation: home-scene-clock var(--home-scene-duration) linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-app { animation: home-request-assemble var(--home-motion-entry) var(--home-motion-ease) both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-platform { animation: home-platform-assemble var(--home-motion-entry) var(--home-motion-ease) 80ms both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-checkout { animation: home-request-assemble var(--home-motion-entry) var(--home-motion-ease) 160ms both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-app::after { animation: home-request-focus 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-controls::after { animation: home-authorization-focus 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-checkout::after { animation: home-checkout-focus 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-result::after { animation: home-receipt-focus 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-infra-result { animation: home-receipt-return 6400ms var(--home-motion-ease) both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-flow-packet { animation: home-request-packet 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .is-outbound .home-flow-packet { animation-name: home-checkout-packet; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-motion-steps button:nth-child(1)::after { animation: home-request-focus 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-motion-steps button:nth-child(2)::after { animation: home-authorization-focus 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-motion-steps button:nth-child(3)::after { animation: home-checkout-focus 6400ms linear both paused; }
  [data-home-scene="payment"][data-motion-ready="true"] .home-motion-steps button:nth-child(4)::after { animation: home-receipt-focus 6400ms linear both paused; }
  [data-home-scene="vault"][data-motion-ready="true"] .home-payment-card:nth-child(1) { animation: home-vault-front 3600ms var(--home-motion-ease) both paused; }
  [data-home-scene="vault"][data-motion-ready="true"] .home-payment-card:nth-child(2) { animation: home-vault-middle 3600ms var(--home-motion-ease) both paused; }
  [data-home-scene="vault"][data-motion-ready="true"] .home-payment-card:nth-child(3) { animation: home-vault-back 3600ms var(--home-motion-ease) both paused; }
  [data-home-scene="issuing"][data-motion-ready="true"] .home-issuing-window { animation: home-issuing-assemble 700ms var(--home-motion-ease) both paused; }
  [data-home-scene="issuing"][data-motion-ready="true"] .home-card-list li { animation: home-issuing-limit 2800ms var(--home-motion-ease) both paused; }
  [data-home-scene="issuing"][data-motion-ready="true"] .home-card-list li:nth-child(2) { animation-delay: 250ms; }
  [data-home-scene="issuing"][data-motion-ready="true"] .home-card-list li:nth-child(3) { animation-delay: 500ms; }
}
@keyframes home-scene-clock { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes home-request-assemble { from { opacity: .6; transform: translateY(24px) rotateX(4deg); } to { opacity: 1; transform: none; } }
@keyframes home-platform-assemble { from { opacity: .6; transform: translateY(24px) rotateX(4deg) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes home-request-focus { 0%, 3% { opacity: 0; } 7%, 18% { opacity: 1; } 23%, 100% { opacity: 0; } }
@keyframes home-authorization-focus { 0%, 21% { opacity: 0; } 26%, 41% { opacity: 1; } 47%, 100% { opacity: 0; } }
@keyframes home-checkout-focus { 0%, 46% { opacity: 0; } 51%, 65% { opacity: 1; } 72%, 100% { opacity: 0; } }
@keyframes home-receipt-focus { 0%, 71% { opacity: 0; } 77%, 91% { opacity: 1; } 100% { opacity: 0; } }
@keyframes home-receipt-return { 0%, 70% { opacity: .4; transform: translateY(12px); } 84%, 100% { opacity: 1; transform: none; } }
@keyframes home-request-packet { 0%, 9% { opacity: 0; transform: translateY(0); } 11% { opacity: 1; } 20% { opacity: 1; transform: translateY(37px); } 22%, 100% { opacity: 0; transform: translateY(37px); } }
@keyframes home-checkout-packet { 0%, 47% { opacity: 0; transform: translateY(0); } 50% { opacity: 1; } 65% { opacity: 1; transform: translateY(19px); } 69%, 100% { opacity: 0; transform: translateY(19px); } }
@keyframes home-vault-front { 0% { transform: translateY(24px) rotateX(4deg); opacity: .65; } 24% { transform: none; opacity: 1; } 48%, 70% { transform: translate(-18px, -12px) rotate(-4deg); } 100% { transform: none; } }
@keyframes home-vault-middle { 0%, 8% { transform: translate(12px, 50px); opacity: .5; } 32% { transform: translate(12px, 32px); opacity: 1; } 48%, 70% { transform: translate(12px, 32px); } 100% { transform: translate(12px, 32px); } }
@keyframes home-vault-back { 0%, 16% { transform: translate(24px, 82px); opacity: .4; } 40% { transform: translate(24px, 64px); opacity: 1; } 48%, 70% { transform: translate(43px, 75px) rotate(4deg); } 100% { transform: translate(24px, 64px); } }
@keyframes home-issuing-assemble { from { opacity: .6; transform: perspective(1000px) translateY(24px) rotateY(-4deg); } to { opacity: 1; transform: none; } }
@keyframes home-issuing-limit { 0%, 8% { opacity: .45; transform: translateX(12px); } 27%, 70% { opacity: 1; transform: none; } 100% { opacity: 1; transform: none; } }
@media (hover: hover) and (pointer: fine) {
  .home-button:hover { transform: translateY(-1px); }
  .home-store-tile:hover { transform: translateY(-4px) rotate(4deg); }
  .home-store-tile:active { transform: translateY(1px); }
  .home-scene-controls button:not(:disabled):hover { background: #315864; }
  .home-motion-steps button:hover { color: #edf6f0; background: #254d5a; }
}
@media (max-width: 767px) {
  .home-motion-steps { margin-right: 15px; margin-left: 15px; gap: 4px; }
  .home-motion-steps button { gap: 3px; font-size: 11px; }
  .home-motion-steps button span { display: none; }
  .home-scene-controls { min-height: 48px; }
  .home-scene-controls button { width: 36px; height: 34px; }
}
@media (pointer: coarse) {
  .home-scene-controls button { width: 44px; height: 44px; }
  .home-motion-steps button { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  .agentic-home *, .agentic-home *::before, .agentic-home *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  [data-motion-ready="true"] .home-scene-progress { visibility: hidden; }
  [data-motion-step="0"] .home-infra-app::after,
  [data-motion-step="1"] .home-infra-controls::after,
  [data-motion-step="2"] .home-infra-checkout::after,
  [data-motion-step="3"] .home-infra-result::after { opacity: 1; }
}

/* Architectural opening: the object is a credential, never a live transaction. */
.home-hero { min-height: calc(100svh - 80px); grid-template-columns: minmax(0, .38fr) minmax(0, .62fr); gap: 0 20px; padding: 38px max(36px, calc((100vw - 1800px) / 2)) 0; }
.home-hero-heading { position: relative; z-index: 2; max-width: 640px; padding: 10px 0 30px; }
.home-hero-heading h1 { max-width: 660px; font-size: clamp(52px, 5.4vw, 102px); line-height: .98; letter-spacing: -.055em; }
.home-hero-description { max-width: 420px; font-size: 18px; }
.home-hero-products { align-self: end; max-width: 1600px; margin: 0 auto; }
.home-spatial-stage { position: relative; align-self: stretch; width: 100%; min-width: 0; min-height: 700px; margin: 0; color: #122b3b; isolation: isolate; }
.home-spatial-stage > .home-scene-controls { position: absolute; z-index: 8; top: 0; left: 20px; right: 12px; padding: 10px 0; border-color: #c9d8d3; color: #45625d; font-size: 12px; }
.home-spatial-stage .home-scene-controls button { color: #173b49; background: #ffffffb3; border-color: #b3c8bf; }
.home-spatial-stage > .home-scene-progress { position: absolute; z-index: 8; top: 51px; left: 20px; right: 12px; background: #d5e1db; }
.home-spatial-stage .home-scene-progress i { background: #357f6a; }
.home-spatial-world { position: absolute; inset: 50px 0 90px; perspective: 1200px; perspective-origin: 50% 40%; }
.home-spatial-floor { position: absolute; width: 88%; height: 75%; top: 28%; left: 7%; border: 1px solid #b9cfc3; border-radius: 50%; transform: rotateX(66deg) rotateZ(-14deg) translateZ(-90px); background: repeating-linear-gradient(90deg, transparent 0 79px, #bdcfc355 79px 80px), repeating-linear-gradient(0deg, transparent 0 79px, #bdcfc355 79px 80px); opacity: .55; }
.home-spatial-world > [data-spatial-layer] { position: absolute; transform-style: preserve-3d; }
.home-spatial-scope-entry { left: 12%; top: 27%; width: 77%; height: 65%; }
.home-spatial-scope { position: absolute; inset: 0; border: 1px solid #92b4a6; border-radius: 26px; background: #d9e9dfab; box-shadow: 0 20px 50px -38px #315e4d; transform: rotateX(14deg) rotateY(-10deg) rotateZ(-8deg) translateZ(-45px); }
.home-spatial-scope-label, .home-spatial-scope-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 22px; font-size: 12px; }
.home-spatial-scope-label > span:first-child { font-size: 22px; color: #286c55; }
.home-spatial-scope-label > span:last-child { margin-left: auto; font-family: var(--font-mono); font-size: 11px; }
.home-spatial-scope-footer { position: absolute; left: 0; bottom: 0; right: 0; padding: 20px 25px; }
.home-spatial-scope-footer > span:last-child { text-align: right; }
.home-spatial-scope-footer strong { display: block; margin-top: 4px; color: #5f796e; font-size: 11px; font-weight: 400; }
.home-spatial-request-entry { width: 290px; top: 9%; left: 1%; }
.home-spatial-request { padding: 20px 22px; border: 1px solid #d2ded9; border-radius: 16px; background: #ffffff; box-shadow: 0 18px 35px -25px #26473b66; transform: rotateX(7deg) rotateY(12deg) rotateZ(-7deg) translateZ(15px); }
.home-spatial-object-label { display: block; color: #678077; font-size: 11px; font-weight: 600; letter-spacing: .035em; }
.home-spatial-request p { margin: 14px 0 20px; color: #203d37; font-size: 18px; line-height: 1.3; }
.home-spatial-request-id { display: flex; justify-content: space-between; align-items: center; font-family: var(--font-mono); font-size: 11px; }
.home-spatial-request-id i { color: #326f58; font: 28px/1 var(--font-sans); }
.home-spatial-card-entry { width: clamp(360px, 33vw, 580px); left: 23%; top: 36%; }
.home-spatial-card { position: relative; aspect-ratio: 1.6; padding: 27px 30px; overflow: hidden; border: 1px solid #52717c; border-radius: 22px; color: #f3f9f5; background: linear-gradient(120deg, #17394b, #102b3a 62%, #214b50); box-shadow: 0 3px 0 #58767a, 0 5px 0 #183c46, 0 30px 50px -22px #0a293c80; transform: rotateX(13deg) rotateY(-15deg) rotateZ(-10deg) translateZ(65px); }
.home-spatial-card::after { position: absolute; width: 370px; height: 370px; top: -210px; right: -160px; border: 1px solid #a9c9bd55; border-radius: 50%; box-shadow: 0 0 0 50px #b2d2c808, 0 0 0 100px #b2d2c808; content: ''; pointer-events: none; }
.home-spatial-card-top { display: flex; align-items: center; gap: 10px; font-size: 22px; font-weight: 600; letter-spacing: -.03em; }
.home-spatial-card-top .brand-mark { width: 42px; height: 30px; }
.home-spatial-card-type { margin-left: auto; color: #a2c4bd; font-size: 10px; letter-spacing: .06em; }
.home-spatial-chip { position: relative; width: 43px; height: 33px; margin-top: 34px; border: 1px solid #d4d5b1; border-radius: 7px; background: linear-gradient(130deg, #b6c6ad, #e0ddba); }
.home-spatial-chip::before, .home-spatial-chip::after { position: absolute; top: 10px; width: 100%; height: 1px; background: #778f7b; content: ''; }
.home-spatial-chip::after { top: 20px; }.home-spatial-chip i { position: absolute; left: 13px; top: 0; bottom: 0; width: 16px; border-right: 1px solid #778f7b; border-left: 1px solid #778f7b; }
.home-spatial-card-number { margin-top: 15px; font-family: var(--font-mono); font-size: clamp(15px, 1.5vw, 23px); letter-spacing: .05em; }
.home-spatial-card-bottom { display: flex; justify-content: space-between; align-items: end; margin-top: 23px; color: #e2ede7; font-size: 12px; }
.home-spatial-card-bottom strong { display: block; margin-top: 4px; color: #a6c3bc; font-size: 11px; font-weight: 400; }
.home-spatial-limit { color: #e6f6dc; font-size: 32px; font-weight: 500; line-height: .9; letter-spacing: -.05em; }
.home-spatial-limit small { display: block; margin-top: 7px; font-size: 10px; letter-spacing: .08em; text-align: right; }
.home-spatial-receipt-entry { width: 250px; right: 0; top: 57%; }
.home-spatial-receipt { padding: 21px; border: 1px solid #c4d9ca; border-radius: 6px 6px 16px 16px; background: #fcfdf5; box-shadow: 0 20px 34px -25px #152e3599; transform: rotateX(8deg) rotateY(-9deg) rotateZ(5deg) translateZ(110px); }
.home-spatial-receipt-check { display: grid; place-items: center; width: 35px; height: 35px; margin: 19px 0 14px; border: 1px solid #b5d6ba; border-radius: 50%; color: #296a4d; background: #e4f2d8; font-size: 23px; }
.home-spatial-receipt h2 { font-size: 20px; font-weight: 500; letter-spacing: -.03em; }
.home-spatial-receipt p { margin-top: 6px; color: #638071; font-size: 12px; }
.home-spatial-receipt > strong { display: block; margin: 16px 0; color: #254938; font-size: 30px; font-weight: 500; letter-spacing: -.04em; }
.home-spatial-receipt > strong small { font-size: 11px; letter-spacing: 0; }
.home-spatial-receipt-footer { display: flex; flex-direction: column; gap: 8px; padding-top: 12px; border-top: 1px dashed #bfd4bf; color: #597062; font-size: 11px; }
.home-spatial-receipt-footer code { font-family: var(--font-mono); font-size: 11px; }
.home-spatial-bottom { position: absolute; right: 12px; left: 20px; bottom: 6px; }
.home-spatial-bottom .home-motion-steps { margin: 0; gap: 8px; }
.home-spatial-bottom .home-motion-steps button { min-height: 36px; color: #4d6e60; border-color: #b8cdc0; background: #edf4ee; font-size: 11px; }
.home-spatial-bottom .home-motion-steps button::after { border-color: #427c62; }
.home-spatial-bottom figcaption { margin-top: 12px; color: #6d8077; font-size: 11px; text-align: center; }
.home-architecture { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.home-architecture .home-section-heading { margin-bottom: 0; text-align: left; }
.home-architecture-art { justify-self: center; }
/* Existing product chapters use the same tangible card material at a wider scale. */
.home-vault { grid-template-columns: 1.2fr .8fr; }
.home-vault-visual { height: 550px; perspective: 1200px; }
.home-vault-visual .home-card-stack { width: 78%; max-width: 480px; height: 300px; transform: rotateX(12deg) rotateY(-14deg) rotateZ(-8deg); transform-style: preserve-3d; }
.home-vault-visual .home-payment-card { width: 100%; height: 270px; padding: 25px; border-radius: 18px; }
.home-vault-visual .home-payment-card:first-child { z-index: 3; }
.home-vault-visual .home-payment-card:nth-child(2) { transform: translate(25px, 45px) translateZ(-30px); }
.home-vault-visual .home-payment-card:nth-child(3) { transform: translate(50px, 90px) translateZ(-60px); }
@media (prefers-reduced-motion: no-preference) {
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-scope-entry { animation: spatial-scope-entry 1200ms cubic-bezier(.23,1,.32,1) both paused; }
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-request-entry { animation: spatial-request-entry 1200ms cubic-bezier(.23,1,.32,1) 90ms both paused; }
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-card-entry { animation: spatial-card-entry 1200ms cubic-bezier(.23,1,.32,1) 180ms both paused; }
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-receipt-entry { animation: spatial-receipt-entry 1200ms cubic-bezier(.23,1,.32,1) 270ms both paused; }
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-scope { animation: spatial-permission 9600ms linear both paused; }
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-card { animation: spatial-credential 9600ms linear both paused; }
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-request { animation: spatial-intent 9600ms linear both paused; }
 [data-spatial-hero][data-motion-ready="true"] .home-spatial-receipt { animation: spatial-return 9600ms linear both paused; }
}
@keyframes spatial-scope-entry { from { transform: translate3d(0,130px,-160px) rotateX(20deg) scale(.8); opacity: .1; } to { transform: none; opacity: 1; } }
@keyframes spatial-request-entry { from { transform: translate3d(-150px,-70px,-50px) rotateY(24deg); opacity: .1; } to { transform: none; opacity: 1; } }
@keyframes spatial-card-entry { from { transform: translate3d(0,150px,160px) rotateX(18deg) rotateY(-14deg) scale(.82); opacity: .3; } to { transform: none; opacity: 1; } }
@keyframes spatial-receipt-entry { from { transform: translate3d(170px,100px,200px) rotateY(-24deg) scale(.85); opacity: .1; } to { transform: none; opacity: 1; } }
@keyframes spatial-permission {
 0%,18.75% { transform: rotateX(14deg) rotateY(-10deg) rotateZ(-8deg) translateZ(-45px); animation-timing-function: cubic-bezier(.77,0,.175,1); }
 25%,43.75% { transform: rotateX(4deg) rotateY(-4deg) rotateZ(-3deg) translateZ(0); animation-timing-function: cubic-bezier(.77,0,.175,1); }
 50%,100% { transform: rotateX(14deg) rotateY(-10deg) rotateZ(-8deg) translateZ(-45px); }
}
@keyframes spatial-credential {
 0%,43.75% { transform: rotateX(13deg) rotateY(-15deg) rotateZ(-10deg) translateZ(65px); animation-timing-function: cubic-bezier(.77,0,.175,1); }
 50%,68.75% { transform: translate3d(-30px,-28px,90px) rotateX(4deg) rotateY(-4deg) rotateZ(-3deg); animation-timing-function: cubic-bezier(.77,0,.175,1); }
 75%,100% { transform: rotateX(13deg) rotateY(-15deg) rotateZ(-10deg) translateZ(65px); }
}
@keyframes spatial-intent { 0%,18.75% { opacity: 1; transform: rotateX(7deg) rotateY(12deg) rotateZ(-7deg) translateZ(15px); animation-timing-function: cubic-bezier(.77,0,.175,1); } 25%,100% { opacity: .85; transform: translate3d(20px,12px,-20px) rotateX(7deg) rotateY(12deg) rotateZ(-7deg); } }
@keyframes spatial-return { 0%,68.75% { opacity: .8; transform: translate3d(15px,35px,30px) rotateX(8deg) rotateY(-9deg) rotateZ(5deg); animation-timing-function: cubic-bezier(.77,0,.175,1); } 75%,100% { opacity: 1; transform: rotateX(8deg) rotateY(-9deg) rotateZ(5deg) translateZ(110px); } }
@media (min-width: 1800px) { .home-spatial-stage { min-height: 780px; } .home-spatial-world { bottom: 110px; } .home-spatial-receipt-entry { right: 5%; } }
@media (max-width: 1100px) and (min-width: 768px) { .home-hero { grid-template-columns: minmax(0,.4fr) minmax(0,.6fr); padding: 38px 28px 0; } .home-hero-heading h1 { font-size: 58px; } .home-spatial-stage { min-height: 650px; } .home-spatial-card-entry { left: 11%; width: 360px; } .home-spatial-request-entry { width: 240px; left: 0; } .home-spatial-receipt-entry { width: 210px; } .home-spatial-scope-entry { left: 3%; width: 94%; } .home-architecture { gap: 36px; } }
@media (max-width: 767px) {
 .home-hero { min-height: calc(100svh - 72px); display: flex; padding: 35px 22px 0; }
 .home-hero-heading { margin: 0 auto; padding: 0; }
 .home-hero-heading h1 { max-width: 550px; font-size: clamp(46px,12vw,72px); line-height: 1.02; }
 .home-hero-description { max-width: 450px; font-size: 16px; }
 .home-hero-assurance { margin-top: 20px !important; font-size: 11px; }
 .home-spatial-stage { width: calc(100% + 36px); align-self: center; min-height: 530px; margin: 30px -18px 0; }
 .home-spatial-stage > .home-scene-controls { left: 16px; right: 16px; font-size: 11px; }
 .home-spatial-stage > .home-scene-progress { top: 64px; left: 16px; right: 16px; }
 .home-spatial-world { inset: 70px 0 100px; perspective-origin: 50% 40%; }
 .home-spatial-scope-entry { width: 87%; left: 5%; top: 21%; height: 70%; }
 .home-spatial-scope { border-radius: 17px; }
 .home-spatial-scope-label { padding: 13px; font-size: 11px; gap: 6px; }
 .home-spatial-scope-label > span:last-child { display: none; }
 .home-spatial-scope-footer { padding: 12px; font-size: 11px; }
 .home-spatial-scope-footer strong { font-size: 11px; }
 .home-spatial-request-entry { width: 218px; top: 3%; left: 3%; }
 .home-spatial-request { padding: 13px 16px; border-radius: 11px; }
 .home-spatial-request p { margin: 8px 0; font-size: 14px; }
 .home-spatial-request-id { display: none; }
 .home-spatial-card-entry { width: 270px; left: 16%; top: 37%; }
 .home-spatial-card { padding: 17px 18px; border-radius: 14px; }
 .home-spatial-card-top { gap: 6px; font-size: 17px; }
 .home-spatial-card-top .brand-mark { width: 29px; height: 21px; }
 .home-spatial-card-type { display: none; }
 .home-spatial-chip { width: 31px; height: 24px; margin-top: 20px; }
 .home-spatial-chip::before { top: 8px; }.home-spatial-chip::after { top: 16px; }.home-spatial-chip i { width: 11px; left: 9px; }
 .home-spatial-card-number { margin-top: 10px; font-size: 13px; }
 .home-spatial-card-bottom { margin-top: 13px; font-size: 11px; }
 .home-spatial-card-bottom strong { display: none; }
 .home-spatial-limit { font-size: 25px; }.home-spatial-limit small { font-size: 8px; margin-top: 5px; }
 .home-spatial-receipt-entry { width: 155px; top: 62%; right: 0; }
 .home-spatial-receipt { padding: 12px; border-radius: 5px 5px 11px 11px; }
 .home-spatial-receipt .home-spatial-object-label { display: none; }
 .home-spatial-receipt-check { position: absolute; top: 10px; right: 10px; width: 22px; height: 22px; margin: 0; font-size: 16px; }
 .home-spatial-receipt h2 { max-width: 85px; font-size: 15px; line-height: 1.05; }
 .home-spatial-receipt p { max-width: 100px; font-size: 11px; }
 .home-spatial-receipt > strong { margin: 10px 0; font-size: 23px; }
 .home-spatial-receipt-footer { gap: 4px; padding-top: 8px; font-size: 11px; }.home-spatial-receipt-footer code { display: none; }
 .home-spatial-bottom { left: 16px; right: 16px; bottom: 2px; }
 .home-spatial-bottom .home-motion-steps { gap: 5px; }.home-spatial-bottom .home-motion-steps button { min-height: 44px; font-size: 11px; padding: 5px 2px; }
 .home-spatial-bottom figcaption { margin-top: 9px; font-size: 11px; }
 .home-hero-products { margin-top: 15px; }
 .home-architecture { display: flex; flex-direction: column; gap: 32px; }
 .home-architecture .home-section-heading { margin-bottom: 0; }
 .home-vault { grid-template-columns: 1fr; }
 .home-vault-visual { height: 410px; }
 .home-vault-visual .home-card-stack { width: 78%; height: 230px; }.home-vault-visual .home-payment-card { height: 180px; padding: 18px; }
}
@media (pointer: coarse) { .home-spatial-stage .home-scene-controls button { width: 44px; height: 44px; }.home-spatial-bottom .home-motion-steps button { min-height: 44px; } }

/* Stable native action labels stay usable independently of Adobe loading. */
.home-hero-actions .home-button, .pm-hero-actions .home-button, .site-world .site-actions .home-button,
.home-scene-controls button, .home-motion-steps button { font-family: var(--app-font-native-sans); }
html.wf-loading .home-hero-actions a[data-font-gated],
html.wf-loading .home-hero-actions [data-font-gated],
html.wf-loading .pm-hero-actions [data-font-gated],
html.wf-loading .site-world .site-actions [data-font-gated],
html.wf-loading .home-topbar nav a[data-font-gated],
html.wf-loading .home-top-actions a[data-font-gated],
html.wf-loading [data-scene-controls] button[data-font-gated] { visibility: visible; font-family: var(--app-font-native-sans); }
/* Keep foreground paper within the art viewport and leave controls unobstructed. */
.home-spatial-world { bottom: 112px; overflow: clip; }
.home-spatial-receipt-entry { top: 45%; }
.home-spatial-limit { position: absolute; right: 42%; bottom: 27px; }
@media (max-width: 767px) {
 .home-spatial-world { bottom: 105px; }
 .home-spatial-receipt-entry { top: 56%; }
 .home-spatial-limit { right: 42%; bottom: 16px; }
}
/* Product chapter: the same credential expands from its storage plane. */
@media (prefers-reduced-motion: no-preference) {
 [data-home-scene="vault"][data-motion-ready="true"] .home-card-stack { animation: spatial-vault-entry 1000ms cubic-bezier(.23,1,.32,1) both paused; }
 [data-home-scene="issuing"][data-motion-ready="true"] .home-issuing-window { animation: spatial-issuing-entry 1000ms cubic-bezier(.23,1,.32,1) both paused; }
}
@keyframes spatial-vault-entry { from { opacity: .3; transform: translate3d(0,100px,100px) rotateX(24deg) rotateY(-24deg) rotateZ(-14deg) scale(.82); } to { opacity: 1; transform: rotateX(12deg) rotateY(-14deg) rotateZ(-8deg); } }
@keyframes spatial-issuing-entry { from { opacity: .3; transform: perspective(1200px) translate3d(70px,80px,-100px) rotateX(16deg) rotateY(-20deg) scale(.86); } to { opacity: 1; transform: none; } }

/* A stable reading plane above one request-to-receipt environment. */
.home-hero { display: block; min-height: 0; padding: 0; overflow: clip; background: #d4edba; }
.home-immersive { position: relative; width: 100%; min-height: calc(100svh - 80px); height: max(880px,calc(100svh - 80px)); color: #14352c; isolation: isolate; overflow: clip; background: radial-gradient(ellipse at 50% 35%,#eff8dc 0,#d5eebc 54%,#a8cf91 100%); }
.immersive-space { position: absolute; inset: 0; perspective: 1400px; perspective-origin: 50% 48%; overflow: clip; }
.immersive-camera { position:absolute; inset:0; transform:none; transform-style:preserve-3d; }
.immersive-floor { position: absolute; left:-15%; top:56%; width:130%; height:90%; border-radius:50%; background:radial-gradient(ellipse,#70a95c26,transparent 67%); transform:rotateX(68deg) translateZ(-200px); }
.immersive-entry { position:absolute; transform-style:preserve-3d; }
.immersive-entry>* { transform-style:preserve-3d; }
.immersive-title-layout { position:absolute; z-index:12; left:7%; top:10%; width:86%; text-align:center; }
.immersive-title-entry { position:relative; transform:none; }
.immersive-title-entry h1 { max-width:none; margin:0; font-size:clamp(100px,8.7vw,290px); font-weight:600; letter-spacing:-.07em; line-height:.88; color:#183e30; }
.immersive-title-entry h1 span { display:block; white-space:nowrap; }
.immersive-title-entry .home-hero-eyebrow { margin:0 0 22px !important; font-size:12px; letter-spacing:.1em; color:#315a3d; }
.home-immersive .home-hero-actions { position:relative; z-index:12; margin:28px auto 0; justify-content:center; width:max-content; }
.home-immersive .home-button { border-color:#204c39; background:#204c39; color:#fff; min-height:48px; padding:12px 23px; }
.home-immersive .home-button.is-outline { background:#e8f5d5; color:#204c39; }
.home-immersive-controls { position:absolute; z-index:15; top:17px; right:30px; width:calc(100% - 60px); }
.home-immersive-controls .home-scene-controls { position:static; min-height:52px; border:0; background:none; color:#31553b; padding:0; }
.home-immersive-controls .home-scene-controls>span { font-size:11px; font-family:var(--app-font-native-sans); }
.home-immersive-controls .home-scene-controls button { width:44px; height:44px; border:1px solid #3d69444d; background:#e9f4d76e; color:#204d35; }
.home-immersive-controls .home-scene-progress { position:static; height:1px; background:#264b301a; }
.home-immersive-controls .home-scene-progress i { background:#3d7545; }
.home-immersive[data-motion-ready="true"] .home-immersive-controls .home-scene-progress { visibility:visible; }
.immersive-caption { position:relative; z-index:1; max-width:none; padding:30px max(22px,7vw); background:#d4edba; }
.immersive-caption .home-hero-description { margin:0 !important; max-width:650px; color:#234b36; font-size:18px; line-height:1.5; }
.immersive-caption>span { display:block; margin-top:14px; font-size:11px; color:#416c46; }
.immersive-caption>span:first-child { margin:0 0 12px; }
.immersive-stage-label { margin-top:22px; font-family:var(--app-font-native-sans); font-size:11px; color:#31553b; }
.immersive-stage-label>span { display:block; margin-bottom:12px; }
.immersive-stage-label>div { display:flex; gap:16px; }
.immersive-stage-label>div span::before { content:'·'; margin-right:5px; }
.home-hero-products { position:relative; max-width:none; width:100%; margin:0; padding:0 32px; gap:32px; background:#f3f6f4; }
.home-hero-product { padding:25px 0; border-top:0; }
/* Four functional props share one bounded request. */
.immersive-credential { z-index:7; left:34%; top:60%; width:42vw; max-width:1100px; }
.immersive-card { position:relative; aspect-ratio:1.65; padding:5.2%; border-radius:25px; color:#d5f3bc; background:linear-gradient(128deg,#295946,#163e30 58%,#123327); box-shadow:0 10px 0 #0e2d22,0 14px 0 #91bd7b,16px 40px 55px -25px #24542b66; transform:rotateX(18deg) rotateY(-8deg) rotateZ(-8deg); }
.immersive-card-top { display:flex; align-items:center; gap:12px; font-size:clamp(19px,2.2vw,48px); }
.immersive-card-top .brand-mark { width:1.6em; height:1.2em; color:#c8eea1; }
.immersive-card-top>span:last-child { margin-left:auto; font-size:.5em; }
.immersive-card-chip { width:13%; aspect-ratio:1.3; margin-top:8%; border-radius:9px; border:1px solid #b4d18d; background:repeating-linear-gradient(0deg,transparent 0 11px,#748c5b 12px 13px),linear-gradient(120deg,#ebdf9c,#b5b37d); position:relative; }
.immersive-card-chip i { position:absolute; top:0; left:33%; height:100%; width:34%; border:1px solid #7e8c54; border-radius:30%; }
.immersive-card-footer { display:flex; justify-content:space-between; align-items:end; margin-top:7%; font-size:clamp(11px,1vw,24px); line-height:1.4; letter-spacing:.06em; }
.immersive-card-footer strong { font-size:clamp(40px,4.5vw,105px); font-weight:500; letter-spacing:-.06em; line-height:.8; }
.immersive-card-footer small { display:block; margin-top:12px; font-size:11px; letter-spacing:.08em; }
.immersive-receipt { z-index:6; right:0; top:52%; width:22vw; }
.immersive-paper { padding:10%; color:#254832; background:#fbf9df; border-radius:8px 8px 0 0; clip-path:polygon(0 0,100% 0,100% 98%,95% 100%,90% 98%,85% 100%,80% 98%,75% 100%,70% 98%,65% 100%,60% 98%,55% 100%,50% 98%,45% 100%,40% 98%,35% 100%,30% 98%,25% 100%,20% 98%,15% 100%,10% 98%,5% 100%,0 98%); transform:rotateX(9deg) rotateY(-12deg) rotateZ(8deg); box-shadow:0 28px 45px #355a2c3b; }
.immersive-paper>span { display:block; font-size:11px; letter-spacing:.04em; }
.immersive-paper>div:not(.immersive-barcode) { font-size:clamp(40px,5vw,110px); line-height:1.2; color:#4a7a3b; }
.immersive-paper h2 { font-size:clamp(23px,2.4vw,60px); line-height:1; font-weight:500; letter-spacing:-.05em; }
.immersive-paper p { margin:14px 0 25px; font-size:12px; }
.immersive-paper>strong { display:block; font-size:clamp(32px,3.4vw,90px); font-weight:500; letter-spacing:-.06em; }
.immersive-paper small { display:inline; margin-left:7px; font-size:11px; }
.immersive-paper hr { border:0; border-top:1px dashed #a4b28b; margin:22px 0; }
.immersive-paper code { display:block; margin-top:12px; font-family:var(--app-font-native-mono); font-size:11px; }
.immersive-barcode { height:32px; margin-top:22px; background:repeating-linear-gradient(90deg,#345238 0 2px,transparent 2px 5px,#345238 5px 6px,transparent 6px 8px); opacity:.65; }
/* Middle and back planes hold the same permission/request identity. */
.immersive-permission { position:absolute; z-index:1; left:3%; top:49%; width:96%; height:50%; opacity:.18; }
.immersive-boundary { width:100%; height:100%; border:1px solid #527b49; border-radius:50%; transform:rotateX(30deg) rotateZ(-7deg); }
.immersive-request { z-index:3; left:6%; top:55%; width:23vw; }
.immersive-intent { padding:18px 22px; border:1px solid #71a45d; border-radius:70px 70px 70px 12px; background:#c6e7a9; color:#315737; transform:rotateX(6deg) rotateY(6deg) rotateZ(-5deg); box-shadow:0 5px 0 #8eb975; }
.immersive-intent span { display:block; font-size:11px; }
.immersive-intent p { margin:12px 0 0; font-size:clamp(18px,1.7vw,36px); line-height:1.05; letter-spacing:-.03em; }
.immersive-intent i { position:absolute; right:15px; bottom:14px; font-size:26px; }
.immersive-seal { z-index:4; left:29%; top:60%; width:8vw; }
.immersive-seal-body { aspect-ratio:1; display:flex; flex-direction:column; justify-content:center; align-items:center; border-radius:50%; border:3px solid #e5f4bc; outline:2px solid #6f9c48; color:#e5f4bc; background:#729d4e; transform:rotateX(8deg) rotateY(-6deg) rotateZ(8deg); box-shadow:5px 8px 0 #467741,9px 12px 0 #3f6c38; }
.immersive-seal-body span { font-size:11px; }
.immersive-seal-body b { font-size:5vw; font-weight:400; line-height:1.1; }
@media (prefers-reduced-motion:no-preference) {
 .home-immersive[data-motion-ready="true"] .home-immersive-controls .home-scene-progress i { animation:home-scene-clock var(--home-scene-duration) linear both paused; }
 .home-immersive[data-motion-ready="true"] .immersive-credential { animation:spatial-home-entry 1600ms cubic-bezier(.23,1,.32,1) both paused; }
 .home-immersive[data-motion-ready="true"] .immersive-receipt { animation:immersive-receipt 9600ms linear both paused; }
 .home-immersive[data-motion-ready="true"] .immersive-request { animation:immersive-request 9600ms linear both paused; }
 .home-immersive[data-motion-ready="true"] .immersive-seal { animation:immersive-seal 9600ms linear both paused; }
}
@keyframes spatial-home-entry { from { opacity:.7; translate:0 24px; scale:.98; } to { opacity:1; translate:0 0; scale:1; } }
@keyframes immersive-request { 0%,25% { opacity:.55; translate:0 24px; animation-timing-function:cubic-bezier(.77,0,.175,1); } 31.25%,100% { opacity:1; translate:0 0; } }
@keyframes immersive-seal { 0%,43.75% { opacity:.55; translate:0 24px; animation-timing-function:cubic-bezier(.77,0,.175,1); } 50%,100% { opacity:1; translate:0 0; } }
@keyframes immersive-receipt { 0%,62.5% { opacity:.55; translate:0 24px; animation-timing-function:cubic-bezier(.77,0,.175,1); } 68.75%,100% { opacity:1; translate:0 0; } }
@media (min-width:2000px) {
 .home-immersive { height:calc(100svh - 80px); min-height:1100px; }
 .immersive-credential { top:56%; width:38vw; }
}
@media (max-width:767px) {
 .home-immersive { height:calc(720px + 93vw); min-height:calc(100svh - 72px); }
 .home-immersive-controls { top:9px; left:16px; right:16px; width:auto; }
 .home-immersive-controls .home-scene-controls>span { max-width:210px; line-height:1.3; }
 .immersive-title-layout { top:100px; left:5%; width:90%; }
 .immersive-title-entry h1 { font-size:clamp(48px,12.4vw,89px); line-height:.92; letter-spacing:-.06em; }
 .immersive-title-entry h1 span:first-child { white-space:normal; }
 .immersive-title-entry .home-hero-eyebrow { font-size:11px; margin:0 auto 16px !important; }
 .home-immersive .home-hero-actions { margin-top:28px; gap:8px; }
 .home-immersive .home-button { padding:12px 16px; font-size:12px; }
 .immersive-credential { width:84vw; left:8%; top:calc(382.5px + 25vw); }
 .immersive-card { border-radius:17px; }
 .immersive-card-top { font-size:23px; }
 .immersive-card-footer { font-size:11px; }
 .immersive-card-footer strong { font-size:37px; }
 .immersive-card-footer small { font-size:11px; margin-top:8px; }
 .immersive-request { width:60vw; top:max(360px,calc(270px + 23vw)); left:5%; }
 .immersive-intent { padding:12px; border-radius:40px 40px 40px 12px; }
 .immersive-intent p { margin-top:8px; font-size:16px; line-height:1.1; }
 .immersive-intent span { font-size:11px; }
 .immersive-intent i { display:none; }
 .immersive-seal { width:20vw; left:72%; top:max(360px,calc(270px + 23vw)); }
 .immersive-seal-body b { font-size:11vw; }
 .immersive-seal-body span { font-size:11px; }
 .immersive-seal-body span:first-child { display:none; }
 .immersive-receipt { width:min(56vw,320px); right:6%; top:calc(402.5px + 93vw); }
 .immersive-paper h2 { font-size:23px; }
 .immersive-paper p { margin:10px 0; font-size:11px; }
 .immersive-paper>strong { font-size:29px; }
 .immersive-paper>span:first-child,.immersive-barcode { display:none; }
 .immersive-paper>div:not(.immersive-barcode) { font-size:40px; }
 .immersive-paper hr { margin:14px 0; }
 .immersive-permission { left:0; top:45%; width:110%; height:53%; }
 .immersive-caption { padding:26px 22px; }
 .immersive-caption .home-hero-description { font-size:17px; }
 .immersive-stage-label { text-align:left; }
 .immersive-stage-label>span { display:none; }
 .immersive-stage-label>div { gap:12px; }
 .home-hero-products { width:100%; margin:0; padding:0 20px; grid-template-columns:1fr; gap:0; }
 .home-hero-product { padding:17px 0; border-bottom:1px solid var(--home-line); }
}
@media (min-width:500px) and (max-width:767px) {
 .home-immersive { height:calc(760px + 93vw); }
 .immersive-request, .immersive-seal { top:calc(310px + 23vw); }
 .immersive-credential { top:calc(422.5px + 25vw); }
 .immersive-receipt { top:calc(442.5px + 93vw); }
}
@media (max-width:360px) {
 .immersive-request { width:75vw; }
 .immersive-seal { display:none; }
 .immersive-credential { width:90vw; left:4%; }
}

/* A bounded purchase example replaces decorative merchant selections. */
.home-request-summary > div:not(.home-window-bar) { padding: 30px; }
.home-request-summary > div > span { font-size: 11px; color: #6c8177; }
.home-request-summary > div > strong { display: block; margin: 25px 0; font-size: 40px; line-height: 1; letter-spacing: -.04em; font-weight: 500; }
.home-request-summary p { font-size: 14px; }
.home-request-summary code { display: block; margin-top: 25px; font: 12px/1.8 var(--font-mono); }

@media (max-width: 767px) { .home-request-summary > div > strong { font-size: 33px; } }

/* Shared public navigation: native fallback stays in document flow. */
.home-nav > a { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.home-nav > a[aria-current="page"] { color: #17695b; background: #edf2e8; border-radius: 8px; }
.home-top-actions .home-button { min-height: 44px; }
@media (max-width: 767px) {
  .home-topbar:has(.home-nav:not([data-enhanced])) { height: auto; min-height: 72px; flex-wrap: wrap; padding-top: 20px; padding-bottom: 16px; gap: 16px; }
  .home-nav-shell:has(.home-nav:not([data-enhanced])) { flex: 0 0 100%; margin: 0; }
  .home-nav-shell:has(.home-nav:not([data-enhanced])) #home-nav-toggle { display: none; }
  .home-nav:not([data-enhanced]) { position: static; display: flex; flex-direction: row; flex-wrap: wrap; max-height: none; overflow: visible; padding: 0; gap: 2px 8px; border: 0; box-shadow: none; background: transparent; }
  .home-nav:not([data-enhanced]) > a { padding: 12px 10px; min-height: 44px; font-size: 12px; }
  .home-nav:not([data-enhanced]) > .home-nav-start { padding: 12px 15px; }
}
.home-brand { min-height: 44px; }
.home-footer-links nav { gap: 0; }
.home-footer-links nav > strong { margin-bottom: 15px; }
.home-footer-links a, .home-footer-bottom > a { display: flex; align-items: center; min-height: 44px; }
