body{margin:0;background:#F6F3EE}
*{box-sizing:border-box}
a{color:inherit;text-decoration:none}
html{scroll-behavior:smooth}

@keyframes up{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes loaderOut{0%,82%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
@keyframes floatA{0%,100%{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-14px)}}
@keyframes floatB{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(4deg) translateY(-10px)}}
@keyframes floatC{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
@keyframes fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes ping{0%{transform:scale(1);opacity:.7}100%{transform:scale(2);opacity:0}}
@keyframes pulse{0%{transform:scale(.55);opacity:0}30%{opacity:.5}100%{transform:scale(1.2);opacity:0}}

.loader{animation:loaderOut 2.5s ease forwards}
.rv{opacity:0;animation:up .95s cubic-bezier(.2,.7,.2,1) forwards}
.d1{animation-delay:1.95s}.d2{animation-delay:2.1s}.d3{animation-delay:2.25s}.d4{animation-delay:2.4s}.d5{animation-delay:2.6s}
.fa{animation:floatA 7s ease-in-out infinite}
.fb{animation:floatB 8s ease-in-out infinite}
.fc{animation:floatC 6s ease-in-out infinite}
.track{display:flex;width:max-content;animation:marquee 34s linear infinite}
.live{animation:blink 1.6s ease-in-out infinite}
.bar{transform-origin:left;animation:fill 1.4s cubic-bezier(.2,.7,.2,1) both}
.b1{animation-delay:2.7s}.b2{animation-delay:2.9s}.b3{animation-delay:3.1s}.b4{animation-delay:3.3s}
.spin{animation:spin 22s linear infinite}
.ping{position:absolute;inset:0;border-radius:50%;background:#FF6A3D;animation:ping 1.8s ease-out infinite}
.ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(255,106,61,.4);animation:pulse 6s ease-out infinite}
.ring.r2{animation-delay:2s}.ring.r3{animation-delay:4s}
@supports (animation-timeline: view()){
  .sr{animation:up linear both;animation-timeline:view();animation-range:entry 0% entry 35%}
}

.btn{transition:transform .25s ease, box-shadow .25s ease, background .25s ease}
.btn:hover{transform:translateY(-2px)}
.btn-or:hover{box-shadow:0 16px 40px rgba(255,106,61,.35)}
.btn .arr{transition:transform .25s ease}
.btn:hover .arr{transform:translateX(4px)}
.nl{color:#55534E;transition:color .2s}.nl:hover{color:#101114}
footer .nl{color:#A9A6A0}footer .nl:hover{color:#FFFFFF}
.svc{transition:background .35s ease, transform .35s cubic-bezier(.2,.7,.2,1), border-color .35s ease}
.svc:hover{transform:translateY(-6px);border-color:rgba(255,106,61,.55)!important;box-shadow:0 26px 50px -26px rgba(16,17,20,.3)}
.svc:hover .ico{background:#FF6A3D!important;color:#0B0B0E!important;border-color:#FF6A3D!important}
.pk{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.pk:hover{transform:translateY(-8px)}
.chip{transition:background .2s, color .2s, border-color .2s}
details summary{list-style:none;cursor:pointer}
details summary::-webkit-details-marker{display:none}
details .plus{transition:transform .3s ease}
details[open] .plus{transform:rotate(45deg)}

.menu-btn{display:none}
@media (max-width: 900px){
  .nav-links,.nav-cta{display:none!important}
  .menu-btn{display:inline-flex!important}
  .sec{padding-top:80px!important;padding-bottom:80px!important}
  .hero{padding-top:40px!important;padding-bottom:72px!important}
  .hero-vis{min-height:440px!important}
  .pad{padding:28px!important}
  .hide-sm{display:none!important}
  .founder-photo{flex:1 1 100%!important;height:auto!important;aspect-ratio:4/5;max-width:420px}
}
@media (max-width: 560px){
  .btn-row a{width:100%;justify-content:center}
  .hero-vis{min-height:400px!important}
  .adA{left:0!important;width:84%!important}
  .adB{right:0!important;width:82%!important}
}
@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important}
  .rv,.sr{opacity:1!important;transform:none!important}
  .loader{display:none!important}
}

/* mobile menu */
.mnav{display:none;position:fixed;inset:0;z-index:60;background:#F6F3EE;flex-direction:column;padding:20px}
.mnav.open{display:flex}
.mnav a.ml{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:34px;letter-spacing:-.03em;padding:14px 0;border-bottom:1px solid rgba(16,17,20,.08);color:#101114}
body.lock{overflow:hidden}
