	:root {
	  --uc-yellow: #f5b800;
	  --uc-dark: #1f232b;
	}

	body {
	  background: #22252e;
	  color: #e9eaee;
	  font-family: "Roboto", sans-serif;
	  min-height: 100vh;
	}
	
	p, li, a, span { font-family: "Roboto", sans-serif; }
	
	/* Image wrapper – scales with the page; all overlay sizes use container units */
	.hero {
	  position: relative;
	  width: 100%;
	  max-width: 1200px;
	  container-type: inline-size;
	  border-radius: .5rem;
	  /* overflow: hidden; */
	  /* box-shadow: 0 1rem 3rem rgba(0, 0, 0, .45); */
	}

	.hero img {
	  display: block;
	  width: 100%;
	  height: auto;
	}

	/* Text block over the empty sky on the right */
	.hero-overlay {
	  position: absolute;
	  top: 7%;
	  left: 53%;
	  width: 44%;
	  text-align: center;
	}

	.sign-row {
	  display: flex;
	  align-items: center;
	  gap: 1.5cqw;
	}

	.sign-row .line,
	.bottom-line {
	  flex: 1;
	  height: .3cqw;
	  min-height: 2px;
	  background: var(--uc-yellow);
	  border-radius: 2px;
	}

	.sign-row svg {
	  width: 13cqw;
	  height: auto;
	  flex-shrink: 0;
	}

	.uc-title {
	  margin: 1.5cqw 0 0;
	  line-height: .95;
	  white-space: nowrap;
	}

	.uc-title .t1 {
	  display: block;
	  font-family: "Montserrat", sans-serif;
	  font-weight: 900;
	  font-size: 9.2cqw;
	  color: var(--uc-dark);
	  letter-spacing: .02em;
	}

	.uc-title .t2 {
	  display: block;
	  font-family: "Oswald", sans-serif;
	  font-weight: 700;
	  font-size: 6.7cqw;
	  color: var(--uc-yellow);
	  letter-spacing: .01em;
	  text-shadow: 0 .15cqw .4cqw rgba(0, 0, 0, .15);
	}

	.bottom-line {
	  display: block;
	  width: 80%;
	  margin: 2.5cqw auto 0;
	}

	 /* Content under the image */
	.info {
	  max-width: 760px;
	  z-index: 99;
	}

	.info .lead {
	  color: #d6d8de;
	}

	.contact a {
	  color: #fff;
	  text-decoration: none;
	}

	.contact a:hover {
	  color: var(--uc-yellow);
	}

	.contact .bi {
	  color: var(--uc-yellow);
	  font-size: 1.25rem;
	}

	/* Phones: title sits on a sky-coloured strip above the photo, which fades in */
	@media (max-width: 575.98px) {
	  .hero {
		display: flex;
		flex-direction: column;
		background: linear-gradient(to bottom, #e6e8f0, #d4dcec);
	  }

	  .hero-overlay {
		position: relative;
		z-index: 1;
		order: -1;
		top: auto;
		left: auto;
		width: auto;
		padding: 7cqw 7cqw 0;
	  }

	  .hero img {
		margin-top: -6cqw;
		-webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 22%);
		mask-image: linear-gradient(to bottom, transparent 0, #000 22%);
	  }

	  .sign-row svg { width: 22cqw; }
	  .sign-row .line, .bottom-line { height: .8cqw; }
	  .uc-title .t1 { font-size: 17cqw; }
	  .uc-title .t2 { font-size: 14cqw; }
	  .bottom-line { margin-top: 4cqw; }
	  
	  .info { }
	}