/* =========================================================
   Black Point Investor Relations
   Frontend 1.4.5 — editorial / premium redesign
   ========================================================= */

.bpir-page {
  --bp-pink: #e71485;
  --bp-pink-soft: #fff0f7;
  --bp-black: #141414;
  --bp-ink: #202124;
  --bp-muted: #747474;
  --bp-line: #e8e8ea;
  --bp-soft: #f6f6f7;
  --bp-white: #ffffff;
  --bp-shadow: 0 18px 55px rgba(20, 20, 20, .08);
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 34px 20px 76px;
  box-sizing: border-box;
  color: var(--bp-ink);
  font-family: inherit;
  isolation: isolate;
}

.bpir-page *,
.bpir-page *::before,
.bpir-page *::after {
  box-sizing: border-box;
}

.bpir-page h1,
.bpir-page h2,
.bpir-page h3,
.bpir-page p {
  font-family: inherit;
}

.bpir-page a {
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.bpir-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #858585;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.65px;
  line-height: 1.2;
  text-transform: uppercase;
}

.bpir-kicker::before {
  content: '';
  width: 26px;
  height: 2px;
  background: currentColor;
}

.bpir-kicker--pink {
  color: var(--bp-pink);
}

.bpir-feature-tag {
  display: inline-block;
  margin-bottom: 10px;
  padding: 6px 9px;
  border-radius: 6px;
  background: var(--bp-pink-soft);
  color: var(--bp-pink);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1.1px;
  line-height: 1;
  text-transform: uppercase;
}

.bpir-inline-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--bp-pink) !important;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none !important;
}

.bpir-inline-link:hover {
  gap: 12px;
}

/* =========================================================
   Navigation
   ========================================================= */

.bpir-nav-shell {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 26px;
  align-items: end;
  margin-bottom: 48px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--bp-line);
}

.bpir-nav-shell__brand {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.bpir-nav-shell__eyebrow {
  color: #aaa;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.45px;
}

.bpir-nav-shell__title {
  color: var(--bp-black);
  font-size: 15px;
  font-weight: 800;
}

.bpir-nav {
  display: flex;
  justify-content: flex-end;
  gap: 4px;
  min-width: 0;
}

.bpir-nav__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 11px;
  color: #707070 !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none !important;
  white-space: nowrap;
}

.bpir-nav__link::after {
  content: '';
  position: absolute;
  left: 11px;
  right: 11px;
  bottom: -19px;
  height: 3px;
  background: transparent;
}

.bpir-nav__link:hover {
  color: var(--bp-black) !important;
}

.bpir-nav__link.is-active {
  color: var(--bp-pink) !important;
}

.bpir-nav__link.is-active::after {
  background: var(--bp-pink);
}

/* =========================================================
   Year archive
   ========================================================= */

.bpir-archive-bar {
  display: grid;
  grid-template-columns: 185px minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  margin: 0 0 34px;
  padding: 17px 20px;
  border: 1px solid var(--bp-line);
  border-radius: 18px;
  background: #fff;
}

.bpir-archive-bar__intro {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.bpir-archive-bar__label {
  color: var(--bp-black);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.bpir-archive-bar__hint {
  color: #a2a2a2;
  font-size: 11px;
}

.bpir-years {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.bpir-year {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 58px;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid var(--bp-line);
  border-radius: 10px;
  background: #fafafa;
  color: #626262 !important;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none !important;
}

.bpir-year:hover {
  border-color: #cfcfd2;
  background: #fff;
  color: var(--bp-black) !important;
  transform: translateY(-1px);
}

.bpir-year.is-active {
  border-color: var(--bp-black);
  background: var(--bp-black);
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.13);
}

/* =========================================================
   Attachments
   ========================================================= */

.bpir-attachments {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 19px;
}

.bpir-attachment {
  display: inline-grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 185px;
  min-height: 50px;
  padding: 8px 11px 8px 8px;
  border: 1px solid var(--bp-line);
  border-radius: 12px;
  background: #fff;
  color: var(--bp-ink) !important;
  text-decoration: none !important;
}

.bpir-attachment:hover {
  border-color: #d4d4d7;
  box-shadow: 0 9px 24px rgba(0,0,0,.06);
  transform: translateY(-1px);
}

.bpir-attachment__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 34px;
  border-radius: 8px;
  background: var(--bp-pink-soft);
  color: var(--bp-pink);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .6px;
}

.bpir-attachment__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.bpir-attachment__label {
  overflow: hidden;
  color: inherit;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bpir-attachment__size {
  color: #aaa;
  font-size: 9px;
  font-weight: 600;
}

.bpir-attachment__arrow {
  color: #8d8d8d;
  font-size: 14px;
  line-height: 1;
}

.bpir-attachment:hover .bpir-attachment__arrow {
  color: var(--bp-pink);
}

.bpir-attachments--periodic-feature .bpir-attachment,
.bpir-attachments--wza .bpir-attachment,
.bpir-attachments--corporate .bpir-attachment {
  background: #fff;
}

.bpir-attachments--ebi .bpir-attachment {
  background: #fbfbfb;
}

/* =========================================================
   Empty state
   ========================================================= */

.bpir-empty {
  margin-top: 18px;
  padding: 44px 24px;
  border: 1px dashed #d8d8db;
  border-radius: 20px;
  background: #fbfbfb;
  color: #858585;
  font-size: 14px;
  text-align: center;
}

/* =========================================================
   EBI
   ========================================================= */

.bpir-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: 26px;
  border-radius: 28px;
}

.bpir-hero--ebi {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(260px, .5fr);
  min-height: 330px;
  background: var(--bp-black);
}

.bpir-hero__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 48px 50px;
}

.bpir-hero--ebi .bpir-kicker {
  color: #838383;
}

.bpir-hero--ebi h1 {
  margin: 15px 0 12px;
  color: #fff;
  font-size: clamp(42px, 6vw, 66px);
  font-weight: 800;
  letter-spacing: -1.8px;
  line-height: 1;
}

.bpir-hero--ebi p {
  max-width: 620px;
  margin: 0;
  color: #b9b9b9;
  font-size: 15px;
  line-height: 1.75;
}

.bpir-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 28px;
}

.bpir-hero__year,
.bpir-hero__count {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 7px 11px;
  border: 1px solid #313131;
  border-radius: 9px;
  color: #bdbdbd;
  font-size: 11px;
  font-weight: 800;
}

.bpir-hero__year {
  border-color: var(--bp-pink);
  background: var(--bp-pink);
  color: #fff;
}

.bpir-hero__mark {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding: 32px 30px;
  background: linear-gradient(145deg, #202020 0%, #111 100%);
  color: #2c2c2c;
  font-size: clamp(72px, 10vw, 128px);
  font-weight: 900;
  letter-spacing: -8px;
  line-height: .75;
}

.bpir-hero__mark::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: var(--bp-pink);
}

.bpir-report-list {
  display: grid;
  gap: 12px;
}

.bpir-report-item {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 30px;
  padding: 28px 30px;
  border: 1px solid var(--bp-line);
  border-radius: 20px;
  background: #fff;
}

.bpir-report-item:hover {
  border-color: #d9d9dc;
  box-shadow: 0 14px 38px rgba(0,0,0,.05);
  transform: translateY(-1px);
}

.bpir-report-item.is-featured {
  border-left: 4px solid var(--bp-pink);
}

.bpir-report-item__date {
  padding-top: 2px;
  border-right: 1px solid var(--bp-line);
}

.bpir-report-item__date span,
.bpir-report-item__date strong {
  display: block;
}

.bpir-report-item__date span {
  margin-bottom: 8px;
  color: #9c9c9c;
  font-size: 12px;
  font-weight: 700;
}

.bpir-report-item__date strong {
  color: var(--bp-pink);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .8px;
}

.bpir-report-item__content h2 {
  margin: 0;
  color: var(--bp-black);
  font-size: 20px;
  font-weight: 750;
  line-height: 1.35;
}

.bpir-report-item__content p {
  max-width: 790px;
  margin: 10px 0 0;
  color: var(--bp-muted);
  font-size: 13px;
  line-height: 1.65;
}

/* =========================================================
   ESPI
   ========================================================= */

.bpir-espi-head {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  margin-bottom: 30px;
  padding: 36px 0 34px;
  border-bottom: 1px solid var(--bp-line);
}

.bpir-espi-head__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 118px;
  height: 118px;
  border-radius: 50%;
  background: var(--bp-pink);
  color: #fff;
  font-size: 27px;
  font-weight: 900;
  letter-spacing: 1px;
  box-shadow: 0 18px 38px rgba(231,20,133,.23);
}

.bpir-espi-head__copy h1 {
  margin: 12px 0 8px;
  color: var(--bp-black);
  font-size: clamp(38px, 5vw, 58px);
  font-weight: 800;
  letter-spacing: -1.5px;
  line-height: 1.02;
}

.bpir-espi-head__copy p {
  max-width: 720px;
  margin: 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.7;
}

.bpir-espi-head__year {
  color: #efefef;
  font-size: clamp(54px, 8vw, 90px);
  font-weight: 900;
  letter-spacing: -5px;
  line-height: 1;
}

.bpir-espi-list {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--bp-line);
  border-radius: 22px;
  background: var(--bp-line);
}

.bpir-espi-card {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 26px;
  padding: 29px 30px;
  background: #fff;
}

.bpir-espi-card:hover {
  background: #fcfcfc;
}

.bpir-espi-card.is-featured {
  background: linear-gradient(90deg, var(--bp-pink-soft), #fff 38%);
}

.bpir-espi-card__index {
  color: #e2e2e4;
  font-size: 34px;
  font-weight: 900;
  line-height: 1;
}

.bpir-espi-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-bottom: 9px;
  color: #999;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .55px;
  text-transform: uppercase;
}

.bpir-espi-card__main h2 {
  margin: 0;
  color: var(--bp-black);
  font-size: 20px;
  font-weight: 760;
  line-height: 1.4;
}

.bpir-espi-card__main p {
  max-width: 820px;
  margin: 9px 0 0;
  color: var(--bp-muted);
  font-size: 13px;
  line-height: 1.65;
}

/* =========================================================
   Periodic reports
   ========================================================= */

.bpir-periodic-head {
  display: grid;
  grid-template-columns: minmax(300px, .9fr) minmax(320px, 1.1fr);
  gap: 70px;
  align-items: end;
  margin: 24px 0 36px;
  padding: 26px 0 16px;
}

.bpir-periodic-head h1 {
  margin: 14px 0 0;
  color: var(--bp-black);
  font-size: clamp(44px, 7vw, 72px);
  font-weight: 800;
  letter-spacing: -2.7px;
  line-height: .95;
}

.bpir-periodic-head h1 em {
  color: var(--bp-pink);
  font-style: normal;
}

.bpir-periodic-head__aside {
  padding-bottom: 5px;
}

.bpir-periodic-head__aside p {
  max-width: 560px;
  margin: 0;
  color: var(--bp-muted);
  font-size: 15px;
  line-height: 1.8;
}

.bpir-periodic-head__year {
  display: inline-block;
  margin-top: 17px;
  color: var(--bp-black);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.bpir-periodic-feature {
  display: grid;
  grid-template-columns: 210px minmax(0, 1fr);
  overflow: hidden;
  margin-bottom: 22px;
  border-radius: 26px;
  background: var(--bp-black);
  box-shadow: var(--bp-shadow);
}

.bpir-periodic-feature__visual {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 310px;
  padding: 30px;
  background: var(--bp-pink);
  color: #fff;
}

.bpir-periodic-feature__label {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.bpir-periodic-feature__year {
  font-size: 46px;
  font-weight: 900;
  letter-spacing: -2px;
  line-height: 1;
}

.bpir-periodic-feature__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 36px 40px;
}

.bpir-periodic-feature__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-bottom: 12px;
  color: #838383;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .6px;
  text-transform: uppercase;
}

