:root {
  --sm-black:#000000;
  --sm-white:#ffffff;
  --sm-charcoal:#555A60;
  --sm-blue:#1681B4;
  --sm-blue-dark:#0f638a;
  --sm-line:#dfe3e6;
  --sm-soft:#f4f6f7;
}

.smri-wrap { font-family: Montserrat, Arial, sans-serif; color: var(--sm-black); background: var(--sm-white); }
.smri-wrap * { box-sizing: border-box; }
.smri-shell { width:min(1180px, calc(100% - 40px)); margin:0 auto; }
.smri-hero { padding:88px 0 72px; background:linear-gradient(135deg,#fff 0%,#f4f7f8 62%,#e8f3f8 100%); border-bottom:1px solid var(--sm-line); }
.smri-hero-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(290px,.8fr); gap:56px; align-items:end; }
.smri-kicker { margin:0 0 16px; font-size:12px; line-height:1.3; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--sm-blue); }
.smri-hero h1 { margin:0; max-width:820px; font-size:clamp(48px,7vw,92px); line-height:.92; letter-spacing:-.055em; font-weight:800; }
.smri-hero h1 span { color:var(--sm-blue); }
.smri-lead { max-width:800px; margin:28px 0 0; font-size:clamp(18px,2vw,23px); line-height:1.6; color:var(--sm-charcoal); }
.smri-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.smri-btn { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 22px; text-decoration:none!important; font-weight:800; font-size:14px; letter-spacing:.02em; border:2px solid var(--sm-black); transition:.2s ease; }
.smri-btn-primary { background:var(--sm-black); color:var(--sm-white)!important; }
.smri-btn-primary:hover { background:var(--sm-blue); border-color:var(--sm-blue); }
.smri-btn-ghost { color:var(--sm-black)!important; background:transparent; }
.smri-btn-ghost:hover { color:var(--sm-blue)!important; border-color:var(--sm-blue); }
.smri-hero-card { background:var(--sm-black); color:var(--sm-white); padding:30px; border-top:7px solid var(--sm-blue); box-shadow:0 22px 60px rgba(0,0,0,.13); }
.smri-hero-card .smri-mini { margin:0 0 12px; color:#9bd2e8; font-size:11px; font-weight:800; letter-spacing:.18em; }
.smri-hero-card h2 { margin:0 0 14px; font-size:30px; line-height:1.08; letter-spacing:-.03em; }
.smri-hero-card p:last-child { margin:0; color:#d9dde0; line-height:1.7; }

.smri-section { padding:80px 0; }
.smri-section-head { max-width:850px; margin-bottom:32px; }
.smri-section-head h2, .smri-feature-copy h2, .smri-cta h2 { margin:0; font-size:clamp(34px,5vw,58px); line-height:1; letter-spacing:-.045em; font-weight:800; }
.smri-section-head > p:last-child { color:var(--sm-charcoal); font-size:18px; line-height:1.65; }
.smri-topic-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:16px; }
.smri-topic { grid-column:span 4; min-height:265px; display:flex; flex-direction:column; padding:28px; border:1px solid var(--sm-line); background:#fff; color:var(--sm-black)!important; text-decoration:none!important; transition:.2s ease; position:relative; overflow:hidden; }
.smri-topic:nth-child(4), .smri-topic:nth-child(5) { grid-column:span 6; }
.smri-topic:before { content:""; position:absolute; inset:0 auto 0 0; width:5px; background:var(--sm-blue); transform:scaleY(0); transform-origin:bottom; transition:.2s ease; }
.smri-topic:hover { transform:translateY(-3px); box-shadow:0 18px 40px rgba(0,0,0,.09); }
.smri-topic:hover:before { transform:scaleY(1); }
.smri-topic-eyebrow { font-size:11px; font-weight:800; letter-spacing:.15em; color:var(--sm-blue); }
.smri-topic h3 { margin:20px 0 10px; font-size:28px; letter-spacing:-.035em; }
.smri-topic p { margin:0; color:var(--sm-charcoal); line-height:1.65; }
.smri-arrow { margin-top:auto; padding-top:24px; font-weight:800; color:var(--sm-blue); }

.smri-section-dark { background:var(--sm-black); color:var(--sm-white); }
.smri-section-head-light > p:last-child { color:#b7bdc1; }
.smri-post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.smri-post-card { min-height:310px; padding:28px; background:#111518; border:1px solid #252a2d; display:flex; flex-direction:column; }
.smri-post-meta { display:flex; gap:12px; flex-wrap:wrap; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:#9aa2a7; }
.smri-post-meta span { color:#77bddd; }
.smri-post-card h3 { margin:18px 0 12px; font-size:27px; line-height:1.15; letter-spacing:-.035em; }
.smri-post-card h3 a { color:#fff!important; text-decoration:none!important; }
.smri-post-card p { margin:0; color:#c0c6ca; line-height:1.65; }
.smri-read { margin-top:auto; padding-top:25px; color:#77c4e7!important; text-decoration:none!important; font-weight:800; }
.smri-empty { padding:30px; background:#111518; border:1px solid #252a2d; }

.smri-feature-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:start; }
.smri-feature-copy p:not(.smri-kicker) { font-size:18px; color:var(--sm-charcoal); line-height:1.7; }
.smri-text-link { display:inline-block; margin-top:8px; color:var(--sm-blue)!important; font-weight:800; text-decoration:none!important; }
.smri-feature-panel { display:grid; grid-template-columns:56px 1fr; border-top:1px solid var(--sm-line); }
.smri-feature-panel span, .smri-feature-panel p { margin:0; padding:21px 0; border-bottom:1px solid var(--sm-line); }
.smri-feature-panel span { font-weight:800; color:var(--sm-blue); }
.smri-feature-panel p { line-height:1.5; }

.smri-cta { padding:68px 0; background:var(--sm-blue); color:#fff; }
.smri-cta-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:40px; align-items:center; }
.smri-cta .smri-kicker { color:#d8f2ff; }
.smri-cta h2 { max-width:800px; }
.smri-cta p:not(.smri-kicker) { color:#edfaff; font-size:17px; line-height:1.65; max-width:780px; }
.smri-actions-right { justify-content:flex-end; margin-top:0; }
.smri-cta .smri-btn-primary { border-color:#fff; background:#000; }
.smri-btn-ghost-light { color:#fff!important; border-color:#fff; }
.smri-btn-ghost-light:hover { color:#000!important; background:#fff; }

@media (max-width:900px) {
  .smri-hero-grid,.smri-feature-grid,.smri-cta-grid { grid-template-columns:1fr; }
  .smri-topic { grid-column:span 6; }
  .smri-topic:nth-child(5) { grid-column:span 12; }
  .smri-post-grid { grid-template-columns:repeat(2,1fr); }
  .smri-actions-right { justify-content:flex-start; }
}
@media (max-width:620px) {
  .smri-shell { width:min(100% - 28px,1180px); }
  .smri-hero { padding:62px 0 50px; }
  .smri-section { padding:58px 0; }
  .smri-topic,.smri-topic:nth-child(4),.smri-topic:nth-child(5) { grid-column:span 12; }
  .smri-post-grid { grid-template-columns:1fr; }
  .smri-hero h1 { font-size:50px; }
  .smri-section-head h2,.smri-feature-copy h2,.smri-cta h2 { font-size:38px; }
}
