/* Scoped to /metodik; reuse the public site's design tokens. */
.methodology-page {
  width: min(calc(100% - 48px), 1120px);
  margin-inline: auto;
  padding-block: clamp(48px, 6vw, 88px) clamp(64px, 7vw, 104px);
  overflow-wrap: anywhere;
}
.methodology-page .methodology-hero { margin-bottom: clamp(48px, 5vw, 72px); }
.methodology-page h1 {
  max-width: 22ch;
  margin-bottom: 28px;
  font-size: clamp(2.25rem, 4.6vw, 4rem);
  line-height: 1.12;
  text-wrap: balance;
}
.methodology-page p, .methodology-page dd { font-size: 1.0625rem; line-height: 1.75; color: var(--text-secondary); }
.methodology-page .methodology-intro { max-width: 68ch; margin-bottom: 24px; color: var(--text-primary); font-size: 1.125rem; line-height: 1.8; }
.methodology-page .methodology-principle { max-width: 62ch; margin-bottom: 0; padding-left: 18px; border-left: 2px solid var(--primary-cyan); color: var(--text-primary); }
.methodology-page h2 { margin-bottom: 20px; font-size: clamp(1.6rem, 2.5vw, 2rem); line-height: 1.3; text-wrap: balance; }
.methodology-page .methodology-lead { max-width: 70ch; margin-bottom: 28px; }
.methodology-page .methodology-steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; padding: 0; margin: 0; list-style: none; }
.methodology-page .methodology-step { min-width: 0; padding: 28px; border-radius: var(--radius-medium); }
.methodology-page .methodology-step-marker { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; color: var(--primary-cyan); font-family: var(--font-data); font-size: 0.9375rem; }
.methodology-page .methodology-step-marker svg { width: 26px; height: 26px; }
.methodology-page h3 { margin: 0 0 14px; font-size: 1.25rem; line-height: 1.4; }
.methodology-page .methodology-step p { margin: 0 0 14px; }
.methodology-page .methodology-step p:last-child { margin-bottom: 0; }
.methodology-page .methodology-section { margin-top: clamp(44px, 5vw, 72px); padding-top: clamp(32px, 4vw, 48px); border-top: 1px solid var(--glass-border-subtle); }
.methodology-page .methodology-explainer { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.65fr); gap: 28px 48px; }
.methodology-page .methodology-prose { min-width: 0; max-width: 68ch; }
.methodology-page .methodology-prose p { margin: 0 0 18px; }
.methodology-page .methodology-prose p:last-child { margin-bottom: 0; }
.methodology-page .methodology-situations { margin: 28px 0 0; }
.methodology-page .methodology-situations > div { margin-top: 22px; }
.methodology-page dt { margin-bottom: 6px; font-size: 1.0625rem; font-weight: 650; }
.methodology-page dd { margin: 0; }
.methodology-page .methodology-infrastructure { display: flex; align-items: flex-start; gap: 18px; }
.methodology-page .methodology-small-icon { flex: 0 0 24px; color: var(--primary-cyan); margin-top: 4px; }
.methodology-page .methodology-infrastructure h2 { font-size: 1.25rem; margin-bottom: 14px; }
.methodology-page .methodology-infrastructure p { max-width: 82ch; margin: 0; }
.methodology-page .methodology-closing { margin-top: 40px; }
.methodology-page .methodology-link { display: inline-flex; align-items: center; gap: 12px; min-height: 48px; padding-block: 8px; font-size: 1.0625rem; color: var(--text-primary); text-decoration: underline; text-decoration-color: var(--primary-cyan); text-underline-offset: 6px; }
.methodology-page .methodology-link:hover { color: var(--primary-cyan); }
.methodology-page .methodology-link:focus-visible { outline: 2px solid var(--primary-cyan); outline-offset: 6px; }
.methodology-page .methodology-link svg { width: 22px; height: 22px; }
@media (max-width: 760px) {
  .methodology-page .methodology-steps, .methodology-page .methodology-explainer { grid-template-columns: minmax(0, 1fr); }
  .methodology-page .methodology-explainer { gap: 4px; }
}
@media (max-width: 480px) {
  .methodology-page { width: calc(100% - 32px); }
  .methodology-page h1 { font-size: clamp(2rem, 9.2vw, 2.25rem); }
  .methodology-page .methodology-step { padding: 24px 20px; }
  .methodology-page .methodology-infrastructure { gap: 12px; }
}
