:root {
  --bg:#090a0b;
  --surface:#121416;
  --surface-high:#1b1d20;
  --ink:#fcfcfc;
  --muted:#a8a8a3;
  --orange:#ff7900;
  --red:#d83a0f;
  --gold:#ed9914;
  --line:rgba(252,252,252,.13);
  --font:'Switzer',Arial,sans-serif;
  --mono:'Switzer',Arial,sans-serif;
  --header-height:74px;
  --header-offset:calc(var(--header-height) + env(safe-area-inset-top,0px));
  --ease:cubic-bezier(.22,1,.36,1)
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--header-offset) + 20px)
}

body {
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font);
  -webkit-font-smoothing:antialiased;
  font-size:16px;
  line-height:1.6
}

body.menu-open {
  overflow:hidden
}

button,input,textarea {
  font:inherit
}

button,a {
  -webkit-tap-highlight-color:transparent
}

button {
  cursor:pointer
}

a {
  color:inherit;
  text-decoration:none
}

img {
  max-width:100%;
  display:block
}

button {
  color:inherit
}

button:disabled {
  cursor:default
}

button,a,input,textarea {
  outline-offset:6px
}

button:focus-visible,a:focus-visible {
  outline:2px solid var(--orange)
}

[hidden] {
  display:none!important
}

::selection {
  background:var(--orange);
  color:var(--bg)
}

h1,h2,h3,p {
  margin:0
}

h1,h2,h3 {
  font-weight:500;
  line-height:1.08;
  letter-spacing:-.065em
}

h1 {
  font-size:clamp(56px,6.9vw,110px)
}

h2 {
  font-size:clamp(36px,4.15vw,65px)
}

h3 {
  font-size:23px;
  letter-spacing:-.035em;
  line-height:1.25
}

p {
  color:var(--muted);
  line-height:1.8;
  font-size:15px
}

p+p {
  margin-top:1.2em
}

em {
  font-style:normal;
  color:var(--orange)
}

.wrap {
  width:min(1320px,calc(100% - 112px));
  margin-inline:auto
}

.section {
  padding-block:112px
}

.mono,.eyebrow,.stat-label,.benefit-number,.footer-bottom,.filter-button {
  font-family:var(--mono);
  font-weight:400;
  letter-spacing:.025em
}

.mono {
  font-size:11px
}

.muted {
  color:var(--muted)
}

.eyebrow {
  text-transform:uppercase;
  font-size:11px;
  letter-spacing:.12em;
  display:flex;
  align-items:center;
  gap:12px
}

.status-dot {
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--orange);
  box-shadow:0 0 14px #ff790070;
  flex:none
}




.button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:44px;
  min-height:54px;
  padding:0 23px;
  font-size:13px;
  font-weight:650;
  border:1px solid transparent;
  border-radius:4px;
  position:relative;
  transition:background .25s,transform .3s,box-shadow .3s
}

.button>span {
  font-size:23px;
  font-weight:400;
  line-height:1
}

.button:hover {
  transform:translateY(-3px)
}

.button--primary {
  background:var(--orange);
  color:#15110a;
  box-shadow:0 0 0 #ff790000
}

.button--primary:hover {
  background:#ff902a;
  box-shadow:0 8px 40px #ff79001c
}

.button--small {
  min-height:42px;
  border-color:#ffffff30;
  border-radius:3px;
  padding:0 16px;
  gap:28px;
  font-size:11px
}

.button--small:hover {
  background:var(--ink);
  color:var(--bg)
}

.button-row {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:32px
}

.text-link {
  display:inline-flex;
  gap:26px;
  align-items:center;
  font-size:13px;
  border-bottom:1px solid #ffffff40;
  padding-block:12px
}

.text-link span {
  color:var(--orange);
  font-size:20px
}

.skip-link {
  position:fixed;
  top:-80px;
  left:20px;
  background:var(--orange);
  color:#000;
  padding:12px 18px;
  z-index:100
}

.skip-link:focus {
  top:12px
}

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}

/* Navigation */
.site-header {
  background:#14141350;
  backdrop-filter:blur(12px);
  position:fixed;
  inset:0 0 auto;
  padding-top:env(safe-area-inset-top,0px);
  padding-inline:env(safe-area-inset-left,0px) env(safe-area-inset-right,0px);
  z-index:30;
  border-bottom:1px solid var(--line)
}

.header-inner {
  width:min(1440px,calc(100% - 112px));
  height:var(--header-height);
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px
}

.brand {
  display:inline-flex;
  align-items:center
}

.desktop-nav {
  display:flex;
  align-items:center;
  gap:28px;
  margin-left:auto
}

.desktop-nav a {
  font-size:12px;
  color:#bcbcbc;
  position:relative;
  padding:10px 0;
  transition:color .2s
}

.desktop-nav a:hover,.desktop-nav a[aria-current] {
  color:var(--ink)
}

.desktop-nav a[aria-current]:after {
  content:'';
  position:absolute;
  bottom:0;
  left:0;
  width:16px;
  height:2px;
  background:var(--orange)
}

.header-actions {
  display:flex;
  align-items:center;
  gap:18px
}

.menu-toggle {
  display:none;
  border:0;
  background:none;
  padding:12px 9px;
  width:44px;
  height:44px
}

.menu-toggle span {
  height:1px;
  width:26px;
  display:block;
  background:var(--ink);
  margin:7px 0;
  transition:transform .2s
}

.menu-toggle[aria-expanded=true] span:first-child {
  transform:translateY(4px) rotate(45deg)
}

.menu-toggle[aria-expanded=true] span:last-child {
  transform:translateY(-4px) rotate(-45deg)
}

.mobile-nav {
  position:absolute;
  top:100%;
  left:0;
  right:0;
  max-height:calc(100vh - var(--header-offset));
  max-height:calc(100dvh - var(--header-offset));
  overflow-y:auto;
  overscroll-behavior:contain;
  background:var(--surface);
  padding:20px max(28px,env(safe-area-inset-right,0px)) calc(40px + env(safe-area-inset-bottom,0px)) max(28px,env(safe-area-inset-left,0px));
  border-bottom:1px solid var(--line);
  box-shadow:0 30px 50px #0008
}

.mobile-nav>a:not(.button) {
  display:flex;
  align-items:center;
  gap:20px;
  border-bottom:1px solid var(--line);
  padding:18px 0;
  font-size:24px;
  letter-spacing:-.03em
}

.mobile-nav>a>.mono {
  color:var(--orange)
}

.mobile-nav .button {
  margin-top:25px
}

/* Hero: layered light, supplied brand sculpture, and an oversized name. */
.hero {
  position:relative;
  min-height:840px;
  height:min(920px,100svh);
  isolation:isolate;
  overflow:hidden;
  --pointer-x:0;
  --pointer-y:0;
  background:#141413
}

.hero-grid {
  position:absolute;
  inset:90px 0 0;
  background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);
  background-size:94px 94px;
  mask-image:linear-gradient(90deg,transparent 5%,#000 65%);
  z-index:-3
}

.hero:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,#14141300 50%,#14141300 80%,#14141330),linear-gradient(0deg,#141413 0%,transparent 23%);
  pointer-events:none;
  z-index:-1
}

