@charset "utf-8";

@font-face {
   font-display: swap;
   font-family: 'Lato';
   font-style: normal;
   font-weight: 400;
   src: url('../fonts/lato-v24-latin-regular.eot');
   /* IE9 Compat Modes */
   src: url('../fonts/lato-v24-latin-regular.eot?#iefix') format('embedded-opentype'),
      /* IE6-IE8 */
      url('../fonts/lato-v24-latin-regular.woff2') format('woff2'),
      /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
      url('../fonts/lato-v24-latin-regular.woff') format('woff'),
      /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
      url('../fonts/lato-v24-latin-regular.ttf') format('truetype'),
      /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
      url('../fonts/lato-v24-latin-regular.svg#Lato') format('svg');
   /* Legacy iOS */
}

@font-face {
   font-display: swap;
   font-family: 'Lato';
   font-style: normal;
   font-weight: 700;
   src: url('../fonts/lato-v24-latin-700.eot');
   /* IE9 Compat Modes */
   src: url('../fonts/lato-v24-latin-700.eot?#iefix') format('embedded-opentype'),
      /* IE6-IE8 */
      url('../fonts/lato-v24-latin-700.woff2') format('woff2'),
      /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
      url('../fonts/lato-v24-latin-700.woff') format('woff'),
      /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
      url('../fonts/lato-v24-latin-700.ttf') format('truetype'),
      /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
      url('../fonts/lato-v24-latin-700.svg#Lato') format('svg');
   /* Legacy iOS */
}

:root {
   font-size: 16px;
}

* {
   box-sizing: border-box;
   margin: 0;
}

html {
   min-height: 100%;
}

body {
   color: #fff;
   font: 400 0.875em/1.3em 'Lato', Arial, sans-serif;
}

#wrapper {
   position: relative;
   max-width: 930px;
   margin: 1rem auto;
   border: solid 1px #000;
   background: url('../images/bg.jpg') no-repeat top center;
   overflow: hidden;
   height: 464px;
}

h1 {
   margin: 3.3rem 0 13rem;
   padding: 0 2.25rem;
   font-size: 1.375em;
   line-height: 1.3;
   color: #000;
}

h1 span {
   text-transform: uppercase;
   font-weight: 400;
}

h2 {
 font-size: 1.9em;
  line-height: 1.25em;
  padding: 0.5rem 2.25rem 1.5rem;
  width: fit-content;
  text-transform: uppercase;
}

h1,
h2,
strong {
   font-weight: 700;
}

:is(a:link, a:visited, a:hover, a:active) {
   color: inherit;
   text-decoration: none;
   white-space: nowrap;
}

img {
   max-width: 100%;
   height: auto;
}

header {
   position: absolute;
   top: 0.75rem;
   right: 1.125rem;

}

.flex {
   display: flex;
   align-items: flex-start;
   gap: 3.5rem;
   padding: 0 2.25rem 2rem;
}

.flex p {
   display: flex;
   align-items: center;
   gap: 0.75rem;
}

footer {
   padding: 0 2rem;
   display: flex;
   align-items: center;
   gap: 4.25rem;
}

footer>p {
   text-align: center;
}

.qr {
   display: flex;
   align-items: center;
   gap: 1rem;
}

.qr p {
   line-height: 1.4em;
}

@media only screen and (max-width: 929px) {
   #wrapper {
      border: none;
      margin: 0 auto;
      background: #40599E;
      height: auto;
   }

   header {
      position: static;
      padding: 1rem;
      justify-content: center;
   }

   h2,
   footer {
      background-color: #008F65;
      width: auto;
      padding: 1rem;
   }

   h1 {
      margin: 0.5rem 0;
      background-color: #fff;
      padding: 2rem 1rem;
   }

   h1,
   h2 {
      text-align: center;
   }

   article br {
      display: none;
   }

   .flex {
      padding: 0 2rem 2rem;
   }

   footer {
      justify-content: center;
   }
}

@media only screen and (max-width: 750px) {
   .flex {
      flex-wrap: wrap;
      justify-content: center;
      gap: 1rem 2rem;
   }

   footer {
      display: block;
   }

   .hide_m {
      display: none;
   }

   .qr {
      margin-top: 1rem;
      justify-content: center;
   }
}

@media only screen and (max-width: 625px) {
   h2 {
      font-size: 1.3em;
   }
}

@media only screen and (max-width: 480px) {
   .flex {
      padding: 0 1rem 1.5rem;
   }

   header {
      flex-direction: column;
      align-items: center;
   }

   .qr {
      flex-direction: column;
   }

   .qr p {
      text-align: center;
   }
}
