* {
  box-sizing: border-box;
}
body {
  --deg: -216.75deg;
  --r: 48.5%;
  --r1: calc(var(--r) - .04%);
  --r2: calc(var(--r) + .04%);
  background-color: #465359;
  background-image: linear-gradient(var(--deg), transparent var(--r1), #1aace4 var(--r2)), 
    linear-gradient(0, rgba(0, 0, 0, .3), rgba(0, 0, 0, .3)),
    url("../img/sergey-zolkin-_UeY8aTI6d0-unsplash.jpg");
  background-position: 0, 0, 52.5% 50%;
  background-size: auto, auto, auto 100%;
  background-repeat: no-repeat;
  font-family: 'Roboto', sans-serif;
  margin: 0;
}

img, svg {
  display: block;
  max-width: 100%;
}

h2 {
  font-size: 1.125rem;
  font-weight: 700;
  margin-top: 0;
}

h3 {
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 0;
}

p {
  margin: 1rem 0 0;
}

a:any-link {
  color: #fff;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

.header {
  padding: 2.6875rem 1.25rem 2.75rem;
}

.logo {
  width: 120px;
}

.st {
  max-width: min(410px, 70vw);
  margin-left: auto;
  opacity: 0;
}

.main {
  color:  #fff;
  max-width: 450px;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.aside {
  display: flex;
  height: calc(812 / 1084 * 100vw);
}

.footer {
  color:  #001b45;
  padding: 0 1.25rem 1.75rem;
}

.footer p {
  font-size: 0.875rem;
  font-weight: 300;
  margin: .25rem 0;
}

@media screen and (min-width: 512px) {
  .footer {
    display: flex;
  }
  .footer section {
    flex: 1 0 50%;
  }
}

@media screen and (min-width: 768px) {
  body {
    --r: 60.25%;

    --s: 39.75%;
    --s1: calc(var(--s) - .04%);
    --s2: calc(var(--s) + .04%);

    --t: 88%;
    --t1: calc(var(--t) - .04%);
    --t2: calc(var(--t) + .04%);

    --inv: calc(var(--deg) * -1);

    background-image: 
      linear-gradient(var(--inv), rgba(70, 83, 89, 0.0) var(--t1), rgba(70, 83, 89, 0.7) var(--t2)),
      linear-gradient(var(--deg), transparent var(--r1), #1aace4 var(--r2)),
      linear-gradient(var(--deg), rgba(255, 255, 255, 0.0) var(--s1), rgba(255, 255, 255, 0.3) var(--s2)),
      linear-gradient(0, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)),
      url("../img/sergey-zolkin-_UeY8aTI6d0-unsplash.jpg");
    background-position: bottom left, 0, 0, 0, 52.5% 50%;
    background-size: auto, auto, auto, auto, auto 100%;
    background-repeat: no-repeat;
    /*background-image: linear-gradient(-218.125deg, transparent 39%, rgba(255, 255, 255, 0.3) 39%), url("../img/sergey-zolkin-_UeY8aTI6d0-unsplash.jpg");*/
    /*background-image: linear-gradient(var(--deg), transparent 39%, rgba(255, 255, 255, 0.3) 39%), url("../img/sergey-zolkin-_UeY8aTI6d0-unsplash.jpg");*/
    /*background-position: top left, 37.5% 100%;*/
    /*background-size: auto, auto 110%;*/
    /*background-repeat: no-repeat;*/
  }

  p {
    font-size: 1.125rem;
  }

  h2 {
    font-size: 1.875rem;
  }

  .header {
    padding-top: 2.8125rem;
  }

  .logo {
    width: 150px;
  }

  .main {
    max-width: 550px;
    margin: 3rem 0 1rem;
  }

  .aside {
    height: 360px;
  }

  .st {
    margin-right: 1rem;
  }

  .footer {
    display: flex;
    justify-content: flex-end;
    margin-left: auto;
    width: 520px;
  }

  .footer section {
    /*margin-left: 1rem;*/
  }
}

@media screen and (min-width: 1120px) {
  body {
    background-size: 100vw, 100vw, 100vw, 100vw, cover;
  }
  .container {
    width: 100%;
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;

    display: flex;
    min-height: 100vh;
  }
  .aside {
    margin-top: 7rem;
    margin-bottom: 3rem;
  }
}