.bpir-periodic-feature h2 {
  max-width: 780px;
  margin: 0;
  color: #fff;
  font-size: clamp(25px, 3.2vw, 36px);
  font-weight: 750;
  line-height: 1.22;
}

.bpir-periodic-feature p {
  max-width: 760px;
  margin: 12px 0 0;
  color: #aaa;
  font-size: 13px;
  line-height: 1.7;
}

.bpir-periodic-feature .bpir-attachment {
  border-color: #343434;
  background: #202020;
  color: #fff !important;
}

.bpir-periodic-feature .bpir-attachment__icon {
  background: var(--bp-pink);
  color: #fff;
}

.bpir-periodic-feature .bpir-attachment__size {
  color: #7e7e7e;
}

.bpir-periodic-list {
  display: grid;
  gap: 0;
  margin-top: 12px;
  border-top: 1px solid var(--bp-line);
}

.bpir-periodic-row {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  gap: 28px;
  padding: 28px 6px;
  border-bottom: 1px solid var(--bp-line);
}

.bpir-periodic-row__date {
  padding-top: 5px;
  color: #999;
  font-size: 12px;
  font-weight: 700;
}

.bpir-periodic-row__number {
  display: inline-block;
  margin-bottom: 6px;
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .75px;
  text-transform: uppercase;
}

.bpir-periodic-row h2 {
  margin: 0;
  color: var(--bp-black);
  font-size: 20px;
  font-weight: 760;
  line-height: 1.35;
}

.bpir-periodic-row p {
  max-width: 790px;
  margin: 8px 0 0;
  color: var(--bp-muted);
  font-size: 13px;
  line-height: 1.65;
}

/* =========================================================
   WZA
   ========================================================= */

.bpir-wza-head {
  display: grid;
  grid-template-columns: minmax(320px, 1fr) minmax(320px, .9fr);
  gap: 60px;
  align-items: end;
  margin: 24px 0 38px;
  padding: 30px 0 16px;
}

.bpir-wza-head h1 {
  margin: 13px 0 0;
  color: var(--bp-black);
  font-size: clamp(42px, 6vw, 66px);
  font-weight: 800;
  letter-spacing: -2px;
  line-height: .98;
}

.bpir-wza-head > p {
  margin: 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.8;
}

.bpir-wza-timeline {
  position: relative;
  display: grid;
  gap: 26px;
}

.bpir-wza-timeline::before {
  content: '';
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 65px;
  width: 1px;
  background: #dedee0;
}

.bpir-wza-meeting {
  position: relative;
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 20px;
}

.bpir-wza-meeting__rail {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding-top: 25px;
}

.bpir-wza-meeting__dot {
  width: 15px;
  height: 15px;
  border: 4px solid #fff;
  border-radius: 50%;
  background: #c7c7c9;
  box-shadow: 0 0 0 1px #d7d7d9;
}

.bpir-wza-meeting.is-latest .bpir-wza-meeting__dot {
  background: var(--bp-pink);
  box-shadow: 0 0 0 1px var(--bp-pink);
}

.bpir-wza-meeting__year {
  color: #b8b8ba;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .8px;
}

.bpir-wza-meeting__card {
  padding: 30px 32px;
  border: 1px solid var(--bp-line);
  border-radius: 22px;
  background: #fff;
}

.bpir-wza-meeting.is-latest .bpir-wza-meeting__card {
  border-color: #d9d9dc;
  box-shadow: var(--bp-shadow);
}

.bpir-wza-meeting__date {
  margin-bottom: 5px;
  color: #999;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .6px;
  text-transform: uppercase;
}

.bpir-wza-meeting__card > h2 {
  margin: 0 0 22px;
  color: var(--bp-black);
  font-size: 28px;
  font-weight: 800;
}

.bpir-wza-documents {
  display: grid;
  gap: 12px;
}

.bpir-wza-document {
  padding: 20px 0 0;
  border-top: 1px solid var(--bp-line);
}

.bpir-wza-document__number {
  display: inline-block;
  margin-bottom: 5px;
  color: var(--bp-pink);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .9px;
  text-transform: uppercase;
}

.bpir-wza-document h3 {
  margin: 0;
  color: #2a2a2a;
  font-size: 16px;
  font-weight: 760;
  line-height: 1.42;
}

.bpir-wza-document p {
  max-width: 790px;
  margin: 7px 0 0;
  color: var(--bp-muted);
  font-size: 12px;
  line-height: 1.6;
}

/* =========================================================
   Corporate documents
   ========================================================= */

.bpir-corporate-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 50px;
  align-items: end;
  margin: 22px 0 38px;
  padding: 40px 42px;
  border-radius: 28px;
  background: #f3f3f4;
}

.bpir-corporate-head h1 {
  margin: 13px 0 12px;
  color: var(--bp-black);
  font-size: clamp(42px, 6vw, 64px);
  font-weight: 800;
  letter-spacing: -2px;
  line-height: .98;
}

.bpir-corporate-head p {
  max-width: 620px;
  margin: 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.75;
}

.bpir-corporate-head__count {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-left: 30px;
  border-left: 1px solid #d9d9dc;
}

.bpir-corporate-head__count strong {
  color: var(--bp-pink);
  font-size: clamp(58px, 7vw, 82px);
  font-weight: 900;
  letter-spacing: -4px;
  line-height: .9;
}

.bpir-corporate-head__count span {
  margin-top: 8px;
  color: #999;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .8px;
  text-transform: uppercase;
}

.bpir-corporate-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}

.bpir-corporate-card {
  display: flex;
  flex-direction: column;
  min-height: 285px;
  padding: 26px;
  border: 1px solid var(--bp-line);
  border-radius: 22px;
  background: #fff;
}

.bpir-corporate-card:hover {
  border-color: #d8d8da;
  box-shadow: 0 14px 38px rgba(0,0,0,.05);
  transform: translateY(-2px);
}

.bpir-corporate-card.is-featured {
  border-color: var(--bp-pink);
}

.bpir-corporate-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 38px;
}

.bpir-corporate-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  border-radius: 12px;
  background: var(--bp-pink-soft);
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .6px;
}

.bpir-corporate-card__index {
  color: #e2e2e4;
  font-size: 28px;
  font-weight: 900;
}

.bpir-corporate-card__meta {
  margin-bottom: 7px;
  color: #aaa;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .45px;
  text-transform: uppercase;
}

.bpir-corporate-card h2 {
  margin: 0;
  color: var(--bp-black);
  font-size: 20px;
  font-weight: 780;
  line-height: 1.35;
}

.bpir-corporate-card p {
  margin: 9px 0 0;
  color: var(--bp-muted);
  font-size: 12px;
  line-height: 1.65;
}

.bpir-corporate-card .bpir-attachments {
  margin-top: auto;
  padding-top: 22px;
}

.bpir-corporate-card .bpir-attachment {
  width: 100%;
}

/* =========================================================
   Calendar
   ========================================================= */

.bpir-calendar-head {
  display: grid;
  grid-template-columns: minmax(320px, 1fr) minmax(300px, .85fr);
  gap: 70px;
  align-items: end;
  margin: 22px 0 42px;
  padding: 26px 0 12px;
}

.bpir-calendar-head h1 {
  margin: 13px 0 0;
  color: var(--bp-black);
  font-size: clamp(43px, 6vw, 66px);
  font-weight: 800;
  letter-spacing: -2px;
  line-height: .98;
}

.bpir-calendar-head > p {
  margin: 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.8;
}

.bpir-calendar-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .65fr);
  gap: 28px;
  align-items: start;
}

.bpir-calendar-section-label {
  margin-bottom: 14px;
  color: #9a9a9a;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.bpir-calendar-stream {
  display: grid;
  gap: 11px;
}

.bpir-calendar-event {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid var(--bp-line);
  border-radius: 20px;
  background: #fff;
}

.bpir-calendar-event.is-next {
  border-color: var(--bp-pink);
  box-shadow: 0 15px 40px rgba(231,20,133,.08);
}

.bpir-calendar-event__date {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 145px;
  padding: 20px 14px;
  background: #f4f4f5;
}

.bpir-calendar-event.is-next .bpir-calendar-event__date {
  background: var(--bp-pink);
  color: #fff;
}

.bpir-calendar-event__date strong {
  color: var(--bp-black);
  font-size: 38px;
  font-weight: 900;
  line-height: 1;
}

.bpir-calendar-event.is-next .bpir-calendar-event__date strong {
  color: #fff;
}

.bpir-calendar-event__date span {
  margin-top: 4px;
  color: #777;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .8px;
  text-transform: uppercase;
}

.bpir-calendar-event.is-next .bpir-calendar-event__date span {
  color: rgba(255,255,255,.9);
}

.bpir-calendar-event__date small {
  margin-top: 3px;
  color: #aaa;
  font-size: 9px;
  font-weight: 750;
}

.bpir-calendar-event.is-next .bpir-calendar-event__date small {
  color: rgba(255,255,255,.75);
}

.bpir-calendar-event__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 25px 28px;
}

.bpir-calendar-event h2 {
  margin: 0;
  color: var(--bp-black);
  font-size: 19px;
  font-weight: 770;
  line-height: 1.4;
}

.bpir-calendar-event p {
  margin: 8px 0 10px;
  color: var(--bp-muted);
  font-size: 12px;
  line-height: 1.6;
}

.bpir-calendar-archive {
  position: sticky;
  top: 24px;
  padding: 28px;
  border-radius: 22px;
  background: var(--bp-black);
  color: #fff;
}

