
.pc-announcement {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-block: clamp(3rem, 6vw, 6rem);
  background: var(--pc-surface, #faf8f5);
  color: var(--pc-text, #363636);
  font-style: normal;
  scroll-margin-block-start: 1.5rem;
}

/* The fragment target is not an interactive control. */
.pc-announcement:focus {
  outline: none;
}

.pc-announcement__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 4rem);
  min-block-size: 34rem;
}

.pc-announcement__copy {
  position: relative;
  z-index: 1;
  min-inline-size: 0;
}

.pc-announcement__media {
  position: absolute;
  inset-block: 0;
  inset-inline-end: 0;
  inline-size: 60%;
  min-inline-size: 0;
}

/* Blend the photograph into the section's background colour. */
.pc-announcement__media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  background:
    linear-gradient(
      to right,
      var(--pc-surface, #faf8f5) 0%,
      transparent 40%
    ),
    linear-gradient(
      to bottom,
      var(--pc-surface, #faf8f5) 0%,
      transparent 14%,
      transparent 82%,
      var(--pc-surface, #faf8f5) 100%
    );
}



.pc-announcement__title {
  margin: 0;
  color: var(--pc-heading, #242424);
  font-family: "Anton", Impact, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-synthesis: none;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.pc-announcement__title-main {
  display: block;
  font-size: clamp(3.75rem, 7.5vw, 8rem);
  line-height: 1;
}

.pc-announcement__title-sub {
  display: block;
  margin-block-start: 0.5rem;
  font-size: clamp(1.5rem, 2.7vw, 2.75rem);
  line-height: 1.15;
}

.pc-announcement__accent {
  color: var(--pc-primary, #c91d35);
}

.pc-announcement__tagline {
  margin: 1.5rem 0 0;
  color: var(--pc-heading, #242424);
  font-family: var(--pc-serif);
  font-size: clamp(1.35rem, 2vw, 2rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.3;
  white-space: pre-line;
  overflow-wrap: anywhere;
}

.pc-announcement__description {
  max-inline-size: 48ch;
  margin: 1rem 0 0;
  font-size: 1rem;
  line-height: 1.7;
  white-space: pre-line;
  overflow-wrap: anywhere;
}


.pc-announcement__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 1.5rem;
  margin-block-start: 1.75rem;
}

.pc-announcement__secondary {
  font-size: 0.9rem;
  font-weight: 600;
  overflow-wrap: anywhere;
}


.pc-announcement__image {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  object-position: center 35%;
}

/* Allow the text to use the available space without an image. */
.pc-announcement--text-only .pc-announcement__grid {
  grid-template-columns: minmax(0, 1fr);
  min-block-size: auto;
}

.pc-announcement--text-only .pc-announcement__copy {
  max-inline-size: 55rem;
}

/* Stack the complete photograph below the text on smaller screens. */
/* Portrait tablet and mobile. */
@media (max-width: 58rem) {
  .pc-announcement__grid {
    grid-template-columns: minmax(0, 1fr);
    min-block-size: auto;
    gap: 1.25rem;
  }

  .pc-announcement__copy {
    inline-size: 100%;
    max-inline-size: 42rem;
    margin-inline: auto;
  }

  .pc-announcement__media {
    position: relative;
    inset: auto;
    justify-self: center;

    /* Reach the screen edges on phones;
       keep the artwork compact on tablets. */
    inline-size: calc(100% + var(--pc-gutter) * 2);
    max-inline-size: 30rem;
    margin: 0;
  }

  .pc-announcement__image {
    inline-size: 100%;
    block-size: auto;
  }

  .pc-announcement__media::after {
    background:
      linear-gradient(
        to bottom,
        var(--pc-surface, #faf8f5) 0%,
        transparent 12%,
        transparent 86%,
        var(--pc-surface, #faf8f5) 100%
      ),
      linear-gradient(
        to right,
        var(--pc-surface, #faf8f5) 0%,
        transparent 6%,
        transparent 94%,
        var(--pc-surface, #faf8f5) 100%
      );
  }
}