/* Moveset templates · shared base */
*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth}
body{font:400 16px/1.55 Inter,system-ui,sans-serif;color:#0A0B0D;background:#fff;overflow-x:hidden}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}img,svg,canvas{display:block}
.w{width:min(1200px,100% - 48px);margin:0 auto}
.ds{font-family:"Inter Tight",Inter,sans-serif;letter-spacing:-.045em;font-weight:600;line-height:1.02;padding-bottom:.08em}
.btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border-radius:12px;font-size:14.5px;font-weight:500;letter-spacing:-.01em;transition:transform .16s cubic-bezier(.2,.8,.2,1),background .2s;white-space:nowrap}
.btn:active{transform:scale(.97)}.btn-ink{background:#0A0B0D;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 6px 16px -6px rgba(10,12,16,.35)}.btn-ink:hover{background:#24262B}
.btn-line{box-shadow:inset 0 0 0 1px rgba(10,12,16,.14);background:#fff}.btn-line:hover{background:#F6F7F8}
.eyebrow{font-size:13px;font-weight:500;color:#5F6570;display:inline-flex;gap:8px;align-items:center}
.ms3d{position:relative}.ms3d:not(.ms3d-ready):after{content:"";position:absolute;inset:20%;border-radius:50%;background:radial-gradient(circle,rgba(10,12,16,.06),transparent 70%);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.4;transform:scale(.94)}}
/* reveal */
[data-r]{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s)}
[data-r].in{opacity:1;transform:none}
.split .ln{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}.split .ln>span{display:inline-block;transform:translateY(105%);transition:transform 1s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i)*.08s)}
.split.in .ln>span{transform:none}
@media (prefers-reduced-motion:reduce){[data-r],.split .ln>span{opacity:1!important;transform:none!important;transition:none!important}*{animation:none!important;scroll-behavior:auto!important}}
/* template bar (hidden in embeds) */
.ms-bar{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:99;display:flex;align-items:center;gap:10px;padding:6px 6px 6px 14px;border-radius:14px;background:rgba(10,11,13,.92);color:#fff;font-size:13px;box-shadow:0 20px 40px -12px rgba(0,0,0,.45);backdrop-filter:blur(10px)}
.ms-bar b{font-weight:600}.ms-bar i{font-style:normal;font-size:11px;padding:2px 7px;border-radius:6px;background:#5EE6C8;color:#04241D;font-weight:600}.ms-bar i.free{background:rgba(255,255,255,.14);color:#fff}
.ms-bar a{padding:7px 11px;border-radius:9px;background:#fff;color:#0A0B0D;font-weight:500}.ms-bar a.g{background:transparent;color:#B4BCD0}.ms-bar a.g:hover{color:#fff}
html.embed .ms-bar{display:none}html.embed{scrollbar-width:none}html.embed::-webkit-scrollbar{display:none}
.demo-note{font-size:12px;color:#8B909A}
/* set logo */
.brand .wm{font-family:"Inter Tight",Inter,sans-serif;font-weight:600;font-size:17px;letter-spacing:-.025em}
.ms-set{flex:none}.ms-set rect{transition:rx .5s cubic-bezier(.34,1.56,.64,1)}
a.brand:hover .ms-set .s4,a.brand:focus-visible .ms-set .s4{rx:4.5px}a.brand:hover .ms-set .s1,a.brand:focus-visible .ms-set .s1{rx:8.5px}
@media (prefers-reduced-motion:reduce){.ms-set rect{transition:none}}

/* ---- v2 shared ---- */
[data-pane]{display:none}[data-pane].on{display:block;animation:paneIn .5s cubic-bezier(.2,.8,.2,1)}@keyframes paneIn{from{opacity:0;transform:translateY(8px)}}
[data-tilt]{transform:perspective(1000px) rotateX(var(--rx,0)) rotateY(var(--ry,0));transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.faq{max-width:820px}.faq details{border-bottom:1px solid rgba(10,12,16,.1)}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font:600 19px "Inter Tight",Inter;letter-spacing:-.02em}
.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font:300 26px Inter;line-height:.8;transition:transform .3s}.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{padding:0 0 22px;color:#5F6570;max-width:62ch}.faq details[open] p{animation:paneIn .4s}
.mq2{overflow:hidden;white-space:nowrap;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.mq2>div{display:inline-flex;gap:56px;animation:mq2 32s linear infinite;padding-right:56px}@keyframes mq2{to{transform:translateX(-50%)}}
.sec{padding:140px 0}.sec-h{max-width:760px;margin-bottom:56px}.sec-h h2{font-size:clamp(38px,5vw,68px)}.sec-h p{font-size:18px;color:#5F6570;margin-top:16px;max-width:52ch}
.kick{font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#8B909A;margin-bottom:16px;display:block}
.note{font-size:12px;color:#8B909A;margin-top:18px}
.sw-t{position:relative;display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:500;cursor:pointer}.sw-t input{position:absolute;opacity:0}.sw-t i{width:44px;height:26px;border-radius:99px;background:#D9DCE1;position:relative;transition:background .3s}.sw-t i:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.2);transition:transform .45s cubic-bezier(.34,1.56,.64,1)}.sw-t input:checked+i{background:#0A0B0D}.sw-t input:checked+i:after{transform:translateX(18px)}.sw-t input:focus-visible+i{outline:2px solid #3D5BFF;outline-offset:2px}
.sw-t em{font-style:normal;font-size:12px;padding:2px 8px;border-radius:99px;background:#E6FCF5;color:#0B7A5A}
@media (max-width:860px){.sec{padding:90px 0}}
/* fix6 gallery polish */
.head h1{letter-spacing:-.052em}
.g{gap:32px 22px}
.t .frame{border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px rgba(10,12,16,.06),0 24px 50px -30px rgba(10,20,40,.4);transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}
.t .frame img{transition:transform 1.4s cubic-bezier(.2,.8,.2,1)}
.t:hover .frame{transform:translateY(-5px);box-shadow:0 0 0 1.5px rgba(94,230,200,.9),0 40px 70px -34px rgba(10,20,40,.5)}
.t:hover .frame img{transform:scale(1.05)}
.t .mt h3{letter-spacing:-.02em}
@media (prefers-reduced-motion:reduce){.t:hover .frame img,.t:hover .frame{transform:none}}
