 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box
 }

 html {
     min-height: 100%;
 }

 body {
     color: #3e3a3a;
     font-family: 'Poppins', sans-serif;
     font-size: 16px;
     line-height: 23px;
 }

 #wrapper {
     max-width: 750px;
     margin: 0px auto;
     border: 1px solid #3e3a3a;
     background-color: #fff;
 }

 .logo {
     display: flex;
     justify-content: flex-start;
     padding: 20px 30px;
 }

 .info {
     display: flex;
     gap: 5px 10px;
     flex-wrap: wrap;
     padding: 0 30px;
 }

 .info p {
     margin-top: 0;
     font-weight: 600;
     color: #8d8d94
 }

 .info p img {
     display: inline;
     margin-bottom: -2px;
 }

 .banner {
     padding: 30px;
 }

 .banner img {
     border-radius: 16px
 }

 article {
     padding: 0 30px 30px;
 }

 footer {
     padding: 0 30px 30px;
 }

 .kontakt {
     border: 1px solid #ededed;
     border-radius: 6px;
     padding: 16px;
 }

 .kontakt h2 {
     margin-top: 0;
 }

 .flex {
     display: flex;
     gap: 16px;
     align-items: center;
     margin-top: 10px;
 }

 .text p img {
     display: inline;
     margin: 0 3px -11px 0;
 }

 .text p {
     margin-top: 6px;
 }

 .button {
     display: flex;
     justify-content: flex-start;
     margin-top: 30px;
 }

 .button a {
     background: #e5007d;
     padding: 10px 40px;
     color: #fff;
     font-weight: 700;
     border-radius: 6px
 }

 .button a:hover {
     background: #c3006a;
 }

 p {
     margin-top: 20px;
 }

 p:first-of-type {
     margin-top: 0px;
 }

 h1 {
     font-size: 30px;
     line-height: 1.1;
     padding: 20px 30px 10px;
     color: #004c77;
 }

 h2 {
     font-size: 21px;
     line-height: 24px;
     color: #004c77;
     margin-top: 25px;
 }

 ul {
     list-style: none;
     margin-left: 9px;
 }

 ul li {
     padding-left: 19px;
     margin-top: 10px;
 }

 li:before {
     content: "\2022";
     color: #3e3a3a;
     float: left;
     font-size: 23px;
     text-indent: -19px;
 }

 a {
     color: #3e3a3a;
     text-decoration: none;
     white-space: nowrap;
 }

 :is(h2, h3, strong) {
     font-weight: 600
 }

 img {
     max-width: 100%;
     display: block;
 }

 @media only screen and (max-width:750px) {
     #wrapper {
         border: none;
         margin: 0;
     }

     :is(p, ul) {
         hyphens: auto;
         text-wrap: pretty
     }

     :is(p, ul) span {
         white-space: nowrap;
     }
 }

 @media only screen and (max-width:480px) {
     :is(.logo, article, footer, .banner, h1) {
         padding: 16px
     }

     h1 {
         font-size: 22px;
         text-align: center;
     }

     .logo {
         justify-content: center
     }

     .text p {
         font-size: 14px
     }

     .text p img {
         width: 20px;
         margin: 0 3px -6px 0;
     }

     .info {
         justify-content: center;
     }

     .info p {
         text-align: center;
     }
 }