@font-face {
  font-family: "Archivo";
  src: url("/brand/v4/fonts/archivo/Archivo-Variable.woff2") format("woff2");
  font-display: swap;
  font-style: normal;
  font-weight: 100 900;
}

.public-entry {
  min-height: 100vh;
  box-sizing: border-box;
  padding: clamp(18px, 3vw, 42px);
  border-top: 6px solid #244bd8;
  background: #f3ebdd;
  color: #101631;
  font-family: "Archivo", Arial, sans-serif;
}

.public-entry *, .public-entry *::before, .public-entry *::after { box-sizing: border-box; }
.public-entry a { color: inherit; font-weight: 700; text-underline-offset: 4px; }
.public-entry__header, .public-entry__hero, .public-entry__commercial, .public-entry__footer { width: min(1120px, 100%); margin-inline: auto; }
.public-entry__header { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.public-entry__header img { width: min(228px, 44vw); height: auto; }
.public-entry__header nav, .public-entry__actions, .public-entry__footer nav { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.public-entry__primary { display: inline-flex; min-height: 44px; align-items: center; padding: 10px 18px; background: #244bd8; color: #fff !important; text-decoration: none; }
.public-entry__hero { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr); gap: clamp(32px, 8vw, 110px); align-items: end; padding-block: clamp(70px, 12vw, 150px); }
.public-entry__eyebrow { margin: 0 0 14px; color: #244bd8; font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.public-entry h1 { max-width: 760px; margin: 0; font-size: clamp(58px, 9vw, 126px); font-weight: 900; letter-spacing: -.065em; line-height: .83; }
.public-entry__hero > div > p:not(.public-entry__eyebrow, .public-entry__actions) { max-width: 680px; margin: 28px 0 0; font-size: clamp(18px, 2.2vw, 28px); line-height: 1.35; }
.public-entry__actions { margin: 30px 0 0; }
.public-entry__hero dl { margin: 0; border-block: 1px solid rgba(16, 22, 49, .35); }
.public-entry__hero dl div { display: grid; grid-template-columns: 72px 1fr; align-items: center; min-height: 82px; border-bottom: 1px solid rgba(16, 22, 49, .18); }
.public-entry__hero dl div:last-child { border: 0; }
.public-entry__hero dt { color: #244bd8; font-size: 36px; font-weight: 800; }
.public-entry__hero dd { margin: 0; font-size: 14px; }
.public-entry__commercial { display: grid; grid-template-columns: 1.2fr .8fr; gap: clamp(28px, 7vw, 90px); padding: clamp(30px, 5vw, 64px); background: #101631; color: #fff; }
.public-entry__commercial h2 { margin: 0; font-size: clamp(32px, 5vw, 64px); line-height: 1; }
.public-entry__commercial h2 span { display: block; margin-top: 12px; color: #f3ebdd; font-size: .5em; font-weight: 500; }
.public-entry__commercial p { max-width: 680px; font-size: 17px; line-height: 1.55; }
.public-entry__commercial ul { align-self: end; margin: 0; padding-left: 20px; line-height: 1.6; }
.public-entry__footer { display: flex; justify-content: space-between; gap: 28px; padding-block: 30px 8px; border-bottom: 1px solid rgba(16, 22, 49, .35); font-size: 13px; line-height: 1.5; }
.public-entry__footer p { max-width: 580px; margin: 0; }

@media (max-width: 760px) {
  .public-entry { padding: 16px; }
  .public-entry__header { align-items: flex-start; }
  .public-entry__header nav { justify-content: flex-end; }
  .public-entry__header nav > a:first-child { display: none; }
  .public-entry__hero { grid-template-columns: 1fr; padding-block: 70px 52px; }
  .public-entry h1 { font-size: clamp(56px, 18vw, 82px); }
  .public-entry__commercial { grid-template-columns: 1fr; padding: 28px 20px; }
  .public-entry__footer { flex-direction: column; }
}
