@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;0,900;1,400;1,700&family=IBM+Plex+Sans:wght@300;400;500;600&family=IBM+Plex+Mono:wght@300;400;500&display=swap');

:root {
  --bg:#F6F6F4;--bg-w:#FFFFFF;--bg-soft:#ECECEA;--bg-rule:#E0E0DD;
  --copper:#B87333;--copper-lt:#C98A4B;--copper-dk:#9A5E28;
  --copper-bg:rgba(184,115,51,0.07);--copper-bd:rgba(184,115,51,0.22);
  --text:#111827;--text-2:#4B5563;--text-3:#9CA3AF;
  --graphite:#1F2937;--night:#0A1E3A;--night-lt:#112D55;
  --serif:'Playfair Display',Georgia,serif;
  --sans:'IBM Plex Sans',sans-serif;
  --mono:'IBM Plex Mono',monospace;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-weight:400;overflow-x:hidden}
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--copper);border-radius:1px}

.msm-ticker{background:var(--night);height:30px;display:flex;align-items:center;padding:0 36px;overflow:hidden;gap:0}
.msm-ticker-brand{font-family:var(--mono);font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);white-space:nowrap;flex-shrink:0;padding-right:18px;border-right:1px solid rgba(184,115,51,.3);margin-right:18px}
.msm-ticker-items{display:flex;gap:24px;overflow:hidden;flex:1}
.msm-ti{display:flex;gap:6px;align-items:center;white-space:nowrap;font-family:var(--mono);font-size:10px}
.msm-ti-l{color:rgba(248,249,250,.3)}.msm-ti-v{color:rgba(248,249,250,.72)}.msm-ti-u{color:#4ADE80}.msm-ti-d{color:#F87171}.msm-ti-n{color:var(--copper)}

.msm-nav{background:var(--bg-w);border-bottom:2px solid var(--copper);box-shadow:0 1px 8px rgba(0,0,0,.06);position:sticky;top:0;z-index:200}
.msm-nav-top{display:flex;align-items:center;justify-content:space-between;padding:0 36px;height:54px}
.msm-logo{display:flex;align-items:center;gap:11px;text-decoration:none}
.msm-logo-name{font-family:var(--serif);font-size:16px;font-weight:700;color:var(--copper);letter-spacing:.06em;line-height:1}
.msm-logo-sub{font-family:var(--mono);font-size:7px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3);line-height:1;display:block}
.msm-nav-actions{display:flex;align-items:center;gap:12px}
.msm-sub-btn{background:var(--copper);color:white;border:none;padding:8px 18px;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:background .2s;display:inline-block}
.msm-sub-btn:hover{background:var(--copper-dk);color:white}
.msm-nav-menu{border-top:1px solid var(--bg-soft);padding:0 36px;display:flex;align-items:center;height:38px;overflow-x:auto;gap:0}
.msm-nav-menu::-webkit-scrollbar{display:none}
.msm-nav-item{display:flex;align-items:center;gap:5px;padding:0 14px;height:38px;font-size:10px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--text-2);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:all .2s;flex-shrink:0}
.msm-nav-item:hover,.msm-nav-item.active{color:var(--copper);border-bottom-color:var(--copper)}
.msm-nav-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}

.msm-hero{background:var(--bg-w);border-bottom:1px solid var(--bg-rule);min-height:480px;display:flex;align-items:center;padding:72px 36px;position:relative;overflow:hidden}
.msm-hero-kicker{font-family:var(--mono);font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:18px;display:flex;align-items:center;gap:10px}
.msm-hero-kicker::before{content:'';width:20px;height:1px;background:var(--copper)}
.msm-hero-h1{font-family:var(--serif);font-size:clamp(36px,5vw,64px);font-weight:900;line-height:1.06;color:var(--text);letter-spacing:-.025em;margin-bottom:8px}
.msm-hero-h1 span{color:var(--copper);font-style:italic}
.msm-hero-h2{font-family:var(--serif);font-size:clamp(14px,1.8vw,20px);font-weight:400;font-style:italic;color:var(--text-2);margin-bottom:20px}
.msm-hero-desc{font-size:14px;line-height:1.8;color:var(--text-2);max-width:500px;margin-bottom:30px;font-weight:300;padding-left:14px;border-left:3px solid var(--copper)}
.msm-hero-btns{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.msm-btn-solid{padding:11px 22px;background:var(--copper);color:white;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:none;cursor:pointer;text-decoration:none;transition:background .2s;display:inline-flex;align-items:center;gap:5px}
.msm-btn-solid:hover{background:var(--copper-dk);color:white}
.msm-btn-ol{padding:11px 22px;background:transparent;color:var(--graphite);font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--graphite);cursor:pointer;text-decoration:none;transition:all .2s}
.msm-btn-ol:hover{border-color:var(--copper);color:var(--copper)}
.msm-hero-kpis{display:flex;gap:0;padding-top:22px;border-top:1px solid var(--bg-rule)}
.msm-hk{flex:1;padding-right:20px;margin-right:20px;border-right:1px solid var(--bg-rule)}
.msm-hk:last-child{border-right:none;padding-right:0;margin-right:0}
.msm-hk-v{font-family:var(--serif);font-size:24px;font-weight:700;color:var(--copper);line-height:1;margin-bottom:2px}
.msm-hk-l{font-family:var(--mono);font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}

