html{scroll-behavior:smooth}
a{text-decoration:none}
button{font-family:inherit}

@keyframes rise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
@keyframes slideIn{from{opacity:0;transform:translateX(-70px)}to{opacity:1;transform:none}}
@keyframes stripes{from{background-position:0 0}to{background-position:140px 0}}
@keyframes kenburns{from{transform:scale(1.04)}to{transform:scale(1.18) translate(-2%,1%)}}
@keyframes flow{from{background-position:0% 50%}to{background-position:300% 50%}}
@keyframes callpulse{0%{box-shadow:0 0 0 0 rgba(242,106,27,.6)}70%{box-shadow:0 0 0 18px rgba(242,106,27,0)}100%{box-shadow:0 0 0 0 rgba(242,106,27,0)}}
@keyframes shine{from{transform:translateX(-160%) skewX(-20deg)}to{transform:translateX(360%) skewX(-20deg)}}
@keyframes glow{0%,100%{opacity:.35}50%{opacity:.9}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ring{0%{transform:translate(-50%,-50%) scale(.3);opacity:.9}100%{transform:translate(-50%,-50%) scale(2.6);opacity:0}}
@keyframes menuIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes drift{from{transform:translateY(0)}to{transform:translateY(-10px)}}

.l1{animation:rise .8s cubic-bezier(.2,.8,.2,1) .05s both}
.l2{animation:rise .8s cubic-bezier(.2,.8,.2,1) .2s both}
.l3{animation:rise .8s cubic-bezier(.2,.8,.2,1) .35s both}
.l4{animation:rise .8s cubic-bezier(.2,.8,.2,1) .5s both}
.l5{animation:slideIn 1s cubic-bezier(.2,.8,.2,1) .3s both}
.stripes{background:repeating-linear-gradient(115deg,#F26A1B 0 22px,transparent 22px 70px);animation:stripes 3.5s linear infinite}
.kb{animation:kenburns 16s ease-in-out infinite alternate}
.frame{background:linear-gradient(110deg,#F26A1B,#ffb27a,#F26A1B,#8a3a0c,#F26A1B);background-size:300% 100%;animation:flow 6s linear infinite}
.glowdot{animation:glow 3s ease-in-out infinite}
.track{animation:marquee 30s linear infinite;width:max-content}
.callpulse{animation:callpulse 2.2s infinite}
.ring{animation:ring 2.4s ease-out infinite}
.menu{animation:menuIn .25s ease both}
.drift{animation:drift 3s ease-in-out infinite alternate}

.btn-main{position:relative;overflow:hidden;transition:transform .25s,background .25s}
.btn-main:hover{background:#ff7d33;transform:translateY(-3px)}
.btn-main::after{content:"";position:absolute;top:0;bottom:0;width:40%;background:rgba(255,255,255,.4);animation:shine 3.4s ease-in-out infinite}
.btn-ghost{transition:transform .25s,border-color .25s,color .25s,background .25s}
.btn-ghost:hover{border-color:#F26A1B;color:#F26A1B;transform:translateY(-3px)}
.nav-a{color:#d9d9d9;position:relative;transition:color .25s}
.nav-a::after{content:"";position:absolute;right:0;left:0;bottom:6px;height:2px;background:#F26A1B;transform:scaleX(0);transition:transform .3s;transform-origin:right}
.nav-a:hover,.nav-a.on{color:#F26A1B}
.nav-a:hover::after,.nav-a.on::after{transform:scaleX(1)}
.card{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.card:hover{transform:translateY(-8px);box-shadow:0 22px 46px rgba(242,106,27,.2);border-color:#F26A1B}
.numbtn{transition:background .25s,border-color .25s}
.numbtn:hover{background:#26282c;border-color:#F26A1B}
.opt{transition:transform .2s,filter .2s}
.opt:hover{transform:translateY(-2px);filter:brightness(1.1)}

@keyframes drive{from{left:100%}to{left:-700px}}
@keyframes wipe{from{transform:translateY(0)}to{transform:translateY(-101%)}}
@keyframes cfade{0%,45%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.88)}}
@keyframes gone{to{visibility:hidden}}
@keyframes spin{from{transform:rotate(0)}to{transform:rotate(-360deg)}}
@keyframes roadmove{from{background-position:0 0}to{background-position:80px 0}}
@keyframes bob{from{transform:translateY(0)}to{transform:translateY(-3px)}}
@keyframes puff{0%{opacity:.6;transform:translate(0,0) scale(.5)}100%{opacity:0;transform:translate(70px,-34px) scale(1.9)}}
.truck{position:absolute;bottom:20px;left:100%;width:640px;animation:drive 20s linear infinite}
.curtain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;animation:gone 0s linear 1.25s forwards}
.cv{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}
.c1{background:#F26A1B;animation:wipe .6s cubic-bezier(.77,0,.18,1) .55s both}
.c2{background:#0d0e10;flex-direction:column;gap:14px;animation:wipe .6s cubic-bezier(.77,0,.18,1) .35s both}
.cl{display:flex;flex-direction:column;align-items:center;gap:12px;animation:cfade .5s ease .1s both}
.arr{transition:transform .3s}
.nextlink{transition:filter .25s}
.nextlink:hover{filter:brightness(1.08)}
.nextlink:hover .arr{transform:translateX(-10px)}
.truckbody{animation:bob .35s ease-in-out infinite alternate}
.wheel{transform-box:fill-box;transform-origin:center;animation:spin .7s linear infinite}
.roaddash{background:repeating-linear-gradient(90deg,#f4f3f0 0 40px,transparent 40px 80px);animation:roadmove 1s linear infinite}
.puff{transform-box:fill-box;transform-origin:center;animation:puff 1.3s ease-out infinite}
.tab{transition:background .25s,color .25s,border-color .25s}
.tab:hover{border-color:#F26A1B}
.thumb{transition:transform .35s,border-color .35s,box-shadow .35s}
.thumb:hover{transform:translateY(-6px);border-color:#F26A1B;box-shadow:0 18px 40px rgba(242,106,27,.22)}
.thumb img{transition:transform .6s}
.thumb:hover img{transform:scale(1.07)}
@media (prefers-reduced-motion: reduce){
  .truck{left:calc(50% - 320px) !important}
  .curtain{display:none !important}
}
@supports (animation-timeline: view()){
  .rv{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}
  .rv-l{animation:slideIn linear both;animation-timeline:view();animation-range:entry 0% entry 50%}
  .bar{transform-origin:right;animation:grow linear both;animation-timeline:view();animation-range:entry 10% entry 80%}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
}

@keyframes blockdrop{from{opacity:0;transform:translateY(-60px) rotate(-6deg)}to{opacity:1;transform:none}}
@keyframes floata{from{transform:translateY(0)}to{transform:translateY(-8px)}}
.brick{opacity:0;animation:blockdrop .5s cubic-bezier(.2,.8,.2,1) both}
.floata{animation:floata 3s ease-in-out infinite alternate}
.floatb{animation:floata 3.6s ease-in-out .6s infinite alternate}
.pulse-ring{position:absolute;width:64px;height:64px;border:3px solid #F26A1B;border-radius:9999px;pointer-events:none;transform:translate(-50%,-50%);animation:ring 2.4s ease-out infinite}
.stepline{transform-origin:right;animation:grow 1.1s cubic-bezier(.2,.8,.2,1) .3s both}
.lift{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.lift:hover{transform:translateY(-8px);box-shadow:0 22px 46px rgba(242,106,27,.2);border-color:#F26A1B}
.pill{transition:background .25s,border-color .25s,color .25s}
.pill:hover{border-color:#F26A1B}

.iconbtn{transition:border-color .25s,background .25s}
.iconbtn:hover{border-color:#F26A1B;background:#1a1b1f}
.topnum{transition:opacity .2s}
.topnum:hover{opacity:.75}

@keyframes pinring{0%{box-shadow:0 0 0 0 rgba(242,106,27,.55),0 0 14px rgba(242,106,27,.35)}70%{box-shadow:0 0 0 16px rgba(242,106,27,0),0 0 22px rgba(242,106,27,.15)}100%{box-shadow:0 0 0 0 rgba(242,106,27,0),0 0 14px rgba(242,106,27,.35)}}
@keyframes pinshine{0%,55%{transform:translateX(-170%) skewX(-20deg)}100%{transform:translateX(330%) skewX(-20deg)}}
@keyframes pinbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.pinglow{position:relative;overflow:hidden;border-color:#F26A1B !important;animation:pinring 2s ease-out infinite}
.pinglow::after{content:"";position:absolute;top:0;bottom:0;width:38%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:pinshine 3s ease-in-out infinite}
.pinglow svg{animation:pinbob 1.6s ease-in-out infinite}

[hidden]{display:none !important}
.ob-panel:not([hidden]),.cc-opts:not([hidden]){display:flex}
#lb:not([hidden]),#viewer:not([hidden]){display:flex}
.menu:not([hidden]).menu{animation:menuIn .25s ease both}
nav.menu:not([hidden]){display:flex}
body{margin:0;background:#0d0e10}

/* RESPONSIVE */
img,video,iframe{max-width:100%}
@media (max-width:760px){
 header>div{padding:10px 14px !important;gap:10px !important}
 header>div>div{gap:10px !important}
 .hb{gap:9px !important;min-width:0}
 .hb img{width:52px !important;height:52px !important}
 .hb span[lang]:first-child,.hb>span>span:first-child{font-size:20px !important}
 .hb>span>span:nth-child(2){font-size:10px !important;letter-spacing:2.5px !important}
 .hb>span>span:nth-child(3){font-size:19px !important}
 .iconbtn{width:48px !important;height:48px !important;border-radius:15px !important}
 .iconbtn svg{width:24px !important;height:24px !important}
 .topnum{min-height:44px !important}
 .topnum span{font-size:20px !important}
 .topnum svg{width:24px !important;height:24px !important}
}
@media (max-width:380px){
 .hb img{width:44px !important;height:44px !important}
 .hb>span>span:first-child{font-size:18px !important}
 .hb>span>span:nth-child(3){font-size:17px !important}
 .iconbtn{width:44px !important;height:44px !important}
}
