@font-face {
  font-family: 'Cormorant Garamond';
  src: url('/assets/fonts/cormorant-garamond-latin.woff2') format('woff2');
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Garamond';
  src: url('/assets/fonts/cormorant-garamond-italic-latin.woff2') format('woff2');
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Source Sans 3';
  src: url('/assets/fonts/source-sans-3-latin.woff2') format('woff2');
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}

:root {
  --mtp-night: #090612;
  --mtp-raised: #110b1d;
  --mtp-raised-2: #171023;
  --mtp-parchment: #e9d9b8;
  --mtp-paper: #f4e9cf;
  --mtp-brass: #c49a49;
  --mtp-brass-bright: #e0bd72;
  --mtp-copper: #a84f2a;
  --mtp-emerald: #72c95b;
  --mtp-error: #d97872;
  --mtp-ink: #211710;
  --mtp-muted: #c9b990;
  --mtp-line: #49381f;
  --mtp-width: 1400px;
}

html { background: var(--mtp-night); }

body.site-20 {
  margin: 0;
  background: var(--mtp-night) !important;
  color: var(--mtp-paper);
  font-family: var(--font-body);
  line-height: 1.58;
  overflow-x: hidden;
}

body.site-20 a { color: var(--mtp-brass-bright); }
body.site-20 a:hover { color: var(--mtp-paper); }
body.site-20 h1,
body.site-20 h2,
body.site-20 h3,
body.site-20 h4 {
  color: var(--mtp-paper);
  font-family: var(--font-heading);
  font-weight: 500;
  letter-spacing: 0;
}

body.site-20 .main-content { padding: 0; }
body.site-20 .container { width: min(calc(100% - 48px), var(--mtp-width)); max-width: var(--mtp-width); }

body.site-20 .site-header {
  position: absolute;
  inset: 0 0 auto;
  z-index: 50;
  padding: 20px 0;
  background: rgba(9, 6, 18, .76) !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: blur(12px);
}

body.site-20 .site-header .container { display: flex; align-items: center; gap: 32px; }
.mtp-wordmark { display: inline-flex; align-items: center; gap: 10px; color: var(--mtp-paper) !important; text-decoration: none; }
.mtp-wordmark .logo-img,
.mtp-wordmark > img { width: 48px; height: 48px; object-fit: contain; filter: none !important; }
.mtp-wordmark-copy { display: grid; line-height: .92; font-size: 17px; }
.mtp-wordmark-copy strong { color: var(--mtp-paper); font-weight: 700; }
.mtp-wordmark-copy span { color: var(--mtp-brass-bright); font-weight: 700; }

body.site-20 .main-nav { margin-left: auto; }
body.site-20 .main-nav ul { display: flex; align-items: center; gap: clamp(18px, 2.5vw, 40px); }
body.site-20 .main-nav a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 0;
  border-radius: 0;
  color: var(--mtp-paper);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}
body.site-20 .main-nav a:hover,
body.site-20 .main-nav a:focus-visible { color: var(--mtp-brass-bright); border-bottom-color: var(--mtp-brass); }
body.site-20 .lang-switcher { display: none; }
body.site-20 .nav-toggle { color: var(--mtp-paper); background: transparent; border: 1px solid var(--mtp-line); }

