/* ZIndex additions on top of the template's component CSS. */
:root {
  --header-height: 104px;
  --smart-banner-height: 0px;
  --promotion-bar-height: 0px;
  --promotion-bar-visible-height: 0px;
  --sticky-footer-promotion-height: 0px;
  --font-nb-international-pro: "Inter", "Inter Fallback", system-ui, sans-serif;
  --font-instrument-serif: "Instrument Serif", "Instrument Serif Fallback", Georgia, serif;
  --ix-accent: #2f6bff;
  --ix-accent-soft: rgba(47, 107, 255, 0.18);
  --ix-good: #34c759;
  --ix-bad: #ff453a;
}
html { background: #000; color-scheme: dark; scroll-behavior: smooth; }
body { background: #000; color: #fff; font-family: var(--font-nb-international-pro); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin: 0; overflow-x: hidden; }
main { display: block; }
a { color: inherit; }
button { font-family: inherit; }

/* logo boxes that used tailwind utilities in the template */
.ix-logo { width: 110px; height: 32px; display: block; }
.ix-logo svg { width: 100%; height: 100%; display: block; }
@media (min-width: 768px) { .ix-logo { width: 166px; height: 48px; } }

/* nav pill: tabs are plain links now */
.hwWtpR { text-decoration: none; }
.hwWtpR:hover, .hwWtpR[aria-current="page"] { color: #fff; }
.ix-cta { text-decoration: none; }

/* mobile drawer */
.hNFMQi.is-open { transform: translateX(0); }
.ix-drawer-link { display: block; text-decoration: none; }
.ix-drawer-link .gZcuOL { display: block; }
.ix-drawer-x { font-family: var(--font-nb-international-pro); font-size: 16px; color: #ffffff99; text-decoration: none; letter-spacing: 0.03em; }
body.ix-locked { overflow: hidden; }
.iWgTsn[aria-expanded="true"] rect:first-child { transform: translateY(5.5px) rotate(45deg); transform-origin: 16px 10.5px; }
.iWgTsn[aria-expanded="true"] rect:last-child { transform: translateY(-5.5px) rotate(-45deg); transform-origin: 16px 21.5px; }
.iWgTsn rect { transition: transform 0.25s ease; }

/* entrance motion (was framer-motion) */
.ix-enter { transition: opacity 0.9s cubic-bezier(0.2, 0.7, 0.2, 1), transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1); }
.ix-in.ix-enter, .ix-enter.ix-in { opacity: 1 !important; transform: none !important; }
.ix-tile-enter { transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1.1), transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1.1); }
.ix-tile-enter.ix-in { opacity: 1 !important; transform: translateZ(0.01px) scale(1) rotate(0deg) !important; }
.ix-grid-enter { transition: opacity 1.6s ease, transform 1.6s ease; }
.ix-grid-enter.ix-in { opacity: 0.07 !important; transform: translateX(-50%) scale(1) !important; }
.ix-title-enter { transition: transform 1s cubic-bezier(0.2, 0.7, 0.2, 1); }
.ix-title-enter.ix-in { transform: none !important; }
.ix-word-enter { transition: opacity 0.9s cubic-bezier(0.2, 0.7, 0.2, 1), transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1); }
.ix-word-enter.ix-in { opacity: 1 !important; transform: none !important; }
.ix-letter { display: inline-block; opacity: 0; transform: translateY(0.6em); transition: opacity 0.5s ease, transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1); }
.ix-in .ix-letter { opacity: 1; transform: none; }
.ix-reveal { opacity: 0; transform: translateY(32px); transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.2, 0.7, 0.2, 1); }
.ix-reveal.ix-in { opacity: 1; transform: none; }
.ix-visual-enter { transition: opacity 1.2s ease; }
.ix-visual-enter.ix-in { opacity: 1 !important; }
.cJNTJj { opacity: 1; }
.cJNTJj a { text-decoration: none; }
@media (prefers-reduced-motion: reduce) {
  .ix-enter, .ix-tile-enter, .ix-grid-enter, .ix-title-enter, .ix-word-enter, .ix-letter, .ix-reveal, .ix-visual-enter { transition: none !important; }
}