.bpir-calendar-archive__eyebrow {
  color: var(--bp-pink);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.bpir-calendar-archive h2 {
  margin: 8px 0 20px;
  color: #fff;
  font-size: 23px;
  font-weight: 760;
}

.bpir-calendar-archive > p {
  color: #8b8b8b;
  font-size: 12px;
}

.bpir-past-event {
  padding: 15px 0;
  border-top: 1px solid #303030;
}

.bpir-past-event:first-child {
  border-top: 0;
}

.bpir-past-event span,
.bpir-past-event strong {
  display: block;
}

.bpir-past-event span {
  margin-bottom: 5px;
  color: #777;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .5px;
}

.bpir-past-event strong {
  color: #e7e7e7;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}

/* =========================================================
   Tablet
   ========================================================= */

@media (max-width: 1050px) {
  .bpir-nav-shell {
    grid-template-columns: 1fr;
    gap: 13px;
    align-items: start;
  }

  .bpir-nav {
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
  }

  .bpir-nav__link {
    flex: 0 0 auto;
  }

  .bpir-nav__link::after {
    bottom: -3px;
  }

  .bpir-periodic-head,
  .bpir-wza-head,
  .bpir-calendar-head {
    gap: 38px;
  }

  .bpir-calendar-layout {
    grid-template-columns: minmax(0, 1fr) 280px;
  }
}

@media (max-width: 860px) {
  .bpir-page {
    padding-left: 18px;
    padding-right: 18px;
  }

  .bpir-hero--ebi {
    grid-template-columns: minmax(0, 1fr) 190px;
  }

  .bpir-hero__content {
    padding: 40px;
  }

  .bpir-espi-head {
    grid-template-columns: 94px minmax(0, 1fr);
  }

  .bpir-espi-head__badge {
    width: 88px;
    height: 88px;
    font-size: 21px;
  }

  .bpir-espi-head__year {
    display: none;
  }

  .bpir-periodic-head,
  .bpir-wza-head,
  .bpir-calendar-head,
  .bpir-calendar-layout {
    grid-template-columns: 1fr;
  }

  .bpir-periodic-feature {
    grid-template-columns: 150px minmax(0, 1fr);
  }

  .bpir-periodic-feature__visual {
    min-height: 285px;
    padding: 25px;
  }

  .bpir-calendar-archive {
    position: static;
  }
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 680px) {
  .bpir-page {
    padding: 22px 12px 54px;
  }

  .bpir-nav-shell {
    margin-bottom: 30px;
    padding-bottom: 10px;
  }

  .bpir-nav-shell__brand {
    padding-left: 4px;
  }

  .bpir-nav {
    gap: 0;
    margin-left: -4px;
  }

  .bpir-nav__link {
    min-height: 34px;
    padding: 7px 10px;
    font-size: 11px;
  }

  .bpir-nav__link::after {
    left: 10px;
    right: 10px;
  }

  .bpir-archive-bar {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 24px;
    padding: 14px;
  }

  .bpir-years {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
  }

  .bpir-year {
    flex: 0 0 auto;
    min-width: 56px;
  }

  .bpir-hero--ebi {
    grid-template-columns: 1fr;
    min-height: 0;
    border-radius: 22px;
  }

  .bpir-hero__content {
    padding: 30px 24px;
  }

  .bpir-hero--ebi h1 {
    font-size: 43px;
    letter-spacing: -1.5px;
  }

  .bpir-hero__mark {
    display: none;
  }

  .bpir-report-item {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 22px 20px;
  }

  .bpir-report-item__date {
    padding: 0 0 12px;
    border-right: 0;
    border-bottom: 1px solid var(--bp-line);
  }

  .bpir-espi-head {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 15px 0 24px;
  }

  .bpir-espi-head__badge {
    width: 64px;
    height: 64px;
    font-size: 16px;
  }

  .bpir-espi-head__copy h1 {
    font-size: 40px;
  }

  .bpir-espi-card {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px;
    padding: 22px 18px;
  }

  .bpir-espi-card__index {
    font-size: 25px;
  }

  .bpir-periodic-head,
  .bpir-wza-head,
  .bpir-calendar-head {
    margin-top: 8px;
    margin-bottom: 26px;
    padding-top: 10px;
  }

  .bpir-periodic-head h1,
  .bpir-wza-head h1,
  .bpir-calendar-head h1 {
    font-size: 45px;
    letter-spacing: -1.6px;
  }

  .bpir-periodic-feature {
    grid-template-columns: 1fr;
    border-radius: 22px;
  }

  .bpir-periodic-feature__visual {
    flex-direction: row;
    align-items: center;
    min-height: 0;
    padding: 18px 20px;
  }

  .bpir-periodic-feature__year {
    font-size: 28px;
  }

  .bpir-periodic-feature__body {
    padding: 25px 22px;
  }

  .bpir-periodic-feature h2 {
    font-size: 25px;
  }

  .bpir-periodic-row {
    grid-template-columns: 1fr;
    gap: 9px;
    padding: 23px 4px;
  }

  .bpir-wza-timeline::before {
    left: 13px;
  }

  .bpir-wza-meeting {
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 10px;
  }

  .bpir-wza-meeting__rail {
    padding-top: 25px;
  }

  .bpir-wza-meeting__year {
    display: none;
  }

  .bpir-wza-meeting__card {
    padding: 23px 20px;
  }

  .bpir-wza-meeting__card > h2 {
    font-size: 23px;
  }

  .bpir-corporate-head {
    grid-template-columns: 1fr;
    gap: 25px;
    padding: 28px 24px;
    border-radius: 22px;
  }

  .bpir-corporate-head h1 {
    font-size: 44px;
  }

  .bpir-corporate-head__count {
    align-items: flex-start;
    padding: 18px 0 0;
    border-top: 1px solid #d9d9dc;
    border-left: 0;
  }

  .bpir-corporate-head__count strong {
    font-size: 54px;
  }

  .bpir-corporate-grid {
    grid-template-columns: 1fr;
  }

  .bpir-corporate-card {
    min-height: 0;
    padding: 22px;
  }

  .bpir-corporate-card__top {
    margin-bottom: 24px;
  }

  .bpir-calendar-event {
    grid-template-columns: 82px minmax(0, 1fr);
  }

  .bpir-calendar-event__date {
    min-height: 132px;
    padding: 16px 8px;
  }

  .bpir-calendar-event__date strong {
    font-size: 32px;
  }

  .bpir-calendar-event__body {
    padding: 21px 18px;
  }

  .bpir-calendar-archive {
    padding: 24px 22px;
  }

  .bpir-attachments {
    display: grid;
    grid-template-columns: 1fr;
  }

  .bpir-attachment {
    width: 100%;
    min-width: 0;
  }

  .bpir-attachment__label {
    white-space: normal;
  }
}

@media (max-width: 420px) {
  .bpir-page {
    padding-left: 10px;
    padding-right: 10px;
  }

  .bpir-hero__content {
    padding: 27px 20px;
  }

  .bpir-hero--ebi h1,
  .bpir-espi-head__copy h1,
  .bpir-periodic-head h1,
  .bpir-wza-head h1,
  .bpir-calendar-head h1,
  .bpir-corporate-head h1 {
    font-size: 38px;
  }

  .bpir-espi-card {
    grid-template-columns: 1fr;
  }

  .bpir-espi-card__index {
    font-size: 20px;
  }

  .bpir-calendar-event {
    grid-template-columns: 1fr;
  }

  .bpir-calendar-event__date {
    flex-direction: row;
    gap: 7px;
    justify-content: flex-start;
    min-height: 0;
    padding: 14px 18px;
  }

  .bpir-calendar-event__date strong {
    font-size: 25px;
  }

  .bpir-calendar-event__date span,
  .bpir-calendar-event__date small {
    margin: 0;
  }
}

/* =========================================================
   Investor hub / home 1.4.0
   ========================================================= */

.bpir-page--home {
  padding-top: 30px;
}

.bpir-hub-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr);
  gap: 0;
  overflow: hidden;
  margin-bottom: 64px;
  border-radius: 30px;
  background: var(--bp-black);
  box-shadow: 0 24px 70px rgba(20,20,20,.12);
}

.bpir-hub-hero__copy {
  position: relative;
  padding: 62px 58px 66px;
}

.bpir-hub-hero__copy::after {
  content: '';
  position: absolute;
  right: -90px;
  bottom: -130px;
  width: 330px;
  height: 330px;
  border: 70px solid rgba(231,20,133,.09);
  border-radius: 50%;
  pointer-events: none;
}

.bpir-hub-hero__copy h1 {
  position: relative;
  z-index: 1;
  margin: 17px 0 20px;
  color: #fff;
  font-size: clamp(28px, 5.6vw, 72px);
  font-weight: 850;
  letter-spacing: -2.6px;
  line-height: .95;
  white-space: nowrap;
}

.bpir-hub-hero__copy h1 span {
  color: var(--bp-pink);
}

.bpir-hub-hero__copy p {
  position: relative;
  z-index: 1;
  max-width: 670px;
  margin: 0;
  color: #b8b8b8;
  font-size: 16px;
  line-height: 1.75;
}

.bpir-hub-hero__pulse {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 34px;
  border-left: 1px solid #2a2a2a;
  background: #191919;
}

.bpir-hub-pulse__label {
  margin-bottom: 14px;
  color: #727272;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1.35px;
}

.bpir-hub-pulse__item {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 18px 0;
  border-top: 1px solid #2d2d2d;
  color: #fff !important;
  text-decoration: none !important;
}

.bpir-hub-pulse__item:first-of-type {
  border-top-color: #383838;
}

.bpir-hub-pulse__item > span {
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .85px;
  text-transform: uppercase;
}

.bpir-hub-pulse__item strong {
  color: #f5f5f5;
  font-size: 15px;
  line-height: 1.35;
}

.bpir-hub-pulse__item small {
  color: #777;
  font-size: 10px;
  font-weight: 700;
}

.bpir-hub-pulse__item:hover strong {
  color: var(--bp-pink);
}

.bpir-hub-pulse__empty {
  padding: 20px 0;
  border-top: 1px solid #2d2d2d;
  color: #8a8a8a;
  font-size: 13px;
  line-height: 1.7;
}

.bpir-hub-section {
  margin-bottom: 72px;
}

.bpir-hub-section__heading {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
  margin-bottom: 30px;
}

.bpir-hub-section__heading > span {
  color: #d9d9dc;
  font-size: 30px;
  font-weight: 850;
  line-height: 1;
}

.bpir-hub-section__eyebrow {
  margin-bottom: 6px;
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.35px;
}

.bpir-hub-section__heading h2 {
  margin: 0;
  color: var(--bp-black);
  font-size: clamp(28px, 4vw, 38px);
  font-weight: 800;
  letter-spacing: -1px;
}

.bpir-hub-section__heading p {
  max-width: 780px;
  margin: 10px 0 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.7;
}

.bpir-hub-company-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.bpir-hub-company-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 190px;
  padding: 25px;
  overflow: hidden;
  border: 1px solid var(--bp-line);
  border-radius: 22px;
  background: #fff;
  color: var(--bp-black) !important;
  text-decoration: none !important;
}

.bpir-hub-company-card.is-primary {
  border-color: transparent;
  background: var(--bp-pink);
  color: #fff !important;
}

.bpir-hub-card__eyebrow {
  color: #9b9b9b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .9px;
  text-transform: uppercase;
}

.bpir-hub-company-card.is-primary .bpir-hub-card__eyebrow {
  color: rgba(255,255,255,.72);
}

.bpir-hub-company-card strong {
  max-width: 210px;
  margin-top: auto;
  font-size: 22px;
  line-height: 1.15;
}

.bpir-hub-card__arrow {
  position: absolute;
  right: 24px;
  bottom: 22px;
  font-size: 22px;
}

.bpir-hub-company-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--bp-shadow);
}

.bpir-hub-report-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 16px;
}

.bpir-hub-report-card {
  display: flex;
  flex-direction: column;
  grid-column: span 4;
  min-height: 300px;
  padding: 27px;
  border: 1px solid var(--bp-line);
  border-radius: 24px;
  background: #fff;
  color: var(--bp-ink) !important;
  text-decoration: none !important;
}

.bpir-hub-report-card--ebi {
  grid-column: span 5;
  background: var(--bp-black);
  color: #fff !important;
}

.bpir-hub-report-card--espi {
  grid-column: span 3;
}

.bpir-hub-report-card--periodic {
  grid-column: span 4;
  border-color: transparent;
  background: var(--bp-pink);
  color: #fff !important;
}

.bpir-hub-report-card--wza,
.bpir-hub-report-card--corporate,
.bpir-hub-report-card--calendar {
  grid-column: span 4;
  min-height: 245px;
  background: var(--bp-soft);
}

.bpir-hub-report-card__top {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  color: #8f8f8f;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .95px;
  text-transform: uppercase;
}

.bpir-hub-report-card--ebi .bpir-hub-report-card__top,
.bpir-hub-report-card--periodic .bpir-hub-report-card__top {
  color: rgba(255,255,255,.62);
}

.bpir-hub-report-card h3 {
  margin: 24px 0 0;
  color: inherit;
  font-size: 28px;
  font-weight: 820;
  letter-spacing: -.65px;
}

.bpir-hub-report-card__latest {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: auto;
  padding-top: 30px;
}

.bpir-hub-report-card__latest > span {
  color: #aaa;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: 1px;
}

.bpir-hub-report-card__latest strong {
  color: inherit;
  font-size: 13px;
  line-height: 1.4;
}

.bpir-hub-report-card__latest small {
  color: #999;
  font-size: 9px;
}

.bpir-hub-report-card--ebi .bpir-hub-report-card__latest > span,
.bpir-hub-report-card--ebi .bpir-hub-report-card__latest small,
.bpir-hub-report-card--periodic .bpir-hub-report-card__latest > span,
.bpir-hub-report-card--periodic .bpir-hub-report-card__latest small {
  color: rgba(255,255,255,.56);
}

.bpir-hub-report-card__latest.is-empty {
  color: #999;
  font-size: 12px;
}

.bpir-hub-report-card--ebi .bpir-hub-report-card__latest.is-empty,
.bpir-hub-report-card--periodic .bpir-hub-report-card__latest.is-empty {
  color: rgba(255,255,255,.55);
}

