/* Reading, browsing and project evidence share the typography of the catalogue. */
.ed-page {
  --ed-ink: #30305f;
  --ed-copy: #41465d;
  --ed-secondary: #545b70;
  --ed-line: #c4cbd5;
  --ed-tint: #edf1f5;
  --ed-accent: #aa2530;
  min-width: 0;
  padding-bottom: clamp(52px, 6vw, 86px);
  color: var(--ed-ink);
}
.ed-page *, .ed-page *::before, .ed-page *::after { box-sizing: border-box; }
.ed-page .ed-crumbs {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: .35rem .65rem;
  padding: 17px 0; color: var(--ed-secondary); font-size: .92rem; line-height: 1.5;
}
.ed-page .ed-crumbs > span[aria-current] { max-width: 100%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.ed-page .ed-crumbs a { color: var(--ed-ink); }
.ed-page a:focus-visible, .ed-page button:focus-visible,
.ed-page summary:focus-visible, .ed-page input:focus-visible {
  outline: 3px solid #556299; outline-offset: 3px;
}
.ed-page .ed-intro {
  display: block; position: static; z-index: auto;
  padding: clamp(24px, 3.4vw, 52px) 0 clamp(18px, 2vw, 32px);
  background: transparent; border: 0; box-shadow: none;
}
.ed-page .ed-intro h1 {
  margin: 0; max-width: 29ch; color: var(--ed-ink);
  font-size: clamp(2.1rem, 4.6vw, 4.15rem); line-height: 1.08;
  letter-spacing: -.045em; text-wrap: balance; overflow-wrap: break-word;
}
.ed-page.ed-article .ed-intro h1, .ed-page.ed-document .ed-intro h1 {
  font-size: clamp(1.95rem, 3.8vw, 3.3rem); max-width: none;
}
.ed-page .ed-intro p, .ed-page .ed-next p {
  margin: .95rem 0 0; max-width: 63ch; color: var(--ed-copy);
  font-size: clamp(1rem, 1.35vw, 1.125rem); line-height: 1.65;
}
.ed-page :is(.ed-latest,.ed-downloads,.ed-related,.ed-next,.ed-projects) h2,
.ed-page .ed-query-title {
  color: var(--ed-ink); margin: 0 0 1.2rem; font-size: clamp(1.5rem, 2.3vw, 2.05rem);
  line-height: 1.25; letter-spacing: -.025em;
}
.ed-page .ed-search { max-width: 43rem; margin: 1rem 0 clamp(24px, 3vw, 43px); }
.ed-page .ed-search label {
  display: block; margin: 0 0 .5rem; font-size: .95rem; font-weight: 600; color: var(--ed-copy);
}
.ed-page .ed-search > div { display: flex; gap: .5rem; }
.ed-page .ed-search input {
  min-width: 0; flex: 1 1 10rem; border: 1px solid #969fac; border-radius: 3px;
  padding: .72rem .9rem; margin: 0; font: inherit; color: var(--ed-ink); background: #fff;
}
.ed-page .ed-search input::placeholder { color: #62697c; opacity: 1; }
.ed-page .ed-search-btn, .ed-page .ed-btn {
  min-height: 44px; background: var(--ed-ink); color: #fff; border: 1px solid var(--ed-ink);
  border-radius: 3px; padding: .65rem 1.35rem; font: inherit; font-size: .96rem; font-weight: 600;
  cursor: pointer; text-decoration: none;
}
.ed-page .ed-btn, .ed-page .ed-link, .ed-page .ed-side-link, .ed-page .ed-related-link {
  display: inline-flex; align-items: center; justify-content: space-between; gap: .8rem; line-height: 1.45;
}
.ed-page .ed-link { color: var(--ed-ink); font-weight: 600; }
.ed-page .ed-topics, .ed-page .ed-company-links {
  display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: .2rem 0 1.65rem;
}
.ed-page .ed-topics a, .ed-page .ed-side-link {
  display: inline-flex; align-items: center; min-height: 42px; padding: .55rem .85rem;
  border: 1px solid var(--ed-line); border-radius: 3px; text-decoration: none; color: var(--ed-ink);
  font-size: .95rem; line-height: 1.4;
}
.ed-page .ed-topics a[aria-current], .ed-page .ed-paging a[aria-current] {
  color: #fff; background: var(--ed-ink); border-color: var(--ed-ink);
}
.ed-page .ed-library { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.ed-page .ed-library a {
  position: relative; display: flex; flex-direction: column; gap: .6rem;
  padding: clamp(19px, 2.1vw, 32px); border: 1px solid var(--ed-line);
  color: var(--ed-ink); text-decoration: none; border-radius: 3px; background: #fff;
}
.ed-page .ed-library strong {
  font-size: clamp(1.2rem, 1.6vw, 1.5rem); line-height: 1.25; letter-spacing: -.025em;
}
.ed-page .ed-library a > span { color: var(--ed-copy); font-size: 1rem; line-height: 1.55; }
.ed-page .ed-library i {
  margin: auto 0 0; padding-top: .5rem; align-self: end; font-size: 1.3rem; font-style: normal;
}
.ed-page .ed-latest, .ed-page .ed-downloads, .ed-page .ed-related {
  margin: clamp(34px, 4.4vw, 64px) 0 0;
}
.ed-page .ed-latest-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2rem; }
.ed-page .ed-list { max-width: 64rem; margin-top: 1rem; }
.ed-page .ed-item {
  position: relative; display: grid; align-content: start; gap: .4rem; padding: 1.15rem 2.5rem 1.15rem 0;
  border-top: 1px solid var(--ed-line); color: var(--ed-ink); text-decoration: none; text-align: left;
}
.ed-page .ed-item-title { display: block; font-size: clamp(1.04rem, 1.45vw, 1.3rem); font-weight: 600; line-height: 1.4; }
.ed-page .ed-meta, .ed-page .ed-byline {
  display: flex; flex-wrap: wrap; gap: .35rem 1rem; color: var(--ed-secondary);
  font-size: .9rem; line-height: 1.45;
}
.ed-page .ed-byline { margin: -.45rem 0 1.4rem; }
.ed-page .ed-summary { max-width: 80ch; color: var(--ed-copy); line-height: 1.55; font-size: 1rem; }
.ed-page .ed-go { position: absolute; right: .4rem; top: 1.3rem; font-size: 1.25rem; }
.ed-page .ed-paging { display: flex; flex-wrap: wrap; gap: .4rem; margin: 1.7rem 0 0; }
.ed-page .ed-paging a {
  display: inline-grid; place-items: center; width: 44px; height: 44px;
  text-decoration: none; border: 1px solid var(--ed-line); border-radius: 3px; color: var(--ed-ink);
}
.ed-page .ed-prose {
  max-width: 57rem; min-width: 0; font-size: clamp(1rem, 1.22vw, 1.1rem);
  line-height: 1.7; color: var(--ed-copy); overflow-wrap: break-word;
}
.ed-page .ed-prose h2, .ed-page .ed-prose h3, .ed-page .ed-prose h4 {
  color: var(--ed-ink); text-align: start;
  font-size: clamp(1.18rem, 1.68vw, 1.5rem); line-height: 1.4; margin: 1.75rem 0 .7rem;
}
.ed-page .ed-prose h2 { font-size: clamp(1.45rem, 2.2vw, 2rem); }
.ed-page .ed-prose p, .ed-page .ed-prose li { text-align: justify; margin: .6rem 0; }
.ed-page .ed-prose p:empty { display: none; }
.ed-page .ed-prose ul, .ed-page .ed-prose ol { padding-inline-start: 1.5rem; }
.ed-page .ed-prose ul { list-style: disc; }
.ed-page .ed-prose li::marker { color: var(--ed-ink); }
.ed-page .ed-prose a, .ed-page .ed-file > span:first-child { text-decoration: underline; text-underline-offset: .16em; }
.ed-page .ed-prose a { color: var(--ed-ink); overflow-wrap: anywhere; }
.ed-page .ed-prose img, .ed-page .ed-prose video {
  max-width: 100%; height: auto; object-fit: contain; margin-inline: auto;
}
.ed-page .ed-prose figure, .ed-page .ed-article-image {
  max-width: min(100%, 46rem); text-align: center; margin: 1.75rem auto;
}
.ed-page .ed-article-image img { max-width: 100%; height: auto; max-height: 420px; width: auto; object-fit: contain; }
.ed-page .ed-prose figcaption, .ed-page .ed-prose .wp-caption-text {
  text-align: center; color: var(--ed-secondary); font-size: .94rem; line-height: 1.55; margin: .5rem 0;
}
.ed-page .ed-table-scroll { overflow: auto; width: 100%; margin-block: 1.3rem; }
.ed-page .ed-table-scroll table { width: 100%; border-collapse: collapse; }
.ed-page .ed-table-scroll :is(td,th) {
  padding: .6rem .8rem; line-height: 1.5; border: 1px solid var(--ed-line); text-align: left;
  vertical-align: top; font-size: .93rem;
}
.ed-page .ed-table-scroll th { background: var(--ed-tint); }
.ed-page .ed-file, .ed-page .ed-related-link {
  border-top: 1px solid var(--ed-line); gap: .8rem; padding: .95rem 0; min-height: 48px;
  color: var(--ed-ink); text-decoration: none; font-weight: 600;
}
.ed-page .ed-file { display: grid; grid-template-columns: 1fr auto auto; align-items: baseline; max-width: 57rem; }
.ed-page .ed-file small { font-size: .89rem; font-weight: 400; color: var(--ed-secondary); white-space: nowrap; }
.ed-page .ed-related > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 2rem; }
.ed-page .ed-related-link { font-size: 1rem; }
.ed-page .ed-next {
  display: flex; align-items: center; justify-content: space-between; gap: 1.75rem; margin-top: clamp(32px, 4.5vw, 70px);
  padding: clamp(20px, 3.4vw, 45px); background: var(--ed-tint);
}
.ed-page .ed-next h2 { margin-bottom: 0; }
.ed-page .ed-next .ed-btn { flex: none; }
.ed-page .ed-projects { scroll-margin-top: 1rem; }
.ed-page .ed-projects .ed-search { margin-bottom: 1.35rem; }
.ed-page .ed-project-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem 2rem; }
.ed-page .ed-project { border-top: 1px solid var(--ed-line); padding: 1.15rem 0; }
.ed-page .ed-project h3 { font-size: 1.1rem; margin: 0 0 .4rem; }
.ed-page .ed-project p { text-align: start; font-size: 1rem; }
.ed-page .ed-more { margin-top: 1rem; }
.ed-page .ed-more summary {
  width: fit-content; min-height: 44px; cursor: pointer; font-weight: 600; color: var(--ed-ink);
}
.ed-page .ed-more summary span { font-weight: 400; }
.ed-page.ed-company .ed-prose { max-width: 100%; }
.ed-page.ed-company .ed-prose > :is(p,ul,ol) { max-width: 57rem; }
.ed-page .ed-contents { display: flex; flex-wrap: wrap; gap: .35rem 1.3rem; padding: .85rem 0; margin: .5rem 0 1.5rem; border-block: 1px solid var(--ed-line); }
.ed-page .ed-contents a { padding: .25rem 0; font-size: .96rem; }
.ed-page.ed-services :is(h3[id],h2[id]) { scroll-margin-top: 1.5rem; }
.ed-page.ed-contacts .ed-prose { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.3rem; max-width: 100%; }
.ed-page.ed-contacts .ed-prose .ed-contact-detail { margin: 0; padding: 1.15rem 0; border-top: 1px solid var(--ed-line); text-align: left; }
.ed-page .ed-contact-detail strong { display: block; font-size: .91rem; margin-bottom: .3rem; color: var(--ed-secondary); }
@media (max-width: 760px) { .ed-page.ed-contacts .ed-prose { grid-template-columns: 1fr; gap: .15rem; } }
@media (hover: hover) {
  .ed-page :is(.ed-library a,.ed-item,.ed-side-link,.ed-related-link,.ed-file):hover { color: var(--ed-accent); }
  .ed-page :is(.ed-library a,.ed-side-link):hover { border-color: #8490a2; background-color: #f6f8fa; }
  .ed-page .ed-topics a:not([aria-current]):hover { background: var(--ed-tint); }
  .ed-page :is(.ed-search-btn,.ed-btn):hover { background: #454578; color: #fff; }
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .ed-page :is(.ed-library a,.ed-item,.ed-side-link) { transition: color .17s ease, border-color .17s ease, background-color .17s ease; }
  .ed-page .ed-library i { transition: transform .17s ease; }
  .ed-page .ed-library a:hover i { transform: translateX(3px); }
}
@media (max-width: 980px) {
  .ed-page .ed-library { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 650px) {
  .ed-page .ed-library,.ed-page .ed-latest-grid,.ed-page .ed-project-grid,.ed-page .ed-related > div { grid-template-columns: 1fr; }
  .ed-page .ed-library a { gap: .3rem; padding: 1rem 2.4rem 1rem 1rem; }
  .ed-page .ed-library i { position: absolute; right: .9rem; top: .7rem; }
  .ed-page .ed-next { align-items: flex-start; flex-direction: column; gap: 1.15rem; }
  .ed-page .ed-prose :is(p,li) { text-align: start; }
  .ed-page .ed-search-btn { padding-inline: 1rem; }
  .ed-page .ed-file { grid-template-columns: 1fr auto; gap: .15rem .5rem; }
  .ed-page .ed-file small { grid-row: 2; }
  .ed-page .ed-file > span:last-child { grid-column: 2; grid-row: 1; }
  .ed-page .ed-table-scroll table { min-width: 31rem; }
}

.ed-page a.mteon-historic-mention:not([href]){color:inherit;text-decoration:none;cursor:text}

.inv-swipe{display:none}
@media(max-width:760px){
 .inv-body .inv-pair table,.ed-prose .inv-pair table{min-width:0;width:100%;}
 .inv-pair td,.inv-pair th{max-width:100%}.inv-body .inv-pair td img,.ed-prose .inv-pair td img{max-width:100%;height:auto;}
 .inv-body .inv-wide table,.ed-prose .inv-wide table{width:100%;min-width:42rem}.inv-body .inv-wide :is(td,th),.ed-prose .inv-wide :is(td,th){word-break:normal;overflow-wrap:normal}
 .inv-body .inv-swipe,.ed-prose .inv-swipe{display:block;color:#575c73;font-size:.86rem;text-align:left;margin:.8rem 0 .25rem}
 .inv-scroll:focus-visible{outline:2px solid #555e8a;outline-offset:2px}
}

.ed-page .ed-card-photo{display:flex;height:190px;align-items:center;justify-content:center;margin:-1.25rem -1.25rem 1rem;background:#edf1f5;overflow:hidden}
.ed-page .ed-card-photo img{display:block;max-width:100%;height:100%;object-fit:contain}

.ed-article .ed-contents{margin:0 0 1.5rem;border-block:1px solid #d6dce5;color:#323263}
.ed-contents summary{cursor:pointer;font-weight:600;padding:14px 0}
.ed-contents ol{margin:0 0 12px;padding-left:1.5em}
.ed-contents a{display:inline-block;padding:6px 0}
.ed-prose :is(h2,h3,h4,h5,h6)[id]{scroll-margin-top:85px}
.ed-prose .ed-table-note{margin:.6em 0 .25em;color:#575c73;font-size:14px}
.ed-prose .ed-table-note[hidden],.ed-prose .inv-swipe[hidden]{display:none}
.ed-prose .ed-zoom-open{display:inline-block;max-width:100%;border:0;background:none;color:inherit;padding:0;cursor:zoom-in;vertical-align:middle}
.ed-zoom-open:focus-visible,.ed-zoom-dialog button:focus-visible{outline:3px solid #65739f;outline-offset:3px}
.ed-zoom-dialog{box-sizing:border-box;width:min(96vw,1440px);max-width:96vw;height:94vh;height:94dvh;max-height:96vh;margin:auto;padding:12px;background:#fff;color:#323263;border:1px solid #d6dce5;border-radius:5px}
.ed-zoom-dialog[open]{display:flex;flex-direction:column}
.ed-zoom-dialog::backdrop{background:#171929c9}
.ed-zoom-actions{display:flex;gap:8px;justify-content:flex-end;margin-bottom:8px}
.ed-zoom-actions button{font:inherit;background:white;color:#323263;border:1px solid #c9cedb;padding:8px 14px;min-height:44px;border-radius:3px;cursor:pointer}
.ed-zoom-image{flex:1;min-height:0;overflow:auto;display:grid}
.ed-zoom-image img{margin:auto;width:100%;height:100%;min-height:0;max-width:100%;object-fit:contain}
.ed-zoom-image.is-enlarged{display:block}
.ed-zoom-image.is-enlarged img{display:block;width:auto;height:auto;max-width:none;min-width:100%}

/* Reading layout for articles and methods, including documents filed in this section. */
.ed-method .ed-prose,
.ed-method .ed-contents {
  width: min(100%, 49rem);
  max-width: 100%;
  margin-inline: auto;
}
.ed-method .method-heading {
  margin-inline: auto;
  padding-block: clamp(1.5rem, 4vw, 3.6rem) clamp(1.25rem, 3vw, 2.4rem);
  border-bottom: 1px solid var(--ed-line);
  margin-bottom: clamp(1.25rem, 3vw, 2rem);
}
.ed-method .method-heading.with-image { width: min(100%, 61rem); display: grid; grid-template-columns: minmax(0, 1fr) minmax(9rem, 28%); gap: clamp(1.2rem, 3vw, 3rem); align-items: center; }
.ed-method .method-heading .ed-intro { padding: 0; }
.ed-method .method-heading .ed-intro:before { content: ""; display: block; width: 2.5rem; height: 3px; margin-bottom: 1.05rem; background: var(--red, #e62c36); }
.ed-method .method-heading .ed-intro h1 { font-size: clamp(1.95rem, 3.6vw, 3.15rem); line-height: 1.13; }
.ed-method .method-heading .ed-intro p { max-width: 65ch; font-size: clamp(1.04rem, 1.5vw, 1.21rem); line-height: 1.58; }
.ed-method .method-heading img { display: block; max-width: 100%; width: auto; height: auto; max-height: 13rem; object-fit: contain; margin-inline: auto; }
.ed-method .ed-prose { font-size: clamp(1rem, 1.2vw, 1.12rem); line-height: 1.7; }
.ed-method .ed-prose :is(p, li) { text-align: start; }
.ed-method .ed-prose > p { margin: 0 0 1.05em; }
.ed-method .ed-prose :is(h2,h3,h4,h5,h6) { line-height: 1.28; color: var(--ed-ink); text-align: start; text-wrap: balance; letter-spacing: -.02em; }
.ed-method .ed-prose h2 { margin: 2em 0 .55em; font-size: clamp(1.42rem, 2.3vw, 1.9rem); }
.ed-method .ed-prose :is(h3,h4,h5,h6) { margin: 1.55em 0 .45em; font-size: clamp(1.16rem, 1.65vw, 1.38rem); }
.ed-method .ed-prose > :first-child { margin-top: 0; }
.ed-method .ed-prose > :is(ul,ol) { margin-block: .65rem 1.4rem; }
.ed-method .ed-prose li { margin-block: .32em; }
.ed-method .ed-prose figure { margin: clamp(1.3rem, 3vw, 2.2rem) auto; max-width: 100%; }
.ed-method .ed-prose figure img { display: block; max-width: 100%; height: auto; }
.ed-method .ed-prose figcaption { max-width: 68ch; margin: .65rem auto 0; line-height: 1.5; font-size: .93rem; color: var(--ed-secondary); text-align: start; padding-inline-start: .85rem; border-inline-start: 2px solid var(--ed-line); }
.ed-method .ed-prose figcaption p { margin: .25em 0; }
.ed-method .ed-prose .method-panels { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: center; gap: 1rem; }
.ed-method .ed-prose .method-panels > * { min-width: 0; margin: 0; }
.ed-method .ed-prose .method-equation { display: flex; align-items: center; justify-content: center; gap: 1rem; }
.ed-method .ed-prose .method-equation figcaption { border: 0; padding: 0; margin: 0; }
.ed-method .ed-prose .method-expression { font-weight: 500; text-align: center; padding-block: .45em; }
.ed-method .ed-prose .method-note { font-size: .92rem; line-height: 1.55; color: var(--ed-secondary); }
.ed-method .ed-table-scroll :is(th,td) { text-align: start; font-variant-numeric: tabular-nums; }
.ed-method .ed-table-scroll th { color: var(--ed-ink); font-weight: 600; }
.ed-method .ed-contents { display: block; margin-inline: auto; }
@media (max-width: 640px) {
  .ed-method .method-heading.with-image { grid-template-columns: 1fr; gap: .9rem; }
  .ed-method .method-heading img { max-height: 8.5rem; }
  .ed-method .ed-prose .method-panels { grid-template-columns: 1fr; }
}
