/* Self-hosted Google Fonts: Space Grotesk, IBM Plex Sans, IBM Plex Mono (OFL). */
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-400-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-400-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-400-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-400-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-400-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-500-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-500-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-500-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-500-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-mono-500-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../assets/fonts/ibm-plex-sans-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../assets/fonts/space-grotesk-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../assets/fonts/space-grotesk-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../assets/fonts/space-grotesk-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Page styles */
body{margin:0;background:#F8F6F2;color:#0E0F11;font-family:'IBM Plex Sans',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
html{scroll-behavior:smooth}
a{color:#FF4F1F}a:hover{color:#E0400F}
input,select,textarea{font-family:inherit}
summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}
@keyframes rise{from{transform:translateY(105%)}to{transform:none}}
@keyframes draw{from{stroke-dashoffset:211}to{stroke-dashoffset:0}}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes fadein{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.qr-progress{position:fixed;top:0;left:0;right:0;height:3px;background:#FF4F1F;transform-origin:left;transform:scaleX(0);z-index:60;pointer-events:none}
.qr-nav{position:sticky;top:0;z-index:50;background:#0E0F11;border-bottom:1px solid #1D2024;transition:background .3s}
.qr-nav.scrolled{background:rgba(14,15,17,.84);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.navlink{color:#9AA0A8;text-decoration:none;font-size:14px;position:relative;transition:color .2s}
.navlink:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;background:#FF4F1F;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.navlink:hover{color:#EFEBE3}.navlink:hover:after{transform:scaleX(1)}
.logo-link svg rect{transform-box:fill-box;transform-origin:left center;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.logo-link:hover svg rect{transform:scaleX(1.35)}
.line-mask{display:block;overflow:hidden;padding-bottom:.06em}
.qr-anim .rise{display:inline-block;animation:rise 1s cubic-bezier(.2,.8,.2,1) both}
.qr-anim .ring-draw{stroke-dasharray:211;animation:draw 1.5s cubic-bezier(.6,0,.2,1) .15s both}
.qr-anim .bar-grow{transform-box:fill-box;transform-origin:left center;animation:grow .9s cubic-bezier(.2,.8,.2,1) 1.25s both}
.qr-anim .fade-in{animation:fadein .8s ease both}
.qr-anim .reveal{opacity:0;transform:translateY(40px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.qr-anim .reveal.in{opacity:1;transform:none}
.qr-anim .reveal-x{opacity:0;transform:translateX(-40px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.qr-anim .reveal-x.in{opacity:1;transform:none}
.d1{transition-delay:.08s!important}.d2{transition-delay:.16s!important}.d3{transition-delay:.24s!important}.d4{transition-delay:.32s!important}.d5{transition-delay:.4s!important}.d6{transition-delay:.48s!important}
.btn-signal{background:#FF4F1F;color:#0E0F11;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:12px;transition:transform .2s,box-shadow .2s;border:none;cursor:pointer}
.btn-signal:hover{color:#0E0F11;transform:translate(-3px,-3px);box-shadow:4px 4px 0 #EFEBE3}
.btn-signal.sd:hover{box-shadow:4px 4px 0 #0E0F11}
.arr{display:inline-block;transition:transform .25s}
.btn-signal:hover .arr,.btn-dark:hover .arr,.btn-ghost:hover .arr{transform:translateX(6px)}
.btn-ghost{border:1px solid #5B616B;color:#EFEBE3;text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:12px;transition:border-color .2s,background .2s}
.btn-ghost:hover{border-color:#EFEBE3;background:#1D2024;color:#EFEBE3}
.btn-dark{background:#0E0F11;color:#EFEBE3;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:12px;transition:transform .2s,box-shadow .2s}
.btn-dark:hover{color:#EFEBE3;transform:translate(-3px,-3px);box-shadow:4px 4px 0 #FF4F1F}
.btn-dark.sb:hover{box-shadow:4px 4px 0 #EFEBE3}
.pain{background:#FFFFFF;border:1px solid #D9D5CD;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.pain:before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:#FF4F1F;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.pain:hover{transform:translateY(-8px);box-shadow:0 22px 44px rgba(14,15,17,.10);border-color:#0E0F11}
.pain:hover:before{transform:scaleX(1)}
.pain .num{transition:color .3s}.pain:hover .num{color:#FF4F1F}
.app{background:#F8F6F2;position:relative;transition:background .35s}
.app h3,.app p,.app .tag,.app .moves{transition:color .35s}
.app:hover{background:#0E0F11}
.app:hover h3{color:#EFEBE3}.app:hover p{color:#C5C9CE}.app:hover .tag{color:#9AA0A8}.app:hover .moves{color:#FF4F1F}
.app .mini circle{transition:stroke .35s}.app:hover .mini circle{stroke:#EFEBE3}
.app .mini rect{transform-box:fill-box;transform-origin:left center;transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.app:hover .mini rect{transform:scaleX(1.7)}
.vrow{position:relative;transition:padding-left .35s cubic-bezier(.2,.8,.2,1)}
.vrow:before{content:"";position:absolute;left:0;top:50%;width:0;height:3px;margin-top:-1.5px;background:#FF4F1F;transition:width .35s cubic-bezier(.2,.8,.2,1)}
.vrow:hover{padding-left:30px}.vrow:hover:before{width:18px}
.vrow .vtag{transition:color .3s}.vrow:hover .vtag{color:#FF4F1F}
.photo{position:relative;overflow:hidden;background:#1D2024}
.photo img{filter:grayscale(1) contrast(1.04);transition:filter .6s,transform .7s cubic-bezier(.2,.8,.2,1)}
.photo:hover img{filter:grayscale(0) contrast(1);transform:scale(1.05)}
.photo .ptag{position:absolute;left:0;right:0;bottom:0;background:#FF4F1F;color:#0E0F11;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:500;letter-spacing:.06em;padding:12px 16px;transform:translateY(101%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.photo:hover .ptag{transform:none}
.how-track{position:relative;height:2px;background:#1D2024}
.how-fill{position:absolute;left:0;top:0;bottom:0;width:100%;background:#FF4F1F;transform-origin:left;transform:scaleX(0)}
.qr-static .how-fill{transform:scaleX(1)}
.step .dot{width:14px;height:14px;background:#0E0F11;border:2px solid #5B616B;box-sizing:border-box;transition:background .4s,border-color .4s,transform .4s}
.step.lit .dot{background:#FF4F1F;border-color:#FF4F1F;transform:scale(1.25)}
.qr-anim .step h3,.qr-anim .step p,.qr-anim .step .slab{opacity:.3;transition:opacity .6s}
.qr-anim .step.lit h3,.qr-anim .step.lit p,.qr-anim .step.lit .slab{opacity:1}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;gap:64px;width:max-content;animation:marquee 34s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.mitem{transition:color .2s;white-space:nowrap}.mitem:hover{color:#0E0F11}
.ticker-track{display:flex;gap:40px;width:max-content;animation:marquee 26s linear infinite}
details .plus{display:inline-block;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
details[open] .plus{transform:rotate(45deg)}
summary{transition:color .2s}summary:hover{color:#FF4F1F}
.field{border:1px solid #9AA0A8;background:#FFFFFF;padding:12px;font-size:15px;min-height:44px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}
.field:hover{border-color:#0E0F11}
.field:focus{outline:none;border-color:#0E0F11;box-shadow:4px 4px 0 #FF4F1F}
.tog{transition:background .2s,color .2s}
.cue{width:1px;height:48px;background:#EFEBE3;animation:cue 2.2s cubic-bezier(.6,0,.2,1) infinite}
.live-dot{width:8px;height:8px;background:#FF4F1F;border-radius:50%;animation:pulse 1.6s ease infinite}
.stat{transition:transform .3s}.stat:hover{transform:translateY(-4px)}
.op{color:#5B616B;transition:color .3s}
@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Form state (replaces the design runtime's conditional blocks) */
.form-card .tog{background:transparent;color:#0E0F11;font-weight:500}
.form-card[data-mode="audit"] .tog[data-pick="audit"],.form-card[data-mode="partner"] .tog[data-pick="partner"]{background:#0E0F11;color:#EFEBE3;font-weight:600}
.form-card .when-partner{display:none}
.form-card[data-mode="partner"] .when-audit{display:none}
.form-card[data-mode="partner"] .when-partner{display:inline}
.form-card.is-submitted .when-open{display:none!important}
[hidden]{display:none!important}

/* Responsive: the source design is a 1440px desktop canvas. These rules only collapse grids below it. */
@media (max-width: 1024px){
  .hero-h1{font-size:72px!important}
  .big-number{font-size:96px!important}
  .cta-h2{font-size:56px!important}
  .grid-3,.faq-grid,.grid-2{grid-template-columns:1fr!important}
  .faq-grid > div{grid-column:auto!important}
  .grid-3 > .app{border-top:1px solid #D9D5CD}
}
@media (max-width: 720px){
  .nav-links{gap:16px}
  .logo-link > span{white-space:nowrap}
  .nav-links .navlink{display:none}
  .hero-h1{font-size:52px!important}
  .hero-stats{grid-template-columns:1fr!important}
  .hero-stats .stat{padding:16px 0 0!important;border-left:none!important}
  .big-number{font-size:64px!important}
  .math-row [data-count]{font-size:64px!important}
  .math-row .op{font-size:40px!important;padding-bottom:16px!important}
  .cta-h2{font-size:40px!important}
  .fields{grid-template-columns:1fr!important}
  h2[style*="font-size: 56px"],h2[style*="font-size: 58px"],h2[style*="font-size: 50px"]{font-size:38px!important}
  h2[style*="font-size: 46px"]{font-size:32px!important}
  [style*="padding: 130px 40px"],[style*="padding: 120px 40px"],[style*="padding: 130px 40px 110px"],[style*="padding: 120px 40px 130px"],[style*="padding: 130px 40px 110px"]{padding-left:20px!important;padding-right:20px!important;padding-top:72px!important;padding-bottom:72px!important}
  [style*="padding: 18px 40px"],[style*="padding: 26px 40px"],[style*="padding: 64px 40px"],[style*="padding: 120px 40px 60px"]{padding-left:20px!important;padding-right:20px!important}
  #heroMark{display:none}
}