.bpir-hub-report-card__footer {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(120,120,120,.16);
  font-size: 11px;
  font-weight: 800;
}

.bpir-hub-report-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--bp-shadow);
}

.bpir-hub-share-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.bpir-hub-share-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 170px;
  padding: 23px;
  border-radius: 20px;
  background: #f4f4f5;
  color: var(--bp-black) !important;
  text-decoration: none !important;
}

.bpir-hub-share-card.is-accent {
  background: #222;
  color: #fff !important;
}

.bpir-hub-share-card.is-accent strong {
  color: #fff !important;
}

.bpir-hub-share-card.is-accent > span {
  color: #bcbcbc !important;
}

.bpir-hub-share-card > span {
  color: #9a9a9a;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .8px;
  text-transform: uppercase;
}

.bpir-hub-share-card strong {
  max-width: 180px;
  margin-top: auto;
  font-size: 18px;
  line-height: 1.25;
}

.bpir-hub-share-card em {
  position: absolute;
  right: 20px;
  bottom: 18px;
  color: var(--bp-pink);
  font-size: 20px;
  font-style: normal;
}

.bpir-hub-share-card:hover {
  transform: translateY(-2px);
}

.bpir-hub-contact {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 30px;
  align-items: center;
  padding: 36px 40px;
  border-radius: 26px;
  background: #f2f2f3;
}

.bpir-hub-contact h2 {
  margin: 10px 0 8px;
  color: var(--bp-black);
  font-size: 28px;
}

.bpir-hub-contact p {
  max-width: 650px;
  margin: 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.65;
}

.bpir-hub-contact > a {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  min-height: 48px;
  padding: 12px 18px;
  border-radius: 14px;
  background: var(--bp-pink);
  color: #fff !important;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none !important;
}

.bpir-hub-contact > a:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(231,20,133,.2);
}

@media (max-width: 980px) {
  .bpir-hub-hero {
    grid-template-columns: 1fr;
  }

  .bpir-hub-hero__pulse {
    border-top: 1px solid #2a2a2a;
    border-left: 0;
  }

  .bpir-hub-report-card--ebi,
  .bpir-hub-report-card--espi,
  .bpir-hub-report-card--periodic,
  .bpir-hub-report-card--wza,
  .bpir-hub-report-card--corporate,
  .bpir-hub-report-card--calendar {
    grid-column: span 6;
  }

  .bpir-hub-share-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 700px) {
  .bpir-hub-hero {
    margin-bottom: 48px;
    border-radius: 22px;
  }

  .bpir-hub-hero__copy {
    padding: 38px 26px 42px;
  }

  .bpir-hub-hero__copy h1 {
    font-size: clamp(30px, 8vw, 52px);
    letter-spacing: -1.8px;
    white-space: nowrap;
  }

  .bpir-hub-hero__pulse {
    padding: 24px 26px;
  }

  .bpir-hub-section {
    margin-bottom: 52px;
  }

  .bpir-hub-section__heading {
    grid-template-columns: 38px minmax(0,1fr);
    gap: 12px;
  }

  .bpir-hub-section__heading > span {
    font-size: 22px;
  }

  .bpir-hub-company-grid,
  .bpir-hub-share-grid {
    grid-template-columns: 1fr;
  }

  .bpir-hub-company-card {
    min-height: 145px;
  }

  .bpir-hub-report-grid {
    grid-template-columns: 1fr;
  }

  .bpir-hub-report-card--ebi,
  .bpir-hub-report-card--espi,
  .bpir-hub-report-card--periodic,
  .bpir-hub-report-card--wza,
  .bpir-hub-report-card--corporate,
  .bpir-hub-report-card--calendar {
    grid-column: auto;
    min-height: 230px;
  }

  .bpir-hub-contact {
    grid-template-columns: 1fr;
    padding: 28px 24px;
  }

  .bpir-hub-contact > a {
    justify-content: space-between;
  }
}

@media (max-width: 420px) {
  .bpir-hub-hero__copy h1 {
    font-size: 8vw;
    letter-spacing: -1.2px;
  }
}


/* =========================================================
   Dokument informacyjny
   ========================================================= */

.bpir-information-head {
  position: relative;
  margin-bottom: 26px;
  overflow: hidden;
  border-radius: 30px;
  background:
    radial-gradient(circle at 86% 20%, rgba(231,20,133,.18) 0, rgba(231,20,133,.18) 90px, transparent 91px),
    radial-gradient(circle at 92% 95%, rgba(255,255,255,.05) 0, rgba(255,255,255,.05) 65px, transparent 66px),
    #151515;
}

.bpir-information-head__copy {
  max-width: 820px;
  padding: 52px 56px;
}

.bpir-information-head h1 {
  margin: 15px 0 16px;
  color: #fff;
  font-size: clamp(40px, 5vw, 60px);
  font-weight: 850;
  letter-spacing: -2px;
  line-height: 1;
}

.bpir-information-head p {
  max-width: 700px;
  margin: 0;
  color: #c4c4c4;
  font-size: 15px;
  line-height: 1.75;
}

.bpir-information-feature {
  position: relative;
  overflow: hidden;
  padding: 34px 36px 36px;
  border: 1px solid var(--bp-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 16px 45px rgba(20,20,20,.055);
}

.bpir-information-feature::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 4px;
  background: var(--bp-pink);
}

.bpir-information-feature__meta,
.bpir-information-row__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.bpir-information-feature__meta span,
.bpir-information-row__meta span {
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.35px;
}

.bpir-information-feature__meta strong,
.bpir-information-row__meta strong {
  color: #8a8a8a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .6px;
}

.bpir-information-feature__content h2 {
  max-width: 880px;
  margin: 0;
  color: var(--bp-black);
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 850;
  letter-spacing: -.7px;
  line-height: 1.15;
}

.bpir-information-feature__content p {
  max-width: 780px;
  margin: 13px 0 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.7;
}

.bpir-information-feature .bpir-attachments {
  margin-top: 24px;
}

.bpir-attachments--information .bpir-attachment {
  min-width: 280px;
  max-width: 560px;
  border-color: #dedee1;
  background: #fafafa;
}

.bpir-attachments--information .bpir-attachment:hover {
  border-color: rgba(231,20,133,.35);
  background: #fff;
  transform: translateY(-1px);
}

.bpir-information-archive {
  margin-top: 48px;
}

.bpir-information-archive__head {
  margin-bottom: 20px;
}

.bpir-information-archive__head h2 {
  margin: 8px 0 0;
  color: var(--bp-black);
  font-size: 27px;
  font-weight: 800;
}

.bpir-information-list {
  display: grid;
  gap: 12px;
}

.bpir-information-row {
  padding: 26px 28px;
  border: 1px solid var(--bp-line);
  border-radius: 19px;
  background: #fff;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.bpir-information-row:hover {
  border-color: #dfdfe2;
  box-shadow: 0 12px 30px rgba(20,20,20,.045);
  transform: translateY(-1px);
}

.bpir-information-row__content h3 {
  margin: 0;
  color: var(--bp-black);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.3;
}

.bpir-information-row__content p {
  max-width: 760px;
  margin: 9px 0 0;
  color: var(--bp-muted);
  font-size: 13px;
  line-height: 1.65;
}

.bpir-information-row .bpir-attachments {
  margin-top: 18px;
}

@media (max-width: 767px) {
  .bpir-information-head {
    border-radius: 24px;
    background:
      radial-gradient(circle at 110% 15%, rgba(231,20,133,.18) 0, rgba(231,20,133,.18) 100px, transparent 101px),
      #151515;
  }

  .bpir-information-head__copy {
    padding: 36px 24px 38px;
  }

  .bpir-information-head h1 {
    font-size: 40px;
    letter-spacing: -1.4px;
  }

  .bpir-information-head p {
    font-size: 14px;
  }

  .bpir-information-feature,
  .bpir-information-row {
    padding: 25px 22px 24px;
  }

  .bpir-information-feature__meta,
  .bpir-information-row__meta {
    margin-bottom: 10px;
  }

  .bpir-information-feature__content h2 {
    font-size: 27px;
  }

  .bpir-information-row__content h3 {
    font-size: 18px;
  }

  .bpir-attachments--information .bpir-attachment {
    width: 100%;
    min-width: 0;
    max-width: none;
  }
}

@media (max-width: 420px) {
  .bpir-information-head h1 {
    font-size: 34px;
  }
}

/* =========================================================
   1.6.0 - unified subpage design system + mobile-first pass
   Periodic reports are the visual baseline for all IR subpages.
   ========================================================= */

.bpir-page--unified {
  overflow: hidden;
}

.bpir-page--unified > * {
  min-width: 0;
}

.bpir-page--unified img,
.bpir-page--unified video,
.bpir-page--unified iframe {
  max-width: 100%;
}

/* Mobile navigation without JavaScript */
.bpir-nav-mobile {
  display: none;
}

.bpir-nav-mobile summary {
  list-style: none;
}

.bpir-nav-mobile summary::-webkit-details-marker {
  display: none;
}

/* One editorial header system for EBI / ESPI / Periodic / WZA / Corporate / Info / Calendar */
.bpir-unified-head {
  grid-template-columns: minmax(300px, .9fr) minmax(320px, 1.1fr);
  gap: clamp(38px, 6vw, 72px);
  align-items: end;
  margin: 24px 0 36px;
  padding: 26px 0 16px;
}

.bpir-unified-head h1 {
  max-width: 680px;
  overflow-wrap: normal;
  word-break: normal;
}

.bpir-unified-head h1 em {
  display: block;
  color: var(--bp-pink);
  font-style: normal;
}

.bpir-unified-head .bpir-periodic-head__aside {
  min-width: 0;
}

/* Shared latest / highlighted publication card */
.bpir-unified-feature {
  width: 100%;
}

.bpir-unified-feature .bpir-periodic-feature__visual {
  min-width: 0;
}

.bpir-unified-feature .bpir-periodic-feature__body {
  min-width: 0;
}

.bpir-unified-feature .bpir-periodic-feature__year {
  overflow-wrap: anywhere;
}

/* Shared document groups, especially WZA */
.bpir-unified-docs {
  display: grid;
  gap: 0;
  margin-top: 24px;
}

.bpir-unified-doc {
  padding: 20px 0 0;
  border-top: 1px solid #303030;
}

.bpir-unified-doc + .bpir-unified-doc {
  margin-top: 20px;
}

.bpir-unified-doc h3 {
  margin: 5px 0 0;
  color: #fff;
  font-size: 17px;
  font-weight: 760;
  line-height: 1.4;
}

.bpir-unified-doc p {
  max-width: 760px;
  margin: 8px 0 0;
  color: #aaa;
  font-size: 13px;
  line-height: 1.65;
}

.bpir-unified-docs--light .bpir-unified-doc {
  border-top-color: var(--bp-line);
}

.bpir-unified-docs--light .bpir-unified-doc h3 {
  color: var(--bp-black);
}

.bpir-unified-docs--light .bpir-unified-doc p {
  color: var(--bp-muted);
}

/* Secondary section headings */
.bpir-subsection-head {
  margin: 48px 0 18px;
}

.bpir-subsection-head h2 {
  margin: 9px 0 0;
  color: var(--bp-black);
  font-size: clamp(24px, 3vw, 30px);
  font-weight: 800;
  letter-spacing: -.55px;
  line-height: 1.2;
}

.bpir-subsection-head--past {
  margin-top: 58px;
}

/* Calendar uses the same highlighted-card language */
.bpir-calendar-feature__visual {
  justify-content: flex-start;
  gap: 8px;
}

.bpir-calendar-feature__day {
  margin-top: auto;
  color: #fff;
  font-size: 70px;
  font-weight: 900;
  letter-spacing: -3px;
  line-height: .9;
}

.bpir-calendar-feature__month {
  color: rgba(255,255,255,.9);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.2;
}