.mtp-home { width: 100%; }
.mtp-hero {
  position: relative;
  display: block !important;
  min-height: 795px;
  padding: 0 !important;
  overflow: hidden;
  background-color: var(--mtp-night);
  background-image: url('/assets/images/brand/midnight-practice-room-hero.png');
  background-size: cover;
  background-position: center top;
}
.mtp-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(9, 6, 18, .34);
  pointer-events: none;
}
.mtp-hero-inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(620px, 720px) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
  width: min(calc(100% - 64px), var(--mtp-width));
  min-height: 620px;
  height: 620px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 116px 0 36px;
}
.mtp-hero-copy { box-sizing: border-box; display: block !important; align-self: center; padding: 0 0 0 80px !important; }
.mtp-eyebrow { margin: 0 0 14px; color: var(--mtp-brass-bright); font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.mtp-hero h1 { max-width: 640px; margin: 0; font-size: clamp(56px, 4.6vw, 70px); line-height: .86; text-wrap: balance; }
.mtp-hero-intro { max-width: 480px; margin: 30px 0 0; color: var(--mtp-parchment); font-family: var(--font-heading); font-size: 19px; line-height: 1.5; }
.mtp-actions { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; margin-top: 32px; }
.mtp-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  color: var(--mtp-paper) !important;
  background: var(--mtp-copper);
  border: 1px solid #c66e42;
  border-radius: 1px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: none;
  text-transform: uppercase;
}
.mtp-button:hover { background: #bf5d32; }
.mtp-text-link { min-height: 44px; display: inline-flex; align-items: center; color: var(--mtp-brass-bright); text-decoration: none; }

.mtp-exercise { align-self: center; max-width: 640px; color: var(--mtp-paper); }
.mtp-exercise-heading { display: flex; align-items: center; gap: 16px; margin-bottom: 8px; color: var(--mtp-brass); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
.mtp-exercise-heading::before,
.mtp-exercise-heading::after { content: ''; height: 1px; flex: 0 0 44px; background: var(--mtp-line); }
.mtp-exercise h2 { margin: 0 0 12px 76px; font-size: clamp(38px, 3.6vw, 56px); line-height: 1; }
.mtp-notation { width: 100%; max-height: 160px; object-fit: contain; object-position: left center; }
.mtp-play-row { display: flex; align-items: center; gap: 18px; margin: 5px 0 22px 78px; }
body.site-20 .mtp-play {
  width: 76px; height: 76px; flex: 0 0 76px; display: grid; place-items: center;
  padding: 0; border: 2px solid var(--mtp-brass-bright) !important; border-radius: 50% !important;
  background: rgba(17,11,29,.74) !important; box-shadow: none !important; color: var(--mtp-paper) !important; cursor: pointer; font-size: 0;
}
body.site-20 .mtp-play img { width: 29px; height: 29px; filter: invert(90%) sepia(18%) saturate(511%) hue-rotate(352deg) brightness(104%); }
.mtp-play-copy strong { display: block; font-family: var(--font-heading); font-size: 23px; font-weight: 500; }
.mtp-play-copy span { color: var(--mtp-muted); }
.mtp-question { margin: 0 0 8px 78px; font-family: var(--font-heading); font-size: 22px; }
.mtp-choices { display: grid; grid-template-columns: repeat(4, 1fr); margin-left: 48px; border-top: 1px solid var(--mtp-line); border-bottom: 1px solid var(--mtp-line); }
.mtp-choice { min-height: 54px; border: 0; border-left: 1px solid transparent; border-right: 1px solid transparent; background: transparent; color: var(--mtp-paper); font-family: var(--font-heading); font-size: 24px; cursor: pointer; }
.mtp-choice:hover,
.mtp-choice:focus-visible { color: var(--mtp-brass-bright); background: rgba(196,154,73,.08); }
.mtp-choice[aria-pressed='true'] { color: var(--mtp-emerald); border-color: var(--mtp-emerald); background: rgba(114,201,91,.06); }
.mtp-feedback { min-height: 46px; display: flex; align-items: center; gap: 10px; margin: 8px 0 0 78px; color: var(--mtp-muted); }
.mtp-feedback.is-correct { color: var(--mtp-emerald); }
.mtp-feedback.is-wrong { color: var(--mtp-error); }
.mtp-next-exercise { margin-left: 78px; border: 0; background: transparent; color: var(--mtp-muted); cursor: pointer; }

.mtp-path { position: relative; z-index: 2; width: min(calc(100% - 64px), 1180px); margin: 0 auto; padding: 18px 0 34px; border-top: 1px solid var(--mtp-line); }
.mtp-path-title { margin: 0 0 20px; color: var(--mtp-brass-bright); font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.mtp-path-grid { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 24px; }
.mtp-path-step { display: grid; grid-template-columns: 46px 1fr; gap: 16px; align-items: start; color: var(--mtp-paper); text-decoration: none; }
.mtp-path-index { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--mtp-brass); color: var(--mtp-brass-bright); font-family: var(--font-heading); font-size: 23px; }
.mtp-path-step h3 { margin: 0; font-size: 30px; line-height: 1; }
.mtp-path-step p { margin: 6px 0 0; color: var(--mtp-muted); font-size: 14px; }
.mtp-path-arrow { color: var(--mtp-brass); font-size: 34px; font-weight: 300; }

.mtp-paper-band { background-color: var(--mtp-parchment); color: var(--mtp-ink); border-top: 1px solid #aa8d5a; }
.mtp-paper-inner { display: grid; grid-template-columns: .75fr 1.45fr .75fr; gap: 38px; align-items: center; width: min(calc(100% - 64px), 1320px); min-height: 300px; margin: 0 auto; padding: 38px 0; }
.mtp-paper-band h2,
.mtp-paper-band h3 { color: var(--mtp-ink); }
.mtp-paper-band h2 { margin: 4px 0 8px; font-size: 32px; line-height: 1; }
.mtp-paper-band p { margin: 0; }
.mtp-paper-label { color: #403522; font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.mtp-paper-link { display: inline-flex; margin-top: 18px; color: #8a351b !important; text-decoration: none; font-family: var(--font-heading); font-size: 19px; }
.mtp-sheet-preview { position: relative; margin: -48px 0 -50px; transform: rotate(2.5deg); }
.mtp-sheet-preview { height: 330px; overflow: hidden; border: 1px solid #b6a176; background: var(--mtp-paper); box-shadow: 0 16px 30px rgba(57,38,16,.25); }
.mtp-sheet-preview iframe { width: 1600px; height: 1050px; border: 0; transform: scale(.48); transform-origin: 0 0; pointer-events: none; }
.mtp-paper-side { padding-left: 38px; border-left: 1px solid #b6a176; }
.mtp-paper-side h3 { margin: 8px 0; font-size: 27px; line-height: 1; }

.mtp-section { width: min(calc(100% - 48px), 1180px); margin: 0 auto; padding: 76px 0; }
.mtp-section-header { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; align-items: end; margin-bottom: 34px; }
.mtp-section-header h2 { margin: 0; font-size: clamp(42px, 5vw, 64px); line-height: .95; }
.mtp-section-header p { margin: 0; color: var(--mtp-muted); }
.mtp-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1px; background: var(--mtp-line); border: 1px solid var(--mtp-line); }
.mtp-card { min-height: 220px; display: flex; flex-direction: column; padding: 28px; background: var(--mtp-raised); color: var(--mtp-paper) !important; text-decoration: none; }
.mtp-card:hover { background: var(--mtp-raised-2); }
.mtp-card small { color: var(--mtp-brass); letter-spacing: .14em; text-transform: uppercase; }
.mtp-card h3 { margin: 14px 0 8px; font-size: 30px; line-height: 1; }
.mtp-card p { margin: 0; color: var(--mtp-muted); }
.mtp-card span { margin-top: auto; padding-top: 28px; color: var(--mtp-brass-bright); }

.mtp-legacy { border-top: 1px solid var(--mtp-line); background: #07040d; }
.mtp-legacy .mtp-section { padding-top: 58px; padding-bottom: 58px; }
.mtp-legacy-title { display: flex; justify-content: space-between; gap: 24px; align-items: end; margin-bottom: 24px; }
.mtp-legacy-title h2 { margin: 0; font-size: 42px; }
.mtp-legacy-title p { max-width: 560px; margin: 0; color: var(--mtp-muted); }
.mtp-archive-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; background: var(--mtp-line); border: 1px solid var(--mtp-line); }
.mtp-archive-link { min-height: 74px; display: flex; align-items: center; padding: 0 18px; background: var(--mtp-night); color: var(--mtp-paper) !important; text-decoration: none; }
.mtp-archive-link:hover { background: var(--mtp-raised); color: var(--mtp-brass-bright) !important; }

.mtp-list,
.mtp-detail { width: min(calc(100% - 48px), 1180px); margin: 0 auto; padding: 130px 0 80px; }
.mtp-list-hero,
.mtp-detail-hero {
  display: block !important;
  align-items: initial !important;
  min-height: 0 !important;
  padding: 48px 0 34px !important;
  border-top: 1px solid var(--mtp-line);
  border-bottom: 1px solid var(--mtp-line);
}
.mtp-list-hero h1,
.mtp-detail-hero h1 { max-width: 860px; margin: 0; font-size: clamp(48px,7vw,86px); line-height: .9; }
.mtp-list-hero p { max-width: 720px; margin: 20px 0 0; color: var(--mtp-muted); font-size: 18px; }
.mtp-breadcrumb { margin: 0 0 20px; padding: 0; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.mtp-breadcrumb ol { display: flex; gap: 8px; list-style: none; margin: 0; padding: 0; color: var(--mtp-muted); font-size: 13px; }
.mtp-breadcrumb li,
.mtp-breadcrumb a {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.mtp-breadcrumb li + li::before { content: '/'; margin-right: 8px; color: var(--mtp-line); }
.mtp-breadcrumb a { color: var(--mtp-muted); text-decoration: none; }
.mtp-detail .mt20-breadcrumb,
.mtp-detail .mt20-breadcrumb ol,
.mtp-detail .mt20-breadcrumb li,
.mtp-detail .mt20-breadcrumb a {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--mtp-muted) !important;
}
.mtp-detail .mt20-breadcrumb { margin-bottom: 22px !important; }
.mtp-detail .mt20-breadcrumb ol { display: flex !important; flex-wrap: wrap; gap: 8px !important; }
.mtp-detail .mt20-breadcrumb li + li::before { content: '/'; margin-right: 8px; color: var(--mtp-line); }
.mtp-list-content { display: grid; grid-template-columns: minmax(0, 1fr); gap: 36px; padding-top: 42px; }
.mtp-list .mt20-section,
.mtp-list .mt20-copy-band,
.mtp-detail .mt20-copy-band,
.mtp-detail .mt20-stage,
.mtp-detail .mt20-set-switcher { margin: 0 0 28px; padding: 28px; background: var(--mtp-raised) !important; border: 1px solid var(--mtp-line) !important; border-radius: 2px !important; box-shadow: none !important; color: var(--mtp-muted); }
.mtp-detail .mt20-copy-band,
.mtp-detail .mt20-copy-band p,
.mtp-detail .mt20-set-switcher,
.mtp-detail .set-switcher-label { color: var(--mtp-muted) !important; }
.mtp-list .mt20-card-grid,
.mtp-list .mt20-set-grid,
.mtp-list .mt20-seo-grid,
.mtp-detail .mt20-seo-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin: 0; background: var(--mtp-line); }
.mtp-list .subcategory-card,
.mtp-list .worksheet-card,
.mtp-list .seo-card,
.mtp-detail .seo-block { min-height: 170px; padding: 22px; background: var(--mtp-raised); border: 0 !important; border-radius: 0 !important; box-shadow: none !important; color: var(--mtp-muted); text-decoration: none; }
.mtp-list .subcategory-card h3,
.mtp-list .worksheet-card h3 { color: var(--mtp-paper); }
.mtp-list .difficulty-icon,
.mtp-list .category-icon { display: none; }

.mtp-special-page { display: grid; gap: 1px; background: var(--mtp-line); border: 1px solid var(--mtp-line); }
.mtp-special-block { padding: clamp(28px,5vw,54px); background: var(--mtp-raised); }
.mtp-special-block h2 { margin: 0 0 16px; font-size: 40px; }
.mtp-special-block p,
.mtp-special-block li { color: var(--mtp-muted); }
.mtp-objectives { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--mtp-line); }
.mtp-objectives > * { padding: 24px; background: var(--mtp-night); }
.mtp-check { display: grid; gap: 14px; max-width: 720px; }
.mtp-check label { display: flex; gap: 12px; align-items: center; min-height: 46px; padding: 0 16px; border: 1px solid var(--mtp-line); cursor: pointer; }
.mtp-check button,
.mtp-pack-builder button {
  width: fit-content;
  min-height: 46px;
  padding: 0 20px;
  border: 1px solid #c66e42 !important;
  border-radius: 1px !important;
  background: var(--mtp-copper) !important;
  box-shadow: none !important;
  color: var(--mtp-paper) !important;
  cursor: pointer;
}
.mtp-inline-result { min-height: 30px; color: var(--mtp-emerald); }
.mtp-pack-builder { display: grid; gap: 14px; }
.mtp-pack-builder label { display: flex; gap: 10px; align-items: center; }
.mtp-pack-result { padding: 20px; border: 1px solid var(--mtp-line); color: var(--mtp-muted); }

.mtp-detail .mt20-page-header { padding: 0 0 28px !important; margin: 0 0 30px !important; background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--mtp-line) !important; border-radius: 0 !important; box-shadow: none !important; }
.mtp-detail .mt20-page-header h1 { margin: 0 !important; color: var(--mtp-paper) !important; font-size: clamp(44px,6vw,72px) !important; line-height: .95 !important; }
.mtp-detail .mt20-stage { background: var(--mtp-paper) !important; color: var(--mtp-ink); }
.mtp-detail .mt20-stage h2,
.mtp-detail .mt20-stage h3 { color: var(--mtp-ink); }
.mtp-detail .set-btn { border-color: var(--mtp-line) !important; background: var(--mtp-night) !important; color: var(--mtp-paper) !important; }
.mtp-detail .set-btn.active { border-color: var(--mtp-brass) !important; color: var(--mtp-brass-bright) !important; }
.mtp-open-source { border-left: 3px solid var(--mtp-brass) !important; }

body.site-20 .site-footer { background: #06030a; color: var(--mtp-muted); border-top: 1px solid var(--mtp-line); }
.mtp-footer-grid { display: grid; grid-template-columns: 1.3fr .7fr 1fr; gap: 60px; padding-top: 58px; padding-bottom: 44px; }
.mtp-footer-grid nav { display: grid; align-content: start; gap: 8px; }
.mtp-footer-grid h2 { margin: 0 0 8px; color: var(--mtp-brass); font-family: var(--font-body); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; }
.mtp-footer-grid a { color: var(--mtp-muted); text-decoration: none; }
.mtp-footer-bottom { padding: 18px 0 28px; border-top: 1px solid var(--mtp-line); color: #766b56; font-size: 13px; }

@media (max-width: 1040px) {
  body.site-20 .site-header { position: relative; background: var(--mtp-night) !important; }
  .mtp-hero-inner { grid-template-columns: 1fr; height: auto; padding-top: 54px; }
  .mtp-hero-copy { padding-left: 0 !important; max-width: 650px; }
  .mtp-exercise { max-width: none; padding: 32px; background: rgba(9,6,18,.78); border: 1px solid var(--mtp-line); }
  .mtp-path-grid { grid-template-columns: 1fr; }
  .mtp-path-arrow { display: none; }
  .mtp-paper-inner { grid-template-columns: 1fr 1fr; }
  .mtp-sheet-preview { grid-column: 1 / -1; grid-row: 2; max-width: 720px; margin: 0 auto -70px; }
  .mtp-paper-side { padding-left: 0; border-left: 0; }
  .mtp-card-grid { grid-template-columns: repeat(2,1fr); }
  .mtp-archive-grid { grid-template-columns: repeat(3,1fr); }
}

@media (max-width: 760px) {
  body.site-20 .container { width: min(calc(100% - 28px), var(--mtp-width)); }
  body.site-20 .site-header { padding: 12px 0; }
  body.site-20 .site-header .container { gap: 14px; }
  .mtp-wordmark-copy { font-size: 15px; }
  .mtp-wordmark .logo-img,
  .mtp-wordmark > img { width: 42px; height: 42px; }
  body.site-20 .nav-toggle { margin-left: auto; display: inline-flex; }
  body.site-20 .main-nav { position: fixed; inset: 68px 0 auto; display: none; margin: 0; padding: 24px; background: var(--mtp-night); border-bottom: 1px solid var(--mtp-line); }
  body.site-20 .main-nav.open { display: block; }
  body.site-20 .main-nav ul { display: grid; gap: 0; }
  body.site-20 .main-nav a { min-height: 52px; }
  .mtp-hero { min-height: 0; background-position: 29% top; }
  .mtp-hero-inner { width: min(calc(100% - 28px), var(--mtp-width)); gap: 28px; min-height: 0; padding: 46px 0 28px; }
  .mtp-hero-copy { padding: 210px 0 0; }
  .mtp-hero h1 { font-size: clamp(47px,14vw,66px); line-height: .87; }
  .mtp-hero-intro { margin-top: 22px; font-size: 17px; }
  .mtp-actions { align-items: stretch; }
  .mtp-button,
  .mtp-text-link { width: 100%; }
  .mtp-exercise { padding: 22px 16px; }
  .mtp-exercise-heading::before,
  .mtp-exercise-heading::after { flex-basis: 20px; }
  .mtp-exercise h2,
  .mtp-play-row,
  .mtp-question,
  .mtp-feedback,
  .mtp-next-exercise { margin-left: 0; }
  .mtp-exercise h2 { font-size: 42px; }
  .mtp-notation { max-height: 110px; }
  .mtp-play-row { margin-top: 8px; }
  .mtp-play { width: 64px; height: 64px; flex-basis: 64px; }
  .mtp-choices { grid-template-columns: repeat(2,1fr); margin-left: 0; }
  .mtp-choice { min-height: 54px; border-bottom: 1px solid var(--mtp-line); }
  .mtp-path { width: min(calc(100% - 28px), 1180px); }
  .mtp-path-step h3 { font-size: 27px; }
  .mtp-paper-inner { width: min(calc(100% - 28px),1320px); grid-template-columns: 1fr; padding: 34px 0 70px; }
  .mtp-sheet-preview { grid-column: auto; grid-row: auto; margin: 0; transform: rotate(1deg); }
  .mtp-sheet-preview { height: 220px; }
  .mtp-sheet-preview iframe { transform: scale(.29); }
  .mtp-section { width: min(calc(100% - 28px),1180px); padding: 54px 0; }
  .mtp-section-header { grid-template-columns: 1fr; }
  .mtp-card-grid,
  .mtp-archive-grid,
  .mtp-list .mt20-card-grid,
  .mtp-list .mt20-set-grid,
  .mtp-list .mt20-seo-grid,
  .mtp-detail .mt20-seo-grid,
  .mtp-objectives { grid-template-columns: 1fr; }
  .mtp-card { min-height: 180px; }
  .mtp-legacy-title { display: block; }
  .mtp-list,
  .mtp-detail { width: min(calc(100% - 28px),1180px); padding: 34px 0 60px; }
  .mtp-list-hero h1,
  .mtp-detail-hero h1 { font-size: 48px; }
  .mtp-footer-grid { grid-template-columns: 1fr; gap: 32px; }
}

@media print {
  body.site-20 { background: #fff !important; color: #000 !important; }
  body.site-20 .mtp-hero,
  body.site-20 .mtp-path,
  body.site-20 .mtp-paper-band,
  body.site-20 .mtp-section,
  body.site-20 .mtp-legacy,
  body.site-20 .site-header,
  body.site-20 .site-footer { display: none !important; }
  .mtp-detail { width: 100%; padding: 0; }
  .mtp-detail .mt20-stage { border: 0 !important; padding: 0 !important; background: #fff !important; }
}