.msm-section{padding:52px 36px}
.msm-section.bg-w{background:var(--bg-w)}
.msm-section.bg-bg{background:var(--bg)}
.msm-sec-hdr{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px;padding-bottom:14px;border-bottom:2px solid var(--bg-rule)}
.msm-sec-ey{font-family:var(--mono);font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:5px}
.msm-sec-t{font-family:var(--serif);font-size:clamp(20px,2.6vw,34px);font-weight:700;color:var(--text);line-height:1.15}
.msm-sec-t em{font-style:italic;color:var(--copper)}
.msm-sec-lnk{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper);text-decoration:none;border-bottom:1px solid var(--copper-bd);padding-bottom:2px}

.msm-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--bg-rule);border:1px solid var(--bg-rule)}
.msm-post-card{background:var(--bg-w);padding:28px 22px;transition:all .2s;text-decoration:none;display:block;border-top:3px solid var(--copper);border-left:1px solid var(--bg-rule)}
.msm-post-card:hover{background:var(--bg)}
.msm-post-tag{font-family:var(--mono);font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--copper);background:var(--copper-bg);padding:3px 7px;display:inline-block;margin-bottom:12px}
.msm-post-title{font-family:var(--serif);font-size:17px;font-weight:700;color:var(--text);line-height:1.3;margin-bottom:10px;transition:color .2s}
.msm-post-card:hover .msm-post-title{color:var(--copper)}
.msm-post-excerpt{font-size:13px;line-height:1.7;color:var(--text-2);margin-bottom:16px;font-weight:300}
.msm-post-meta{font-family:var(--mono);font-size:9px;color:var(--text-3);display:flex;gap:8px}

.msm-featured{background:var(--bg-w);border:1px solid var(--bg-rule);padding:36px;position:relative;text-decoration:none;display:block;transition:box-shadow .2s}
.msm-featured:hover{box-shadow:0 4px 28px rgba(0,0,0,.08)}
.msm-featured::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--copper)}
.msm-featured-title{font-family:var(--serif);font-size:24px;font-weight:700;line-height:1.25;color:var(--text);margin-bottom:12px;transition:color .2s}
.msm-featured:hover .msm-featured-title{color:var(--copper)}
.msm-featured-excerpt{font-size:14px;line-height:1.75;color:var(--text-2);margin-bottom:18px;font-weight:300}
.msm-featured-meta{font-family:var(--mono);font-size:9px;color:var(--text-3);padding-top:14px;border-top:1px solid var(--bg-rule);display:flex;gap:8px}

.msm-article{max-width:760px;margin:0 auto;padding:80px 36px}
.msm-article-tag{font-family:var(--mono);font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);background:var(--copper-bg);padding:4px 9px;display:inline-block;margin-bottom:18px}
.msm-article-title{font-family:var(--serif);font-size:clamp(28px,4vw,52px);font-weight:700;color:var(--text);line-height:1.1;margin-bottom:16px;letter-spacing:-.02em}
.msm-article-subtitle{font-family:var(--serif);font-size:18px;font-style:italic;color:var(--text-2);margin-bottom:24px;line-height:1.5}
.msm-article-meta{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:10px;color:var(--text-3);padding:16px 0;border-top:1px solid var(--bg-rule);border-bottom:1px solid var(--bg-rule);margin-bottom:36px}
.msm-article-body{font-size:17px;line-height:1.85;color:var(--text);font-weight:300}
.msm-article-body h2{font-family:var(--serif);font-size:26px;font-weight:700;color:var(--text);margin:40px 0 16px}
.msm-article-body h3{font-family:var(--serif);font-size:20px;font-weight:600;color:var(--text);margin:28px 0 12px}
.msm-article-body p{margin-bottom:20px}
.msm-article-body blockquote{border-left:3px solid var(--copper);padding-left:20px;color:var(--text-2);font-style:italic;margin:24px 0;font-family:var(--serif);font-size:19px;line-height:1.6}
.msm-article-body a{color:var(--copper);text-decoration:underline;text-underline-offset:3px}
.msm-article-body img{width:100%;border:1px solid var(--bg-rule);margin:24px 0}