.bpir-feature-link {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 10px;
  margin-top: 20px;
  color: #fff !important;
  font-size: 12px;
  font-weight: 850;
  text-decoration: none !important;
}

.bpir-feature-link:hover {
  color: var(--bp-pink) !important;
  gap: 14px;
}

/* Archive strip: touch-friendly and bounded */
.bpir-archive-bar,
.bpir-years {
  min-width: 0;
}

.bpir-years {
  scrollbar-width: thin;
  scrollbar-color: #d1d1d4 transparent;
}

.bpir-year {
  scroll-snap-align: start;
}

/* Keep attachments readable on narrow cards */
.bpir-attachment__body {
  overflow: hidden;
}

.bpir-attachment__label {
  max-width: 100%;
}

/* =========================================================
   Responsive pass - tablet
   ========================================================= */

@media (max-width: 900px) {
  .bpir-unified-head {
    grid-template-columns: 1fr;
    gap: 18px;
    align-items: start;
    margin-bottom: 28px;
  }

  .bpir-unified-head .bpir-periodic-head__aside {
    max-width: 720px;
    padding-bottom: 0;
  }

  .bpir-unified-head .bpir-periodic-head__aside p {
    max-width: none;
  }

  .bpir-unified-feature {
    grid-template-columns: 165px minmax(0, 1fr);
  }

  .bpir-unified-feature .bpir-periodic-feature__visual {
    min-height: 280px;
    padding: 24px;
  }

  .bpir-unified-feature .bpir-periodic-feature__body {
    padding: 30px;
  }
}

/* =========================================================
   Responsive pass - phones 320-700 px
   ========================================================= */

@media (max-width: 700px) {
  .bpir-page {
    width: 100%;
    max-width: 100%;
    padding: 20px 14px 52px;
    overflow: hidden;
  }

  .bpir-nav-shell {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 28px;
    padding: 0 0 16px;
  }

  .bpir-nav-shell__brand {
    padding: 0;
  }

  .bpir-nav-shell__eyebrow {
    font-size: 9px;
  }

  .bpir-nav-shell__title {
    font-size: 15px;
  }

  .bpir-nav--desktop {
    display: none;
  }

  .bpir-nav-mobile {
    display: block;
    width: 100%;
    border: 1px solid var(--bp-line);
    border-radius: 14px;
    background: #fff;
  }

  .bpir-nav-mobile summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 48px;
    padding: 12px 15px;
    color: var(--bp-black);
    cursor: pointer;
    font-size: 13px;
    font-weight: 800;
  }

  .bpir-nav-mobile__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--bp-soft);
    color: var(--bp-pink);
    font-size: 18px;
    line-height: 1;
    transition: transform .2s ease;
  }

  .bpir-nav-mobile[open] .bpir-nav-mobile__icon {
    transform: rotate(45deg);
  }

  .bpir-nav-mobile__links {
    display: grid;
    grid-template-columns: 1fr;
    padding: 4px 10px 10px;
    border-top: 1px solid var(--bp-line);
  }

  .bpir-nav-mobile__link {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 8px;
    border-bottom: 1px solid #f0f0f1;
    color: #5f5f5f !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none !important;
  }

  .bpir-nav-mobile__link:last-child {
    border-bottom: 0;
  }

  .bpir-nav-mobile__link.is-active {
    color: var(--bp-pink) !important;
  }

  .bpir-unified-head {
    gap: 14px;
    margin: 4px 0 24px;
    padding: 8px 0 4px;
  }

  .bpir-unified-head h1,
  .bpir-periodic-head h1 {
    margin-top: 11px;
    max-width: 100%;
    font-size: clamp(34px, 11vw, 46px);
    letter-spacing: -1.7px;
    line-height: .98;
  }

  .bpir-unified-head .bpir-periodic-head__aside p {
    font-size: 14px;
    line-height: 1.65;
  }

  .bpir-periodic-head__year {
    margin-top: 12px;
    font-size: 10px;
    line-height: 1.5;
  }

  .bpir-archive-bar {
    display: block;
    width: 100%;
    margin-bottom: 22px;
    padding: 14px;
    overflow: hidden;
    border-radius: 16px;
  }

  .bpir-archive-bar__intro {
    margin-bottom: 12px;
  }

  .bpir-years {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 1px 1px 6px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }

  .bpir-year {
    flex: 0 0 auto;
    min-width: 58px;
    min-height: 42px;
    padding: 9px 13px;
  }

  .bpir-unified-feature,
  .bpir-periodic-feature {
    grid-template-columns: 1fr;
    width: 100%;
    margin-bottom: 20px;
    border-radius: 20px;
  }

  .bpir-unified-feature .bpir-periodic-feature__visual,
  .bpir-periodic-feature__visual {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-height: 0;
    padding: 16px 18px;
  }

  .bpir-periodic-feature__label {
    font-size: 9px;
  }

  .bpir-periodic-feature__year {
    font-size: 26px;
    letter-spacing: -1px;
  }

  .bpir-unified-feature .bpir-periodic-feature__body,
  .bpir-periodic-feature__body {
    padding: 24px 20px 22px;
  }

  .bpir-periodic-feature__meta {
    gap: 6px 11px;
    margin-bottom: 10px;
    font-size: 9px;
    line-height: 1.45;
  }

  .bpir-periodic-feature h2,
  .bpir-unified-feature h2 {
    max-width: 100%;
    font-size: clamp(22px, 6.5vw, 28px);
    line-height: 1.24;
    overflow-wrap: anywhere;
  }

  .bpir-periodic-feature p,
  .bpir-unified-feature p {
    font-size: 13px;
    line-height: 1.65;
  }

  .bpir-periodic-list {
    width: 100%;
    min-width: 0;
  }

  .bpir-periodic-row {
    grid-template-columns: 1fr;
    gap: 8px;
    width: 100%;
    min-width: 0;
    padding: 22px 2px;
  }

  .bpir-periodic-row__date {
    padding-top: 0;
    color: #939393;
    font-size: 11px;
  }

  .bpir-periodic-row__body {
    min-width: 0;
  }

  .bpir-periodic-row h2 {
    font-size: 19px;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  .bpir-periodic-row p {
    font-size: 13px;
    line-height: 1.65;
  }

  .bpir-subsection-head {
    margin: 38px 0 14px;
  }

  .bpir-subsection-head h2 {
    font-size: 24px;
  }

  .bpir-unified-docs {
    margin-top: 18px;
  }

  .bpir-unified-doc {
    padding-top: 17px;
  }

  .bpir-unified-doc h3 {
    font-size: 16px;
    overflow-wrap: anywhere;
  }

  .bpir-attachments {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    gap: 8px;
    margin-top: 16px;
  }

  .bpir-attachment,
  .bpir-attachments--information .bpir-attachment {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 56px;
    padding: 9px 11px 9px 9px;
  }

  .bpir-attachment__label {
    display: block;
    overflow: visible;
    white-space: normal;
    text-overflow: clip;
    overflow-wrap: anywhere;
    font-size: 12px;
    line-height: 1.35;
  }

  .bpir-calendar-feature__visual {
    display: grid !important;
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "label day"
      "month day";
    gap: 3px 12px;
  }

  .bpir-calendar-feature__visual .bpir-periodic-feature__label {
    grid-area: label;
    align-self: end;
  }

  .bpir-calendar-feature__day {
    grid-area: day;
    align-self: center;
    margin: 0;
    font-size: 44px;
    letter-spacing: -2px;
  }

  .bpir-calendar-feature__month {
    grid-area: month;
    align-self: start;
    font-size: 10px;
  }

  .bpir-empty {
    padding: 32px 18px;
    border-radius: 16px;
    font-size: 13px;
    line-height: 1.6;
  }
}

@media (max-width: 380px) {
  .bpir-page {
    padding-left: 10px;
    padding-right: 10px;
  }

  .bpir-unified-head h1,
  .bpir-periodic-head h1 {
    font-size: 33px;
    letter-spacing: -1.3px;
  }

  .bpir-unified-feature .bpir-periodic-feature__body,
  .bpir-periodic-feature__body {
    padding: 21px 17px 20px;
  }

  .bpir-periodic-feature h2,
  .bpir-unified-feature h2 {
    font-size: 22px;
  }

  .bpir-archive-bar {
    padding: 12px;
  }

  .bpir-year {
    min-width: 54px;
    min-height: 40px;
    padding-left: 11px;
    padding-right: 11px;
  }

  .bpir-nav-mobile summary {
    padding-left: 13px;
    padding-right: 13px;
  }
}

/* Hub: protect the existing design on small phones as well */
@media (max-width: 700px) {
  .bpir-page--home .bpir-hub-hero__copy h1 {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: normal;
    font-size: clamp(32px, 11vw, 50px);
    line-height: .98;
  }

  .bpir-page--home .bpir-hub-hero__copy,
  .bpir-page--home .bpir-hub-hero__pulse,
  .bpir-page--home .bpir-hub-report-card,
  .bpir-page--home .bpir-hub-company-card,
  .bpir-page--home .bpir-hub-share-card {
    min-width: 0;
  }
}


/* =========================================================
   1.6.1 - Investor hub visual cleanup
   One visual language: white cards, black typography,
   pink only as an accent. The dark hero remains the focal point.
   ========================================================= */

.bpir-page--home .bpir-hub-section {
  margin-bottom: 64px;
}

.bpir-page--home .bpir-hub-section__heading {
  margin-bottom: 24px;
}

.bpir-page--home .bpir-hub-section__heading p {
  display: none;
}

/* Company cards: no single bright-pink tile */
.bpir-page--home .bpir-hub-company-card,
.bpir-page--home .bpir-hub-company-card.is-primary {
  min-height: 168px;
  border: 1px solid var(--bp-line);
  background: #fff;
  color: var(--bp-black) !important;
  box-shadow: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.bpir-page--home .bpir-hub-company-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 24px;
  width: 34px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: var(--bp-pink);
}

.bpir-page--home .bpir-hub-company-card .bpir-hub-card__eyebrow,
.bpir-page--home .bpir-hub-company-card.is-primary .bpir-hub-card__eyebrow {
  color: #9a9a9a;
}

.bpir-page--home .bpir-hub-company-card:hover {
  border-color: #d9d9dc;
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(20,20,20,.07);
}

.bpir-page--home .bpir-hub-company-card:hover strong,
.bpir-page--home .bpir-hub-company-card:hover .bpir-hub-card__arrow {
  color: var(--bp-pink);
}

/* Report area: every card uses the same light surface */
.bpir-page--home .bpir-hub-report-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bpir-page--home .bpir-hub-report-card,
.bpir-page--home .bpir-hub-report-card--ebi,
.bpir-page--home .bpir-hub-report-card--espi,
.bpir-page--home .bpir-hub-report-card--periodic,
.bpir-page--home .bpir-hub-report-card--wza,
.bpir-page--home .bpir-hub-report-card--corporate,
.bpir-page--home .bpir-hub-report-card--calendar {
  position: relative;
  grid-column: auto;
  min-height: 255px;
  padding: 26px;
  overflow: hidden;
  border: 1px solid var(--bp-line);
  background: #fff;
  color: var(--bp-ink) !important;
  box-shadow: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.bpir-page--home .bpir-hub-report-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 26px;
  width: 38px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: var(--bp-pink);
}

.bpir-page--home .bpir-hub-report-card__top,
.bpir-page--home .bpir-hub-report-card--ebi .bpir-hub-report-card__top,
.bpir-page--home .bpir-hub-report-card--periodic .bpir-hub-report-card__top {
  color: #929292;
}

.bpir-page--home .bpir-hub-report-card h3 {
  margin-top: 26px;
  color: var(--bp-black);
  font-size: 25px;
}

.bpir-page--home .bpir-hub-report-card__latest {
  padding-top: 24px;
}

