 @font-face {
     font-display: swap;
     font-family: 'Cabin';
     font-style: normal;
     font-weight: 400;
     src: url('../fonts/cabin-v34-latin-regular.eot');
     src: url('../fonts/cabin-v34-latin-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/cabin-v34-latin-regular.woff2') format('woff2'), url('../fonts/cabin-v34-latin-regular.woff') format('woff'), url('../fonts/cabin-v34-latin-regular.ttf') format('truetype'), url('../fonts/cabin-v34-latin-regular.svg#Cabin') format('svg');
 }

 @font-face {
     font-display: swap;
     font-family: 'Cabin';
     font-style: normal;
     font-weight: 700;
     src: url('../fonts/cabin-v34-latin-700.eot');
     src: url('../fonts/cabin-v34-latin-700.eot?#iefix') format('embedded-opentype'), url('../fonts/cabin-v34-latin-700.woff2') format('woff2'), url('../fonts/cabin-v34-latin-700.woff') format('woff'), url('../fonts/cabin-v34-latin-700.ttf') format('truetype'), url('../fonts/cabin-v34-latin-700.svg#Cabin') format('svg');
 }

 @font-face {
     font-display: swap;
     font-family: 'Source Sans 3';
     font-style: normal;
     font-weight: 400;
     src: url('../fonts/source-sans-3-v18-latin-regular.eot');
     src: url('../fonts/source-sans-3-v18-latin-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/source-sans-3-v18-latin-regular.woff2') format('woff2'), url('../fonts/source-sans-3-v18-latin-regular.woff') format('woff'), url('../fonts/source-sans-3-v18-latin-regular.ttf') format('truetype'), url('../fonts/source-sans-3-v18-latin-regular.svg#SourceSans3') format('svg');
 }

 @font-face {
     font-display: swap;
     font-family: 'Source Sans 3';
     font-style: normal;
     font-weight: 700;
     src: url('../fonts/source-sans-3-v18-latin-700.eot');
     src: url('../fonts/source-sans-3-v18-latin-700.eot?#iefix') format('embedded-opentype'), url('../fonts/source-sans-3-v18-latin-700.woff2') format('woff2'), url('../fonts/source-sans-3-v18-latin-700.woff') format('woff'), url('../fonts/source-sans-3-v18-latin-700.ttf') format('truetype'), url('../fonts/source-sans-3-v18-latin-700.svg#SourceSans3') format('svg');
 }

 * {
     margin: 0;
     box-sizing: border-box;
 }

 html {
     min-height: 100%;
 }

 body {
     color: #333;
     font-family: 'Cabin', Arial, sans-serif;
     line-height: 18px;
     font-size: 15px;
 }

 #wrapper {
     margin: 1rem auto;
     border: 1px #231F20 solid;
     max-width: 910px;
     position: relative;
     background-color: #f0f0f0;
     overflow: hidden;
 }

 article {
     padding: 40px 264px 0 40px;
     position: relative;
 }

 p {
     padding-bottom: 20px;
 }

 h1 {
     margin: 0 0 35px;
     font-size: 32px;
     line-height: 36px;
     color: #1a2c56;
 }

 h1 span {
     display: block;
     font-size: 16px;
     line-height: 20px
 }

 h2 {
     font-size: 22px;
     line-height: 26px;
     margin: 20px 0;
     color: #1a2c56;
 }

 h3 {
     color: #1a2c56;
     margin: 50px 0 20px;
     font-size: 21px;
     line-height: 25px;
 }

 h5 {
     color: #1a2c56;
     margin: 0;
     font-size: 16px;
     line-height: 24px;
 }

 :is(h1, h2, h3, h5) {
     font-family: 'Source Sans 3', Arial, sans-serif;
 }

 h4 {
     color: #1a2c56;
     cursor: pointer;
     font-weight: 400;
     position: relative;
     padding: 15px 30px;
     margin: 0 -30px;
     font-size: 16px;
     line-height: 20px;
 }

 h4:hover {
     color: #a59051
 }

 h4:hover:before {
     border-color: #a59051;
 }

 h4:before {
     content: '';
     position: absolute;
     top: 18px;
     right: 32px;
     border: 2px solid #1a2c56;
     border-top: 0;
     border-left: 0;
     transform: rotate(45deg);
     -webkit-transform: rotate(45deg);
     transition: .3s;
     width: 10px;
     height: 10px;
 }

 h4.active:before {
     transform: rotate(225deg);
     -webkit-transform: rotate(225deg);
 }

 h4+div {
     display: none;
     transition: .5s;
 }

 a {
     color: #231F20;
     text-decoration: none;
 }

 a:hover {
     text-decoration: underline;
 }

 img {
     max-width: 100%;
     vertical-align: middle
 }

 ul {
     margin: 0;
     padding: 0 0 20px;
     list-style: none;
 }

 ul li {
     padding-left: 20px;
     position: relative
 }

 ul li:before {
     content: '';
     position: absolute;
     top: 7px;
     left: 8px;
     background: #333;
     width: 4px;
     height: 4px;
 }

 article .link {
     position: absolute;
     top: 100px;
     right: 0;
     color: #fff !important;
 }

 .link a {
     color: #fff !important;
     background: #a59051;
     padding: 10px 30px;
     width: 250px;
     text-align: center;
     display: inline-block;
     margin: 0 0 20px;
     text-transform: uppercase;
 }

 .link a:hover {
     background: #7b682d;
 }

 .a {
     white-space: normal !important;
     text-decoration: underline !important;
 }

 .left {
     background: #fff;
     padding: 40px;
     margin: 0 0 20px -40px;
 }

 .flex {
     display: flex;
     gap: 4px 18px;
     align-items: center;
     justify-content: flex-start;
     flex-wrap: wrap;
 }

 .flex p {
     padding-bottom: 15px;
     font-weight: bold;
     font-size: 13px;
     display: flex;
     align-items: center;
 }

 .flex p img {
     margin-right: 9px;
     position: relative;
     top: -2px;
 }

 .left:nth-of-type(1) {
     padding: 40px;
 }

 .benefits {
     display: flex;
     flex-wrap: wrap;
     justify-content: flex-start;
     padding-bottom: 20px;
     align-items: center;
     gap: 1px;
 }

 .benefits p {
     width: 33%;
     position: relative;
     padding-left: 0;
     padding-bottom: 0;
     margin: 0 0 15px;
 }

 .benefits p span {
     display: inline-block;
     vertical-align: middle;
 }

 .benefits p span:nth-of-type(1) {
     width: 33px;
 }

 .benefits p span:nth-of-type(2) {
     width: 142px;
 }

 footer {
     background: #EAEFFA;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     padding: 0 283px 0 40px;
 }

 footer h3 {
     margin: 0
 }

 footer aside:nth-of-type(1) {
     padding: 40px 0;
 }

 footer aside:nth-of-type(2) {
     width: 59%;
     padding: 40px 0 0;
 }

 .info {
     text-align: center;
     background: #fff;
     padding: 30px 10px 0;
     line-height: 34px;
     position: absolute;
     top: 158px;
     right: 0;
     width: 251px;
 }

 .info img {
     margin: 20px 0;
 }

 .info p img {
     margin: 0 2px 0 0;
     position: relative;
     top: -1px;
 }

 footer aside:nth-of-type(2) a {
     width: 204px;
 }

 :is(h1, h2, strong) {
     font-weight: 700;
 }

 :is(a:link, a:visited, a:hover, a:active) {
     color: #333;
     text-decoration: none;
     white-space: nowrap;
 }

 .info a {
     font-size: 13px;
 }

 @media only screen and (max-width:908px) {
     #wrapper {
         border: none;
         margin: 0;
     }

     article .info {
         margin: 0 auto;
     }

     .left {
         margin-left: -20px;
         padding: 20px;
     }

     .left:nth-of-type(1) {
         padding: 20px;
     }

     .flex {
         flex-wrap: wrap;
         gap: 10px 20px;
     }

     footer {
         padding: 0 20px;
     }

     .benefits {
         gap: 10px;
     }

     .benefits p {
         width: 48%;
     }

     .benefits br {
         display: none;
     }

     .benefits p span:nth-of-type(2) {
         width: calc(100% - 40px);
     }
 }

 @media only screen and (max-width:690px) {
     article {
         padding: 16px
     }

     footer aside:nth-of-type(1) {
         padding: 20px 0;
     }

     footer aside:nth-of-type(2) {
         width: 100%;
         padding: 0;
     }

     article :is(.info, .link) {
         margin: 0 auto;
         position: static;
         width: auto;
     }

     article .link {
         display: flex;
         justify-content: center;
     }

     .flex {
         justify-content: center
     }

     h1 {
         text-align: center;
     }
 }

 @media only screen and (max-width:450px) {
     .benefits p {
         width: 100%;
     }
 }