/* hero tiles: small index cards instead of photos */
.ix-tile { position: absolute; inset: 0; background: linear-gradient(180deg, #171717 0%, #0b0b0b 100%); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: inherit; display: flex; flex-direction: column; justify-content: space-between; padding: 14px; box-sizing: border-box; }
.ix-tile-ticker { font-size: 14px; letter-spacing: 0.04em; color: #fff; line-height: 1; display: flex; align-items: center; justify-content: space-between; }
.ix-tile-ticker small { font-size: 10px; letter-spacing: 0.12em; color: #ffffff66; text-transform: uppercase; }
.ix-tile svg.ix-spark { width: 100%; height: 64px; display: block; overflow: visible; }
.ix-tile-foot { font-size: 10px; letter-spacing: 0.08em; color: #ffffff80; text-transform: uppercase; }
.ix-tile-foot b { font-weight: 400; color: var(--ix-accent); }
.ix-vault-bar { height: 6px; border-radius: 6px; background: #ffffff14; overflow: hidden; }
.ix-vault-bar i { display: block; height: 100%; width: 62%; border-radius: 6px; background: linear-gradient(90deg, #2f6bff, #6aa0ff); }
@media (max-width: 767px) {
  .jVPJfS { top: -96px; left: -230px; }
  .hYBiMA { top: -120px; right: -190px; }
  .fEnKyQ { bottom: -150px; left: -200px; }
  .kvsSmi { bottom: -160px; right: -210px; }
  .hqOaTe { width: 112px; height: 112px; }
  .ix-tile { padding: 10px; }
  .ix-tile svg.ix-spark { height: 40px; }
}

/* "runs on" strip that replaces the press logos */
.ix-strip { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 10px; }
.ix-chip { display: inline-flex; align-items: center; gap: 8px; height: 32px; padding: 0 14px; border-radius: 999px; border: 1px solid #ffffff1f; color: #ffffffb2; font-size: 12px; letter-spacing: 0.04em; white-space: nowrap; }
.ix-chip i { width: 6px; height: 6px; border-radius: 50%; background: var(--ix-accent); }
@media (min-width: 768px) { .ix-chip { height: 36px; font-size: 13px; } }

/* full-height curve visual (replaces the phone video) */
.ix-visual { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }
.ix-visual svg { width: min(1120px, 100%); height: auto; max-height: 100%; display: block; }
.ix-curve-path { stroke-dasharray: 1400; stroke-dashoffset: 1400; transition: stroke-dashoffset 2.2s cubic-bezier(0.3, 0, 0.2, 1); }
.ix-in .ix-curve-path { stroke-dashoffset: 0; }
.ix-curve-area { opacity: 0; transition: opacity 1.2s ease 1.2s; }
.ix-in .ix-curve-area { opacity: 1; }
.ix-marker { opacity: 0; transition: opacity 0.6s ease 2s; }
.ix-in .ix-marker { opacity: 1; }
.ix-vault-fill { transform: scaleX(0); transform-origin: left; transition: transform 2s cubic-bezier(0.3, 0, 0.2, 1) 0.6s; }
.ix-in .ix-vault-fill { transform: scaleX(1); }
.ix-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }

/* index card (replaces the payment card render) */
.cmJzjd { display: flex; align-items: center; justify-content: center; max-width: 100%; }
.cmJzjd svg { width: 100%; height: 100%; display: block; overflow: visible; }
.ix-card-float { animation: ix-float 7s ease-in-out infinite; transform-origin: center; }
@keyframes ix-float { 0%, 100% { transform: translateY(0) } 50% { transform: translateY(-10px) } }
@media (max-width: 767px) { .cmJzjd { width: 100%; height: 300px; } }
@media (prefers-reduced-motion: reduce) { .ix-card-float { animation: none; } }

/* product card art */
.ix-art { position: absolute; overflow: hidden; pointer-events: none; }
.ix-art svg { width: 100%; height: 100%; display: block; }
.ix-art-pick { right: 32px; bottom: 32px; left: 32px; top: 200px; }
.ix-art-vault { right: -20px; bottom: -20px; width: 360px; height: 190px; }
.ix-art-grad { right: 24px; bottom: 24px; width: 260px; height: 150px; }
.ix-art-fee { right: 24px; bottom: 24px; width: 260px; height: 150px; }
@media (max-width: 767px) {
  .ix-art-pick { top: 210px; left: 24px; right: 24px; bottom: 24px; }
  .ix-art-vault { width: 300px; height: 160px; }
  .ix-art-grad, .ix-art-fee { width: 220px; height: 130px; }
  .bQuwbX { height: 560px; }
}
.dGsIGw, .dGsIDU, .dGsJux { max-width: 100%; }

/* how it works (replaces the testimonial marquee) */
.ix-steps { display: grid; grid-template-columns: 1fr; gap: 16px; padding: 0 24px; width: 100%; box-sizing: border-box; }
@media (min-width: 768px) { .ix-steps { grid-template-columns: repeat(2, 1fr); gap: 24px; padding: 0 48px; } }
@media (min-width: 1440px) { .ix-steps { grid-template-columns: repeat(4, 1fr); padding: 0 80px; } }
.ix-step { background: #1a1a1a; border-radius: 24px; padding: 24px; min-height: 260px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; }
@media (min-width: 768px) { .ix-step { border-radius: 32px; padding: 28px; min-height: 300px; } }
.ix-step-n { font-family: var(--font-instrument-serif); font-style: italic; font-size: 40px; line-height: 1; color: #ffffff66; }
.ix-step h3 { font-size: 24px; line-height: 110%; letter-spacing: -0.02em; margin: 0 0 12px; color: #fff; }
.ix-step p { font-size: 16px; line-height: 150%; color: #ffffff99; margin: 0; }
@media (min-width: 768px) { .ix-step h3 { font-size: 28px; } .ix-step p { font-size: 18px; } }
.ix-section-sub { font-size: 16px; line-height: 150%; color: #ffffff99; margin: 0; max-width: 420px; }
@media (min-width: 768px) { .ix-section-sub { font-size: 20px; } }

/* CTA art */
.eWTqIB { pointer-events: none; }
.eWTqIB.ix-curve { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 66%; z-index: 0; }
.ix-curve svg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; overflow: visible; }
.ix-curve-area, .ix-curve-vault, .ix-curve-grid { opacity: 0; transition: opacity 1s ease; }
.ix-curve-on .ix-curve-area, .ix-curve-on .ix-curve-vault, .ix-curve-on .ix-curve-grid { opacity: 1; }
.ix-curve-dot { position: absolute; left: 0; top: 0; width: 0; height: 0; opacity: 0; transition: opacity .5s ease; }
.ix-curve-on .ix-curve-dot { opacity: 1; }
.ix-curve-reset .ix-curve-dot, .ix-curve-reset .ix-curve-vault { opacity: 0; transition-duration: .35s; }
.ix-curve-dot i { position: absolute; left: -9px; top: -9px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 0 rgba(255,255,255,.55); animation: ix-curve-ping 1.6s ease-out infinite; }
.ix-curve-dot b { position: absolute; left: 18px; top: -34px; white-space: nowrap; font: 400 15px/1 var(--font-nb-international-pro), Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #fff; padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28); }
@media (min-width: 768px) { .ix-curve-dot.ix-flip b { left: auto; right: 18px; } }
@keyframes ix-curve-ping { 0% { box-shadow: 0 0 0 0 rgba(255,255,255,.55); } 100% { box-shadow: 0 0 0 18px rgba(255,255,255,0); } }
@media (max-width: 767px) { .eWTqIB.ix-curve { height: 58%; } .ix-curve-dot b { left: auto; right: 16px; font-size: 13px; } }

/* FAQ accordion state */
.fvJcUX.is-open .iBgiIi { grid-template-rows: 1fr; opacity: 1; padding-top: 24px; }
.fvJcUX.is-open .kbyyoS { transform: rotate(45deg); }
.svxAy { width: 100%; }
.svxAy:focus-visible { outline: 2px solid var(--ix-accent); outline-offset: 6px; border-radius: 8px; }
.kYDLqt ul { list-style: disc; padding-left: 24px; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.kYDLqt li { color: #ffffffb2; }

/* footer tweaks */
.ix-footer-note { font-size: 14px; line-height: 150%; color: #ffffff66; max-width: 520px; margin: 24px 0 0; }
@media (min-width: 768px) { .ix-footer-note { font-size: 16px; } }

/* legal pages */
.ix-legal { max-width: 760px; margin: 0 auto; padding: 48px 24px 96px; }
.ix-legal h1 { font-size: 40px; line-height: 100%; margin: 0 0 24px; }
.ix-legal p { font-size: 18px; line-height: 150%; color: #ffffffb2; margin: 0 0 16px; }
.ix-legal a { color: #fff; }
@media (min-width: 768px) { .ix-legal { padding: 80px 48px 128px; } .ix-legal h1 { font-size: 64px; } .ix-legal p { font-size: 20px; } }

/* fixes after first visual pass */
.kzNnDr { max-width: 340px; row-gap: 0.12em; line-height: 95%; }
@media (min-width: 768px) { .kzNnDr { max-width: 640px; } }
.eUBCDs { line-height: 110%; max-width: 180px; }
@media (min-width: 768px) { .eUBCDs { max-width: none; } }
.bQuwdl { height: auto; min-height: 356px; padding-bottom: 190px; }
.ix-art-vault { right: 24px; bottom: 24px; left: 24px; width: auto; height: 150px; }
.ix-art-grad, .ix-art-fee { left: 24px; right: 24px; width: auto; height: 130px; }
.ix-art-vault svg, .ix-art-grad svg, .ix-art-fee svg { width: auto; max-width: 100%; margin-left: auto; }
@media (min-width: 768px) { .bQuwdl { padding-bottom: 180px; } .ix-art-vault, .ix-art-grad, .ix-art-fee { left: 32px; right: 32px; bottom: 32px; } }
.hqOaTe { position: relative; }
@media (min-width: 768px) { .jxURaK .jMXHVG { width: 290px; } }

/* X button next to the hero CTA */
.ix-xbtn{white-space:nowrap;}
.ix-xbtn svg{width:16px;height:16px;flex:none;}
.jxURaK .ix-xbtn{height:56px;padding:16px 24px;}
.hAehLR{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;}
/* keep the hero container (and the floating tiles around it) as wide as before the X button */
@media (min-width: 768px){.hMdatc > .jxURaK{margin-left:-93px;margin-right:-93px;}}

/* contract address pill under the hero buttons (absolute, so the hero keeps its layout) */
.ix-ca-row{position:absolute;top:100%;left:0;right:0;margin-top:20px;display:flex;justify-content:center;z-index:3;pointer-events:none;}
.ix-ca{pointer-events:auto;position:relative;display:inline-flex;align-items:center;gap:10px;max-width:calc(100vw - 24px);min-height:44px;padding:10px 16px 10px 18px;border:1px solid #ffffff1f;border-radius:1000px;background:#1a1a1a;color:#ffffffcc;font-family:var(--font-nb-international-pro);font-size:14px;line-height:1.2;letter-spacing:0.01em;cursor:pointer;opacity:0;transform:translateY(24px);animation:ix-ca-in .9s cubic-bezier(0.2,0.7,0.2,1) 1.5s forwards;transition:background-color .15s ease,border-color .15s ease;}
.ix-ca:hover{background:#242424;border-color:#ffffff33;}
.ix-ca:focus-visible{outline:2px solid var(--ix-accent);outline-offset:3px;}
.ix-ca-k{flex:none;font-size:11px;letter-spacing:0.2em;color:#ffffff66;}
.ix-ca-v{font-variant-numeric:tabular-nums;word-break:break-all;text-align:left;color:#fff;}
.ix-ca-i{flex:none;display:flex;width:16px;height:16px;color:#ffffff99;}
.ix-ca-i svg{width:100%;height:100%;}
.ix-ca-done{position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%);font-size:12px;letter-spacing:0.04em;color:var(--ix-accent);white-space:nowrap;}
.ix-ca.is-copied{border-color:var(--ix-accent);}
.ix-ca.is-copied .ix-ca-i{color:var(--ix-accent);}
@keyframes ix-ca-in{to{opacity:1;transform:none;}}
@media (max-width:767px){.ix-ca{font-size:11.5px;letter-spacing:0;gap:7px;padding:9px 12px 9px 14px;}.ix-ca-k{font-size:10px;letter-spacing:0.14em;}.ix-ca-i{width:14px;height:14px;}}
@media (max-width:479px){.ix-ca{font-size:min(11.5px,2.8vw);letter-spacing:-0.005em;gap:8px;padding:9px 12px 9px 15px;}.ix-ca-k{display:none;}}
@media (prefers-reduced-motion:reduce){.ix-ca{animation:none;opacity:1;transform:none;}}
