 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box
 }

 html {
     min-height: 100%;
 }

 body {
     color: #fff;
     font-family: Arial, Helvetica, sans-serif;
     font-size: 22px;
     line-height: 28px;
 }

 #wrapper {
     max-width: 782px;
     margin: 16px auto;
     border: 1px solid #000;
     background: url('background.jpg') no-repeat;
     height: 567px;
     position: relative;
 }

 header {
     position: relative;
 }

 .logo {
     position: absolute;
     top: 17px;
     right: 30px;
 }

 article {
     padding: 10px 30px;
 }

 .qr-code {
     margin-top: 40px;
     display: flex;
     gap: 22px;
     align-items: flex-end;
 }

 .qr-code p {
     font-size: 18px;
     line-height: 21px;
 }

 footer {
     position: absolute;
     bottom: 0;
     right: 0;
     width: 358px;
     background: url('bg_bt.png') no-repeat;
     padding: 14px 15px 10px;
 }

 p {
     margin-top: 10px;
 }

 p:first-of-type {
     margin-top: 0px;
 }

 h1 {
     font-weight: bold;
     font-size: 29px;
     line-height: 1.1;
     margin-top: 12px;
 }

 h2 {
     font-weight: bold;
     font-size: 16px;
     line-height: 24px;
 }

 img {
     max-width: 100%;
     display: block;
 }

 a {
     color: #fff;
     text-decoration: none;
 }

 @media only screen and (max-width: 782px) {
     #wrapper {
         border: none;
         margin: 0;
     }
 }

 @media only screen and (max-width: 674px) {
     #wrapper {
         background-size: cover;
         height: auto;
     }

     footer {
         position: static;
         padding: 20px 16px;
         display: flex;
         justify-content: center;
         width: auto;
         background: rgb(255, 255, 255, 0.78);
     }
 }

 @media only screen and (max-width: 530px) {
     body {
         font-size: 18px;
         line-height: 22px;
     }

     .logo {
         position: static;
         display: flex;
         justify-content: center;
         padding: 16px;
     }

     header {
         padding-right: 16px;
     }

     article p br {
         display: none;
     }

     .qr-code p br {
         display: inline;
     }
 }