.msm-datalab{background:var(--night);border-top:3px solid var(--copper);padding:52px 36px}
.msm-datalab .msm-sec-t{color:#F6F6F4}
.msm-dl-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(248,249,250,.05);border:1px solid rgba(248,249,250,.05)}
.msm-dl-card{background:var(--night-lt);padding:20px 18px;transition:background .2s}
.msm-dl-card:hover{background:#163360}
.msm-dl-l{font-family:var(--mono);font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:rgba(248,249,250,.28);margin-bottom:10px}
.msm-dl-v{font-family:var(--mono);font-size:24px;color:#F6F6F4;margin-bottom:5px;line-height:1}
.msm-dl-u{color:#4ADE80;font-family:var(--mono);font-size:10px}
.msm-dl-d{color:#F87171;font-family:var(--mono);font-size:10px}
.msm-dl-n{color:var(--copper);font-family:var(--mono);font-size:10px}

.msm-nl{padding:56px 36px;background:var(--bg-w);border-top:1px solid var(--bg-rule)}
.msm-nl-inner{max-width:560px;margin:0 auto;text-align:center}
.msm-nl-ey{font-family:var(--mono);font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);margin-bottom:8px}
.msm-nl-t{font-family:var(--serif);font-size:26px;font-weight:700;color:var(--text);margin-bottom:10px}
.msm-nl-d{font-size:14px;color:var(--text-2);line-height:1.7;font-weight:300;margin-bottom:24px}
.msm-nl-form{display:flex;max-width:440px;margin:0 auto 10px}
.msm-nl-inp{flex:1;padding:12px 16px;background:var(--bg);border:1px solid var(--bg-rule);border-right:none;color:var(--text);font-family:var(--sans);font-size:13px;outline:none}
.msm-nl-inp:focus{border-color:var(--copper)}
.msm-nl-inp::placeholder{color:var(--text-3)}
.msm-nl-btn{padding:12px 22px;background:var(--copper);color:white;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:none;cursor:pointer}
.msm-nl-btn:hover{background:var(--copper-dk)}
.msm-nl-note{font-family:var(--mono);font-size:9px;color:var(--text-3)}

.msm-footer{background:var(--night);border-top:3px solid var(--copper);padding:48px 36px 24px}
.msm-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:32px;border-bottom:1px solid rgba(248,249,250,.07);margin-bottom:20px}
.msm-footer-brand{font-family:var(--serif);font-size:15px;font-weight:700;color:var(--copper);margin-bottom:4px}
.msm-footer-tag{font-family:var(--mono);font-size:7px;color:rgba(248,249,250,.25);letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}
.msm-footer-tl{font-family:var(--serif);font-style:italic;font-size:12px;color:rgba(248,249,250,.38);line-height:1.7}
.msm-footer-ct{font-family:var(--mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:rgba(248,249,250,.22);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(248,249,250,.07)}
.msm-footer-links{list-style:none}
.msm-footer-links li{margin-bottom:7px}
.msm-footer-links a{font-size:12px;color:rgba(248,249,250,.38);text-decoration:none;transition:color .2s;font-weight:300}
.msm-footer-links a:hover{color:var(--copper)}
.msm-footer-bottom{display:flex;justify-content:space-between;align-items:center}
.msm-footer-copy{font-family:var(--mono);font-size:9px;color:rgba(248,249,250,.18)}
.msm-footer-sig{font-family:var(--mono);font-size:9px;color:rgba(248,249,250,.18)}
.msm-footer-sig span{color:var(--copper)}

.rv{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.rv.in{opacity:1;transform:none}

@media(max-width:1100px){
  .msm-nav-top,.msm-nav-menu,.msm-section,.msm-datalab,.msm-nl,.msm-footer{padding-left:20px;padding-right:20px}
  .msm-ticker{padding:0 20px}
  .msm-posts-grid{grid-template-columns:1fr 1fr}
  .msm-dl-grid{grid-template-columns:repeat(2,1fr)}
  .msm-footer-grid{grid-template-columns:1fr 1fr;gap:24px}
}
@media(max-width:768px){
  .msm-posts-grid{grid-template-columns:1fr}
  .msm-footer-grid{grid-template-columns:1fr}
}

.kg-width-wide { margin-left: -8vw; margin-right: -8vw; }
.kg-width-full { margin-left: -36px; margin-right: -36px; }
.kg-image { max-width: 100%; height: auto; }
.kg-image-card { margin: 28px 0; }
.kg-gallery-container { display: flex; flex-direction: column; }
.kg-gallery-row { display: flex; flex-direction: row; justify-content: center; gap: 4px; margin-bottom: 4px; }
.kg-gallery-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
