/* Only loaded on the homepage. The document keeps its native scroll. */
.lm-intro{display:none}
.lm-intro-enabled .lm-intro{display:block;height:650vh;height:650svh;position:relative;background:#fff}
.lm-intro-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;isolation:isolate;background:#fff}
.lm-intro-top,.lm-intro-bottom{position:absolute;left:40px;right:40px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:24px}
.lm-intro-top{top:22px;left:0;right:0;padding:0 40px}
.lm-intro-top::before,.lm-intro-bottom::before{content:'';position:absolute;z-index:-1;pointer-events:none}
.lm-intro-top::before{inset:-22px -40px -35px;background:linear-gradient(#fff 65%,rgba(255,255,255,0))}
.lm-intro-bottom::before{inset:-40px -40px -27px;background:linear-gradient(rgba(255,255,255,0),#fff 45%)}
.lm-intro-side{position:absolute;top:50%;transform:translateY(-50%);z-index:3;margin:0;padding:12px 16px;background:rgba(255,255,255,.9);font-size:14px;line-height:1.35;letter-spacing:-.015em;pointer-events:none}
.lm-intro-side--left{left:32px}.lm-intro-side--right{right:32px;text-align:right}
.lm-intro-stage{position:absolute;inset:0;perspective:1000px;perspective-origin:50% 50%;z-index:0}
.lm-intro-card{position:absolute;left:50%;top:50%;width:calc(clamp(200px,20vw,320px)*var(--card-size));display:block;background:#f4f4f1;backface-visibility:hidden;will-change:transform,opacity;outline-offset:8px;transform:translate(-50%,-50%) translate3d(calc(var(--card-x)*100vw),calc(var(--card-y)*100svh),var(--card-z));opacity:var(--card-opacity)}
.lm-intro-card img{width:100%;height:auto;display:block}
.lm-intro-caption{position:absolute;left:50%;top:100%;transform:translate(-50%,8px);white-space:nowrap;background:var(--forest);color:white;padding:7px 11px;display:flex;align-items:center;gap:15px;font-size:12px;line-height:1.3;opacity:0;transition:opacity .2s,transform .2s}
.lm-intro-caption .lm-icon{font-size:10px;transform:rotate(-45deg)}
.lm-intro-card:hover .lm-intro-caption,.lm-intro-card:focus-visible .lm-intro-caption{opacity:1;transform:translate(-50%,12px)}
.lm-intro-bottom{bottom:27px;font-size:12px;line-height:1.3}
.lm-intro-scroll,.lm-intro-skip{display:flex;align-items:center;gap:15px;min-height:44px}
.lm-intro-scroll .lm-icon{font-size:11px;transform:rotate(90deg)}
.lm-intro-skip .lm-icon{font-size:11px}
.lm-intro-skip:hover{text-decoration:underline;text-underline-offset:5px}
.lm-intro-progress{display:flex;align-items:center;gap:14px;position:absolute;left:50%;transform:translateX(-50%);font-variant-numeric:tabular-nums}
.lm-intro-progress-track{display:block;width:80px;height:1px;background:#d9dedb;overflow:hidden}
.lm-intro-progress-track>span{display:block;width:100%;height:100%;background:var(--forest);transform:scaleX(var(--intro-progress,0));transform-origin:left}
.lm-intro-counter{min-width:42px;color:#626262;font-size:10px}
.lm-intro-arrival{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;opacity:0;z-index:2}
.lm-intro-arrival img{width:clamp(220px,25vw,360px);height:auto}
@media(max-width:700px){
  .lm-intro-enabled .lm-intro{height:560vh;height:560svh}
  .lm-intro-top,.lm-intro-bottom{left:22px;right:22px;gap:12px}.lm-intro-top{top:19px;left:0;right:0;padding:0 20px}
  .lm-intro-top::before{inset:-19px -20px -25px}.lm-intro-bottom::before{inset:-30px -22px calc(-1*max(18px,env(safe-area-inset-bottom)))}
  .lm-intro-side{top:96px;transform:none;font-size:11px;padding:8px 10px}.lm-intro-side--left{left:12px}.lm-intro-side--right{right:12px}
  .lm-intro-card{width:calc(180px*var(--card-size));transform:translate(-50%,-50%) translate3d(calc(var(--card-x)*100vw),calc(var(--card-y)*150svh),var(--card-z));opacity:var(--card-mobile-opacity)}
  .lm-intro-bottom{bottom:max(18px,env(safe-area-inset-bottom));font-size:10px;align-items:flex-end;padding-top:26px}
  .lm-intro-scroll,.lm-intro-skip{gap:8px;min-height:36px}.lm-intro-scroll .lm-icon,.lm-intro-skip .lm-icon{font-size:10px}
  .lm-intro-skip{display:none}
  .lm-intro-progress{top:0;left:0;transform:none;gap:10px}.lm-intro-progress-track{width:48px}.lm-intro-counter{font-size:9px}
  .lm-intro-caption{font-size:11px;max-width:240px;white-space:normal;text-align:center}
}
@media(prefers-reduced-motion:reduce){.lm-intro-enabled .lm-intro{display:none}}
@media(max-width:420px){.lm-intro-top{padding-left:16px;padding-right:16px;gap:10px}}
@media(max-width:360px){.lm-intro-top{gap:6px}}
