@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-Light.ttf') format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-ExtraBold.ttf') format("truetype"), url('../fonts/Montserrat-Bold.ttf') format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-LightItalic.ttf') format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-ExtraLight.ttf') format("truetype");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-ExtraBoldItalic.ttf') format("truetype"), url('../fonts/Montserrat-BoldItalic.ttf') format("truetype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-ExtraLightItalic.ttf') format("truetype");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-Regular.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-Medium.ttf') format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-BlackItalic.ttf') format("truetype");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-Black.ttf') format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-Italic.ttf') format("truetype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat-MediumItalic.ttf') format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

.page-shell {
  color: #17150f;
  background-color: #f7f4ed;
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

.hero {
  flex-direction: column;
  order: 1;
  justify-content: center;
  min-height: 92vh;
  padding: 6vh 6vw 8vh;
  display: flex;
}

.hero-inner {
  max-width: 1180px;
}

.eyebrow {
  color: #6a6558;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12px;
}

.display-title {
  letter-spacing: -.028em;
  max-width: 15ch;
  margin-top: 2.2rem;
  margin-bottom: 0;
  font-family: Montserrat, Arial, sans-serif;
  font-size: clamp(44px, 7.6vw, 180px);
  font-weight: 700;
  line-height: .92;
}

.category-line {
  letter-spacing: -.005em;
  margin-top: 4.5rem;
  margin-bottom: 0;
  font-family: Montserrat, Arial, sans-serif;
  font-size: clamp(19px, 2vw, 40px);
  font-weight: 500;
  line-height: 1.3;
}

.dot {
  vertical-align: .12em;
  margin-left: .9em;
  margin-right: .9em;
  font-size: .7em;
}

.exhibit {
  order: 2;
  padding: 14vh 6vw 20vh;
}

.exhibit-grid {
  grid-column-gap: 42px;
  flex-direction: row;
  justify-content: flex-end;
  align-items: flex-start;
  max-width: none;
  margin-left: auto;
  margin-right: 0;
  display: flex;
}

.exhibit-index {
  color: #6a6558;
  text-align: right;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
  line-height: 1.8;
}

.exhibit-body {
  border-left: .5px solid #cdc6b4;
  max-width: 470px;
  padding-left: 36px;
}

.analysis-para {
  color: #211e16;
  letter-spacing: normal;
  margin-bottom: 1rem;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.68;
}

.mark {
  border-bottom: 5px solid #b8451f;
  padding-bottom: 1px;
}

.hand-note {
  transform-origin: 0%;
  color: #b8451f;
  margin-top: 2.4rem;
  margin-bottom: 0;
  font-family: Caveat, sans-serif;
  font-size: 24px;
  display: inline-block;
  position: relative;
  transform: rotate(-3.5deg);
}

.source-note {
  color: #6a6558;
  letter-spacing: .1em;
  text-transform: uppercase;
  max-width: 620px;
  margin: 2.4rem 0 0 auto;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
  line-height: 2;
}

.enquiry {
  order: 3;
  padding-bottom: 14vh;
  padding-left: 6vw;
  padding-right: 6vw;
}

.enquiry-row {
  border-top: .5px solid #cdc6b4;
  justify-content: space-between;
  align-items: baseline;
  padding-top: 1.6rem;
  display: flex;
}

.enquiry-label {
  color: #211e16;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 17px;
  font-weight: 400;
}

.enquiry-meta {
  color: #6a6558;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
}

.masthead {
  order: 0;
  padding: 4vh 6vw 0;
}

.wordmark {
  color: #17150f;
  letter-spacing: .22em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12px;
}

.exhibit-plate {
  flex-shrink: 0;
  margin-bottom: 4vh;
  margin-right: -4vw;
}

.plate-label {
  color: #17150f;
  letter-spacing: .22em;
  text-transform: uppercase;
  margin-bottom: 6px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12px;
}

.exhibit-numeral {
  color: #e8232a;
  letter-spacing: -.05em;
  margin-bottom: 0;
  margin-left: -.06em;
  font-family: Archivo, sans-serif;
  font-size: clamp(120px, 21vw, 340px);
  font-weight: 500;
  line-height: .78;
}

.navrow {
  justify-content: space-between;
  align-items: baseline;
  display: flex;
}

.navlinks {
  letter-spacing: .22em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
}

.nav-link {
  color: #17150f;
  text-decoration: none;
}

.nav-sep {
  margin-left: .9em;
  margin-right: .9em;
}

.plate {
  flex-direction: column;
  min-height: auto;
  padding: 7vh 6vw 12vh;
  display: flex;
}

.plate-head {
  grid-column-gap: 40px;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 0;
  padding-top: 16vh;
  padding-bottom: 16vh;
  display: flex;
}

.plate-copy {
  max-width: 620px;
}

.plate-title {
  letter-spacing: -.04em;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Archivo, sans-serif;
  font-size: clamp(52px, 6.4vw, 150px);
  font-weight: 500;
  line-height: .94;
}

.plate-sub {
  color: #211e16;
  letter-spacing: normal;
  margin-top: 16px;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 19px;
  font-weight: 400;
  line-height: 1.55;
}

.plate-corp {
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-top: 14px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
}

.chart-wrap {
  max-width: 620px;
  margin-top: 0;
  margin-left: auto;
  margin-right: 0;
}

.inline-svg-0 {
  width: 100%;
  height: auto;
  display: block;
  overflow: visible;
}

.plate-measure {
  color: #6a6558;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-top: 18px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
}

.plate-titleblock {
  margin-bottom: 0;
}

.plate-subhead {
  color: #17150f;
  letter-spacing: -.008em;
  margin-top: 16px;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 1.28;
}

.plate-lede {
  color: #211e16;
  letter-spacing: normal;
  max-width: 34ch;
  margin-top: 2.6rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.68;
}

.chart-head {
  margin-bottom: 5vh;
}

.chart-measure {
  color: #17150f;
  letter-spacing: -.012em;
  text-transform: none;
  margin-bottom: 10px;
  font-family: Archivo, sans-serif;
  font-size: clamp(16px, 1.7vw, 23px);
  font-weight: 500;
  line-height: 1.3;
}

.chart-finding {
  color: #17150f;
  letter-spacing: normal;
  margin-top: 14px;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 19px;
  font-weight: 400;
  line-height: 1.52;
}

.chart-corp {
  color: #17150f;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-top: 14px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
}

.numeral-right {
  text-align: right;
  margin-bottom: 4vh;
}

.ex03 {
  max-width: 620px;
  margin-top: 0;
  margin-left: auto;
  margin-right: 0;
}

.owns-headrow {
  border-bottom: .5px solid #17150f;
  align-items: baseline;
  margin-top: 2.4rem;
  padding-bottom: 8px;
  display: flex;
}

.owns-row {
  border-bottom: .5px solid #e0d9c7;
  align-items: baseline;
  padding-top: 11px;
  padding-bottom: 11px;
  display: flex;
}

.owns-hname {
  color: #6a6558;
  letter-spacing: .14em;
  text-transform: uppercase;
  flex: auto;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9.5px;
}

.owns-hrole {
  color: #6a6558;
  letter-spacing: .14em;
  text-transform: uppercase;
  flex: none;
  width: 132px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9.5px;
}

.owns-hnum {
  color: #6a6558;
  text-align: right;
  letter-spacing: .14em;
  text-transform: uppercase;
  flex: none;
  width: 76px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9.5px;
}

.owns-name {
  color: #17150f;
  flex: auto;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.owns-role {
  color: #6a6558;
  letter-spacing: .08em;
  text-transform: uppercase;
  flex: none;
  width: 132px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9.5px;
}

.owns-num {
  color: #211e16;
  text-align: right;
  flex: none;
  width: 76px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12.5px;
}

.mark03 {
  border-bottom: 4px solid #b8451f;
  padding-bottom: 1px;
}

.ex03-read {
  color: #17150f;
  letter-spacing: normal;
  margin-top: 1.8rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.62;
}

.hand03 {
  color: #b8451f;
  margin-top: 1rem;
  margin-bottom: 0;
  font-family: Caveat, sans-serif;
  font-size: 23px;
  display: inline-block;
}

.adv {
  max-width: 940px;
  margin-left: auto;
  margin-right: 0;
}

.adv-headrow {
  border-bottom: .5px solid #17150f;
  margin-top: 2.8rem;
  padding-bottom: 8px;
  display: flex;
}

.adv-row {
  border-bottom: .5px solid #e0d9c7;
  padding-top: 15px;
  padding-bottom: 15px;
  display: flex;
}

.adv-c1 {
  flex: none;
  width: 24%;
  padding-right: 18px;
}

.adv-c2 {
  flex: none;
  width: 22%;
  padding-right: 18px;
}

.adv-c3 {
  flex: none;
  width: 28%;
  padding-right: 18px;
}

.adv-c4 {
  flex: none;
  width: 26%;
}

.adv-h {
  color: #6a6558;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9.5px;
}

.adv-name {
  color: #17150f;
  margin-bottom: 4px;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.24;
}

.adv-key {
  color: #8f8674;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9px;
}

.adv-tag {
  color: #8f8674;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 4px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9px;
}

.adv-val {
  color: #17150f;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
}

.adv-hand {
  color: #b8451f;
  margin-top: 1.4rem;
  margin-bottom: 0;
  font-family: Caveat, sans-serif;
  font-size: 23px;
  display: inline-block;
}

.inline-svg-0-1 {
  pointer-events: none;
  width: 80px;
  height: 36px;
  position: absolute;
  top: -32px;
  left: 8px;
  overflow: visible;
}

.lf {
  max-width: 940px;
  margin-top: 2.4rem;
  margin-left: auto;
  margin-right: 0;
}

.lf-head {
  grid-column-gap: 7px;
  grid-template-rows: auto;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.05fr) 26px minmax(0, 1.15fr) 26px minmax(0, 1fr);
  padding-bottom: 1.5rem;
  display: grid;
}

.lf-row {
  grid-column-gap: 7px;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 15px;
  padding-bottom: 15px;
  display: flex;
}

.lf-h {
  color: #a09883;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9px;
}

.lf-role {
  align-items: center;
  min-width: 0;
  padding-right: 10px;
  display: flex;
}

.lf-dot {
  background-color: #17150f;
  border-radius: 50%;
  flex: none;
  width: 5px;
  height: 5px;
  margin-right: 9px;
}

.lf-rolename {
  color: #17150f;
  overflow-wrap: break-word;
  min-width: 0;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.16;
}

.lf-cell {
  min-width: 0;
  position: relative;
}

.lf-blob-a {
  opacity: .14;
  background-color: #8f8674;
  border-radius: 57% 43% 61% 39%;
  width: 32px;
  height: 32px;
  margin-top: -16px;
  position: absolute;
  top: 50%;
  left: -10px;
  transform: rotate(-7deg);
}

.lf-blob-b {
  opacity: .12;
  background-color: #1a45c4;
  border-radius: 57% 43% 61% 39%;
  width: 32px;
  height: 32px;
  margin-top: -16px;
  position: absolute;
  top: 50%;
  left: -10px;
  transform: rotate(11deg);
}

.lf-blob-c {
  opacity: .14;
  background-color: #b8451f;
  border-radius: 57% 43% 61% 39%;
  width: 32px;
  height: 32px;
  margin-top: -16px;
  position: absolute;
  top: 50%;
  left: -10px;
  transform: rotate(-2deg);
}

.lf-small {
  color: #a09883;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 3px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 8.5px;
}

.lf-word {
  color: #17150f;
  overflow-wrap: break-word;
  min-width: 0;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.16;
}

.lf-value {
  border-bottom: 3px solid #dda98f;
  padding-bottom: 1px;
}

.lf-hand {
  color: #b8451f;
  margin-top: 2.2rem;
  margin-bottom: 0;
  font-family: Caveat, sans-serif;
  font-size: 23px;
  display: inline-block;
}

.inline-svg-0-1-2, .inline-svg-1, .inline-svg-2, .inline-svg-3, .inline-svg-4, .inline-svg-5, .inline-svg-6, .inline-svg-7, .inline-svg-8, .inline-svg-9, .inline-svg-10, .inline-svg-11, .inline-svg-12, .inline-svg-13, .inline-svg-14, .inline-svg-15 {
  width: 100%;
  height: 22px;
  overflow: visible;
}

.rep {
  max-width: 720px;
  margin-left: auto;
  margin-right: 0;
}

.rep-kicker {
  color: #6a6558;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 10px;
}

.rep-title {
  color: #17150f;
  letter-spacing: -.035em;
  max-width: 22ch;
  margin-top: 1.6rem;
  margin-bottom: 0;
  font-family: Archivo, sans-serif;
  font-size: clamp(38px, 4.6vw, 78px);
  font-weight: 500;
  line-height: 1;
}

.rep-sub {
  color: #17150f;
  letter-spacing: normal;
  margin-top: 1.4rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.34;
}

.rep-lede {
  color: #211e16;
  letter-spacing: normal;
  max-width: 58ch;
  margin-top: 2rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.68;
}

.rep-cat {
  color: #17150f;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-top: 1.6rem;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
}

.rep-sechead {
  color: #6a6558;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-top: 14vh;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 10px;
}

.find-row {
  grid-column-gap: 20px;
  grid-template-rows: auto;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: start;
  max-width: 700px;
  padding-top: 22px;
  padding-bottom: 22px;
  display: grid;
}

.find-num {
  color: #e8232a;
  letter-spacing: .1em;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12px;
}

.find-text {
  color: #17150f;
  letter-spacing: normal;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
}

.rep-asat {
  color: #b8451f;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin-top: 1.4rem;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 10px;
}

.rep-secttl {
  color: #17150f;
  letter-spacing: normal;
  max-width: 30ch;
  margin-top: 1rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 23px;
  font-weight: 400;
  line-height: 1.3;
}

.rep-body {
  color: #211e16;
  letter-spacing: normal;
  max-width: 58ch;
  margin-top: 1.6rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.68;
}

.tb-head {
  align-items: baseline;
  margin-top: 2.6rem;
  padding-bottom: 10px;
  display: flex;
}

.tb-row {
  align-items: baseline;
  padding-top: 13px;
  padding-bottom: 13px;
  display: flex;
}

.tb-hlab {
  color: #a09883;
  letter-spacing: .14em;
  text-transform: uppercase;
  flex: auto;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9px;
}

.tb-hfig {
  color: #a09883;
  text-align: right;
  letter-spacing: .14em;
  text-transform: uppercase;
  flex: none;
  width: 64px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9px;
}

.tb-lab {
  color: #17150f;
  flex: auto;
  margin-bottom: 0;
  padding-right: 14px;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.2;
}

.tb-fig {
  color: #211e16;
  text-align: right;
  flex: none;
  width: 64px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12px;
}

.rl-row {
  align-items: baseline;
  padding-top: 15px;
  padding-bottom: 15px;
  display: flex;
}

.rl-date {
  color: #a09883;
  letter-spacing: .1em;
  text-transform: uppercase;
  flex: none;
  width: 96px;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 9.5px;
}

.rl-name {
  color: #17150f;
  flex: none;
  width: 128px;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 15px;
  font-weight: 400;
}

.rl-occ {
  color: #6a6558;
  flex: auto;
  margin-bottom: 0;
  padding-right: 16px;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.34;
}

.rep-method {
  color: #6a6558;
  letter-spacing: normal;
  max-width: 62ch;
  margin-top: 1.4rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}

.rep-share {
  color: #17150f;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-top: 14vh;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
}

.lf-cols {
  color: #6a6558;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin-top: 2.4rem;
  margin-bottom: 1.4rem;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12px;
}

.lf-row-1 {
  grid-column-gap: 8px;
  grid-row-gap: 10px;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 16px;
  padding-bottom: 16px;
  display: flex;
}

.lf-role-1 {
  flex: 280px;
  align-items: center;
  min-width: 0;
  padding-right: 8px;
  display: flex;
}

.lf-rolename-1 {
  color: #17150f;
  min-width: 0;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.16;
}

.lf-cell-1 {
  flex: 1.1 84px;
  min-width: 0;
  position: relative;
}

.lf-arc {
  flex: 0 0 24px;
  display: block;
}

.lf-word-1 {
  color: #17150f;
  min-width: 0;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.2;
}

.inline-svg-0-1-2-3, .inline-svg-1-1, .inline-svg-2-1, .inline-svg-3-1, .inline-svg-4-1, .inline-svg-5-1, .inline-svg-6-1, .inline-svg-7-1, .inline-svg-8-1, .inline-svg-9-1, .inline-svg-10-1, .inline-svg-11-1, .inline-svg-12-1, .inline-svg-13-1, .inline-svg-14-1, .inline-svg-15-1 {
  width: 100%;
  height: 20px;
  overflow: visible;
}

.svc-wrap {
  max-width: 640px;
  margin-top: 3.4rem;
}

.svc {
  padding-top: 26px;
  padding-bottom: 26px;
}

.svc-code {
  color: #1a45c4;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 10px;
}

.svc-name {
  color: #17150f;
  letter-spacing: -.006em;
  margin-bottom: 8px;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.24;
}

.svc-desc {
  color: #211e16;
  letter-spacing: normal;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.62;
}

.svc-wrap-1 {
  max-width: 700px;
  margin-top: 3.4rem;
}

.svc-1 {
  grid-column-gap: 24px;
  grid-template-rows: auto;
  grid-template-columns: 96px minmax(0, 1fr);
  align-items: start;
  padding-top: 30px;
  padding-bottom: 30px;
  display: grid;
}

.svc-no {
  color: #1a45c4;
  letter-spacing: -.045em;
  margin-bottom: 0;
  margin-left: -.04em;
  font-family: Archivo, sans-serif;
  font-size: clamp(42px, 4.4vw, 62px);
  font-weight: 500;
  line-height: .82;
}

.svc-tag {
  color: #1a45c4;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-bottom: 9px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 10px;
}

.prov {
  max-width: 720px;
  margin-left: auto;
  margin-right: 0;
}

.prov-note {
  color: #211e16;
  letter-spacing: normal;
  margin-top: 2.2rem;
  margin-bottom: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.68;
}

.prov-lbl {
  color: #6a6558;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-top: 12vh;
  margin-bottom: 0;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 10px;
}

.prov-field {
  grid-column-gap: 16px;
  grid-row-gap: 14px;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 2.6rem;
  display: flex;
}

.cli-a {
  color: #17150f;
  letter-spacing: .16em;
  text-transform: uppercase;
  background-color: #e7e1d1;
  border-radius: 58% 42% 60% 40% / 47% 53%;
  margin-bottom: 0;
  padding: 15px 22px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
  display: inline-block;
  transform: rotate(-2.5deg);
}

.cli-b {
  color: #17150f;
  letter-spacing: .16em;
  text-transform: uppercase;
  background-color: #dfe4f3;
  border-radius: 43% 57% 39% 61% / 55% 45%;
  margin-top: 22px;
  margin-bottom: 0;
  padding: 17px 24px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
  display: inline-block;
  transform: rotate(3deg);
}

.cli-c {
  color: #17150f;
  letter-spacing: .16em;
  text-transform: uppercase;
  background-color: #f2ded5;
  border-radius: 61% 39% 57% 43% / 44% 56%;
  margin-top: -14px;
  margin-bottom: 0;
  padding: 14px 20px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
  display: inline-block;
  transform: rotate(-1.5deg);
}

.cli-d {
  color: #17150f;
  letter-spacing: .16em;
  text-transform: uppercase;
  background-color: #ece7da;
  border-radius: 47% 53% 62% 38% / 58% 42%;
  margin-top: 30px;
  margin-bottom: 0;
  padding: 18px 26px;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11px;
  display: inline-block;
  transform: rotate(2deg);
}

.enquiry-row-1 {
  grid-column-gap: 20px;
  grid-row-gap: 8px;
  border-top: .5px solid #cdc6b4;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  padding-top: 1.6rem;
  display: flex;
}

.enquiry-link {
  color: #17150f;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 17px;
  font-weight: 400;
  text-decoration: none;
}

.enquiry-mail {
  color: #b8451f;
  letter-spacing: .1em;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 11.5px;
  text-decoration: none;
}

.enquiry-tail {
  margin-top: 12vh;
}

.premise {
  color: #17150f;
  letter-spacing: -.018em;
  margin-top: 34px;
  margin-bottom: 0;
  font-family: Newsreader, sans-serif;
  font-size: clamp(31px, 3.7vw, 60px);
  font-weight: 600;
  line-height: 1.06;
}

.analysis-para-1 {
  color: #211e16;
  letter-spacing: normal;
  margin-bottom: 1.1rem;
  font-family: IBM Plex Sans, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.64;
}

.q {
  color: #17150f;
  font-style: italic;
}

.mark-1 {
  display: inline-block;
  position: relative;
}

.inline-svg-0-1-2-3-4, .inline-svg-0-1-2-3-4-5 {
  width: 100%;
  height: 6px;
  position: absolute;
  bottom: -5px;
  left: 0;
  overflow: visible;
}

.markbig {
  color: #f7f4ed;
  background-color: #b8451f;
  padding-left: .06em;
  padding-right: .06em;
  display: inline-block;
  position: relative;
}

.inline-svg-0-1-2-3-4-5-6 {
  width: 100%;
  height: .1em;
  position: absolute;
  bottom: .02em;
  left: 0;
  overflow: visible;
}

.inline-svg-0-1-2-3-4-5-6-7 {
  z-index: -1;
  width: 110%;
  height: 104%;
  position: absolute;
  top: -6%;
  left: -5%;
  overflow: visible;
}

.inline-svg-1-1-2 {
  width: 104%;
  height: .13em;
  position: absolute;
  bottom: -.06em;
  left: -2%;
  overflow: visible;
}

.kin-head {
  color: #17150f;
  letter-spacing: -.022em;
  max-width: 20ch;
  margin: 0 0 52px;
  font-family: Archivo, sans-serif;
  font-size: clamp(38px, 5.4vw, 108px);
  font-weight: 600;
  line-height: .98;
  display: block;
}

.kin-unit {
  margin-bottom: -.1em;
  padding-bottom: .1em;
  display: block;
  overflow: hidden;
}

.kin-word {
  will-change: transform;
  display: inline-block;
}

.open-plate {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-height: 58vh;
  padding: 2vh 0 0 8vw;
  display: flex;
}

.open-head {
  color: #17150f;
  letter-spacing: -.024em;
  max-width: 17ch;
  margin: 0;
  font-family: Archivo, sans-serif;
  font-size: clamp(34px, 4.8vw, 96px);
  font-weight: 600;
  line-height: 1;
  display: block;
}

.open-line {
  display: block;
}

.inline-svg-0-1-2-3-4-5-6-7-8 {
  pointer-events: none;
  width: 112px;
  height: 64px;
  position: absolute;
  top: -58px;
  left: 10px;
  overflow: visible;
}

.open-sub {
  color: #17150f;
  letter-spacing: normal;
  max-width: 28ch;
  margin: 30px 0 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(17px, 1.75vw, 27px);
  font-weight: 400;
  line-height: 1.42;
  display: block;
}

.sig-plate {
  padding: 13vh 0 9vh;
  display: block;
}

.sig {
  color: #17150f;
  letter-spacing: .006em;
  align-items: center;
  font-family: Archivo, sans-serif;
  font-size: clamp(26px, 3.1vw, 54px);
  font-weight: 600;
  line-height: 1;
  display: flex;
}

.sig-word {
  display: inline-block;
}

.sig-o {
  width: .78em;
  height: .78em;
  margin-left: .03em;
  margin-right: .03em;
  display: inline-block;
}

.sig-ring {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

.mlogo {
  color: #17150f;
  letter-spacing: .004em;
  align-items: center;
  margin: 0 0 18px;
  font-family: Archivo, sans-serif;
  font-size: clamp(32px, 4.2vw, 82px);
  font-weight: 600;
  line-height: 1;
  display: flex;
}

.mlogo-word {
  display: inline-block;
}

.mlogo-o {
  width: 1.02em;
  height: 1em;
  margin-left: -.13em;
  margin-right: -.13em;
  display: inline-block;
  position: relative;
}

.mlogo-ring {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

.mlogo-alt {
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.diff-open {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-height: 68vh;
  padding: 2vh 0 0 8vw;
  display: flex;
}

.diff-head {
  color: #17150f;
  letter-spacing: -.024em;
  max-width: 15ch;
  margin: 0;
  font-family: Archivo, sans-serif;
  font-size: clamp(38px, 5.6vw, 108px);
  font-weight: 600;
  line-height: 1;
}

.diff-lead {
  color: #17150f;
  letter-spacing: -.014em;
  margin: 34px 0 0;
  font-family: Archivo, sans-serif;
  font-size: clamp(20px, 2.3vw, 38px);
  font-weight: 600;
  line-height: 1.2;
}

.tri-plate {
  padding: 11vh 0 6vh 8vw;
  display: block;
}

.tri-a {
  color: #17150f;
  max-width: 26ch;
  margin: 0 0 18px;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(21px, 2.5vw, 40px);
  font-weight: 400;
  line-height: 1.3;
}

.tri-b {
  color: #17150f;
  max-width: 26ch;
  margin: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(21px, 2.5vw, 40px);
  font-weight: 400;
  line-height: 1.3;
}

.tri-c {
  color: #17150f;
  max-width: 22ch;
  margin: 9vh 0 0 24vw;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(21px, 2.5vw, 40px);
  font-weight: 400;
  line-height: 1.3;
}

.pay-plate {
  padding: 4vh 0 13vh 8vw;
  display: block;
}

.pay-index {
  color: #6a6558;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin: 0 0 5vh;
  font-family: IBM Plex Mono, sans-serif;
  font-size: 12px;
  line-height: 1.9;
}

.conv {
  width: 100%;
  height: clamp(150px, 23vw, 340px);
  margin: 0 0 6vh;
  display: block;
  position: relative;
  overflow: hidden;
}

.conv-n {
  opacity: 1;
  color: #e8232a;
  letter-spacing: -.03em;
  mix-blend-mode: multiply;
  font-family: Archivo, sans-serif;
  font-size: clamp(112px, 19vw, 288px);
  font-weight: 600;
  line-height: 1;
  position: absolute;
  bottom: -.14em;
}

.cn1 {
  left: 0%;
}

.cn2 {
  left: 19%;
}

.cn3 {
  left: 41%;
}

.cn4 {
  left: 69%;
}

.pay-line {
  color: #17150f;
  letter-spacing: -.02em;
  max-width: 22ch;
  margin: 0;
  font-family: Archivo, sans-serif;
  font-size: clamp(27px, 3.6vw, 62px);
  font-weight: 600;
  line-height: 1.1;
}

.pay-same, .pay-break {
  display: inline;
}

.pay-conv {
  color: #17150f;
  letter-spacing: .16em;
}

.offer-plate {
  max-width: none;
  padding: 2vh 0 11vh 8vw;
  display: block;
}

.offer-a {
  color: #17150f;
  max-width: 44ch;
  margin: 0 0 18px;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(21px, 2.5vw, 40px);
  font-weight: 400;
  line-height: 1.3;
}

.offer-b {
  color: #17150f;
  max-width: 44ch;
  margin: 0 0 5vh;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(21px, 2.5vw, 40px);
  font-weight: 400;
  line-height: 1.3;
}

.offer-c {
  color: #17150f;
  max-width: 44ch;
  margin: 0;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(21px, 2.5vw, 40px);
  font-weight: 400;
  line-height: 1.3;
}

.offer-d {
  color: #6a6558;
  max-width: 34ch;
  margin: 5vh 0 0 17vw;
  font-family: IBM Plex Sans, sans-serif;
  font-size: clamp(21px, 2.5vw, 40px);
  font-weight: 400;
  line-height: 1.3;
}

@media screen and (max-width: 991px) {
  .display-title {
    margin-top: 1.8rem;
    font-size: 10vw;
  }

  .category-line {
    margin-top: 3.4rem;
    font-size: 27px;
  }
}

@media screen and (max-width: 767px) {
  .display-title {
    letter-spacing: -.025em;
    margin-top: 1.5rem;
    font-size: 12.5vw;
  }

  .category-line {
    margin-top: 2.6rem;
    font-size: 21px;
    line-height: 1.34;
  }

  .dot {
    height: 0;
    margin-left: 0;
    margin-right: 0;
    display: block;
    overflow: hidden;
  }

  .exhibit {
    padding-top: 14vh;
    padding-bottom: 14vh;
  }

  .exhibit-grid {
    grid-row-gap: 22px;
    flex-direction: column-reverse;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    max-width: none;
    margin-left: 0;
  }

  .exhibit-index {
    text-align: left;
  }

  .exhibit-body {
    padding-left: 20px;
  }

  .analysis-para {
    font-size: 18px;
    line-height: 1.6;
  }

  .source-note {
    max-width: none;
    margin-left: 0;
  }

  .enquiry {
    padding-bottom: 14vh;
  }

  .enquiry-row {
    grid-row-gap: 10px;
    flex-direction: column;
    align-items: flex-start;
  }

  .exhibit-plate {
    flex-shrink: 0;
    margin-right: -14vw;
  }

  .exhibit-numeral {
    font-size: 46vw;
  }

  .plate {
    min-height: auto;
    padding-top: 4vh;
    padding-bottom: 9vh;
    display: block;
  }

  .plate-head {
    grid-row-gap: 18px;
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .plate-title {
    font-size: 17vw;
  }

  .plate-sub {
    font-size: 18px;
  }

  .chart-wrap {
    max-width: none;
    margin-top: 6vh;
    margin-left: 0;
  }

  .plate-subhead {
    font-size: 22px;
    line-height: 1.26;
  }

  .chart-head {
    margin-bottom: 2.2rem;
  }
}


@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-ExtraBold.ttf') format('truetype'), url('../fonts/Montserrat-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-LightItalic.ttf') format('truetype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-ExtraBoldItalic.ttf') format('truetype'), url('../fonts/Montserrat-BoldItalic.ttf') format('truetype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-ExtraLightItalic.ttf') format('truetype');
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-BlackItalic.ttf') format('truetype');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Italic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-MediumItalic.ttf') format('truetype');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}