/* Smooth motion layer (TailorFit-style). Purely visual – no logic changes. */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
.mx-reveal{opacity:0;transform:translate3d(0,40px,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--mx-d,0s);will-change:opacity,transform}
.mx-reveal.mx-in{opacity:1;transform:none}
.mx-split .mx-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.mx-split .mx-w>span{display:inline-block;transform:translate3d(0,110%,0);transition:transform 1s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i)*.045s)}
.mx-split.mx-in .mx-w>span{transform:none}
img.mx-img{opacity:0;transition:opacity .6s ease}
img.mx-img.mx-loaded{opacity:1}
@media (prefers-reduced-motion:reduce){.mx-reveal,.mx-split .mx-w>span,img.mx-img{opacity:1!important;transform:none!important;transition:none!important}}

/* ===== Card hover polish (How it works + CTA) ===== */
.hm-step{transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .35s,background .35s;will-change:transform;overflow:visible}
.hm-step:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(120% 80% at 50% 0%,rgba(255,45,85,.08),transparent 60%)}
.hm-step:hover{transform:translateY(-10px);border-color:rgba(255,45,85,.35);box-shadow:0 30px 60px -28px rgba(15,35,80,.45),0 8px 18px -10px rgba(255,45,85,.25)}
.hm-step:hover:after{opacity:1}
.hm-step:before{transition:transform .45s cubic-bezier(.2,.8,.2,1),background .35s,box-shadow .35s}
.hm-step:hover:before{background:linear-gradient(135deg,#ff4d6d,#ff2d55);transform:translateX(-50%) scale(1.12);box-shadow:0 10px 20px -8px rgba(255,45,85,.7)}
.hm-step .hm-ic{transition:transform .5s cubic-bezier(.2,.8,.2,1),background .35s,box-shadow .35s}
.hm-step:hover .hm-ic{transform:translateY(-4px) rotate(-6deg) scale(1.1);background:linear-gradient(135deg,#ffe4ea,#ffd0da);box-shadow:0 12px 24px -12px rgba(255,45,85,.55)}
.hm-step h3{transition:color .3s}
.hm-step:hover h3{color:#e11d48}
.hm-cta-box{position:relative;overflow:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}
.hm-cta-box:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;top:-180px;right:-120px;background:radial-gradient(circle,rgba(255,255,255,.16),transparent 65%);pointer-events:none;transition:transform .8s}
.hm-cta-box:hover{transform:translateY(-4px);box-shadow:0 40px 80px -36px rgba(20,40,110,.7)}
.hm-cta-box:hover:before{transform:translate(-40px,40px) scale(1.15)}
.hm-cta-box > *{position:relative}
.hm-cta-box .hm-btn-main:hover{transform:translateY(-3px);box-shadow:0 22px 36px -14px rgba(0,0,0,.55)}
@media (hover:none){.hm-step:hover,.hm-cta-box:hover{transform:none}}
@media (prefers-reduced-motion:reduce){.hm-step,.hm-step .hm-ic,.hm-cta-box{transition:none}}

/* ===== v3: How-it-works light blue -> red on hover ===== */
.hm-step{background:linear-gradient(160deg,#f1f7ff,#e6f0fd);border-color:#d6e4f7;box-shadow:0 14px 30px -22px rgba(15,42,82,.35)}
.hm-step:hover{background:linear-gradient(150deg,#ff4d6d,#e11d48);border-color:transparent;box-shadow:0 32px 60px -26px rgba(225,29,72,.65)}
.hm-step:hover:after{opacity:0}
.hm-step p{transition:color .3s}
.hm-step:hover h3,.hm-step:hover p{color:#fff}
.hm-step:hover:before{background:#fff;color:#e11d48;box-shadow:0 10px 20px -8px rgba(0,0,0,.35)}
.hm-step:hover .hm-ic{background:rgba(255,255,255,.95);box-shadow:0 12px 24px -12px rgba(0,0,0,.4)}

/* ===== v3: FAQ shadow + slide in from left ===== */
.hm-faq details{box-shadow:0 10px 26px -18px rgba(15,42,82,.45);transition:border-color .25s,box-shadow .3s,transform .3s}
.hm-faq details:hover{transform:translateX(6px);border-color:rgba(255,45,85,.35);box-shadow:0 18px 36px -20px rgba(15,42,82,.5)}
.hm-faq summary{transition:color .25s}
.hm-faq details:hover summary{color:#e11d48}
.js-faq-anim .hm-faq details{opacity:0;transform:translateX(-70px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1),border-color .25s,box-shadow .3s}
.js-faq-anim .hm-faq details.faq-in{opacity:1;transform:none}
.js-faq-anim .hm-faq details.faq-in:hover{transform:translateX(6px);transition-delay:0s!important}
@media (prefers-reduced-motion:reduce){.js-faq-anim .hm-faq details{opacity:1;transform:none;transition:none}}

/* ===== v4: same FAQ look on every page (items tagged .faq-x by js/motion.js) ===== */
html.faq-fx details.faq-x{transition:border-color .25s,box-shadow .3s,transform .35s cubic-bezier(.2,.8,.2,1)}
html.faq-fx details.faq-x:not([open]){box-shadow:0 10px 26px -18px rgba(15,42,82,.45)}
html.faq-fx details.faq-x:hover{transform:translateX(6px)}
html.faq-fx details.faq-x:not([open]):hover{border-color:rgba(255,45,85,.35);box-shadow:0 18px 36px -20px rgba(15,42,82,.5)}
html.faq-fx details.faq-x>summary{transition:color .25s}
html.faq-fx details.faq-x:hover>summary{color:#e11d48}
html.faq-fx.js-faq-anim details.faq-x{opacity:0;transform:translateX(-70px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1),border-color .25s,box-shadow .3s}
html.faq-fx.js-faq-anim details.faq-x.faq-in{opacity:1;transform:none}
html.faq-fx.js-faq-anim details.faq-x.faq-in:hover{transform:translateX(6px);transition-delay:0s!important}
@media (prefers-reduced-motion:reduce){html.faq-fx details.faq-x,html.faq-fx details.faq-x:hover{opacity:1;transform:none;transition:none}}
@media (hover:none){html.faq-fx.js-faq-anim details.faq-x.faq-in:hover{transform:none}}

/* ---------- Language picker (top bar) ---------- */
.bk-lang-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:0;border-radius:8px;padding:3px 8px;font:inherit;font-size:12px;font-weight:600;color:#5b6f90;cursor:pointer}
.bk-lang-btn:hover{background:#dde8fb}
.bk-lang-btn svg{width:14px;height:14px}
.bk-lang-btn i{font-size:9px;font-style:normal}
.bk-lang-ov{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(15,31,75,.45)}
.bk-lang-ov[hidden]{display:none}
.bk-lang-box{box-sizing:border-box;background:#fff;border-radius:24px;width:min(100%,560px);max-height:calc(100vh - 32px);overflow:auto;padding:24px;box-shadow:0 30px 80px rgba(15,31,75,.35)}
.bk-lang-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.bk-lang-ttl{font-size:20px;font-weight:700;color:#0f2a52}
.bk-lang-x{width:34px;height:34px;border:0;border-radius:50%;background:none;font-size:26px;line-height:1;color:#64748b;cursor:pointer}
.bk-lang-x:hover{background:#f1f5f9}
.bk-lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.bk-lang-it{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border:0;border-radius:99px;background:none;font:inherit;font-size:16px;color:#0f2a52;text-align:left;cursor:pointer}
.bk-lang-it:hover{background:#f1f5f9}
.bk-lang-it.on{background:#eef4ff;font-weight:700}
.bk-lang-it small{display:block;font-size:11px;font-weight:500;color:#64748b}
.bk-lang-badge{flex:none;width:30px;height:30px;border-radius:50%;background:#e3ecff;color:#1d4ed8;display:grid;place-items:center;font-size:11px;font-weight:700;text-transform:uppercase}
html.bk-lang-open{overflow:hidden}
@media (max-width:480px){.bk-lang-grid{grid-template-columns:1fr}}
/* hide Google's own translate bar / tooltips */
#bk-gt{position:absolute;left:-9999px;top:0;width:1px;height:1px;overflow:hidden}
.goog-te-banner-frame,iframe.goog-te-banner-frame,.skiptranslate>iframe,#goog-gt-tt,.goog-te-balloon-frame{display:none!important}
body{top:0!important}
.goog-text-highlight{background:none!important;box-shadow:none!important}

/* Mobile menu: every item full width, left aligned, arrow on the right */
@media (max-width:860px){
  .cu .cu-nav{align-items:stretch;gap:0;padding:4px 0 10px;border-top:1px solid #e3ebf6}
  .cu .cu-nav>.cu-dd,.cu .cu-nav>.cu-nav-b{width:100%}
  .cu .cu-nav .cu-nav-b{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;margin:0;padding:14px 6px;border:0;border-bottom:1px solid #eef2f8;border-radius:0;font-size:15px;font-weight:700;text-align:left;color:#0f2a52}
  .cu .cu-nav .cu-nav-b i{margin-left:auto;font-size:12px}
  .cu .cu-nav>.cu-nav-b:last-child{border-bottom:0}
  .cu-head-r{justify-content:flex-end}
  .cu-top-in{padding:5px 14px}
}