@font-face {
  font-display: swap;
  font-family: "Lato";
  font-style: normal;
  font-weight: 400;
  src: url("https://assets.trualta.com/fonts/lato-v25-latin-400.woff2") format("woff2");
}

@font-face {
  font-display: swap;
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  src: url("https://assets.trualta.com/fonts/lato-v25-latin-700.woff2") format("woff2");
}

:root {
  --color-primary-00: #1676b8;
  --color-primary-10: #146aa6;
  --color-primary-30: #0f5381;
  --color-primary-40: #0b3b5c;
  --color-neutral-00: #ffffff;
  --color-neutral-80: #4a4a4a;
  --color-neutral-80-rgb: 74, 74, 74;
  --color-page-background: #e5e5e5;
  --font-family-base: "Lato", sans-serif;
  --font-weight-regular: 400;
  --font-weight-bold: 700;
  --font-size: 16px;
  --font-size-title: 1.5rem;
  --font-size-description: 1.1875rem;
  --font-size-ds-button: 1rem;
  --btn-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  --btn-border-radius: 0.5rem;
  --line-height-small: 1.25;
  --text-decoration-thickness: 1px;
  --sunset-bg-small: url("https://assets.trualta.com/anchor-small.png?width=500&format=avif");
  --sunset-bg-large: url("https://assets.trualta.com/anchor-large.png?width=800&format=avif");
  --large-break: 1024px;
}

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

html,
body {
  margin: 0;
  font-family: var(--font-family-base);
  font-size: var(--font-size);
  font-weight: var(--font-weight-regular);
  background-color: var(--color-page-background);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.full-page {
  min-height: 100vh;
}

.sunset {
  padding: 1rem;
  background-color: var(--color-page-background);
  background-image: var(--sunset-bg-small);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: calc(100% + 60px) top;
  font-family: var(--font-family-base);
  line-height: 1.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.sunset__header-logo img {
  height: auto;
  max-width: 75px;
}

.sunset__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
}

.sunset__details {
  width: 100%;
  margin-top: 5rem;
}

.sunset__title {
  margin-top: 1.333em;
  font-family: var(--font-family-base);
  font-size: var(--font-size-title);
  font-weight: var(--font-weight-bold);
  -webkit-font-smoothing: antialiased;
  color: var(--color-primary-00);
}

.sunset__description {
  margin-top: 1.263em;
  font-family: var(--font-family-base);
  font-size: var(--font-size-description);
  font-weight: var(--font-weight-regular);
  -webkit-font-smoothing: antialiased;
  color: var(--color-neutral-80);
}

.sunset__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 1.5em;
}

.sunset__link,
.sunset__link:link,
.sunset__link:visited {
  font-weight: var(--font-weight-bold);
  text-decoration: underline;
  margin-top: 1.263em;
}

.ds-button {
  all: initial;
  vertical-align: middle;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  box-sizing: border-box;
  padding: 0.5rem 1rem;
  box-shadow: var(--btn-box-shadow);
  border-radius: var(--btn-border-radius);
  min-height: 2.5rem;
  height: 40px;
  border: none;
  background-color: var(--color-primary-00);
  color: var(--color-neutral-00);
  cursor: pointer;
  text-transform: capitalize;
  line-height: var(--line-height-small);
  font-family: var(--font-family-base);
  font-size: var(--font-size-ds-button);
  font-weight: var(--font-weight-bold);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out;
}

.ds-button:hover,
.ds-button:focus {
  background-color: var(--color-primary-10);
  color: var(--color-neutral-00);
  text-decoration: none;
}

.ds-button:active {
  background-color: var(--color-primary-30);
}

.ds-hyperlink {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  width: fit-content;
  background-color: transparent;
  border: none;
  padding: 0;
  font-family: var(--font-family-base);
  font-size: var(--font-size-ds-button);
  line-height: var(--line-height-small);
  text-transform: capitalize;
  -webkit-font-smoothing: antialiased;
  transition: color 0.15s ease-in-out;
}

.ds-hyperlink,
.ds-hyperlink:link,
.ds-hyperlink:visited {
  color: var(--color-primary-10);
  font-size: var(--font-size-ds-button);
  font-weight: var(--font-weight-bold);
  text-decoration-thickness: var(--text-decoration-thickness);
  text-decoration: underline;
  text-underline-offset: 0.25rem;
}

.ds-hyperlink:hover,
.ds-hyperlink:focus {
  color: var(--color-primary-30);
}

.ds-hyperlink:active {
  color: var(--color-primary-40);
}

@media only screen and (min-width: 410px) {
  .sunset {
    padding: 2em;
  }
}

@media only screen and (min-width: 768px) {
  :root {
    --font-size-ds-button: 1.125rem;
  }
}

@media only screen and (min-width: 1024px) {
  .sunset {
    padding: 2.5em 4.375em;
    background-image: var(--sunset-bg-large);
    background-position: 78% 50%;
  }

  .sunset__header-logo img {
    max-width: 96px;
  }

  .sunset__content {
    flex-direction: row;
    justify-content: flex-start;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    max-width: 870px;
    margin: 0;
  }

  .sunset__title {
    margin-top: 0;
  }

  .sunset__details {
    max-width: 480px;
    margin-top: 0;
    text-align: left;
  }

  .sunset__actions {
    flex-direction: row;
  }

  .sunset__link,
  .sunset__link:link,
  .sunset__link:visited {
    margin-top: 0;
    margin-left: 0.842em;
  }

  .full-page.sunset > .sunset__content > .sunset__details {
    margin-left: 7.5rem;
  }
}