.hero-ambient {
  position:absolute;
  inset:5% -8% -10% 28%;
  background:radial-gradient(ellipse at 65% 50%,#d83a0f1c,transparent 55%),radial-gradient(ellipse at 45% 65%,#ff790019,transparent 55%);
  filter:blur(28px);
  animation:ambient-drift 14s ease-in-out infinite alternate;
  z-index:-3
}

.hero-content {
  position:relative;
  z-index:3;
  padding-top:184px;
  pointer-events:none
}

.hero-content a {
  pointer-events:auto
}

.hero-eyebrow {
  color:#c9c9c1;
  animation:enter .9s var(--ease) both
}

.hero h1 {
  margin-top:35px;
  max-width:1100px;
  font-size:clamp(65px,7.25vw,116px);
  letter-spacing:-.071em;
  line-height:1.01;
  font-weight:500
}

.hero h1>span {
  display:block;
  animation:enter 1.1s var(--ease) both
}

.hero h1>span:nth-child(2) {
  animation-delay:.12s
}

.hero h1 em {
  color:var(--orange)
}

.hero-bottom {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  margin-top:38px;
  animation:enter 1.1s .23s var(--ease) both
}

.hero-description {
  max-width:375px
}

.hero-description p {
  font-size:14px;
  color:#adada6;
  line-height:1.85
}

.hero-description .button {
  margin-top:28px
}

.hero-name {
  position:absolute;
  bottom:1px;
  left:50%;
  transform:translateX(-50%);
  font-size:clamp(210px,26.5vw,470px);
  font-weight:800;
  line-height:.8;
  letter-spacing:-.09em;
  padding-right:.08em;
  white-space:nowrap;
  z-index:-2;
  color:#a6814540;
  -webkit-text-stroke:1px #b2a58735;
  mask-image:linear-gradient(180deg,#000,#0002 100%)
}

.scroll-link {
  margin:0 7px 0 0;
  width:42px;
  min-height:60px;
  display:flex;
  flex-direction:column;
  align-items:center;
  color:#a5a59b;
  gap:13px
}

.scroll-line {
  height:55px;
  width:1px;
  background:linear-gradient(transparent,#ff79009c);
  animation:scroll-pulse 2.5s ease-in-out infinite
}







.sculpture {
  position:absolute;
  right:-65px;
  top:92px;
  width:630px;
  height:730px;
  perspective:1000px;
  z-index:0;
  pointer-events:none;
  transform:translate(calc(var(--pointer-x,0)*-16px),calc(var(--pointer-y,0)*-12px));
  transition:transform .6s var(--ease)
}

.sculpture-image {
  position:absolute;
  height:104%;
  width:auto;
  max-width:none;
  right:5%;
  top:-3%;
  object-fit:contain;
  transform:rotate(-14deg);
  animation:sculpture-float 10s ease-in-out infinite;
  filter:drop-shadow(0 0 24px #ff79001d);
  mix-blend-mode:screen;
  opacity:.9
}

.sculpture-halo {
  position:absolute;
  width:80%;
  height:65%;
  left:8%;
  top:15%;
  background:radial-gradient(ellipse,#ed991424,#d83a0f09 45%,transparent 70%);
  filter:blur(22px);
  animation:halo-breathe 8s ease-in-out infinite alternate
}

.sculpture-orbit {
  position:absolute;
  inset:12% 6%;
  border:1px solid #ff790025;
  border-radius:50%;
  transform:rotate(-30deg) rotateY(63deg);
  box-shadow:0 0 40px #ff790006,inset 0 0 60px #ff790005;
  animation:orbit-tilt 14s ease-in-out infinite alternate
}

.sculpture-orbit:before,.sculpture-orbit:after {
  content:'';
  position:absolute;
  inset:8%;
  border:1px solid #ff79000e;
  border-radius:50%
}

.sculpture-orbit:after {
  inset:-9%;
  border-color:#ffffff07
}

.logo-strip {
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#151514
}

.logo-row {
  min-height:118px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px
}

.payment-logo {
  color:#b7b7b1;
  white-space:nowrap
}

.visa {
  font-style:italic;
  font-weight:800;
  font-family:var(--font);
  letter-spacing:-2px;
  font-size:35px
}

.mastercard {
  position:relative;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:15px;
  letter-spacing:-.06em
}

.mastercard i {
  display:block;
  position:relative;
  width:35px;
  height:23px;
  flex:none
}

.mastercard i:before,.mastercard i:after {
  content:'';
  position:absolute;
  top:0;
  width:23px;
  height:23px;
  background:currentColor;
  border-radius:50%;
  opacity:.75
}

.mastercard i:after {
  left:13px;
  opacity:.4
}

.apple {
  font-size:25px;
  letter-spacing:-.06em;
  font-weight:600
}

.google {
  font-size:25px;
  letter-spacing:-.06em
}

.sepa {
  font-family:var(--font);
  font-weight:700;
  letter-spacing:1px;
  font-size:27px
}

.klarna {
  font-size:29px;
  font-weight:700;
  letter-spacing:-.09em
}

/* Editorial sections */
.section-heading {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:100px;
  align-items:start;
  margin-bottom:60px
}

.section-heading>p,.section-heading>div {
  max-width:470px;
  justify-self:end
}

.section-heading h2 em {
  color:#85857d
}






















.smart-section {
  background:#161615;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)
}

.smart-layout {
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:70px;
  align-items:center
}

.smart-copy>p {
  margin-top:30px;
  max-width:490px
}

.smart-points {
  margin-top:48px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:35px
}

.smart-points h3 {
  font-size:18px;
  margin-bottom:14px;
  letter-spacing:-.025em
}

.smart-points p {
  font-size:13px;
  line-height:1.75
}

.mini-icon {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  color:var(--orange);
  font-size:23px;
  margin-bottom:18px
}

.routing-art {
  position:relative;
  min-height:480px;
  isolation:isolate;
  overflow:hidden;
  border:1px solid #ffffff08;
  background:radial-gradient(ellipse at center,#34231944,transparent 65%)
}

.routing-grid {
  position:absolute;
  inset:0;
  background-image:radial-gradient(#ffffff20 .7px,transparent .7px);
  background-size:20px 20px;
  mask-image:radial-gradient(ellipse,#000,transparent 70%)
}

.route-core {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) rotateX(12deg) rotateY(-12deg);
  width:170px;
  height:104px;
  background:linear-gradient(140deg,#35322c,#131312);
  border:1px solid #ff79004a;
  border-radius:13px;
  display:grid;
  place-items:center;
  box-shadow:inset 0 1px #ffffff20,0 15px 0 #0e0e0d,0 16px 0 #ffffff12,0 23px 40px #0009;
  z-index:4
}

.route-core .wordmark {
  font-size:30px
}

.route-track {
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid #ff790020;
  border-radius:50%;
  transform:translate(-50%,-50%) rotate(-30deg);
  height:260px;
  width:410px
}

.track-two {
  transform:translate(-50%,-50%) rotate(30deg);
  width:350px
}

.track-three {
  transform:translate(-50%,-50%) rotate(90deg);
  width:345px
}

.route-track:after {
  content:'';
  position:absolute;
  width:6px;
  height:6px;
  background:var(--orange);
  border-radius:50%;
  left:25%;
  top:1%;
  box-shadow:0 0 15px var(--orange);
  offset-path:ellipse(50% 50% at 50% 50%);
  animation:route-pulse 4s ease-in-out infinite
}

.track-two:after {
  animation-delay:1.5s
}

.track-three:after {
  animation-delay:2.5s
}

.route-node {
  position:absolute;
  display:grid;
  place-items:center;
  border:1px solid #ffffff20;
  background:#20201e;
  height:52px;
  min-width:99px;
  border-radius:5px;
  box-shadow:0 8px 20px #0005;
  font-size:14px;
  letter-spacing:-.04em;
  color:#c2c2b9;
  z-index:5
}

.node-one {
  left:14%;
  top:17%;
  font-style:italic;
  font-weight:800;
  font-size:21px
}

.node-two {
  right:7%;
  top:29%;
  font-weight:700
}

.node-three {
  left:7%;
  bottom:24%
}

.node-four {
  right:15%;
  bottom:15%
}

.routing-caption {
  position:absolute;
  bottom:16px;
  left:0;
  right:0;
  text-align:center;
  color:#7d7d75;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em
}

.advantage-section {
  background:radial-gradient(ellipse at 85% 20%,#ff790008,transparent 55%),#0e1012;
  color:var(--ink);
  padding-bottom:100px
}



.advantage-top {
  display:grid;
  grid-template-columns:1fr 1.25fr;
  gap:90px;
  align-items:center
}

.advantage-top h2 {
  font-size:58px
}

.heavy {
  font-weight:750;
  letter-spacing:-.07em
}

.advantage-top p {
  color:#a5a6a8;
  margin-top:27px;
  font-size:14px
}

.stats {
  display:flex;
  gap:65px;
  justify-content:flex-end
}

.stat {
  display:flex;
  flex-direction:column;
  gap:13px
}

.stat-number {
  font-size:clamp(75px,8.4vw,132px);
  font-weight:450;
  line-height:1;
  letter-spacing:-.085em
}

.stat-number>span {
  font-size:.5em;
  vertical-align:top;
  line-height:1.55;
  color:var(--red);
  padding-left:6px;
  letter-spacing:-.06em
}

.stat-label {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#a5a6a8
}

.benefit-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:45px;
  margin-top:70px
}

.benefit {
  padding-top:24px;
  border-top:1px solid var(--line)
}

.benefit-number {
  font-size:10px;
  color:var(--red)
}

.benefit h3 {
  font-size:23px;
  max-width:280px;
  margin-top:25px;
  line-height:1.2
}

.benefit p {
  margin-top:20px;
  font-size:13px;
  line-height:1.8;
  color:#a5a6a8;
  max-width:340px
}

.integration-split {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  align-items:center;
  gap:60px
}

.integration-split p {
  max-width:390px;
  margin-block:30px
}

/* Keep the branded question mark beside a compact, readable disclosure list. */
.faq-section { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:start; gap:clamp(48px,7vw,112px); }
.faq-heading { position:sticky; top:calc(var(--header-offset) + 24px); display:flex; flex-direction:column; align-items:flex-start; gap:32px; }
.faq-heading h2 { position:relative; z-index:1; font-size:clamp(36px,3.6vw,56px); line-height:1.08; letter-spacing:-.055em; font-weight:500; }
.faq-heading h2 em { color:var(--orange); }
.faq-question-mark { width:clamp(160px,18vw,240px); }
.faq-question-mark img { display:block; width:100%; height:auto; filter:drop-shadow(0 0 10px #ff79000d); }
.faq-list { min-width:0; }
.faq-item { position:relative; border-bottom:1px solid #fcfcfc12; }
.faq-item:first-child { border-top:1px solid #fcfcfc12; }
.faq-item:before { content:''; position:absolute; left:0; top:-1px; width:0; height:1px; background:var(--orange); transition:width .2s var(--ease); }
.faq-item[open]:before { width:32px; }
.faq-item summary { display:grid; grid-template-columns:minmax(0,1fr) 36px; align-items:center; gap:24px; padding:24px 0; min-height:76px; cursor:pointer; list-style:none; font-size:clamp(18px,1.5vw,22px); line-height:1.4; letter-spacing:-.025em; transition:color .2s; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary:hover { color:#ffd09b; }
.faq-item summary:focus-visible { outline:2px solid var(--orange); outline-offset:6px; border-radius:2px; }
.faq-toggle { display:block; width:36px; height:36px; border-radius:50%; color:#b9b5af; background:linear-gradient(145deg,#fcfcfc05,#0001); transition:color .3s,background .3s,box-shadow .3s; }
.faq-toggle svg { display:block; width:100%; height:100%; overflow:visible; }
.faq-ring { stroke:#fcfcfc26; stroke-width:1; transition:stroke .3s; }
.faq-ring-glint { stroke:#ffb765; stroke-width:1.4; stroke-linecap:round; stroke-dasharray:18 82; opacity:0; transform-origin:18px 18px; }
.faq-orbit { fill:#ef9b43; transform-origin:18px 18px; transition:transform .45s var(--ease); }
.faq-chevron { stroke:currentColor; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; transform-origin:18px 18px; transition:transform .35s var(--ease); }
.faq-item summary:focus-visible .faq-ring-glint { animation:faq-ring-sweep .65s ease-out; }
@media(hover:hover) and (pointer:fine) {
  .faq-item summary:hover .faq-ring-glint { animation:faq-ring-sweep .65s ease-out; }
}
.faq-item[open] .faq-toggle { color:#ffb765; background:linear-gradient(145deg,#ff9b4310,#ff790005); box-shadow:0 0 16px #ff79000d; }
.faq-item[open] .faq-ring { stroke:#ed991478; }
.faq-item[open] .faq-orbit,.faq-item[open] .faq-chevron { transform:rotate(180deg); }
@keyframes faq-ring-sweep { 0% { opacity:0; transform:rotate(-90deg); } 25% { opacity:.9; } 100% { opacity:0; transform:rotate(270deg); } }
.faq-answer { max-width:65ch; padding:0 60px 28px 0; }
.faq-answer p { color:var(--muted); font-size:16px; line-height:1.75; }
.faq-answer p+p { margin-top:16px; }
.faq-item[open] .faq-answer { animation:faq-answer-enter .18s var(--ease); }
@keyframes faq-answer-enter { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:850px) {
  .faq-section { grid-template-columns:minmax(0,1fr); gap:36px; }
  .faq-heading { position:static; flex-direction:row; align-items:center; justify-content:space-between; gap:24px; }
  .faq-question-mark { flex:0 0 140px; }
}
@media(max-width:650px) {
  .faq-section { gap:28px; }
  .faq-heading { gap:16px; }
  .faq-heading h2 { font-size:clamp(30px,6.9vw,42px); }
  .faq-question-mark { flex-basis:88px; }
  .faq-item summary { gap:16px; padding:20px 0; font-size:17px; min-height:72px; }
  .faq-answer { padding:0 24px 24px 0; }
  .faq-answer p { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) {
  .faq-item:before,.faq-toggle,.faq-ring,.faq-orbit,.faq-chevron { transition:none; }
  .faq-item summary .faq-ring-glint { animation:none; }
  .faq-item[open] .faq-answer { animation:none; }
}

/* Footer */
.site-footer {
  border-top:1px solid var(--line);
  background:#191918;
  overflow:hidden;
  padding-top:80px
}

.footer-top {
  display:grid;
  grid-template-columns:1.25fr .6fr 1fr;
  gap:90px
}

.footer-message .brand {
  margin-bottom:25px
}

.footer-message>p {
  max-width:330px;
  font-size:13px
}

.email-link {
  display:inline-flex;
  gap:32px;
  align-items:center;
  font-size:19px;
  letter-spacing:-.035em;
  padding:14px 0
}

.email-link>span {
  color:var(--orange)
}

.footer-message .email-link {
  font-size:15px;
  margin-top:17px
}

.footer-column {
  display:flex;
  align-items:flex-start;
  flex-direction:column;
  gap:12px;
  font-size:12px
}

.footer-column .eyebrow {
  color:#77776f;
  margin-bottom:15px;
  font-size:10px
}

.footer-column a:hover {
  color:var(--orange)
}

.footer-contact p {
  font-size:12px;
  line-height:1.8;
  max-width:285px;
  margin-top:14px
}

.footer-bottom {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding-block:26px;
  margin-top:30px;
  border-top:1px solid var(--line);
  font-size:9px;
  letter-spacing:.025em;
  color:#8a8a81
}

.footer-bottom>div {
  display:flex;
  align-items:center;
  gap:27px
}

.footer-bottom a:hover {
  color:var(--ink)
}

.footer-bottom a:last-child {
  font-size:18px;
  color:var(--orange)
}

/* Inner pages */
.inner-hero {
  padding:190px 0 80px;
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:radial-gradient(ellipse at 90% 50%,#38211340,transparent 50%)
}

.inner-hero-layout {
  position:relative;
  min-height:400px;
  display:grid;
  grid-template-columns:1.3fr .7fr;
  gap:50px;
  align-items:center
}

.inner-hero-copy {
  position:relative;
  z-index:2
}

.inner-hero h1 {
  font-size:clamp(52px,5.7vw,88px);
  margin-block:30px
}

.inner-hero-copy>p {
  max-width:610px;
  font-size:15px
}

.inner-hero .sphere-stage {
  transform:scale(1.23);
  min-height:380px
}

.sculpture--inner {
  top:-135px;
  right:-110px;
  height:650px;
  width:450px;
  opacity:.55;
  z-index:0
}

.sculpture--inner .sculpture-image {
  right:-5%;
  transform:rotate(8deg);
  animation:sculpture-float 12s ease-in-out infinite
}

.solution-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px
}

.solution-card {
  border:1px solid var(--line);
  padding:24px 28px 35px;
  background:linear-gradient(150deg,#20201c,#151514)
}

.solution-card h2 {
  font-size:30px;
  line-height:1.2;
  margin-top:19px;
  letter-spacing:-.045em
}

.solution-card p {
  font-size:13px;
  margin-top:20px
}

.solution-visual {
  height:230px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  perspective:600px;
  margin-bottom:24px
}

.bank-card {
  position:absolute;
  inset:40px 15px;
  background:linear-gradient(135deg,#625236,#272622 40%,#121210);
  border:1px solid #a17b4144;
  box-shadow:inset 1px 1px #ffffff20,12px 25px 30px #0008;
  border-radius:10px;
  padding:19px;
  transform:rotateX(22deg) rotateY(-14deg) rotateZ(-13deg);
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-width:180px
}

.bank-card span {
  font-weight:800;
  font-size:15px;
  letter-spacing:-.04em;
  color:#d8c6a7
}

.bank-card b {
  color:#877e6a;
  font-size:20px
}

.bank-card strong {
  align-self:flex-end;
  font-style:italic;
  font-size:20px;
  color:#d3c9b7
}

.bank-card--back {
  transform:rotateX(22deg) rotateY(-14deg) rotateZ(-13deg) translate(18px,-18px);
  opacity:.4;
  z-index:1
}

.transfer-node {
  display:grid;
  place-items:center;
  height:85px;
  width:85px;
  border-radius:16px;
  border:1px solid #ff790045;
  box-shadow:inset 1px 1px #ffffff1a,0 10px 0 #0f0f0e,0 13px 22px #0009;
  background:linear-gradient(140deg,#3e3425,#191918);
  color:#f3a54e;
  font-size:45px;
  transform:rotateY(-24deg) rotateX(25deg);
  z-index:2
}

.transfer-node:last-child {
  transform:rotateY(-24deg) rotateX(25deg) translateY(20px)
}

.transfer-link {
  height:1px;
  width:45px;
  background:linear-gradient(90deg,#ff790030,#ff7900,#ff790030);
  box-shadow:0 0 15px #ff790090
}

.wallet-card {
  position:absolute;
  width:165px;
  height:90px;
  display:grid;
  place-items:center;
  background:linear-gradient(130deg,#45453b,#171713);
  box-shadow:inset 1px 1px #fff3,12px 22px 35px #0009;
  border:1px solid #7f70593b;
  border-radius:12px;
  transform:rotate(-15deg) rotateY(-20deg);
  font-size:22px;
  letter-spacing:-.06em;
  top:38px;
  left:10px
}

.wallet-card+ .wallet-card {
  top:101px;
  left:66px;
  background:linear-gradient(130deg,#8c520f,#191918);
  transform:rotate(12deg) rotateY(-20deg)
}

.soft-section {
  background:var(--surface)
}

.soft-section .benefit {
  border-color:var(--line)
}

.soft-section .benefit p {
  color:var(--muted)
}

.soft-section .benefit-number {
  color:var(--orange)
}

.security-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:60px;
  margin-top:65px
}

.security-item {
  padding-top:30px;
  border-top:1px solid var(--line)
}

.security-item h3 {
  font-size:23px
}

.security-item p {
  font-size:13px;
  margin-top:18px
}

.payout-section {
  background:radial-gradient(ellipse at 10% 20%,#ff790009,transparent 50%),#0e1012;
  color:var(--ink)
}

.payout-section p {
  color:#a5a6a8
}



.payout-section h2 em {
  color:var(--red)
}

.payout-steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:55px;
  margin-top:65px
}

.payout-steps article {
  border-top:1px solid var(--line);
  padding-top:30px
}

.payout-steps article>span {
  font-size:55px;
  letter-spacing:-.07em;
  color:var(--red)
}

.payout-steps h3 {
  margin-top:35px
}

.payout-steps p {
  font-size:13px;
  margin-top:17px
}

.filter-bar {
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:45px
}

.filter-button {
  background:transparent;
  color:#a7a79e;
  border:1px solid var(--line);
  border-radius:3px;
  min-height:46px;
  padding:0 21px;
  font-size:11px;
  display:flex;
  align-items:center;
  gap:27px;
  transition:all .2s
}

.filter-button span {
  font-size:9px;
  opacity:.55
}

.filter-button:hover {
  border-color:#ff790070;
  color:var(--ink)
}

.filter-button.is-active {
  background:var(--orange);
  color:#191918;
  border-color:var(--orange)
}

.payment-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px
}

.payment-card {
  background:linear-gradient(140deg,#21211d,#171716);
  border:1px solid var(--line);
  padding:26px 30px 34px;
  min-height:310px;
  animation:enter .4s var(--ease)
}

.payment-card:hover {
  border-color:#ff790040
}

.payment-card-top {
  display:flex;
  justify-content:space-between;
  color:#88887f
}

.payment-card-top .mono {
  font-size:9px
}

.provider-word {
  height:118px;
  display:flex;
  align-items:center;
  color:#e0e0d6;
  font-size:32px;
  letter-spacing:-.06em
}

.provider-word.visa {
  font-size:48px
}

.provider-word.mastercard {
  font-size:23px
}

.payment-card h2 {
  font-size:20px;
  letter-spacing:-.03em;
  margin-bottom:18px
}

.payment-card p {
  font-size:13px;
  line-height:1.85;
  max-width:310px
}

.about-intro-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:65px
}

.about-intro-grid h2 {
  font-size:35px;
  letter-spacing:-.05em;
  margin-top:28px;
  line-height:1.18
}

.about-intro-grid p {
  font-size:14px;
  margin-top:25px
}

.values-band {
  display:flex;
  justify-content:space-evenly;
  align-items:center;
  gap:35px;
  padding:45px 30px;
  background:#111315;
  color:#d4d4d0;
  border-block:1px solid var(--line);
  overflow:hidden
}

.values-band>span {
  display:flex;
  gap:45px;
  align-items:center;
  font-size:34px;
  letter-spacing:-.05em;
  white-space:nowrap
}

.values-band b {
  font-size:27px;
  font-weight:400;
  color:var(--orange)
}

.editorial-row {
  display:grid;
  grid-template-columns:40px 1fr 1.4fr;
  gap:48px;
  padding-block:50px;
  border-top:1px solid var(--line)
}

.editorial-row h2 {
  font-size:39px;
  line-height:1.17;
  max-width:360px
}

.editorial-row p {
  font-size:14px
}

.editorial-row>.mono {
  padding-top:10px;
  color:var(--orange)
}

.callout {
  border-top:1px solid var(--line);
  padding:70px 0 95px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:70px
}

.callout h2 {
  font-size:57px
}

.callout p {
  margin-bottom:25px
}

.career-hero {
  padding-top:190px;
  min-height:850px;
  position:relative;
  isolation:isolate;
  overflow:hidden
}

.career-hero h1 {
  font-size:clamp(100px,13vw,190px);
  line-height:.92;
  margin-top:45px;
  max-width:750px;
  position:relative;
  z-index:2
}

.career-hero>p {
  max-width:430px;
  font-size:15px;
  margin-top:42px;
  position:relative;
  z-index:2
}

.sculpture--career {
  top:100px;
  right:-160px;
  height:760px
}

.career-word {
  position:absolute;
  font-size:24vw;
  font-weight:800;
  letter-spacing:-.08em;
  right:0;
  bottom:-25px;
  line-height:1;
  color:transparent;
  -webkit-text-stroke:1px #ffffff0a;
  z-index:-2
}

.contact-section {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:100px;
  padding-top:185px;
  position:relative;
  overflow:hidden
}

.contact-copy {
  position:relative
}

.contact-copy h1 {
  font-size:clamp(60px,6.5vw,100px);
  margin-block:30px;
  line-height:1.02;
  position:relative;
  z-index:2
}

.contact-word {
  font-weight:750;
  color:var(--orange)
}

.contact-copy>p {
  max-width:410px;
  font-size:14px;
  position:relative;
  z-index:2
}

.contact-copy>.email-link {
  margin-top:22px;
  position:relative;
  z-index:2
}

.contact-sculpture {
  width:240px;
  position:relative;
  right:-210px;
  height:145px;
  overflow:hidden;
  opacity:.55;
  margin-top:20px;
  mask-image:linear-gradient(#000,transparent)
}

.contact-sculpture img {
  width:100%;
  transform:rotate(24deg) translateY(-140px);
  mix-blend-mode:screen
}

.contact-form-panel {
  background:#1b1b19;
  border:1px solid var(--line);
  padding:42px 36px;
  align-self:start
}

.contact-form-panel form {
  display:flex;
  flex-direction:column;
  gap:28px
}

.contact-form-panel label {
  display:flex;
  flex-direction:column;
  gap:10px;
  font-size:12px;
  color:#e3e3d9
}

.form-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px
}

.contact-form-panel input,.contact-form-panel textarea {
  width:100%;
  background:transparent;
  border:0;
  border-bottom:1px solid #ffffff25;
  padding:12px 0;
  font-size:13px;
  color:var(--ink);
  border-radius:0;
  resize:vertical;
  min-width:0;
  outline:none;
  transition:border-color .2s
}

.contact-form-panel input::placeholder,.contact-form-panel textarea::placeholder {
  color:#77776e
}

.contact-form-panel input:focus,.contact-form-panel textarea:focus {
  border-color:var(--orange);
  box-shadow:0 1px var(--orange)
}

.form-submit {
  width:100%;
  margin-top:0
}

.form-preview-note {
  font-size:10px;
  line-height:1.6;
  color:#8b8b81;
  margin-top:-12px!important
}

.contact-form-panel #form-status {
  color:var(--orange);
  font-size:12px;
  margin:0
}

.contact-form-panel #form-status:empty {
  display:none
}

.legal-hero {
  padding-top:185px;
  padding-bottom:60px;
  border-bottom:1px solid var(--line)
}

.legal-hero h1 {
  font-size:clamp(45px,5.8vw,84px);
  margin:30px 0
}

.legal-layout {
  display:grid;
  grid-template-columns:.55fr 1.2fr;
  gap:100px;
  padding-top:70px;
  padding-bottom:110px
}

.legal-toc {
  display:flex;
  flex-direction:column;
  gap:18px;
  align-self:start;
  position:sticky;
  top:45px
}

.legal-toc a {
  display:flex;
  gap:18px;
  font-size:12px;
  color:#a9a99e
}

.legal-toc a:hover {
  color:var(--orange)
}

.legal-toc a>span {
  font-family:var(--mono);
  font-size:10px;
  color:#68685e
}

.legal-copy section {
  scroll-margin-top:35px;
  padding-bottom:40px;
  margin-bottom:30px;
  border-bottom:1px solid var(--line)
}

.legal-copy h2 {
  font-size:28px;
  letter-spacing:-.04em;
  margin-bottom:25px
}

.legal-copy p {
  font-size:14px;
  line-height:1.9
}

/* Motion */
.reveal {
  opacity:1;
  transform:none
}

.reveal:not(.is-visible) {
  animation:none
}

.reveal.is-visible {
  animation:enter .9s var(--ease) both
}

.reveal:nth-child(2) {
  animation-delay:.07s
}

.reveal:nth-child(3) {
  animation-delay:.13s
}

.reveal:nth-child(4) {
  animation-delay:.19s
}

@keyframes enter {
  from {
    opacity:0;
    transform:translateY(24px)
  }
  to {
    opacity:1;
    transform:translateY(0)
  }
}

@keyframes sculpture-float {
  0%,100% {
    transform:translateY(0) rotate(-14deg) rotateY(-5deg)
  }
  50% {
    transform:translateY(-22px) rotate(-9deg) rotateY(8deg)
  }
}

@keyframes halo-breathe {
  from {
    opacity:.6;
    transform:scale(.93)
  }
  to {
    opacity:1;
    transform:scale(1.12)
  }
}

@keyframes orbit-tilt {
  from {
    transform:rotate(-30deg) rotateY(63deg)
  }
  to {
    transform:rotate(-12deg) rotateY(68deg)
  }
}

@keyframes ambient-drift {
  from {
    transform:translate(-2%,-4%) scale(.94)
  }
  to {
    transform:translate(4%,3%) scale(1.08)
  }
}

@keyframes scroll-pulse {
  0%,100% {
    transform:scaleY(.6);
    opacity:.4
  }
  50% {
    transform:scaleY(1);
    opacity:1
  }
}

@keyframes route-pulse {
  0%,100% {
    opacity:.2;
    box-shadow:0 0 8px var(--orange)
  }
  50% {
    opacity:1;
    box-shadow:0 0 20px var(--orange)
  }
}

.motion-paused *,.motion-paused *:before,.motion-paused *:after {
  animation-play-state:paused!important
}

.motion-paused .reveal,.motion-paused .hero h1>span,.motion-paused .hero-bottom,.motion-paused .hero-eyebrow {
  opacity:1!important;
  transform:none!important;
  animation:none!important
}

.motion-paused .sculpture {
  transform:none!important
}

.motion-paused .scroll-line {
  animation:none
}

/* Responsive composition */
@media(min-width:1600px) {
  .sculpture {
    right:max(0px,calc((100vw - 1460px)/2 - 50px));
    width:650px
  }
  .hero-content {
    padding-top:200px
  }
  .hero {
    height:920px
  }
}

@media(max-width:1200px) {
  .wrap {
    width:calc(100% - 72px)
  }
  .header-inner {
    width:calc(100% - 72px);
    gap:25px
  }
  .desktop-nav {
    gap:20px
  }
  .hero {
    height:800px;
    min-height:800px
  }
  .hero-content {
    padding-top:180px
  }
  .hero h1 {
    font-size:7.7vw
  }
  .sculpture {
    right:-170px;
    top:140px;
    width:600px;
    height:660px;
    opacity:.8
  }
  .hero-bottom {
    margin-top:35px
  }
  .hero-name {
    bottom:40px
  }
  .section {
    padding-block:88px
  }
  .section-heading {
    gap:60px
  }
  .smart-layout {
    gap:35px
  }
  .smart-points {
    gap:25px
  }
  .routing-art {
    min-height:460px
  }
  .advantage-top {
    gap:50px
  }
  .stats {
    gap:35px
  }
  .stat-number {
    font-size:95px
  }
  .advantage-top h2 {
    font-size:53px
  }
  .footer-top {
    gap:55px
  }
  .solution-grid {
    gap:20px
  }
  .solution-card {
    padding:20px
  }
  .solution-visual {
    height:200px
  }
  .bank-card {
    inset:35px 0
  }
  .wallet-card {
    width:140px;
    left:-5px
  }
  .wallet-card+.wallet-card {
    left:43px
  }
  .inner-hero h1 {
    font-size:6vw
  }
  .sculpture--inner {
    right:-140px;
    top:-110px
  }
  .contact-section {
    gap:60px;
    padding-top:180px
  }
  .contact-form-panel {
    padding:35px 26px
  }
  .form-row {
    grid-template-columns:1fr
  }
  .values-band>span {
    font-size:28px;
    gap:30px
  }
  .about-intro-grid {
    gap:40px
  }
  .legal-layout {
    gap:65px
  }
  .inner-hero .sphere-stage {
    min-height:320px
  }
}

@media(max-width:1000px) {
  .desktop-nav {
    display:none
  }
  .menu-toggle {
    display:block
  }
  .header-actions {
    margin-left:auto
  }
  .hero h1 {
    font-size:8.8vw;
    max-width:100%
  }
  .hero-content {
    padding-top:175px
  }
  .hero {
    min-height:790px;
    height:790px
  }
  .sculpture {
    right:-160px;
    top:210px;
    width:510px;
    height:580px;
    opacity:.68
  }
  .hero-description {
    max-width:360px
  }
  .hero-bottom {
    margin-top:45px
  }
  .hero-name {
    font-size:27vw;
    bottom:70px
  }
  .logo-row {
    gap:25px;
    min-height:98px
  }
  .payment-logo {
    transform:scale(.9)
  }
  .mastercard {
    font-size:12px;
    gap:5px
  }
  .section-heading {
    grid-template-columns:1fr;
    gap:30px
  }
  .section-heading>p,.section-heading>div {
    justify-self:start;
    max-width:650px
  }
  .section-heading h2 {
    font-size:50px
  }
  .smart-layout {
    grid-template-columns:1fr;
    gap:50px
  }
  .smart-copy>p {
    max-width:650px
  }
  .smart-points {
    max-width:600px;
    gap:45px
  }
  .routing-art {
    max-width:620px;
    width:100%;
    margin:auto;
    min-height:470px
  }
  .smart-layout h2 {
    font-size:50px
  }
  .advantage-top {
    grid-template-columns:1fr;
    gap:45px
  }
  .stats {
    justify-content:flex-start;
    gap:80px
  }
  .stat-number {
    font-size:112px
  }
  .benefit-grid {
    gap:30px
  }
  .benefit h3 {
    font-size:21px
  }
  .integration-split {
    gap:20px;
    grid-template-columns:1.1fr .9fr
  }
  .integration-split h2 {
    font-size:44px
  }
  .footer-top {
    grid-template-columns:1.3fr 1fr;
    gap:50px
  }
  .footer-message {
    grid-column:1/-1
  }
  .footer-message>p {
    max-width:450px
  }
  .inner-hero {
    padding-top:170px
  }
  .inner-hero-layout {
    grid-template-columns:1.4fr .6fr;
    gap:20px
  }
  .inner-hero h1 {
    font-size:60px
  }
  .inner-hero .sphere-stage {
    min-height:280px;
    transform:scale(1.6)
  }
  .inner-hero-copy>p {
    max-width:620px
  }
  .solution-grid {
    grid-template-columns:1fr
  }
  .solution-card {
    display:grid;
    grid-template-columns:.8fr 1fr;
    gap:0 38px;
    padding:30px
  }
  .solution-visual {
    grid-row:1/4;
    align-self:center;
    width:100%;
    max-width:280px;
    margin:auto
  }
  .solution-card .mono {
    align-self:end
  }
  .solution-card h2 {
    margin-top:18px
  }
  .solution-card p {
    margin-top:18px
  }
  .security-grid {
    gap:30px
  }
  .payment-grid {
    grid-template-columns:repeat(2,1fr)
  }
  .about-intro-grid {
    grid-template-columns:1fr;
    gap:40px
  }
  .about-intro-grid article {
    max-width:680px;
    border-top:1px solid var(--line);
    padding-top:24px
  }
  .about-intro-grid h2 {
    font-size:38px;
    margin-top:20px
  }
  .values-band {
    flex-wrap:wrap;
    gap:26px;
    padding-block:32px
  }
  .values-band>span {
    font-size:26px
  }
  .values-band b {
    font-size:20px
  }
  .editorial-row {
    grid-template-columns:25px 1fr;
    gap:20px 30px
  }
  .editorial-row>div {
    grid-column:2
  }
  .editorial-row h2 {
    max-width:600px;
    font-size:37px
  }
  .callout {
    gap:45px
  }
  .callout h2 {
    font-size:45px
  }
  .career-hero {
    padding-top:175px;
    min-height:820px
  }
  .sculpture--career {
    right:-280px;
    top:130px;
    height:720px
  }
  .contact-section {
    grid-template-columns:1fr;
    gap:55px
  }
  .contact-copy>p {
    max-width:520px
  }
  .contact-copy h1 {
    font-size:88px
  }
  .contact-sculpture {
    position:absolute;
    right:0;
    top:70px;
    width:350px;
    height:350px;
    z-index:-1;
    opacity:.3;
    mask-image:linear-gradient(#000,transparent)
  }
  .contact-sculpture img {
    transform:rotate(25deg) translateY(-60px)
  }
  .form-row {
    grid-template-columns:1fr 1fr
  }
  .contact-form-panel {
    max-width:760px;
    width:100%;
    padding:40px
  }
  .legal-layout {
    grid-template-columns:1fr
  }
  .legal-toc {
    position:static;
    display:grid;
    grid-template-columns:1fr 1fr;
    padding-bottom:40px;
    border-bottom:1px solid var(--line)
  }
}

@media(max-width:650px) {
  :root {
    --header-height:68px
  }
  .wrap {
    width:calc(100% - 40px)
  }
  .section {
    padding-block:66px
  }
  .header-inner {
    width:calc(100% - 40px);
    height:var(--header-height);
    gap:10px
  }
  .site-header .wordmark {
    font-size:27px
  }
  .header-actions {
    gap:14px
  }
  .header-actions .button {
    min-height:36px;
    font-size:10px;
    gap:18px;
    padding:0 12px
  }
  .header-actions .button>span {
    font-size:19px
  }
  .hero {
    min-height:810px;
    height:calc(100svh - 20px);
    max-height:880px
  }
  .hero-content {
    padding-top:127px
  }
  .hero-eyebrow {
    font-size:9px;
    letter-spacing:.09em
  }
  .hero h1 {
    font-size:clamp(47px,10.6vw,69px);
    letter-spacing:-.065em;
    margin-top:29px;
    line-height:1.05
  }
  .hero h1>span {
    max-width:100%
  }
  .hero h1>span:first-child {
    max-width:340px
  }
  .hero h1>span:nth-child(2) {
    max-width:340px
  }
  .hero h1 em {
    white-space:nowrap
  }
  .hero-description {
    max-width:285px
  }
  .hero-description p {
    font-size:12px;
    line-height:1.85
  }
  .hero-description .button {
    margin-top:24px;
    min-height:48px;
    font-size:12px;
    gap:48px
  }
  .hero-bottom {
    margin-top:25px;
    align-items:flex-start
  }
  .scroll-link {
    display:none
  }
  .sculpture {
    width:330px;
    height:375px;
    right:-100px;
    top:auto;
    bottom:-15px;
    opacity:.78
  }
  .sculpture-image {
    height:104%;
    right:2%
  }
  .sculpture-halo {
    left:-15%;
    width:110%
  }
  .hero-name {
    font-size:27.5vw;
    bottom:75px;
    -webkit-text-stroke:1px #ffffff16;
    mask-image:linear-gradient(#000,#0004)
  }
  .hero-ambient {
    inset:25% -60% -10% -15%;
    opacity:.8
  }
  .hero:after {
    background:linear-gradient(0deg,#141413,transparent 27%)
  }
  .logo-row {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    justify-items:center;
    gap:25px 12px;
    padding-block:29px;
    min-height:140px
  }
  .payment-logo {
    transform:none
  }
  .visa {
    font-size:25px;
    letter-spacing:-1px
  }
  .mastercard {
    font-size:11px;
    gap:4px
  }
  .mastercard i {
    width:26px;
    height:18px
  }
  .mastercard i:before,.mastercard i:after {
    width:18px;
    height:18px
  }
  .mastercard i:after {
    left:10px
  }
  .apple,.google {
    font-size:20px
  }
  .sepa {
    font-size:21px
  }
  .klarna {
    font-size:24px
  }
  .section-heading {
    gap:23px;
    margin-bottom:36px
  }
  .section-heading h2,.smart-layout h2 {
    font-size:38px
  }
  .section-heading p {
    font-size:13px;
    line-height:1.8
  }
  .smart-copy>p {
    font-size:13px;
    margin-top:25px
  }
  .smart-points {
    gap:23px;
    margin-top:33px
  }
  .smart-points h3 {
    font-size:17px
  }
  .smart-points p {
    font-size:12px
  }
  .routing-art {
    min-height:370px
  }
  .route-core {
    width:137px;
    height:82px
  }
  .route-core .wordmark {
    font-size:25px
  }
  .route-track {
    width:300px;
    height:210px
  }
  .track-two {
    width:250px
  }
  .track-three {
    width:270px
  }
  .route-node {
    min-width:75px;
    height:41px;
    font-size:11px
  }
  .node-one {
    left:9%;
    font-size:18px
  }
  .node-two {
    right:3%
  }
  .node-three {
    left:3%
  }
  .node-four {
    right:10%
  }
  .routing-caption {
    font-size:7px
  }
  .advantage-top h2 {
    font-size:48px
  }
  .advantage-top p {
    font-size:13px
  }
  .advantage-top p br {
    display:none
  }
  .advantage-top {
    gap:35px
  }
  .stats {
    gap:40px;
    justify-content:space-between
  }
  .stat-number {
    font-size:clamp(66px,19vw,108px)
  }
  .stat-label {
    font-size:8px
  }
  .benefit-grid {
    grid-template-columns:1fr;
    gap:30px;
    margin-top:43px
  }
  .benefit {
    padding-top:21px;
    display:grid;
    grid-template-columns:25px 1fr;
    gap:16px
  }
  .benefit-number {
    grid-row:1/3;
    padding-top:5px
  }
  .benefit h3 {
    font-size:23px;
    margin:0;
    max-width:270px
  }
  .benefit p {
    margin:0;
    grid-column:2;
    max-width:100%;
    font-size:13px
  }
  .integration-split {
    grid-template-columns:1fr;
    gap:20px
  }
  .integration-split h2 {
    font-size:38px
  }
  .integration-split p {
    font-size:13px;
    margin-block:24px
  }
  .integration-split .sphere-stage {
    max-width:390px;
    margin:0 auto
  }
  .integration-split .button-row {
    gap:25px
  }
  .sphere-stage {
    aspect-ratio:1.12
  }
  .site-footer {
    padding-top:50px
  }
  .footer-top {
    grid-template-columns:.75fr 1.25fr;
    gap:40px 28px
  }
  .footer-message .brand {
    margin-bottom:20px
  }
  .footer-message>p {
    font-size:13px;
    max-width:320px
  }
  .footer-column {
    font-size:11px;
    gap:10px
  }
  .footer-column .eyebrow {
    font-size:9px;
    margin-bottom:8px
  }
  .footer-contact p {
    font-size:11px
  }
  .footer-display {
    margin-top:55px;
    font-size:26vw
  }
  .footer-display>span {
    font-size:10px
  }
  .footer-bottom {
    align-items:flex-start;
    flex-direction:column;
    gap:18px;
    margin-top:22px;
    padding-block:25px;
    font-size:8px
  }
  .footer-bottom>div {
    width:100%;
    gap:25px
  }
  .footer-bottom a:last-child {
    margin-left:auto
  }
  .inner-hero {
    padding-top:135px;
    padding-bottom:50px
  }
  .inner-hero-layout {
    display:block;
    min-height:0
  }
  .inner-hero h1 {
    font-size:48px;
    margin:27px 0;
    max-width:100%
  }
  .inner-hero h1 br {
    display:none
  }
  .inner-hero-copy>p {
    font-size:13px;
    max-width:500px
  }
  .inner-hero .sculpture {
    opacity:.15;
    right:-140px;
    top:-50px;
    bottom:auto;
    height:440px
  }
  .inner-hero .sphere-stage {
    display:none
  }
  .inner-hero .eyebrow {
    font-size:9px
  }
  .solution-card {
    display:block;
    padding:26px
  }
  .solution-visual {
    max-width:270px;
    height:200px;
    margin-bottom:30px
  }
  .solution-card h2 {
    font-size:31px;
    max-width:300px
  }
  .solution-card p {
    font-size:13px
  }
  .security-grid {
    grid-template-columns:1fr;
    gap:30px;
    margin-top:40px
  }
  .security-item h3 {
    font-size:24px
  }
  .security-item p {
    font-size:13px
  }
  .security-item {
    padding-top:25px
  }
  .payout-steps {
    grid-template-columns:1fr;
    gap:30px;
    margin-top:40px
  }
  .payout-steps article {
    display:grid;
    grid-template-columns:65px 1fr;
    gap:12px 20px;
    padding-top:24px
  }
  .payout-steps article>span {
    grid-row:1/3;
    font-size:45px;
    line-height:1.2
  }
  .payout-steps h3 {
    margin:0;
    font-size:24px
  }
  .payout-steps p {
    margin:0;
    grid-column:2
  }
  .catalog-section {
    padding-top:40px
  }
  .filter-bar {
    gap:7px;
    margin-bottom:30px
  }
  .filter-button {
    padding:0 13px;
    gap:17px;
    font-size:10px;
    min-height:44px
  }
  .filter-button span {
    font-size:8px
  }
  .payment-grid {
    grid-template-columns:1fr;
    gap:16px
  }
  .payment-card {
    padding:24px 27px;
    min-height:270px
  }
  .provider-word {
    height:100px
  }
  .payment-card p {
    max-width:100%
  }
  .payment-card h2 {
    margin-bottom:14px
  }
  .about-intro-grid {
    gap:35px
  }
  .about-intro-grid h2 {
    font-size:33px
  }
  .about-intro-grid p {
    font-size:13px
  }
  .values-band {
    gap:20px;
    padding:27px 20px;
    justify-content:flex-start
  }
  .values-band>span {
    font-size:24px;
    gap:25px;
    width:calc(50% - 10px);
    justify-content:space-between
  }
  .values-band b {
    font-size:17px
  }
  .editorial-row {
    gap:18px 16px;
    padding-block:35px
  }
  .editorial-row h2 {
    font-size:32px
  }
  .editorial-row p {
    font-size:13px
  }
  .callout {
    flex-direction:column;
    align-items:flex-start;
    gap:28px;
    padding:45px 0 65px
  }
  .callout h2 {
    font-size:41px
  }
  .callout p {
    font-size:13px;
    margin-bottom:19px
  }
  .career-hero {
    padding-top:137px;
    min-height:790px
  }
  .career-hero h1 {
    font-size:clamp(96px,22vw,135px);
    margin-top:35px
  }
  .career-hero>p {
    font-size:13px;
    max-width:300px;
    margin-top:28px
  }
  .sculpture--career {
    width:370px;
    height:480px;
    right:-135px;
    top:auto;
    bottom:0;
    opacity:.65
  }
  .career-word {
    font-size:28vw;
    bottom:25px;
    left:0
  }
  .contact-section {
    padding-top:134px;
    gap:37px
  }
  .contact-copy h1 {
    font-size:70px;
    margin-block:26px
  }
  .contact-copy>p {
    font-size:13px
  }
  .contact-copy .email-link {
    font-size:17px;
    margin-top:17px
  }
  .contact-sculpture {
    width:240px;
    right:-85px;
    top:140px;
    height:240px;
    opacity:.2
  }
  .contact-form-panel {
    padding:30px 22px
  }
  .contact-form-panel form {
    gap:25px
  }
  .form-row {
    grid-template-columns:1fr;
    gap:25px
  }
  .contact-form-panel input,.contact-form-panel textarea {
    font-size:16px
  }
  .contact-form-panel input::placeholder,.contact-form-panel textarea::placeholder {
    font-size:12px
  }
  .contact-form-panel label {
    font-size:11px
  }
  .form-preview-note {
    font-size:10px
  }
  .legal-hero {
    padding-top:135px;
    padding-bottom:35px
  }
  .legal-hero h1 {
    font-size:48px;
    overflow-wrap:anywhere;
    margin:25px 0
  }
  .legal-hero .mono {
    font-size:9px
  }
  .legal-layout {
    padding-top:35px;
    gap:35px;
    padding-bottom:65px
  }
  .legal-toc {
    grid-template-columns:1fr;
    gap:14px;
    padding-bottom:30px
  }
  .legal-toc a {
    font-size:12px
  }
  .legal-copy h2 {
    font-size:25px
  }
  .legal-copy p {
    font-size:13px
  }
  .legal-copy section {
    padding-bottom:30px;
    margin-bottom:25px
  }
}

@media(max-width:370px) {
  .header-actions .button {
    gap:11px;
    padding-inline:10px
  }
  .header-actions {
    gap:10px
  }
  .hero h1 {
    font-size:46px
  }
  .hero {
    min-height:805px
  }
  .hero-description {
    max-width:265px
  }
  .sculpture {
    right:-135px;
    bottom:15px;
    width:330px;
    height:390px
  }
  .stats {
    gap:25px
  }
  .stat-number {
    font-size:66px
  }
  .stat-label {
    font-size:7px
  }
  .filter-button {
    gap:10px;
    padding-inline:10px
  }
  .payment-logo.mastercard {
    font-size:9px
  }
  .logo-row {
    column-gap:7px
  }
  .contact-copy h1 {
    font-size:61px
  }
  .form-preview-note {
    font-size:9px
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
  .reveal,.hero h1>span,.hero-bottom,.hero-eyebrow {
    opacity:1!important;
    transform:none!important
  }
  .sculpture {
    transform:none!important
  }
}

/* All original identifiable payment-network names remain in the moving strip. */
.logo-row {
  display:block;
  min-height:0;
  overflow:hidden;
  padding-block:38px;
  mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)
}

.logo-track {
  display:flex;
  width:max-content;
  animation:logo-travel 55s linear infinite
}

.logo-group {
  display:flex;
  align-items:center;
  gap:70px;
  padding-right:70px
}

.logo-group>a {
  display:flex;
  align-items:center;
  min-height:42px
}

.logo-group .provider {
  font-size:25px;
  font-weight:650;
  letter-spacing:-.05em
}

.logo-group .amex {
  font-size:15px;
  font-weight:700;
  line-height:1.1;
  max-width:85px;
  white-space:normal;
  text-transform:uppercase
}

.logo-strip:hover .logo-track,.logo-strip:focus-within .logo-track {
  animation-play-state:paused
}

@keyframes logo-travel {
  to {
    transform:translateX(-50%)
  }
}

@media(max-width:650px) {
  .logo-row {
    padding-block:24px
  }
  .logo-group {
    gap:42px;
    padding-right:42px
  }
  .logo-group .provider {
    font-size:22px
  }
  .logo-group .amex {
    font-size:12px;
    max-width:68px
  }
}

@media(prefers-reduced-motion:reduce) {
  .logo-row {
    overflow-x:auto;
    mask-image:none
  }
  .logo-track {
    animation:none
  }
  .logo-group[aria-hidden] {
    display:none
  }
}


/* Both public forms share a quiet, compact completion area. */
.form-footer {
  display: grid;
  gap: 16px;
  padding-top: 8px;
  min-width: 0;
}
.form-footer p { margin: 0; }
.form-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-width: 0;
}
.captcha-panel {
  min-width: 0;
  display: grid;
  justify-items: start;
  flex: 0 0 auto;
}
.captcha-panel:empty { display: none; }
.form-actions .form-submit {
  width: auto;
  min-width: 180px;
  min-height: 52px;
  padding: 14px 28px;
  margin: 0 0 0 auto;
  align-self: center;
  border-radius: 999px;
  border: 1px solid #ffffff38;
  background: linear-gradient(145deg, #373735, #191918 75%);
  color: #fcfcfc;
  box-shadow: inset 0 1px 1px #ffffff30, 0 6px 18px #0004;
}
.form-actions .form-submit:before { display: none; }
.form-actions .form-submit:enabled:hover {
  background: linear-gradient(145deg, #41382d, #20201d 75%);
  border-color: #ed9914;
  box-shadow: inset 0 1px 1px #ffffff30, 0 6px 18px #0004;
}
.form-actions .form-submit:disabled {
  color: #aaa9a4;
  transform: none;
  box-shadow: inset 0 1px 1px #ffffff12;
}
.form-actions .form-submit:disabled:after { display: none; }
.form-footer .form-availability:empty { display: none; }
@media (max-width: 600px) {
  .form-actions { flex-direction: column; align-items: flex-start; gap: 20px; }
  .form-actions .form-submit { width: 100%; margin: 0; }
}
.form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.form-privacy-note, .form-availability { color: #bcbcbc; font-size: 13px; line-height: 1.7; }
.form-privacy-note a { color: #e9c8a6; text-decoration: underline; text-underline-offset: 3px; }
.form-availability { padding-left: 16px; border-left: 1px solid #ff7900; }
#contact-form .form-submit:disabled { opacity: 1; cursor: not-allowed; }
