/* Beginner hub: story cards, suite map, enterprise structure, learning path */
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/manrope-var.woff2) format('woff2')}

/* page-scoped font upgrade (body.lm-page): Manrope headings, roomier body */
.lm-page .art-head h1{font:800 2.35rem/1.18 Manrope,Inter,sans-serif;letter-spacing:-.02em}
.lm-page .art-head .lede{font-size:16px;line-height:1.8}
.lm-page .kick{font-family:Manrope,Inter,sans-serif;letter-spacing:.14em}
.lm-page .faq-sec h2,.lm-page .faq-sec summary{font-family:Manrope,Inter,sans-serif}

.lm-sec{max-width:880px;margin:0 auto;padding:0 20px}
.lm-sec h2{font:800 1.5rem Manrope,Inter,sans-serif;letter-spacing:-.015em;color:var(--ink);margin:54px 0 6px}
.lm-sec .lm-sub{font-size:15px;color:var(--dim);margin:0 0 22px;line-height:1.7}

/* why cards */
.lm-why{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.lm-wcard{background:var(--panel,#fff);border:1px solid var(--line);border-radius:16px;padding:22px 20px}
.lm-wcard .ic{font-size:26px;display:block;margin-bottom:10px}
.lm-wcard b{display:block;font:700 1.02rem Manrope,Inter,sans-serif;margin-bottom:7px;color:var(--ink)}
.lm-wcard p{font-size:13.5px;color:var(--dim);line-height:1.65;margin:0}

/* suite map */
.lm-map{display:flex;flex-direction:column;gap:12px;margin-top:6px}
.lm-pillar{background:var(--panel,#fff);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:box-shadow .15s}
.lm-pillar.open{box-shadow:0 6px 18px rgba(43,42,38,.07);border-color:#d8cfbc}
.lm-phead{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:none;border:none;padding:18px 20px;cursor:pointer;font-family:var(--sans)}
.lm-pic{font-size:26px;flex:0 0 auto}
.lm-pname{flex:1;font:800 1.08rem Manrope,Inter,sans-serif;color:var(--ink);line-height:1.3}
.lm-pname small{display:block;font:400 12.5px var(--sans,Inter,sans-serif);color:var(--mute);margin-top:3px}
.lm-arrow{font-size:20px;color:var(--mute);flex:0 0 auto}
.lm-mods{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;padding:4px 16px 18px}
.lm-note{grid-column:1/-1;font-size:12.5px;font-weight:600;color:var(--architect);margin:0 4px 2px}
.lm-mod{display:flex;gap:10px;align-items:flex-start;background:var(--bg,#faf7f2);border:1px solid var(--line);border-radius:12px;padding:12px 13px;text-decoration:none;color:inherit}
.lm-mod.ours{border-color:rgba(61,91,196,.4);transition:border-color .15s,transform .15s}
.lm-mod.ours:hover{border-color:var(--architect);transform:translateY(-2px)}
.lm-mic{font-size:18px;flex:0 0 auto;margin-top:1px}
.lm-mtxt{font-size:12.5px;color:var(--dim);line-height:1.55}
.lm-mtxt b{display:block;font-size:13.5px;color:var(--ink);margin-bottom:2px}
.lm-go{display:block;font-style:normal;font-size:12px;font-weight:700;color:var(--architect);margin-top:6px}
.lm-platwrap{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.lm-plat{font-size:12px;font-weight:600;color:var(--dim);background:var(--panel,#fff);border:1px solid var(--line);border-radius:999px;padding:7px 13px}

/* the flow strip */
.lm-flow{display:flex;align-items:stretch;gap:0;flex-wrap:wrap;background:var(--panel,#fff);border:1px solid var(--line);border-radius:16px;padding:18px;margin-top:6px}
.lm-fstep{flex:1 1 120px;text-align:center;padding:6px 8px;position:relative}
.lm-fstep .ic{font-size:22px;display:block;margin-bottom:6px}
.lm-fstep b{display:block;font-size:12.5px;color:var(--ink)}
.lm-fstep span{font-size:11px;color:var(--mute)}
.lm-fstep + .lm-fstep::before{content:"→";position:absolute;left:-7px;top:38%;color:var(--mute);font-size:14px}

/* learning path */
.lm-pathhead{display:flex;align-items:baseline;gap:12px}
.lm-pathhead .cnt{font-size:12.5px;font-weight:700;color:var(--good)}
.lm-path{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.lm-step{display:flex;gap:14px;align-items:flex-start;background:var(--panel,#fff);border:1px solid var(--line);border-radius:14px;padding:15px 16px;transition:opacity .2s}
.lm-step.done{opacity:.62}
.lm-step.done .lm-stxt b{text-decoration:line-through}
.lm-chk{flex:0 0 34px;height:34px;border-radius:50%;border:2px solid var(--line);background:var(--bg,#faf7f2);font:700 14px var(--sans,Inter,sans-serif);color:var(--dim);cursor:pointer;transition:all .15s}
.lm-step.done .lm-chk{background:var(--good);border-color:var(--good);color:#fff}
.lm-chk:hover{border-color:var(--good)}
.lm-stxt{font-size:13px;color:var(--dim);line-height:1.6}
.lm-stxt b{display:block;font-size:14.5px;color:var(--ink);margin-bottom:2px}
.lm-stxt a{display:inline-block;font-weight:700;color:var(--architect);text-decoration:none;margin-top:5px}
.lm-stxt a:hover{text-decoration:underline}

/* consultant cross-door */
.lm-door{display:block;background:#26241f;color:#f7f4ec;border-radius:16px;padding:22px 24px;text-decoration:none;margin:50px 0 10px}
.lm-door b{font:800 1.12rem Manrope,Inter,sans-serif}
.lm-door span{display:block;font-size:13px;opacity:.75;margin-top:5px}
.lm-door:hover{background:#332f27}

/* homepage two doors */
.door-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;max-width:820px;margin:30px auto 6px;padding:0 20px}
.door{display:flex;gap:14px;align-items:center;background:var(--panel,#fff);border:1.5px solid var(--line);border-radius:16px;padding:18px 20px;text-decoration:none;color:inherit;text-align:left;transition:transform .15s,box-shadow .15s,border-color .15s}
.door:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(43,42,38,.08);border-color:#c9bda4}
.door .ic{font-size:26px;flex:0 0 auto}
.door b{display:block;font:700 1.02rem var(--serif,Fraunces,serif);color:var(--ink)}
.door span{font-size:12.5px;color:var(--dim);line-height:1.5}

/* enterprise structure explorer */
.lm-es{display:flex;flex-direction:column;margin-top:6px}
.lm-esrow{position:relative;background:var(--panel,#fff);border:1px solid var(--line);border-radius:14px;margin-bottom:8px;overflow:hidden}
.lm-esrow.open{border-color:#d8cfbc;box-shadow:0 5px 14px rgba(43,42,38,.06)}
.lm-eshead{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:none;border:none;padding:14px 16px;cursor:pointer;font-family:var(--sans)}
.lm-esic{font-size:20px;flex:0 0 auto}
.lm-esname{flex:1;font:800 15px Manrope,Inter,sans-serif;color:var(--ink)}
.lm-esname small{display:block;font:400 12px var(--sans,Inter,sans-serif);color:var(--mute);margin-top:2px}
.lm-esarrow{color:var(--mute);font-size:17px}
.lm-esbody{padding:0 16px 15px 48px;font-size:13.5px;color:var(--dim);line-height:1.7}
.lm-esbody .why{display:block;margin-top:7px;font-size:12.5px;color:var(--architect);font-weight:600}
.lm-esex{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.lm-esex span{font-size:12px;font-weight:600;color:var(--ink);background:var(--bg,#faf7f2);border:1px solid var(--line);border-radius:8px;padding:4px 10px}
