/* LM-Stock Journal — scoped styles, version 1.0.0 */
.lmsb, .lmsb * { box-sizing: border-box; }
.lmsb { --lsb-ink:#252625; --lsb-muted:#686963; --lsb-peach:#f9ece4; --lsb-cream:#f7f4ef; --lsb-line:#e6e0d8; --lsb-orange:#d9653e; --lsb-green:#c5ceaa; color:var(--lsb-ink); background:#fff; font-family:inherit; line-height:1.55; }
.lmsb a { color:inherit; text-decoration:none; }
.lmsb a:focus-visible, .lmsb button:focus-visible, .lmsb input:focus-visible { outline:3px solid #cc704c; outline-offset:3px; }
.lmsb-shell { max-width:1200px; margin:0 auto; padding:22px 30px 70px; }
.lmsb-breadcrumbs { display:flex; gap:12px; align-items:center; font-size:12px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; margin:0 0 24px; }
.lmsb-breadcrumbs span { color:#87857c; }
.lmsb-hero { border-radius:20px; background:var(--lsb-cream); min-height:448px; display:grid; grid-template-columns:1.2fr 1fr; overflow:hidden; }
.lmsb-hero-copy { padding:64px 40px 58px 62px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.lmsb-kicker { color:var(--lsb-orange); font-size:11px !important; font-weight:800; letter-spacing:.14em; text-transform:uppercase; margin:0 0 19px !important; }
.lmsb-dot { display:inline-block; width:8px; height:8px; background:var(--lsb-orange); border-radius:50%; margin-right:8px; }
.lmsb-hero h1 { font-size:clamp(41px,4.2vw,66px) !important; line-height:1.05 !important; letter-spacing:-.045em; margin:0 0 22px !important; color:var(--lsb-ink); font-weight:800; }
.lmsb-hero h1 em { font-style:normal; color:var(--lsb-orange); }
.lmsb-hero-copy > p:not(.lmsb-kicker) { max-width:475px; font-size:16px; line-height:1.7; margin:0 0 28px; color:#575954; }
.lmsb-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px; }
.lmsb-btn { display:inline-flex; align-items:center; gap:24px; justify-content:center; padding:15px 23px; font-size:13px; font-weight:800; border-radius:7px; transition:transform .2s ease,background .2s ease; }
.lmsb-btn:hover { transform:translateY(-2px); }
.lmsb-btn-dark { color:white !important; background:#272b28; }
.lmsb-btn-dark:hover { background:#101613; }
.lmsb-text-link { font-size:13px; font-weight:700; text-decoration:underline !important; text-underline-offset:4px; }
.lmsb-hero-art { position:relative; background:linear-gradient(133deg,#d8c6ba,#e5d5c7 48%,#b8c2ac); min-height:400px; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.lmsb-hero-art::before { content:""; position:absolute; width:350px; height:350px; border:1px solid rgba(255,255,255,.5); border-radius:50%; right:-100px; top:-140px; }
.lmsb-hero-art::after { content:""; position:absolute; left:-90px; bottom:-90px; background:rgba(255,255,255,.15); width:320px; height:320px; border-radius:50%; }
.lmsb-art-main { width:70%; max-width:342px; min-height:315px; display:flex; flex-direction:column; justify-content:space-between; padding:28px; background:#27352d; color:#f9f4e8; z-index:1; box-shadow:22px 22px 0 rgba(89,75,63,.12); transform:rotate(-7deg); }
.lmsb-art-main span, .lmsb-art-main i { font-size:10px; font-style:normal; font-weight:800; letter-spacing:.13em; }
.lmsb-art-main strong { font-size:clamp(29px,3vw,42px); line-height:1.08; letter-spacing:-.055em; font-weight:800; }
.lmsb-stamp { position:absolute; top:32px; right:20px; font-size:11px; letter-spacing:.1em; z-index:2; color:#343c34; font-weight:800; border:1px solid #484e42; border-radius:100%; width:110px; height:110px; text-align:center; display:flex; justify-content:center; align-items:center; transform:rotate(14deg); }
.lmsb-art-side { position:absolute; left:21px; bottom:31px; z-index:3; transform:rotate(8deg); background:#f8f3e8; color:#3a332d; padding:17px 19px; font-weight:700; font-size:16px; line-height:1.2; box-shadow:4px 9px 23px rgba(0,0,0,.07); }
.lmsb-art-side b { color:var(--lsb-orange); }
.lmsb-feature { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px 14px 28px 0; border-bottom:1px solid var(--lsb-line); }
.lmsb-feature strong { font-size:15px; }
.lmsb-feature span { font-size:12px; color:var(--lsb-muted); }
.lmsb-articles { padding-top:65px; }
.lmsb-section-top { display:flex; justify-content:space-between; align-items:end; gap:50px; margin-bottom:30px; }
.lmsb-section-top h2 { font-size:clamp(30px,3vw,43px) !important; letter-spacing:-.04em; line-height:1.2; color:var(--lsb-ink); margin:0 !important; }
.lmsb-section-top h2 span { color:var(--lsb-orange); }
.lmsb-section-top .lmsb-kicker { margin-bottom:9px !important; }
.lmsb-section-top > p { font-size:13px; line-height:1.7; max-width:310px; color:var(--lsb-muted); margin:0 !important; }
.lmsb-filters { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.lmsb-filters a { display:inline-flex; padding:9px 14px; font-size:12px; font-weight:700; border:1px solid #e6e3de; border-radius:50px; transition:all .15s; }
.lmsb-filters a:hover, .lmsb-filters a.is-active { background:#252b27; color:#fff; border-color:#252b27; }
.lmsb-search { margin-bottom:30px; max-width:480px; }
.lmsb-search label { display:block; font-size:12px; font-weight:700; margin-bottom:6px; }
.lmsb-search>div { display:flex; min-width:0; }
.lmsb-search input { min-width:0; flex:1; padding:10px 12px; border:1px solid #d8d8d3; border-radius:6px 0 0 6px; font-size:13px; background:#fff; color:#222; }
.lmsb-search button { background:#f2eee8; padding:10px 14px; border:1px solid #d8d8d3; border-left:0; border-radius:0 6px 6px 0; color:#222; font-size:12px; font-weight:800; cursor:pointer; }
.lmsb-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.lmsb-card { border:1px solid var(--lsb-line); border-radius:12px; overflow:hidden; background:#fff; transition:transform .2s ease, box-shadow .2s ease; }
.lmsb-card:hover { transform:translateY(-4px); box-shadow:0 14px 33px rgba(42,31,22,.07); }
.lmsb-card-link { display:flex; height:100%; flex-direction:column; }
.lmsb-card-visual { height:210px; padding:19px 22px; position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; }
.lmsb-v1 { background:linear-gradient(125deg,#d1dac7,#b1c2b6); color:#213c2c; }
.lmsb-v2 { background:linear-gradient(140deg,#f1d0bf,#e0b59f); color:#653f35; }
.lmsb-v3 { background:linear-gradient(140deg,#ccd4e5,#9caebd); color:#253c55; }
.lmsb-visual-mark { font-size:10px; font-weight:800; letter-spacing:.13em; z-index:1; }
.lmsb-visual-number { position:absolute; right:10px; top:16px; font-size:145px; font-weight:800; line-height:1; letter-spacing:-.12em; opacity:.13; }
.lmsb-visual-word { font-size:32px; max-width:220px; line-height:1.02; letter-spacing:-.055em; font-weight:800; z-index:1; }
.lmsb-card-body { padding:24px 23px 22px; display:flex; flex:1; flex-direction:column; }
.lmsb-card-meta { display:flex; justify-content:space-between; gap:8px; font-size:10px; letter-spacing:.04em; color:var(--lsb-muted); margin-bottom:15px; }
.lmsb-card-meta span { color:var(--lsb-orange); font-weight:800; text-transform:uppercase; }
.lmsb-card h3 { color:var(--lsb-ink); font-size:19px !important; font-weight:800; letter-spacing:-.025em; line-height:1.3; margin:0 0 12px !important; }
.lmsb-card p { color:var(--lsb-muted); font-size:13px; line-height:1.65; margin:0 0 22px; }
.lmsb-card-read { display:flex; justify-content:space-between; border-top:1px solid var(--lsb-line); padding-top:16px; font-weight:800; font-size:12px; margin-top:auto; }
.lmsb-card-read span { color:var(--lsb-orange); font-size:17px; }
.lmsb-pagination { display:flex; align-items:center; justify-content:center; gap:24px; margin:38px 0 0; font-size:13px; font-weight:700; }
.lmsb-pagination a { text-decoration:underline; text-underline-offset:3px; }
.lmsb-empty { padding:44px; border:1px dashed #ddd5cb; border-radius:12px; text-align:center; }
.lmsb-empty p { font-size:14px; color:var(--lsb-muted); }
.lmsb-empty a { font-weight:800; text-decoration:underline; }
.lmsb-cta { margin-top:77px; background:#26352d; color:#fff; padding:43px 48px; border-radius:14px; display:flex; gap:35px; align-items:center; justify-content:space-between; }
.lmsb-cta .lmsb-kicker { color:#daba9c; margin-bottom:10px !important; }
.lmsb-cta h2 { color:#fff !important; font-size:clamp(25px,2.6vw,36px) !important; letter-spacing:-.03em; margin:0 0 12px !important; }
.lmsb-cta p:not(.lmsb-kicker) { color:#d1dad0; font-size:13px; line-height:1.6; max-width:650px; margin:0; }
.lmsb-btn-light { background:#f9f5ec; color:#26352d !important; flex-shrink:0; }
.lmsb-btn-light:hover { background:#fff; }
.lmsb-bottom-note { margin-top:24px; font-size:11px; color:#898781; text-align:center; }
.lmsb-post-content { font-size:16px; line-height:1.8; }
.lmsb-post-content > h2 { margin:2.1em 0 .6em; font-size:1.65em; letter-spacing:-.03em; }
.lmsb-post-content > h3 { margin:1.5em 0 .5em; font-size:1.2em; }
.lmsb-post-content > p, .lmsb-post-content > ul, .lmsb-post-content > ol { margin:0 0 1.2em; }
.lmsb-post-content table { border-collapse:collapse; width:100%; margin:1.5em 0; }
.lmsb-post-content th,.lmsb-post-content td { border:1px solid #e4dfd7; padding:12px; text-align:left; }
.lmsb-post-content th { background:#f7f4ef; }
.lmsb-post-content .lmsb-note { border-left:4px solid #cd6a44; padding:12px 20px; margin:24px 0; background:#faf4ef; }
.lmsb-post-cta { margin:48px 0 8px; border-radius:12px; background:#f5f2ec; padding:28px; }
.lmsb-post-cta strong { font-size:1.23em; }
.lmsb-post-cta p { margin:10px 0 18px; font-size:14px; }
.lmsb-post-cta a { display:inline-block; padding:10px 15px; margin:0 7px 7px 0; border-radius:6px; background:#25342b; color:white; text-decoration:none; font-size:13px; font-weight:800; }
.lmsb-post-cta a+a { background:transparent; color:#25342b; border:1px solid #25342b; }
@media(max-width:940px) { .lmsb-hero { grid-template-columns:1fr; }.lmsb-hero-copy { padding:48px 40px; }.lmsb-hero-art { min-height:350px; }.lmsb-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.lmsb-feature { flex-direction:column; align-items:flex-start; gap:6px; }.lmsb-cta { flex-direction:column; align-items:flex-start; } }
@media(max-width:610px) { .lmsb-shell { padding:16px 16px 45px; }.lmsb-hero { border-radius:12px; }.lmsb-hero-copy { padding:39px 23px 43px; }.lmsb-hero h1 { font-size:43px !important; }.lmsb-hero-art { min-height:300px; }.lmsb-stamp { right:10px; top:16px; width:85px; height:85px; font-size:9px; }.lmsb-art-main { min-height:240px; width:62%; padding:20px; }.lmsb-art-side { font-size:12px; }.lmsb-articles { padding-top:45px; }.lmsb-section-top { display:block; }.lmsb-section-top>p { margin-top:13px !important; }.lmsb-grid { grid-template-columns:1fr; }.lmsb-card-visual { height:200px; }.lmsb-search>div { flex-wrap:nowrap; }.lmsb-cta { margin-top:50px; padding:30px 24px; }.lmsb-breadcrumbs { margin-bottom:17px; } }