.bpir-page--home .bpir-hub-report-card__latest > span,
.bpir-page--home .bpir-hub-report-card__latest small,
.bpir-page--home .bpir-hub-report-card--ebi .bpir-hub-report-card__latest > span,
.bpir-page--home .bpir-hub-report-card--ebi .bpir-hub-report-card__latest small,
.bpir-page--home .bpir-hub-report-card--periodic .bpir-hub-report-card__latest > span,
.bpir-page--home .bpir-hub-report-card--periodic .bpir-hub-report-card__latest small {
  color: #9b9b9b;
}

.bpir-page--home .bpir-hub-report-card__latest strong {
  color: #333;
}

.bpir-page--home .bpir-hub-report-card__latest.is-empty,
.bpir-page--home .bpir-hub-report-card--ebi .bpir-hub-report-card__latest.is-empty,
.bpir-page--home .bpir-hub-report-card--periodic .bpir-hub-report-card__latest.is-empty {
  color: #999;
}

.bpir-page--home .bpir-hub-report-card__footer {
  border-top-color: #ececef;
  color: #595959;
}

.bpir-page--home .bpir-hub-report-card__footer span {
  color: var(--bp-pink);
}

.bpir-page--home .bpir-hub-report-card:hover {
  border-color: #d9d9dc;
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(20,20,20,.07);
}

/* Shares: same white-card system; no isolated black tile */
.bpir-page--home .bpir-hub-share-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bpir-page--home .bpir-hub-share-card,
.bpir-page--home .bpir-hub-share-card.is-accent {
  min-height: 155px;
  border: 1px solid var(--bp-line);
  background: #fff;
  color: var(--bp-black) !important;
  box-shadow: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.bpir-page--home .bpir-hub-share-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 23px;
  width: 32px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: var(--bp-pink);
}

.bpir-page--home .bpir-hub-share-card.is-accent strong,
.bpir-page--home .bpir-hub-share-card strong {
  color: var(--bp-black) !important;
}

.bpir-page--home .bpir-hub-share-card.is-accent > span,
.bpir-page--home .bpir-hub-share-card > span {
  color: #9a9a9a !important;
}

.bpir-page--home .bpir-hub-share-card:hover {
  border-color: #d9d9dc;
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(20,20,20,.07);
}

/* Contact: quiet call-to-action instead of another large colour block */
.bpir-page--home .bpir-hub-contact {
  border: 1px solid var(--bp-line);
  background: #fff;
}

.bpir-page--home .bpir-hub-contact > a {
  background: var(--bp-black);
}

.bpir-page--home .bpir-hub-contact > a:hover {
  background: var(--bp-pink);
}

@media (max-width: 980px) {
  .bpir-page--home .bpir-hub-report-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .bpir-page--home .bpir-hub-share-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 700px) {
  .bpir-page--home .bpir-hub-section {
    margin-bottom: 46px;
  }

  .bpir-page--home .bpir-hub-report-grid,
  .bpir-page--home .bpir-hub-share-grid,
  .bpir-page--home .bpir-hub-company-grid {
    grid-template-columns: 1fr;
  }

  .bpir-page--home .bpir-hub-company-card,
  .bpir-page--home .bpir-hub-company-card.is-primary,
  .bpir-page--home .bpir-hub-report-card,
  .bpir-page--home .bpir-hub-report-card--ebi,
  .bpir-page--home .bpir-hub-report-card--espi,
  .bpir-page--home .bpir-hub-report-card--periodic,
  .bpir-page--home .bpir-hub-report-card--wza,
  .bpir-page--home .bpir-hub-report-card--corporate,
  .bpir-page--home .bpir-hub-report-card--calendar,
  .bpir-page--home .bpir-hub-share-card,
  .bpir-page--home .bpir-hub-share-card.is-accent {
    min-height: 0;
  }

  .bpir-page--home .bpir-hub-report-card {
    padding: 23px;
  }

  .bpir-page--home .bpir-hub-report-card h3 {
    font-size: 23px;
  }
}

/* =========================================================
   1.7.0 - Wladze / Governance
   Zarzadzalne profile osob, desktop + mobile
   ========================================================= */

.bpir-page--governance .bpir-section-head {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
  gap: 70px;
  align-items: end;
  margin-bottom: 46px;
  padding: 34px 0 36px;
  border-bottom: 1px solid var(--bp-line);
}

.bpir-page--governance .bpir-section-head h1 {
  margin: 13px 0 0;
  color: var(--bp-black);
  font-size: clamp(42px, 5vw, 64px);
  font-weight: 850;
  letter-spacing: -2.2px;
  line-height: .98;
}

.bpir-page--governance .bpir-section-head__intro p {
  max-width: 620px;
  margin: 0;
  color: var(--bp-muted);
  font-size: 15px;
  line-height: 1.75;
}

.bpir-people-section {
  margin-bottom: 64px;
}

.bpir-people-section__heading {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  margin-bottom: 24px;
}

.bpir-people-section__heading > span {
  color: #d9d9dc;
  font-size: 28px;
  font-weight: 850;
  line-height: 1;
}

.bpir-people-section__heading small {
  display: block;
  margin-bottom: 5px;
  color: var(--bp-pink);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1.35px;
}

.bpir-people-section__heading h2 {
  margin: 0;
  color: var(--bp-black);
  font-size: clamp(25px, 3vw, 34px);
  font-weight: 820;
  letter-spacing: -.8px;
  line-height: 1.1;
}

.bpir-management-list {
  display: grid;
  gap: 18px;
}

.bpir-person {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--bp-line);
  background: #fff;
}

.bpir-person--management {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr);
  min-height: 320px;
  border-radius: 24px;
}

.bpir-person__media {
  position: relative;
  min-width: 0;
  overflow: hidden;
  background: #f2f2f3;
}

.bpir-person--management .bpir-person__media {
  min-height: 320px;
}

.bpir-person__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: cover;
  object-position: center top;
}

.bpir-person__fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 230px;
  background: linear-gradient(145deg, #f7f7f8, #ececee);
  color: var(--bp-pink);
  font-size: 46px;
  font-weight: 850;
  letter-spacing: -1px;
}

.bpir-person__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 34px 38px;
}

.bpir-person__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-bottom: 13px;
}

.bpir-person__meta span {
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.05px;
  line-height: 1.35;
  text-transform: uppercase;
}

.bpir-person__meta small {
  padding-left: 12px;
  border-left: 1px solid #ddd;
  color: #999;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.35;
}

.bpir-person__content h3 {
  margin: 0 0 17px;
  color: var(--bp-black);
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 840;
  letter-spacing: -1px;
  line-height: 1.08;
}

.bpir-person__short {
  max-width: 760px;
  color: #666;
  font-size: 14px;
  line-height: 1.75;
}

.bpir-person__short p {
  margin: 0 0 10px;
}

.bpir-person__short p:last-child {
  margin-bottom: 0;
}

.bpir-person__bio {
  margin-top: auto;
  padding-top: 24px;
}

.bpir-person__bio summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  min-height: 46px;
  padding: 12px 0 0;
  border-top: 1px solid var(--bp-line);
  color: var(--bp-black);
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
  list-style: none;
  user-select: none;
}

.bpir-person__bio summary::-webkit-details-marker {
  display: none;
}

.bpir-person__bio summary em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  background: var(--bp-pink-soft);
  color: var(--bp-pink);
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 1;
  transition: transform .2s ease;
}

.bpir-person__bio[open] summary em {
  transform: rotate(45deg);
}

.bpir-person__bio-content {
  padding: 16px 0 4px;
  color: #626262;
  font-size: 14px;
  line-height: 1.8;
}

.bpir-person__bio-content p {
  margin: 0 0 12px;
}

.bpir-person__bio-content p:last-child {
  margin-bottom: 0;
}

.bpir-supervisory-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.bpir-person--supervisory {
  display: grid;
  grid-template-columns: 128px minmax(0, 1fr);
  min-height: 250px;
  border-radius: 22px;
}

.bpir-person--supervisory .bpir-person__media {
  min-height: 250px;
}

.bpir-person--supervisory .bpir-person__fallback {
  min-height: 250px;
  font-size: 34px;
}

.bpir-person--supervisory .bpir-person__content {
  padding: 26px 26px 24px;
}

.bpir-person--supervisory .bpir-person__content h3 {
  margin-bottom: 13px;
  font-size: 24px;
  letter-spacing: -.6px;
}

.bpir-person--supervisory .bpir-person__short {
  font-size: 13px;
  line-height: 1.65;
}

.bpir-person--supervisory .bpir-person__bio {
  padding-top: 18px;
}

.bpir-empty-state {
  padding: 34px;
  border: 1px dashed #dcdcdf;
  border-radius: 18px;
  color: #929292;
  text-align: center;
  font-size: 13px;
}

