/* Launch copy uses the site's existing responsive compositions and sticky headings. */
.launch-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
.launch-anchor { position: absolute; width: 0; height: 0; }
.launch-copy-page .header-copy p { margin: 0 0 20px; }
.launch-copy-page .launch-intro-heading { font-size: 24px; line-height: 1.35; font-weight: 500; }
.launch-paragraph { display: block; margin: 20px 0; }
.launch-subheading { font-size: 20px; line-height: 1.45; font-weight: 500; margin: 24px 0; }
.launch-list { padding-left: 20px; margin: 20px 0; }
.launch-list li { margin: 0 0 12px; }
.launch-octopus-media { width: 100%; float: none; aspect-ratio: 4 / 3; margin: 24px 0; }
.launch-octopus-media video { display: block; width: 100%; height: 100%; object-fit: cover; }
.launch-link { display: block; width: fit-content; max-width: 100%; margin: 20px 0 0; padding: 10px 0; font-size: 18px; line-height: 1.45; font-weight: 600; text-decoration: underline; text-underline-offset: 5px; }
.launch-link + .launch-link { margin-top: 8px; }
.launch-next-heading { font-size: 28px; line-height: 1.25; margin: 64px 0 24px; }
.launch-illustration-label { font-size: 13px; line-height: 1.5; }
.launch-independent { width: 80%; max-width: 760px; margin: 72px auto; }
.launch-independent h2 { font-size: 32px; line-height: 1.2; font-weight: 600; }
.launch-independent p { font-size: 18px; line-height: 1.6; }
.launch-copy-page .home-strapline h2 { font-size: inherit; font-weight: 500; margin: 0 0 32px; }
.launch-copy-page .home-strapline p { font-size: 22px; line-height: 1.6; margin: 24px 0; }
.launch-copy-page .home-strapline .launch-link { margin-left: auto; margin-right: auto; }
.launch-copy-page .call-to-action { height: auto; }
.launch-copy-page .call-to-action-wrapper::after { content: ''; display: block; clear: both; }
.launch-copy-page .consultation-text { padding-bottom: 32px; }
.launch-copy-page .consultation-text .ca1 { margin-top: 0; }
.launch-copy-page .consultation-text .ca2 { line-height: 1.6; margin: 16px 0; }
.holding-hero-copy .launch-original-title { font-size: 64px; font-weight: 500; line-height: 1.1; max-width: 900px; }
.launch-tv-navigation { display: flex; flex-wrap: wrap; gap: 16px 22px; font-size: 13px; }
.tv-header .launch-tv-navigation { max-width: 700px; justify-content: flex-end; }
.tv-footer .launch-tv-navigation { flex-basis: 100%; }
.launch-article-navigation { display: flex; flex-wrap: wrap; gap: 16px 24px; padding: 24px; font: 14px/1.5 'Inter', sans-serif; }
.team-hero .holding-hero-copy .team-launch-title { font-size: 96px; line-height: 1.05; font-weight: 500; }
.navi-menu:focus-visible, .navi-close:focus-visible, a:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
@media (min-width: 1160px) {
  .navi.launch-navigation, .navi-home.launch-navigation { box-sizing: border-box; display: flex; align-content: center; flex-wrap: wrap; column-gap: 18px; row-gap: 10px; height: 85px; padding: 14px calc(50% + 72px) 14px 24px; }
  .launch-navigation .navi-spacing { padding: 0; margin: 0; white-space: nowrap; font-size: 11px; }
  .launch-copy-page .header-wrapper { min-height: 400px; height: auto; padding-bottom: 72px; align-items: flex-start; }
  .launch-copy-page .body-left, .launch-copy-page .body-right { height: auto; }
  .launch-copy-page .body-header { margin-top: 0; margin-bottom: 24px; font-size: 38px; line-height: 1.15; }
}
@media (max-width: 1159px) {
  .navi-overlay .navi-overlay-centre { position: static; transform: none; height: auto; min-height: 0; margin: 0; padding: 80px 24px 32px; line-height: 1.4; }
  .navi-overlay-centre .navi-spacing { display: inline-block; font-size: 25px; padding: 9px 0; }
  .launch-copy-page .header-wrapper { height: auto; min-height: 0; padding-bottom: 40px; }
  .launch-copy-page .body-header { margin-top: 0; }
  .launch-copy-page .body-left-copy { padding-bottom: 48px; }
  .launch-copy-page .home-strapline p { font-size: 18px; line-height: 1.6; }
  .launch-copy-page .launch-intro-heading { font-size: 22px; }
  .holding-hero-copy .launch-original-title { font-size: 40px; }
  .team-hero .holding-hero-copy .team-launch-title { font-size: 48px; }
  .launch-independent { margin: 48px auto; }
  .launch-independent h2 { font-size: 28px; }
  .tv-header .launch-tv-navigation { justify-content: flex-start; gap: 14px 20px; }
}
