/* Stable vector icons on iOS and desktop. */
.ui-icon{width:1em;height:1em;display:inline-block;vertical-align:-.15em;flex-shrink:0;overflow:visible}.signal-header-cta>.ui-icon{margin-left:5px}.asterisk .ui-icon{display:block;width:1em;height:1em;stroke-width:1.25}.ticker-item i{display:inline-flex;align-items:center;justify-content:center}.ticker-item .star-icon{width:.8em;height:.8em;stroke-width:1.7}.phone-bottom-tabs b .ui-icon{width:17px;height:17px}.phone-card-icon .ui-icon{width:23px;height:23px}.phone-qr-caption .ui-icon{width:9px;height:9px}.receipt-check .ui-icon{width:25px;height:25px}.demo-step>b{display:flex;align-items:center}.demo-step>b .ui-icon{width:22px;height:22px}.why-rows article>span .ui-icon{width:1em;height:1em}.signal h1>.hero-line{display:block;color:inherit}.mobile-menu-toggle,.mobile-step-label,.mobile-demo-caption{display:none}
@media(max-width:580px){
 html{scroll-padding-top:18px}.signal header{position:relative;display:flex;flex-wrap:wrap;height:auto;min-height:64px;padding:10px 20px;gap:10px;z-index:5}.signal header>a:first-child{margin-right:auto}.signal-header-cta{order:2;font-size:8px;padding:10px 12px;display:inline-flex;align-items:center;white-space:nowrap;min-height:40px}.mobile-menu-toggle{order:3;display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;border:0;background:transparent;color:#151918;padding:6px;font:600 9px 'Space Grotesk',Arial,sans-serif}.mobile-menu-toggle .ui-icon{width:19px;height:19px}.signal header nav{order:4;display:none;width:100%;padding:10px 0 4px;border-top:1px solid #15191833;gap:0}.signal header nav.is-open{display:grid;grid-template-columns:1fr 1fr}.signal header nav a{display:flex;align-items:center;min-height:44px;font-size:11px;padding:9px 5px}
 .signal-copy{padding:28px 22px 32px;justify-content:start}.signal-copy .kicker{font-size:8px;letter-spacing:.9px;line-height:1.6}.signal h1{font-size:clamp(61px,18vw,88px);line-height:.9;margin:24px 0;letter-spacing:-1px}.signal h1>.hero-line{white-space:nowrap}.signal-hero-bottom{display:block}.signal-hero-bottom p{font-size:14px;line-height:1.65;margin:0 0 20px;max-width:none}.signal-hero-bottom .cta{font-size:11px;padding:14px 18px;min-height:48px;gap:22px}.signal .signal-hero-bottom .cta,.signal .signal-access .cta{background:#008674;color:#fff}.signal .signal-access .cta{min-height:48px}.signal .signal-hero{min-height:0}.signal .signal-poster{height:570px}.signal .signal-phone{transform:rotate(5deg) scale(.84);width:278px;height:576px;border-width:6px}.signal .signal-poster .signal-stamp{transform:none;top:14px;left:14px;width:78px;height:78px;font-size:10px;line-height:1.25;z-index:2}.signal-poster .asterisk{right:-8px;bottom:26px;font-size:100px}.signal-poster .poster-bottom{bottom:14px;font-size:6px}.signal-ticker{padding:9px 0}.signal-ticker>.ticker-track{font-size:28px}
 .experience,.signal-how,.signal-why,.signal-faq{padding:44px 22px}.experience-intro h2{font-size:clamp(37px,10.9vw,48px);line-height:1;margin:18px 0 16px;letter-spacing:-.7px}.experience-intro>p:last-child{font-size:14px;line-height:1.7}.demo-layout{gap:16px;margin-top:24px;align-items:stretch}.demo-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;align-items:stretch}.demo-step{padding:10px 5px;min-width:0;min-height:74px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #15191855;text-align:center;background:#f6f5f0}.demo-step>span:first-child{font-size:9px;padding:0}.demo-step.active{background:#dceee8;border:2px solid #007d6b;padding:9px 4px;color:#007d6b}.demo-step .mobile-step-label{display:block;font:600 16px 'Barlow Condensed','Arial Narrow',Arial,sans-serif;letter-spacing:0;padding:0;white-space:nowrap}.demo-step>div{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.demo-step>b,.demo-note{display:none}.mobile-demo-caption{display:block;font-size:12px;line-height:1.6;max-width:260px;margin:13px auto 2px;color:#424e49}.demo-stage{padding:16px 14px;min-height:408px;box-shadow:4px 4px 0 #151918;justify-content:flex-start}.demo-tag{font-size:8px;letter-spacing:1.3px}.demo-view{padding:18px 0 3px;min-height:280px;display:flex;align-items:center}.demo-view[hidden]{display:none}.demo-qr{width:min(220px,calc(100% - 22px));padding:13px;transform:rotate(-3deg)}.demo-qr .qr{width:100%;height:auto;margin:10px auto}.demo-qr>span{font-size:8px}.demo-stage .motion{margin:6px auto 2px;padding:12px;min-height:44px;font-size:11px}.demo-disclaimer{font-size:7px;line-height:1.6;letter-spacing:.5px;margin-top:3px}.demo-wallet{width:100%;max-width:260px}.demo-card{padding:17px}.demo-card strong{font-size:18px;padding:22px 0}.demo-receipt{max-width:240px;padding:18px}.demo-receipt h3{font-size:42px}.receipt-check{margin-bottom:14px}.demo-layout:after{content:'Supported cards and stores will be announced at launch.';font-size:10px;line-height:1.7;color:#646963;padding-top:2px}
 .signal h2{font-size:44px}.why-head h2{margin-top:18px}.why-rows{margin-top:25px}.why-rows article{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:23px 0}.why-rows article>span{font-size:26px}.why-rows h3{font-size:28px;line-height:1.1;letter-spacing:0}.why-rows p{font-size:13px;line-height:1.75;max-width:none}.why-rows h3 br{display:none}.signal-section-title h2{font-size:42px;margin-top:18px}.signal-section-title p:last-child{font-size:14px;line-height:1.7;margin-top:16px}.signal-steps{margin-top:24px}.signal-steps article{padding:20px}.signal-steps h3{font-size:31px;margin:26px 0 12px;line-height:1.05}.signal-steps h3 br{display:none}.signal-steps h3 br:after{content:' '}.signal-steps h3{max-width:220px}.signal-steps p{font-size:13px;line-height:1.7;max-width:250px}.step-art{top:16px;right:16px}.step-art svg{width:48px;height:48px}.signal-faq{gap:24px}.signal-faq h2{font-size:44px;margin:18px 0 0;line-height:1}.signal-faq h2 br{display:none}.signal-faq details,.signal-faq details:first-child{padding:0}.signal-faq summary{font-size:14px;line-height:1.5;min-height:68px;padding:20px 0;gap:16px}.signal-faq summary span{flex-shrink:0}.signal-faq details:not([open])>p{display:none}.signal-faq details[open]>p{padding:0 0 20px;font-size:13px;line-height:1.8}.signal-access{padding:44px 22px}.signal-access h2{font-size:clamp(40px,11.5vw,52px);line-height:1;margin-top:20px}.signal-access>div:last-child{margin-top:24px;padding-top:0}#waitlist-form input:not([type=checkbox]){font-size:16px;min-height:48px;padding:12px}#waitlist-form .waitlist-consent{font-size:12px;line-height:1.7;margin:18px 0 22px}#waitlist-form .registration-note{font-size:11px!important;line-height:1.7!important}.signal footer{padding:20px 22px}.signal footer>div:last-child{gap:14px 18px;line-height:1.6}
}
@media(max-width:360px){.signal header{padding-left:16px;padding-right:16px;gap:6px}.signal-header-cta{font-size:7px;padding:10px 9px}.mobile-menu-toggle{font-size:8px;gap:3px}.signal header .reference-wordmark{width:62px}.signal h1{font-size:clamp(56px,18vw,65px)}.signal-hero-bottom p{font-size:13px}.signal .signal-poster{height:550px}.signal .signal-poster .signal-stamp{width:66px;height:66px;font-size:8px;left:10px;top:12px}.signal .signal-phone{transform:rotate(4deg) scale(.78)}.experience-intro h2{font-size:37px}.demo-step .mobile-step-label{font-size:14px}.signal-steps h3{font-size:28px;max-width:180px}}

.motion-paused .ticker-track{animation-play-state:paused!important}
@media(max-width:580px){.signal-header-cta{font-size:9px}.signal-hero-bottom .cta{font-size:12px}.signal header nav a{font-size:12px}}
@media(max-width:360px){.signal-header-cta{font-size:8px}}

/* Reserve the tallest preview so selecting a step cannot shift the controls. */
@media(min-width:581px){
 .demo-layout{align-items:start}
 .demo-controls{align-self:start}
 .demo-stage{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto auto;justify-items:center}
 .demo-tag{grid-area:1/1;justify-self:start}
 .demo-view{grid-area:2/1;align-self:center;min-width:0}
 .demo-view[hidden]{display:block;visibility:hidden;pointer-events:none}
 .demo-stage .motion{grid-area:3/1}
 .demo-disclaimer{grid-area:4/1}
}