@media (max-width: 980px) {
  .bpir-page--governance .bpir-section-head {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .bpir-person--management {
    grid-template-columns: 220px minmax(0, 1fr);
  }

  .bpir-supervisory-grid {
    grid-template-columns: 1fr;
  }

  .bpir-person--supervisory {
    grid-template-columns: 160px minmax(0, 1fr);
  }
}

@media (max-width: 680px) {
  .bpir-page--governance .bpir-section-head {
    margin-bottom: 34px;
    padding: 20px 2px 26px;
  }

  .bpir-page--governance .bpir-section-head h1 {
    font-size: clamp(34px, 10vw, 46px);
    letter-spacing: -1.5px;
  }

  .bpir-people-section {
    margin-bottom: 48px;
  }

  .bpir-people-section__heading {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 10px;
    margin-bottom: 18px;
  }

  .bpir-people-section__heading > span {
    font-size: 20px;
  }

  .bpir-person--management,
  .bpir-person--supervisory {
    grid-template-columns: 1fr;
    min-height: 0;
    border-radius: 20px;
  }

  .bpir-person--management .bpir-person__media,
  .bpir-person--supervisory .bpir-person__media {
    width: 100%;
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  .bpir-person--management .bpir-person__media img,
  .bpir-person--supervisory .bpir-person__media img {
    min-height: 0;
  }

  .bpir-person__fallback,
  .bpir-person--supervisory .bpir-person__fallback {
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  .bpir-person__content,
  .bpir-person--supervisory .bpir-person__content {
    padding: 24px 22px;
  }

  .bpir-person__content h3,
  .bpir-person--supervisory .bpir-person__content h3 {
    font-size: 25px;
  }

  .bpir-person__meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .bpir-person__meta small {
    padding-left: 0;
    border-left: 0;
  }

  .bpir-person__bio summary {
    min-height: 48px;
  }
}

@media (max-width: 420px) {
  .bpir-person--management .bpir-person__media,
  .bpir-person--supervisory .bpir-person__media,
  .bpir-person__fallback,
  .bpir-person--supervisory .bpir-person__fallback {
    aspect-ratio: 1 / 1;
  }

  .bpir-person__content,
  .bpir-person--supervisory .bpir-person__content {
    padding: 21px 18px;
  }

  .bpir-person__short,
  .bpir-person--supervisory .bpir-person__short,
  .bpir-person__bio-content {
    font-size: 13px;
  }
}


/* =========================================================
   1.7.1 - spokojniejsze powierzchnie i spojne nazewnictwo
   Delikatna szarosc oddziela karty od bialego tla strony.
   ========================================================= */

.bpir-page--home .bpir-hub-company-card,
.bpir-page--home .bpir-hub-company-card.is-primary,
.bpir-page--home .bpir-hub-report-card,
.bpir-page--home .bpir-hub-report-card--ebi,
.bpir-page--home .bpir-hub-report-card--espi,
.bpir-page--home .bpir-hub-report-card--periodic,
.bpir-page--home .bpir-hub-report-card--wza,
.bpir-page--home .bpir-hub-report-card--corporate,
.bpir-page--home .bpir-hub-report-card--calendar,
.bpir-page--home .bpir-hub-share-card,
.bpir-page--home .bpir-hub-share-card.is-accent,
.bpir-page--home .bpir-hub-contact {
  background: #f6f6f7;
  border-color: #e7e7e9;
}

.bpir-page--home .bpir-hub-company-card:hover,
.bpir-page--home .bpir-hub-report-card:hover,
.bpir-page--home .bpir-hub-share-card:hover {
  background: #fff;
  border-color: #d8d8db;
}

.bpir-page--governance .bpir-person {
  background: #f7f7f8;
  border-color: #e6e6e8;
}

.bpir-page--governance .bpir-person__content {
  background: #f7f7f8;
}

@media (max-width: 680px) {
  .bpir-page--home .bpir-hub-company-card,
  .bpir-page--home .bpir-hub-report-card,
  .bpir-page--home .bpir-hub-share-card,
  .bpir-page--home .bpir-hub-contact,
  .bpir-page--governance .bpir-person,
  .bpir-page--governance .bpir-person__content {
    background: #f6f6f7;
  }
}


/* =========================================================
   1.7.2 - navigation mirrors the investor hub
   Grouped desktop navigation avoids horizontal scrolling and
   exposes every hub destination without overloading the bar.
   ========================================================= */

.bpir-nav-shell {
  grid-template-columns: 190px minmax(0, 1fr);
  align-items: end;
}

.bpir-nav--desktop {
  align-items: center;
  justify-content: flex-end;
  gap: 2px;
  overflow: visible;
}

.bpir-nav-group {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.bpir-nav-group__trigger {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  margin: 0;
  padding: 8px 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #707070;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  appearance: none;
}

.bpir-nav-group__trigger > span {
  margin-top: -2px;
  color: #a0a0a0;
  font-size: 14px;
  transition: transform .18s ease;
}

.bpir-nav-group:hover .bpir-nav-group__trigger,
.bpir-nav-group:focus-within .bpir-nav-group__trigger,
.bpir-nav-group.is-active .bpir-nav-group__trigger {
  color: var(--bp-pink);
}

.bpir-nav-group:hover .bpir-nav-group__trigger > span,
.bpir-nav-group:focus-within .bpir-nav-group__trigger > span {
  transform: rotate(180deg);
}

.bpir-nav-group__menu {
  position: absolute;
  z-index: 60;
  top: calc(100% + 10px);
  left: 50%;
  display: grid;
  width: 270px;
  padding: 8px;
  border: 1px solid #e4e4e6;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 50px rgba(20,20,20,.13);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, -5px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.bpir-nav-group:hover .bpir-nav-group__menu,
.bpir-nav-group:focus-within .bpir-nav-group__menu {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

.bpir-nav-group__link {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 11px 12px;
  border-radius: 10px;
  color: var(--bp-black) !important;
  text-decoration: none !important;
}

.bpir-nav-group__link span {
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

.bpir-nav-group__link small {
  color: #999;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .4px;
  line-height: 1.3;
  text-transform: uppercase;
}

.bpir-nav-group__link:hover,
.bpir-nav-group__link.is-active {
  background: #f5f5f6;
}

.bpir-nav-group__link:hover span,
.bpir-nav-group__link.is-active span {
  color: var(--bp-pink);
}

/* Hero copy requested for the hub */
.bpir-hub-hero__intro {
  display: grid;
  gap: 9px;
}

.bpir-hub-hero__intro strong {
  display: block;
  color: #fff;
  font-size: clamp(17px, 2vw, 20px);
  font-weight: 800;
  line-height: 1.35;
}

.bpir-hub-hero__intro span {
  display: block;
  color: #b8b8b8;
}

/* The hub follows the same information architecture as the nav */
.bpir-page--home .bpir-hub-report-grid {
  grid-template-columns: repeat(3, minmax(0,1fr));
}

.bpir-page--home .bpir-hub-resource-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}

.bpir-page--home .bpir-hub-resource-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 155px;
  padding: 23px;
  overflow: hidden;
  border: 1px solid #e7e7e9;
  border-radius: 20px;
  background: #f6f6f7;
  color: var(--bp-black) !important;
  text-decoration: none !important;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.bpir-page--home .bpir-hub-resource-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 23px;
  width: 32px;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: var(--bp-pink);
}

.bpir-hub-resource-card__eyebrow {
  color: #999;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .8px;
  line-height: 1.35;
  text-transform: uppercase;
}

.bpir-hub-resource-card strong {
  max-width: 190px;
  margin-top: auto;
  padding-top: 24px;
  color: var(--bp-black);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.bpir-hub-resource-card > small {
  margin-top: 7px;
  color: #9a9a9a;
  font-size: 10px;
  font-weight: 700;
}

.bpir-hub-resource-card__latest {
  margin-top: 5px;
  color: #9a9a9a;
  font-size: 10px;
  font-weight: 700;
}

.bpir-hub-resource-card em {
  position: absolute;
  right: 20px;
  bottom: 18px;
  color: var(--bp-pink);
  font-size: 20px;
  font-style: normal;
}

.bpir-page--home .bpir-hub-resource-card:hover {
  border-color: #d8d8db;
  background: #fff;
  box-shadow: 0 14px 34px rgba(20,20,20,.07);
  transform: translateY(-2px);
}

/* Mobile grouped menu: no horizontal scrolling, all destinations visible */
.bpir-nav-mobile__group {
  display: grid;
  padding: 8px 0 5px;
  border-bottom: 1px solid #f0f0f1;
}

.bpir-nav-mobile__group:last-child {
  border-bottom: 0;
}

.bpir-nav-mobile__group-title {
  padding: 8px 8px 5px;
  color: #9a9a9a;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.bpir-nav-mobile__link--child {
  padding-left: 14px;
  border-bottom: 0;
}

@media (max-width: 1080px) and (min-width: 701px) {
  .bpir-nav-shell {
    grid-template-columns: 155px minmax(0, 1fr);
    gap: 16px;
  }

  .bpir-nav__link,
  .bpir-nav-group__trigger {
    padding-left: 7px;
    padding-right: 7px;
    font-size: 11px;
  }
}

@media (max-width: 980px) {
  .bpir-page--home .bpir-hub-resource-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 700px) {
  .bpir-hub-hero__intro strong {
    font-size: 17px;
  }

  .bpir-hub-hero__intro span {
    font-size: 14px;
    line-height: 1.65;
  }

  .bpir-page--home .bpir-hub-resource-grid {
    grid-template-columns: 1fr;
  }

  .bpir-page--home .bpir-hub-resource-card {
    min-height: 0;
    padding: 22px;
  }

  .bpir-hub-resource-card strong {
    max-width: calc(100% - 34px);
    margin-top: 0;
    padding-top: 18px;
  }
}


/* =========================================================
   1.7.3 - wspolny powrot do huba na wszystkich podstronach
   ========================================================= */
.bpir-return {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr);
  gap: 28px;
  align-items: center;
  margin-top: 54px;
  padding: 30px 32px;
  border: 1px solid #e7e7e9;
  border-radius: 24px;
  background: #f6f6f7;
}
.bpir-return__eyebrow {
  display: block;
  margin-bottom: 8px;
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 1.4px;
}
.bpir-return h2 {
  margin: 0 0 8px;
  color: var(--bp-black);
  font-size: clamp(22px,3vw,30px);
  line-height: 1.2;
}
.bpir-return p {
  max-width: 650px;
  margin: 0;
  color: #717171;
  font-size: 14px;
  line-height: 1.7;
}
.bpir-return__actions {
  display: grid;
  gap: 12px;
}
.bpir-return__main {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 12px 18px;
  border-radius: 14px;
  background: var(--bp-black);
  color: #fff !important;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none !important;
}
.bpir-return__main:hover {
  background: var(--bp-pink);
  color: #fff !important;
  transform: translateY(-1px);
}
.bpir-return__shortcuts {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
.bpir-return__shortcuts a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 10px;
  border-radius: 9px;
  color: #666 !important;
  font-size: 11px;
  font-weight: 750;
  text-decoration: none !important;
}
.bpir-return__shortcuts a:hover {
  background: #fff;
  color: var(--bp-pink) !important;
}
@media (max-width:760px) {
  .bpir-return {
    grid-template-columns: 1fr;
    gap: 22px;
    margin-top: 38px;
    padding: 24px 20px;
    border-radius: 20px;
  }
  .bpir-return__main {
    width: 100%;
    min-height: 52px;
  }
  .bpir-return__shortcuts {
    justify-content: flex-start;
    gap: 5px;
  }
  .bpir-return__shortcuts a {
    padding: 7px 8px;
  }
}


/* =========================================================
   1.7.4 - osobny, mocny CTA kontaktowy na hubie
   ========================================================= */
.bpir-page--home .bpir-hub-resource-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bpir-hub-contact-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 36px;
  align-items: center;
  margin-top: 42px;
  padding: 42px 44px;
  overflow: hidden;
  border-radius: 26px;
  background: #171717;
  color: #fff;
  box-shadow: 0 18px 48px rgba(20,20,20,.10);
}

.bpir-hub-contact-cta::before {
  content: '';
  position: absolute;
  right: 100px;
  top: -95px;
  width: 235px;
  height: 235px;
  border-radius: 50%;
  background: var(--bp-pink);
  opacity: .10;
  pointer-events: none;
}

.bpir-hub-contact-cta::after {
  content: '';
  position: absolute;
  right: 8px;
  bottom: -90px;
  width: 190px;
  height: 190px;
  border: 34px solid rgba(255,255,255,.04);
  border-radius: 50%;
  pointer-events: none;
}

.bpir-hub-contact-cta__copy {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.bpir-hub-contact-cta__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 13px;
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 1.45px;
  line-height: 1.2;
  text-transform: uppercase;
}

.bpir-hub-contact-cta__eyebrow::before {
  content: '';
  width: 25px;
  height: 2px;
  background: var(--bp-pink);
}

.bpir-hub-contact-cta h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: clamp(28px, 4vw, 40px);
  font-weight: 850;
  line-height: 1.1;
  letter-spacing: -.6px;
}

.bpir-hub-contact-cta p {
  max-width: 720px;
  margin: 0;
  color: #b9b9b9;
  font-size: 14px;
  line-height: 1.75;
}

.bpir-hub-contact-cta__button {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 220px;
  min-height: 54px;
  padding: 14px 20px;
  border-radius: 15px;
  background: var(--bp-pink);
  color: #fff !important;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.2;
  text-decoration: none !important;
  box-shadow: 0 12px 30px rgba(231,20,133,.18);
}

.bpir-hub-contact-cta__button em {
  font-size: 20px;
  font-style: normal;
  line-height: 1;
  transition: transform .18s ease;
}

.bpir-hub-contact-cta__button:hover {
  background: #fff;
  color: var(--bp-black) !important;
  transform: translateY(-2px);
}

.bpir-hub-contact-cta__button:hover em {
  transform: translateX(3px);
}

@media (max-width: 980px) {
  .bpir-page--home .bpir-hub-resource-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }

  .bpir-hub-contact-cta {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .bpir-hub-contact-cta__button {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  .bpir-page--home .bpir-hub-resource-grid {
    grid-template-columns: 1fr;
  }

  .bpir-hub-contact-cta {
    margin-top: 30px;
    padding: 30px 24px;
    border-radius: 22px;
  }

  .bpir-hub-contact-cta::before {
    right: -75px;
    top: -80px;
    width: 190px;
    height: 190px;
  }

  .bpir-hub-contact-cta::after {
    display: none;
  }

  .bpir-hub-contact-cta h2 {
    font-size: clamp(27px, 8vw, 34px);
  }

  .bpir-hub-contact-cta p {
    font-size: 14px;
    line-height: 1.7;
  }

  .bpir-hub-contact-cta__button {
    width: 100%;
    min-width: 0;
    min-height: 54px;
  }
}


/* =========================================================
   1.7.5 - Governance: one person per row
   Long biographies expand below the person header at full width.
   ========================================================= */

.bpir-page--governance .bpir-management-list,
.bpir-page--governance .bpir-supervisory-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}

.bpir-page--governance .bpir-person--management,
.bpir-page--governance .bpir-person--supervisory {
  display: block;
  width: 100%;
  min-height: 0;
  border-radius: 22px;
}

.bpir-page--governance .bpir-person__summary {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  width: 100%;
  min-width: 0;
}

.bpir-page--governance .bpir-person__summary.no-photo {
  grid-template-columns: 1fr;
}

.bpir-page--governance .bpir-person--management .bpir-person__summary.has-photo {
  grid-template-columns: 230px minmax(0, 1fr);
}

.bpir-page--governance .bpir-person__summary .bpir-person__media,
.bpir-page--governance .bpir-person--management .bpir-person__summary .bpir-person__media,
.bpir-page--governance .bpir-person--supervisory .bpir-person__summary .bpir-person__media {
  min-height: 230px;
  max-height: 300px;
  background: #eeeeef;
}

.bpir-page--governance .bpir-person--management .bpir-person__summary .bpir-person__media {
  min-height: 280px;
  max-height: 340px;
}

.bpir-page--governance .bpir-person__summary .bpir-person__media img {
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center top;
}

.bpir-page--governance .bpir-person__summary .bpir-person__content,
.bpir-page--governance .bpir-person--supervisory .bpir-person__summary .bpir-person__content {
  min-width: 0;
  padding: 30px 34px;
}

.bpir-page--governance .bpir-person__summary.no-photo .bpir-person__content {
  padding: 30px 34px 28px;
}

.bpir-page--governance .bpir-person--supervisory .bpir-person__content h3 {
  font-size: clamp(25px, 2.6vw, 32px);
}

.bpir-page--governance .bpir-person--supervisory .bpir-person__short,
.bpir-page--governance .bpir-person--management .bpir-person__short {
  max-width: 900px;
  font-size: 14px;
  line-height: 1.75;
}

.bpir-page--governance .bpir-person__bio,
.bpir-page--governance .bpir-person--supervisory .bpir-person__bio,
.bpir-page--governance .bpir-person--management .bpir-person__bio {
  width: 100%;
  margin: 0;
  padding: 0 34px 28px;
  box-sizing: border-box;
  background: #f7f7f8;
}

.bpir-page--governance .bpir-person__bio summary {
  min-height: 52px;
  padding: 15px 0 0;
  border-top: 1px solid #dedee1;
  font-size: 12px;
}

.bpir-page--governance .bpir-person__bio-content {
  width: 100%;
  max-width: none;
  padding: 24px 0 6px;
  box-sizing: border-box;
}

.bpir-page--governance .bpir-person__bio-content > *:first-child {
  margin-top: 0;
}

.bpir-page--governance .bpir-person__bio-content img,
.bpir-page--governance .bpir-person__bio-content iframe,
.bpir-page--governance .bpir-person__bio-content table {
  max-width: 100%;
}

@media (max-width: 760px) {
  .bpir-page--governance .bpir-person__summary,
  .bpir-page--governance .bpir-person__summary.has-photo,
  .bpir-page--governance .bpir-person--management .bpir-person__summary.has-photo {
    grid-template-columns: 1fr;
  }

  .bpir-page--governance .bpir-person__summary .bpir-person__media,
  .bpir-page--governance .bpir-person--management .bpir-person__summary .bpir-person__media,
  .bpir-page--governance .bpir-person--supervisory .bpir-person__summary .bpir-person__media {
    width: 100%;
    min-height: 0;
    max-height: none;
    aspect-ratio: 16 / 10;
  }

  .bpir-page--governance .bpir-person__summary .bpir-person__content,
  .bpir-page--governance .bpir-person__summary.no-photo .bpir-person__content,
  .bpir-page--governance .bpir-person--supervisory .bpir-person__summary .bpir-person__content {
    padding: 24px 22px 22px;
  }

  .bpir-page--governance .bpir-person__bio,
  .bpir-page--governance .bpir-person--supervisory .bpir-person__bio,
  .bpir-page--governance .bpir-person--management .bpir-person__bio {
    padding: 0 22px 23px;
  }

  .bpir-page--governance .bpir-person__bio-content {
    padding-top: 19px;
  }
}

@media (max-width: 420px) {
  .bpir-page--governance .bpir-person__summary .bpir-person__content,
  .bpir-page--governance .bpir-person__summary.no-photo .bpir-person__content,
  .bpir-page--governance .bpir-person--supervisory .bpir-person__summary .bpir-person__content {
    padding: 21px 18px 19px;
  }

  .bpir-page--governance .bpir-person__bio,
  .bpir-page--governance .bpir-person--supervisory .bpir-person__bio,
  .bpir-page--governance .bpir-person--management .bpir-person__bio {
    padding: 0 18px 20px;
  }
}


/* =========================================================
   1.7.6 - universal, prominent bottom navigation
   ========================================================= */
.bpir-page .bpir-return {
  display: block;
  margin-top: 58px;
  padding: 30px;
  border: 1px solid #e2e2e5;
  border-radius: 24px;
  background: #f6f6f7;
  box-shadow: none;
}
.bpir-page .bpir-return__top {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 28px;
  align-items: center;
}
.bpir-page .bpir-return__copy { min-width: 0; }
.bpir-page .bpir-return__eyebrow {
  display: block;
  margin-bottom: 8px;
  color: var(--bp-pink);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 1.4px;
}
.bpir-page .bpir-return h2 {
  margin: 0 0 8px;
  color: var(--bp-black);
  font-size: clamp(22px,3vw,30px);
  line-height: 1.2;
}
.bpir-page .bpir-return p {
  max-width: 690px;
  margin: 0;
  color: #707070;
  font-size: 14px;
  line-height: 1.7;
}
.bpir-page .bpir-return__main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 14px 20px;
  border-radius: 15px;
  background: var(--bp-black);
  color: #fff !important;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none !important;
  white-space: nowrap;
}
.bpir-page .bpir-return__main:hover {
  background: var(--bp-pink);
  color: #fff !important;
  transform: translateY(-1px);
}
.bpir-page .bpir-return__shortcuts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-top: 22px;
}
.bpir-page .bpir-return__shortcuts a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 64px;
  padding: 15px 17px;
  border: 1px solid #e3e3e6;
  border-radius: 14px;
  background: #fff;
  color: #292929 !important;
  font-size: 12px;
  font-weight: 750;
  text-decoration: none !important;
}
.bpir-page .bpir-return__shortcuts a em {
  color: var(--bp-pink);
  font-size: 18px;
  font-style: normal;
}
.bpir-page .bpir-return__shortcuts a:hover {
  border-color: var(--bp-pink);
  color: var(--bp-pink) !important;
  transform: translateY(-1px);
}
@media (max-width:760px) {
  .bpir-page .bpir-return {
    margin-top: 38px;
    padding: 24px 20px;
    border-radius: 20px;
  }
  .bpir-page .bpir-return__top {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .bpir-page .bpir-return__main {
    width: 100%;
    white-space: normal;
  }
  .bpir-page .bpir-return__shortcuts {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 18px;
  }
  .bpir-page .bpir-return__shortcuts a { min-height: 54px; }
}


/* =========================================================
   1.7.8 - contrast-safe return navigation + single contact CTA
   ========================================================= */
.bpir-page .bpir-return__main,
.bpir-page .bpir-return__main:link,
.bpir-page .bpir-return__main:visited,
.bpir-page .bpir-return__main span,
.bpir-page .bpir-return__main strong {
  color: #fff !important;
}
.bpir-page .bpir-return__main {
  background: #e71485 !important;
}
.bpir-page .bpir-return__main:hover,
.bpir-page .bpir-return__main:focus {
  background: #171717 !important;
  color: #fff !important;
}
.bpir-page .bpir-return__shortcuts a,
.bpir-page .bpir-return__shortcuts a:link,
.bpir-page .bpir-return__shortcuts a:visited,
.bpir-page .bpir-return__shortcuts a span:first-child {
  color: #242424 !important;
}
.bpir-page .bpir-return__shortcuts a span:last-child {
  color: #e71485 !important;
}

@media (max-width: 760px) {
  .bpir-hub-contact-single__inner {
    grid-template-columns: 1fr !important;
    justify-items: start;
  }
  .bpir-hub-contact-single__button {
    width: 100% !important;
    white-space: normal !important;
  }
}


/* =========================================================
   1.9.1 - definitive mobile layout fix for Investor Hub
   Must stay at the end of the stylesheet: earlier desktop
   declarations reintroduced 3 report columns on small screens.
   ========================================================= */
@media (max-width: 700px) {
  .bpir-page--home {
    width: 100%;
    max-width: 100%;
    padding-left: 14px;
    padding-right: 14px;
    overflow-x: clip;
  }

  .bpir-page--home .bpir-hub-section,
  .bpir-page--home .bpir-hub-section__heading,
  .bpir-page--home .bpir-hub-report-grid,
  .bpir-page--home .bpir-hub-company-grid,
  .bpir-page--home .bpir-hub-share-grid,
  .bpir-page--home .bpir-hub-resource-grid {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .bpir-page--home .bpir-hub-section__heading {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
  }

  .bpir-page--home .bpir-hub-section__heading > span {
    min-width: 0;
    font-size: 22px;
    line-height: 1;
  }

  .bpir-page--home .bpir-hub-section__heading h2 {
    max-width: 100%;
    font-size: clamp(26px, 8.5vw, 34px);
    line-height: 1.08;
    overflow-wrap: anywhere;
  }

  .bpir-page--home .bpir-hub-report-grid,
  .bpir-page--home .bpir-hub-company-grid,
  .bpir-page--home .bpir-hub-share-grid,
  .bpir-page--home .bpir-hub-resource-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px;
  }

  .bpir-page--home .bpir-hub-report-card,
  .bpir-page--home .bpir-hub-report-card--ebi,
  .bpir-page--home .bpir-hub-report-card--espi,
  .bpir-page--home .bpir-hub-report-card--periodic,
  .bpir-page--home .bpir-hub-report-card--wza,
  .bpir-page--home .bpir-hub-report-card--corporate,
  .bpir-page--home .bpir-hub-report-card--calendar,
  .bpir-page--home .bpir-hub-company-card,
  .bpir-page--home .bpir-hub-share-card,
  .bpir-page--home .bpir-hub-resource-card {
    grid-column: 1 / -1 !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  .bpir-page--home .bpir-hub-report-card {
    min-height: 0;
    padding: 22px 20px;
    border-radius: 20px;
  }

  .bpir-page--home .bpir-hub-report-card__top {
    flex-wrap: wrap;
    align-items: flex-start;
    row-gap: 7px;
    max-width: 100%;
  }

  .bpir-page--home .bpir-hub-report-card__top > span,
  .bpir-page--home .bpir-hub-report-card__top > small,
  .bpir-page--home .bpir-hub-report-card h3,
  .bpir-page--home .bpir-hub-report-card__latest,
  .bpir-page--home .bpir-hub-report-card__latest strong,
  .bpir-page--home .bpir-hub-report-card__footer {
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .bpir-page--home .bpir-hub-report-card h3 {
    margin-top: 20px;
    font-size: clamp(22px, 7vw, 27px);
    line-height: 1.12;
  }

  .bpir-page--home .bpir-hub-report-card__latest {
    padding-top: 22px;
  }

  .bpir-page--home .bpir-hub-report-card__footer {
    align-items: center;
  }
}

@media (max-width: 420px) {
  .bpir-page--home {
    padding-left: 10px;
    padding-right: 10px;
  }

  .bpir-page--home .bpir-hub-section__heading {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 8px;
  }

  .bpir-page--home .bpir-hub-section__heading > span {
    font-size: 20px;
  }

  .bpir-page--home .bpir-hub-section__heading h2 {
    font-size: clamp(24px, 8.7vw, 30px);
  }

  .bpir-page--home .bpir-hub-report-card {
    padding: 20px 17px;
    border-radius: 18px;
  }
}
