/* M2M land pages v2 - uses the site tokens (--accent, --panel, --border, fonts) */
.lp-sec{max-width:1240px;margin:0 auto;padding:0 24px 72px}
.lp-top{padding-top:28px;padding-bottom:56px}
.lp-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);margin-bottom:22px}
.lp-crumbs a:hover{color:var(--accent)}.lp-crumbs i{opacity:.4;font-style:normal}.lp-crumbs span{color:var(--text);font-weight:600}
.lp-hero{--zc:var(--accent);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px;align-items:stretch}
.lp-stage{position:relative;aspect-ratio:1;border-radius:28px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#1a1410,#050505 70%);border:1px solid var(--border-strong);box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.03) inset}
.lp-stage:fullscreen{border-radius:0;aspect-ratio:auto}
.lp-poster,.lp-stage model-viewer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.lp-stage model-viewer{--poster-color:transparent;background:radial-gradient(circle at 50% 40%,#1a1410,#050505 70%)}
.lp-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 22%,transparent 70%,rgba(0,0,0,.55))}
.lp-tag{position:absolute;top:18px;left:18px;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(0,0,0,.7);border:1px solid var(--border);font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text)}
.lp-tag i,.lp-chip i,.lp-tile small i{width:8px;height:8px;border-radius:50%;background:var(--zc,var(--accent));box-shadow:0 0 10px var(--zc,var(--accent));flex:none}
.lp-play{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:999px;border:0;cursor:pointer;background:var(--accent);color:#1a0d09;font:800 15px var(--font-body);box-shadow:0 10px 30px rgba(224,111,82,.45);transition:transform .15s,box-shadow .15s}
.lp-play:hover{transform:translateX(-50%) translateY(-2px);box-shadow:0 14px 38px rgba(224,111,82,.6)}.lp-play:disabled{opacity:.7;cursor:progress}
.lp-tools{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:6px;padding:6px;border-radius:999px;background:rgba(12,12,14,.88);border:1px solid var(--border-strong);z-index:3}
.lp-tools button{display:inline-flex;align-items:center;gap:8px;height:38px;min-width:38px;padding:0 11px;justify-content:center;border-radius:999px;border:0;background:transparent;color:var(--text);cursor:pointer;font:700 12.5px var(--font-body);white-space:nowrap}
.lp-tools button:hover,.lp-tools button[aria-pressed="true"]{background:rgba(255,255,255,.1)}.lp-tools button[aria-pressed="true"]{color:var(--accent)}
.lp-progress{position:absolute;left:0;right:0;top:0;height:3px;background:rgba(255,255,255,.1);z-index:4}.lp-progress i{display:block;height:100%;width:0;background:var(--accent);transition:width .2s}
.lp-err{position:absolute;inset:auto 18px 18px 18px;padding:14px 16px;border-radius:14px;background:rgba(0,0,0,.8);border:1px solid var(--accent);font-size:14px;color:var(--text)}.lp-err a{color:var(--accent);font-weight:700}
.lp-panel{display:flex;flex-direction:column;justify-content:center;gap:20px;padding:36px;border-radius:28px;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015) 40%),var(--panel);border:1px solid var(--border-strong)}
.lp-chips{display:flex;flex-wrap:wrap;gap:8px}
.lp-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;border:1px solid var(--border-strong);background:rgba(255,255,255,.04);font-size:12px;font-weight:700;letter-spacing:.4px;color:var(--text-body)}
.lp-panel h1{font-family:var(--font-header);font-weight:800;font-size:clamp(40px,5vw,64px);line-height:1;letter-spacing:-1.5px;color:var(--text);margin:0}
.lp-panel h1 em,.lp-idxhero h1 em{font-style:normal;color:var(--accent)}
.lp-sub{color:var(--text-muted);font-size:16px;margin-top:-8px}
.lp-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.lp-stat{padding:16px 18px;border-radius:16px;background:rgba(0,0,0,.35);border:1px solid var(--border)}
.lp-stat b{display:block;font-family:var(--font-header);font-size:22px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.15}
.lp-stat span{display:block;margin-top:5px;font-size:11.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted)}
.lp-coords{display:flex;align-items:center;gap:20px;padding:14px 18px;border-radius:16px;border:1px dashed var(--border-strong)}
.lp-coords div{flex:1}.lp-coords small{display:block;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted)}
.lp-coords b{font:600 15px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text)}
.lp-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--border-strong);background:var(--panel);color:var(--text);cursor:pointer;flex:none}
.lp-iconbtn:hover{border-color:var(--accent);color:var(--accent)}
.lp-cta{display:flex;flex-wrap:wrap;gap:12px}.lp-cta .btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px}
.lp-note{font-size:13px;line-height:1.55;color:var(--text-muted)}
.lp-two{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}
.lp-card{padding:32px;border-radius:24px;background:var(--panel);border:1px solid var(--border)}
.lp-card h2{font-family:var(--font-header);font-size:22px;font-weight:800;color:var(--text);margin-bottom:16px}
.lp-card p{font-size:15px;line-height:1.75;color:var(--text-body);margin-bottom:14px}.lp-card p:last-child{margin-bottom:0}
.lp-checks{list-style:none;display:grid;gap:14px}
.lp-checks li{position:relative;padding-left:32px;font-size:14.5px;line-height:1.6;color:var(--text-muted)}.lp-checks b{color:var(--text)}
.lp-checks li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;background:var(--accent-dim) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E06F52' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat;border:1px solid rgba(224,111,82,.4)}
.lp-head{margin-bottom:28px}.lp-head span{display:block;font-size:12px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.lp-head h2{font-family:var(--font-header);font-size:clamp(26px,3vw,36px);font-weight:800;color:var(--text);margin-bottom:8px}.lp-head p{color:var(--text-muted);font-size:15px}
.lp-head code{font:600 13px ui-monospace,Menlo,monospace;color:var(--text);background:rgba(255,255,255,.06);padding:3px 8px;border-radius:8px;word-break:break-all}
.lp-maps{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);gap:20px;align-items:start}
.lp-mapmain{margin:0;border-radius:24px;overflow:hidden;background:var(--panel);border:1px solid var(--border)}
.lp-mapzoom{position:relative;display:block;width:100%;padding:0;border:0;background:#0a0d14;cursor:zoom-in;aspect-ratio:4/3}
.lp-mapzoom img{width:100%;height:100%;object-fit:contain}.lp-mapzoom svg{position:absolute;top:14px;right:14px;padding:9px;width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.6);color:var(--text)}
.lp-mapmain figcaption{display:flex;flex-direction:column;gap:3px;padding:16px 20px}.lp-mapmain figcaption b{color:var(--text);font-size:15px}.lp-mapmain figcaption span{color:var(--text-muted);font-size:13.5px}
.lp-thumbs{display:grid;gap:10px}
.lp-mapthumb{display:flex;align-items:center;gap:12px;padding:8px;border-radius:16px;border:1px solid var(--border);background:var(--panel);transition:border-color .15s,background .15s}
.lp-mapthumb img{width:72px;height:54px;object-fit:cover;border-radius:10px;background:#0a0d14;flex:none}.lp-mapthumb span{font-size:13.5px;font-weight:700;color:var(--text-body)}
.lp-mapthumb:hover{border-color:var(--border-strong)}.lp-mapthumb.is-on{border-color:var(--accent);background:var(--accent-dim)}.lp-mapthumb.is-on span{color:var(--text)}
.lp-tablewrap{padding:8px 24px;overflow-x:auto}
.lp-files{width:100%;border-collapse:collapse;min-width:560px}
.lp-files th{text-align:left;font-size:11.5px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:var(--text-muted);padding:16px 8px;border-bottom:1px solid var(--border)}
.lp-files td{padding:16px 8px;border-bottom:1px solid var(--border);vertical-align:middle}.lp-files tr:last-child td{border-bottom:0}
.lp-files td b{display:block;color:var(--text);font-size:15px}.lp-files td small{display:block;margin-top:3px;color:var(--text-muted);font:12px ui-monospace,Menlo,monospace;word-break:break-all}
.lp-badge{display:inline-block;padding:4px 10px;border-radius:8px;background:var(--accent-dim);border:1px solid rgba(224,111,82,.3);color:var(--accent);font:800 11.5px var(--font-body);letter-spacing:.6px}
.lp-act{text-align:right;white-space:nowrap}
.lp-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;font:700 12.5px var(--font-body);cursor:pointer;text-decoration:none}
.lp-btn-ghost{background:transparent;border:1px solid var(--border-strong);color:var(--text)}.lp-btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.lp-act .lp-btn+.lp-btn{margin-left:8px}
.lp-nbs{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:stretch}
.lp-nb{display:flex;align-items:center;gap:16px;padding:12px;border-radius:20px;background:var(--panel);border:1px solid var(--border);transition:border-color .15s,transform .15s}
.lp-nb:hover{border-color:var(--accent);transform:translateY(-2px)}.lp-nb img{width:72px;height:72px;border-radius:14px;object-fit:cover;flex:none;background:#0a0d14}
.lp-nb span{display:flex;flex-direction:column;gap:2px;min-width:0}.lp-nb small{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--accent)}.lp-nb b{color:var(--text);font-size:16px}.lp-nb em{font-style:normal;color:var(--text-muted);font-size:13px}
.lp-nbs .lp-nb:last-child{flex-direction:row-reverse;text-align:right}.lp-all{justify-content:center;padding:12px 28px;text-align:center}
.lp-lb{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.92);padding:24px}.lp-lb.on{display:flex}
.lp-lb img{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain;border-radius:12px}.lp-lb figure{margin:0;text-align:center}.lp-lb figcaption{margin-top:14px;color:var(--text);font-weight:700}
.lp-lb button{position:absolute;width:46px;height:46px;border-radius:50%;border:1px solid var(--border-strong);background:rgba(255,255,255,.08);color:#fff;font-size:22px;cursor:pointer}.lp-lb button:hover{border-color:var(--accent)}
.lp-lb .x{top:20px;right:20px}.lp-lb .p{left:20px;top:50%}.lp-lb .n{right:20px;top:50%}
.lp-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);padding:12px 20px;border-radius:999px;background:var(--text);color:#111;font-weight:700;font-size:14px;opacity:0;pointer-events:none;transition:.25s;z-index:120}.lp-toast.on{opacity:1;transform:translateX(-50%)}
/* index */
.lp-idxhero{text-align:center;max-width:860px;margin:0 auto;padding:30px 0 10px}.lp-idxhero h1{font-family:var(--font-header);font-size:clamp(36px,5vw,58px);font-weight:800;letter-spacing:-1.2px;color:var(--text);margin:6px 0 14px}
.lp-idxhero p{color:var(--text-muted);font-size:17px;margin-bottom:26px}
.lp-jump{display:inline-flex;align-items:center;gap:10px;padding:8px 8px 8px 22px;border-radius:999px;background:var(--panel);border:1px solid var(--border-strong);margin-bottom:30px}
.lp-jump label{font-size:13px;font-weight:700;color:var(--text-muted);white-space:nowrap}.lp-jump input{width:110px;background:transparent;border:0;outline:0;color:var(--text);font:700 16px var(--font-body)}.lp-jump .btn{padding:11px 24px}
.lp-stats-wide{grid-template-columns:repeat(4,1fr);text-align:left}
.lp-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.lp-tile{--zc:var(--accent);display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:var(--panel);border:1px solid var(--border);transition:transform .15s,border-color .15s,box-shadow .15s}
.lp-tile:hover{transform:translateY(-4px);border-color:var(--zc);box-shadow:0 14px 36px rgba(0,0,0,.5)}
.lp-tile img{width:100%;aspect-ratio:1;object-fit:cover;background:#0a0d14}.lp-tilebody{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px}
.lp-tilebody b{font-family:var(--font-header);font-size:16px;color:var(--text)}.lp-tile small{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.lp-tilebody em{font-style:normal;font-size:12.5px;color:var(--text-body);font-variant-numeric:tabular-nums}
.lp-pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:40px}
.lp-pg{min-width:42px;height:42px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-weight:700;font-size:14px}
.lp-pg:hover{border-color:var(--accent)}.lp-pg.is-on{background:var(--accent);border-color:var(--accent);color:#1a0d09}.lp-dots{align-self:center;color:var(--text-muted)}
@media(max-width:1024px){.lp-hero{grid-template-columns:1fr}.lp-stage{aspect-ratio:1/.85}.lp-two{grid-template-columns:1fr}.lp-maps{grid-template-columns:1fr}.lp-thumbs{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.lp-tiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.lp-sec{padding:0 16px 52px}.lp-panel{padding:24px 20px}.lp-card{padding:24px 20px}.lp-stage{border-radius:20px}.lp-nbs{grid-template-columns:1fr}.lp-nbs .lp-nb:last-child{flex-direction:row;text-align:left}.lp-tiles{grid-template-columns:repeat(2,1fr);gap:12px}.lp-stats-wide{grid-template-columns:repeat(2,1fr)}.lp-jump{width:100%}.lp-jump input{flex:1;width:auto}.lp-tools button span{display:none}.lp-tools button{padding:0}.lp-tools{bottom:14px}.lp-act .lp-btn span{display:none}}
@media(prefers-reduced-motion:reduce){.lp-play,.lp-nb,.lp-tile,.lp-toast{transition:none}}

/* v3 fixes */
.lp-stage [hidden],.lp-sec [hidden],.lp-lb[hidden]{display:none!important}   /* .lp-tools{display:flex} was overriding the hidden attribute */
nav{z-index:60!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:rgba(0,0,0,.94)!important}
footer{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.lp-sec{position:relative;z-index:0}
.lp-stage{isolation:isolate;border-color:rgba(255,255,255,.18);border-color:color-mix(in srgb,var(--zc,#E06F52) 55%,transparent);box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 60px -20px var(--zc,#E06F52)}
.lp-play{z-index:2}
.lp-stat u{text-decoration:none;font-size:.58em;font-weight:700;color:var(--text-muted);margin-left:2px}
.lp-stats{gap:10px}.lp-stat{padding:14px 16px}.lp-stat b{font-size:20px}
.lp-zone{display:flex;align-items:center;gap:16px;padding:14px 16px;border-radius:16px;background:linear-gradient(90deg,rgba(255,255,255,.05),transparent),rgba(0,0,0,.3);border:1px solid var(--border);border-left:4px solid var(--zc)}
.lp-zonebadge{flex:none;width:62px;height:62px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--zc);color:#14110f;box-shadow:0 0 24px -4px var(--zc)}
.lp-zonebadge small{font-size:9.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;opacity:.75;line-height:1}.lp-zonebadge b{font:800 26px var(--font-header);line-height:1.05}
.lp-zoneinfo{min-width:0}.lp-zoneinfo>b{display:block;font:800 17px var(--font-header);color:var(--text)}.lp-zoneinfo>span{display:block;font-size:12.5px;color:var(--text-muted);margin:2px 0 8px}
.lp-zlegend{display:flex;flex-wrap:wrap;gap:6px}
.lp-zl{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 7px;border-radius:999px;border:1px solid var(--border);font-size:11px;font-weight:700;color:var(--text-muted)}
.lp-zl i{width:9px;height:9px;border-radius:3px;background:var(--zc)}.lp-zl em{font-style:normal}
.lp-zl.is-me{color:var(--text);border-color:var(--zc);background:rgba(255,255,255,.07)}
.lp-links{display:flex;flex-wrap:wrap;gap:8px}
.lp-link{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:999px;border:1px solid var(--border-strong);background:transparent;color:var(--text);font:700 13px var(--font-body);cursor:pointer;text-decoration:none;transition:border-color .15s,color .15s}
.lp-link:hover{border-color:var(--accent);color:var(--accent)}.lp-link img{border-radius:50%}.lp-link svg{opacity:.7}
@media(max-width:640px){.lp-zone{flex-direction:row;padding:12px}.lp-zonebadge{width:54px;height:54px}}
