/* A quiet vector texture beneath the page, with slow, low-contrast pulses. */
.footer-contacts { display:flex; flex-direction:column; align-items:flex-start; gap:10px; margin-top:20px; font-size:13px; color:var(--muted); }
.footer-contacts a:hover,.connect-contacts a:hover { color:var(--accent-link); }
.connect-contacts { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:24px; padding-top:20px; border-top:1px solid var(--line); font-size:13px; }
.connect-contacts>span { width:100%; color:var(--muted); font-size:12px; }
.connect-contacts a { color:var(--accent-link); padding-block:4px; }
.connect-modal .result-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.connect-modal .result-actions .button { padding-inline:12px; font-size:12px; }
.application-tools { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:18px; }
.application-tools .text-link { padding-block:6px; font-size:12px; }
.connect-modal .modal-intro { line-height:1.65; }
.connect-modal .form-note { font-size:11px; color:var(--muted); }
.application-methods { min-width:0; padding:0; border:0; margin:0; }
.application-methods legend { margin-bottom:10px; padding:0; font-size:12px; font-weight:600; color:var(--muted); }
.application-method-options { display:flex; flex-wrap:wrap; gap:8px; }
.application-method-options label { position:relative; display:block; cursor:pointer; }
.application-method-options input { position:absolute; width:1px; height:1px; opacity:0; padding:0; }
.application-method-options span { display:block; padding:9px 12px; border:1px solid var(--line); border-radius:20px; font-size:11px; font-weight:500; color:var(--muted); transition:background .2s,border-color .2s,color .2s; }
.application-method-options input:checked+span { color:var(--accent-link); background:color-mix(in srgb,var(--purple) 10%,var(--surface)); border-color:var(--accent-link); }
.application-method-options input:focus-visible+span { outline:2px solid var(--accent-link); outline-offset:3px; }
.application-method-options input:disabled+span { opacity:.65; cursor:wait; }
.application-honey { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.application-error { border:1px solid #b86c6c66; background:#ad50500c; color:var(--ink); padding:12px 14px; border-radius:10px; font-size:12px; line-height:1.6; }
.application-error:focus { outline:2px solid var(--accent-link); outline-offset:3px; }
.connect-modal [aria-invalid="true"] { border-color:#c77272; }
.connect-modal .form-submit:disabled { opacity:.65; transform:none; box-shadow:none; cursor:wait; }
.application-success-mark { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:color-mix(in srgb,var(--purple) 12%,var(--surface)); color:var(--accent-link); margin:0 0 18px; }
.application-success-mark svg { width:24px; height:24px; }
.application-receipt { display:grid; gap:16px; border:1px solid var(--line); padding:20px; border-radius:14px; background:var(--surface); }
.application-receipt>div { display:flex; justify-content:space-between; gap:16px; align-items:baseline; }
.application-receipt span { color:var(--muted); font-size:12px; }
.application-receipt strong { font-size:13px; font-weight:600; overflow-wrap:anywhere; text-align:right; }
#application-result-title:focus { outline:none; }
@media(max-width:420px) { .connect-modal .result-actions { grid-template-columns:1fr; } }
body { isolation:isolate; }
.ambient-background { position:fixed; inset:0; z-index:-1; pointer-events:none; overflow:hidden; contain:paint; }
.ambient-background>svg { display:block; width:100%; height:100%; fill:none; stroke:none; }
#ambient-grid circle { fill:var(--accent-link); }
.ambient-grid { opacity:.17; }
.ambient-pulse { fill:none; stroke:var(--accent-link); stroke-width:1; transform-box:fill-box; transform-origin:center; opacity:0; animation:ambient-pulse 12s ease-in-out infinite; }
.ambient-pulse-two { animation-delay:-6s; animation-duration:15s; }
.ambient-stars circle { fill:var(--accent-link); opacity:.12; transform-box:fill-box; transform-origin:center; animation:ambient-star 8s ease-in-out infinite; }
.ambient-stars circle:nth-child(2) { animation-delay:-2s; }
.ambient-stars circle:nth-child(3) { animation-delay:-5s; }
.ambient-stars circle:nth-child(4) { animation-delay:-3s; }
.ambient-stars circle:nth-child(5) { animation-delay:-6s; }
@keyframes ambient-pulse { 0%,100%{opacity:0;transform:scale(.65)} 25%{opacity:.09} 75%{opacity:.025;transform:scale(1.35)} 99%{opacity:0;transform:scale(1.5)} }
@keyframes ambient-star { 0%,100%{opacity:.12;transform:scale(.8)} 50%{opacity:.42;transform:scale(1.25)} }

/* The switch is always available, including the narrow mobile navigation. */
.language-switch { display:inline-flex; align-items:center; gap:2px; padding:3px; border:1px solid var(--line); background:var(--surface); border-radius:24px; flex-shrink:0; }
.language-switch button { min-width:34px; min-height:30px; padding:6px 7px; font-size:11px; font-weight:550; line-height:1; border-radius:20px; color:var(--muted); }
.language-switch button[aria-pressed="true"] { background:var(--raised); color:var(--ink); box-shadow:0 1px 4px #0000000a; }
.language-switch button:hover { color:var(--accent-link); }
.nav-actions { gap:15px; }
.status-qr { width:14px; height:14px; color:var(--accent-link); stroke-width:1.7; }
.modal-mark { display:flex; align-items:center; margin:0 0 24px; height:43px; }
.modal-mark .brand-gem { display:block; width:39px; height:43px; }
.checkout-banks.bank-logos { gap:12px; align-items:center; }
.checkout-banks.bank-logos>span { width:47px; height:47px; flex:0 0 47px; display:grid; place-items:center; padding:6px; border-radius:12px; background:#fff; border:1px solid #e8e8ee; }
.bank-logos img { width:32px; height:32px; object-fit:contain; }
.payment-qr { display:block; width:148px; height:148px; margin:16px auto 14px; background:#fff; border-radius:8px; }

/* Smaller travel and a gentler timing curve replace the sharp reveals. */
.hero-content>* { animation-duration:1.15s; animation-timing-function:cubic-bezier(.22,.61,.36,1); }
.hero-content>:nth-child(2) { animation-delay:.14s; }
.hero-content>:nth-child(3) { animation-delay:.26s; }
.reveal-pending { opacity:0; translate:0 10px; }
.modal::backdrop { animation-duration:.48s; }
.motion-entered .event-row { animation-duration:.9s; animation-timing-function:cubic-bezier(.22,.61,.36,1); }
.motion-entered .payment-status-icon { animation-duration:.95s; animation-timing-function:ease-out; }
.faq-list details[open] p { animation-duration:.55s; }
@keyframes hero-reveal { from{opacity:0;translate:0 8px} to{opacity:1;translate:0 0} }
@keyframes confirm-payment { from{opacity:0;scale:.9} to{opacity:1;scale:1} }

@media(max-width:1050px) { .nav-wrap{gap:24px}.main-nav{gap:17px}.main-nav>a{font-size:11px}.nav-actions{gap:10px}.nav-actions>.button svg{display:none} }
@media(max-width:940px) {
  .menu-button{display:flex}.nav-actions{margin-left:auto;gap:12px}
  .main-nav{position:absolute;top:75px;left:0;right:0;display:none;padding:22px 28px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #00000007;background:var(--header);backdrop-filter:blur(18px)}
  .main-nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.main-nav>a{font-size:14px;width:100%}
}
@media(max-width:680px) {
  .main-nav{top:69px}.nav-wrap{gap:12px}.nav-actions{gap:9px}.language-switch button{min-width:33px;min-height:30px}
  .ambient-grid{opacity:.12}.ambient-pulse{stroke-width:1.2}
  .modal-mark{margin-bottom:21px}.modal-mark .brand-gem{width:35px;height:39px}
  html[lang="en"] .hero h1{font-size:clamp(39px,9.5vw,60px)}
}
@media(max-width:480px) { .nav-actions>[data-connect]{display:none} }

/* Mobile layouts use content-sized cards and a consistent spacing rhythm. */
@media(max-width:680px) {
  .container,.nav-wrap { width:calc(100% - 40px); }
  .hero { padding-top:44px; }
  .hero-content { padding-inline:20px; }
  .hero h1 { font-size:clamp(34px,10.3vw,48px); letter-spacing:-1.9px; }
  html[lang="en"] .hero h1 { font-size:clamp(34px,9.8vw,46px); }
  .hero-description { margin-top:22px; }
  .hero-buttons { margin-top:24px; gap:10px; }
  .hero-buttons .button { min-height:44px; }
  .coin-usdt,.coin-eth { display:none; }
  .dashboard-preview { margin-top:36px; }
  .preview-grid { grid-template-columns:minmax(0,1fr); }
  .balance-preview { height:auto; min-height:0; padding:24px; }
  .balance-amount { font-size:clamp(34px,11vw,43px); margin-top:20px; }
  .balance-amount>small { font-size:12px; }
  .balance-detail { gap:8px; }
  .balance-detail>span:last-child { display:inline; }
  .chart-wrap { height:64px; margin:16px -24px 0; }
  .balance-preview .small-line { margin-top:12px; font-size:11px; line-height:1.5; }
  .audience-strip { padding-block:28px; }
  .audience-strip>div { gap:16px 20px; }
  .section { padding-block:48px; }
  .section-heading,.split-heading { margin-bottom:28px; }
  .eyebrow { margin-bottom:16px; line-height:1.6; }
  h2,.faq-section h2 { font-size:clamp(30px,8.7vw,38px); line-height:1.12; letter-spacing:-1.5px; }
  .section-heading p,.split-heading p { margin-top:16px; }
  .solutions-grid { gap:16px; }
  .solution-card { min-height:0; padding:24px; border-radius:22px; }
  .solution-card h3,.solution-copy h3 { font-size:clamp(27px,8.2vw,32px); letter-spacing:-1.15px; line-height:1.13; }
  .product-badge { margin-bottom:18px; padding:8px 11px; font-size:11px; }
  .solution-card p,.solution-copy p { margin-top:14px; }
  .solution-card .text-link { margin-top:16px; min-height:30px; }
  .product-art { position:relative; inset:auto; height:190px; margin:8px -24px -24px; }
  .chain-art { height:190px; }
  .ring-art { height:190px; }
  .ring-art video { object-fit:contain; }
  .link-pill { bottom:18px; padding:6px 6px 6px 13px; gap:8px; font-size:10px; max-width:calc(100% - 32px); }
  .link-pill-arrow { width:32px; height:32px; margin-left:4px; }
  .solution-small { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,144px); gap:22px 10px; align-items:center; }
  .solution-small .solution-copy { grid-column:1/-1; }
  .settlement-coin { position:static; grid-column:2; grid-row:2; width:100%; height:auto; max-width:144px; transform:none; }
  .settlement-label { position:static; grid-column:1; grid-row:2; max-width:none; font-size:12px; gap:9px; line-height:1.5; }
  .settlement-label svg { margin:0; width:20px; height:20px; }
  .solution-control .control-visual { position:relative; inset:auto; width:100%; margin-top:24px; transform:none; }
  .control-visual>div { padding:13px 10px; gap:7px; font-size:10px; }
  .control-visual>div+div,.control-visual>div:nth-child(3) { transform:none; margin-top:8px; }
  .control-visual>div>span:last-child { font-size:9px; }
  .methods-section { padding-block:0 48px; }
  .methods-layout { display:flex; flex-direction:column; padding:0; gap:20px; border-radius:0; background:transparent; }
  .method-list { display:flex; flex-direction:row; align-self:stretch; gap:8px; overflow-x:auto; padding:2px 1px 10px; scrollbar-width:thin; scrollbar-color:var(--line) transparent; scroll-padding-inline:1px; }
  .method-option { flex:0 0 auto; flex-direction:row; width:auto; min-height:48px; padding:12px 14px; gap:9px; border:1px solid var(--line); border-radius:12px; }
  .method-option strong { font-size:12px; white-space:nowrap; }
  .method-option .method-icon { width:20px; height:20px; }
  .method-option .method-icon svg { width:20px; height:20px; }
  .method-option.active { border-color:var(--accent-link); background:var(--raised); }
  .method-display { min-height:0; padding:0; flex-direction:column; gap:14px; background:none; }
  .method-display-grid { display:none; }
  .checkout-card { display:flex; flex-direction:column; width:100%; max-width:340px; min-height:432px; padding:20px; border-radius:20px; transform:none; box-shadow:none; }
  #checkout-method-body { flex:1; }
  .method-display.motion-entered .checkout-card { animation:none; }
  .checkout-header { padding-bottom:14px; }
  .checkout-product { margin-top:14px; font-size:10px; }
  .checkout-amount { font-size:30px; }
  .checkout-method-text { max-width:none; font-size:11px; line-height:1.55; }
  .checkout-action { min-height:42px; font-size:11px; }
  .checkout-secure { font-size:9px; margin-top:16px; }
  .method-display-note { position:static; max-width:290px; font-size:10px; line-height:1.5; }
  .method-bottom { margin-top:24px; padding-top:20px; font-size:11px; line-height:1.6; }
  .method-bottom>span { align-items:flex-start; }
  .method-bottom svg { margin-top:2px; }
  .flow-section { padding-top:0; padding-bottom:40px; }
  .flow-steps { position:relative; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; overflow:visible; border:0; padding:0 0 34px; }
  .flow-steps::before { content:''; position:absolute; top:23px; left:10%; right:10%; height:1px; background:var(--line); pointer-events:none; }
  .flow-step { position:static; min-width:0; min-height:48px; padding:0; margin:0; border:0; border-radius:24px; display:flex; align-items:center; justify-content:center; background:transparent; }
  .flow-step>span { position:relative; display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--line); border-radius:50%; background:var(--canvas); color:var(--muted); font-size:12px; font-weight:550; transition:background-color .35s,color .35s,border-color .35s,box-shadow .35s; }
  .flow-step.active>span { background:var(--purple); border-color:var(--purple); color:#fff; box-shadow:0 0 0 4px #6860ff14; }
  .flow-step strong { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; }
  .flow-step.active strong { left:0; right:0; top:59px; width:auto; height:auto; margin:0; overflow:visible; clip:auto; clip-path:none; text-align:center; white-space:normal; font-size:13px; line-height:1.4; font-weight:500; color:var(--ink); pointer-events:none; }
  .flow-panel { margin-top:24px; padding:24px 20px; gap:24px; }
  .flow-panel h3 { font-size:27px; }
  .flow-terminal { min-width:0; }
  .flow-terminal pre { height:auto; min-height:126px; overflow-wrap:anywhere; }
  .api-section { padding-block:40px; }
  .api-layout { gap:28px; }
  .api-copy h2 { font-size:clamp(34px,9vw,42px); }
  .api-copy,.code-window { min-width:0; }
  .onboarding { padding-top:40px; padding-bottom:48px; }
  .onboarding-grid { gap:24px; }
  .onboarding-grid article { border-top:0; padding-top:0; padding-left:34px; }
  .onboarding-number { top:3px; }
  .onboarding-grid h3 { font-size:19px; }
  .pricing-note { margin-top:28px; padding:22px 20px; }
  .faq-section { padding-top:0; padding-bottom:48px; }
  .faq-list { margin-top:24px; }
  .final-cta { padding:32px 24px; text-align:center; border-radius:22px; }
  .cta-coin { display:none; }
  .final-cta>.eyebrow { margin-bottom:18px; max-width:100%; }
  .final-cta h2 { font-size:clamp(29px,8.5vw,34px); line-height:1.13; }
  .final-cta p { max-width:100%; margin:18px 0 24px; font-size:14px; }
  .final-cta .button { width:100%; max-width:280px; min-height:46px; }
  .footer { padding-top:40px; }
  .footer-links { display:grid; grid-template-columns:1fr 1fr; gap:24px 20px; }
  .modal { padding:28px 22px; }
  .modal-mark { margin-bottom:20px; }
}
@media(prefers-reduced-motion:reduce) {
  .ambient-pulse,.ambient-stars circle{animation:none!important}
  .ambient-pulse{opacity:0}.ambient-stars circle{opacity:.16}
  .reveal-pending{opacity:1;translate:none}
}
.hero-fee { display:inline-flex; align-items:center; justify-content:center; gap:9px; margin-top:19px; padding:7px 12px; border:1px solid var(--line); border-radius:24px; font-size:12px; font-weight:550; color:var(--accent-link); background:var(--surface); }
.hero-fee .ui-icon { width:14px; height:14px; }
.hero-fee:hover { border-color:var(--accent-link); }
.hero-content>.hero-buttons { animation-delay:.34s; }
#pricing { scroll-margin-top:110px; }
.footer-legal { display:flex; flex-wrap:wrap; gap:12px 28px; padding:22px 0; border-top:1px solid var(--line); font-size:12px; color:var(--muted); }
.footer-legal a { padding-block:5px; }
.footer-legal a:hover,.form-note a:hover { color:var(--accent-link); }
.form-note a { text-decoration:underline; text-underline-offset:3px; }
@media(max-width:600px) { .footer-legal { flex-direction:column; gap:6px; padding-block:18px; } }
