diff --git a/src/images/background/dia-header-image.png b/src/images/background/dia-header-image.png
new file mode 100644
index 0000000000..d0f1c33524
Binary files /dev/null and b/src/images/background/dia-header-image.png differ
diff --git a/src/images/expertise/expertise-branding.png b/src/images/expertise/expertise-branding.png
new file mode 100644
index 0000000000..854143e69d
Binary files /dev/null and b/src/images/expertise/expertise-branding.png differ
diff --git a/src/images/expertise/expertise-communication.png b/src/images/expertise/expertise-communication.png
new file mode 100644
index 0000000000..600e86345e
Binary files /dev/null and b/src/images/expertise/expertise-communication.png differ
diff --git a/src/images/expertise/expertise-strategy.png b/src/images/expertise/expertise-strategy.png
new file mode 100644
index 0000000000..ba98148a0a
Binary files /dev/null and b/src/images/expertise/expertise-strategy.png differ
diff --git a/src/images/icons/dia-icon-close.png b/src/images/icons/dia-icon-close.png
new file mode 100644
index 0000000000..02a79a2a04
Binary files /dev/null and b/src/images/icons/dia-icon-close.png differ
diff --git a/src/images/icons/dia-menu.png b/src/images/icons/dia-menu.png
new file mode 100644
index 0000000000..3d11b4182c
Binary files /dev/null and b/src/images/icons/dia-menu.png differ
diff --git a/src/images/logo/logo-air.png b/src/images/logo/logo-air.png
new file mode 100644
index 0000000000..48eeb98c6c
Binary files /dev/null and b/src/images/logo/logo-air.png differ
diff --git a/src/images/socials-icons/facebook 1.svg b/src/images/socials-icons/facebook 1.svg
new file mode 100644
index 0000000000..b6bc5a936d
--- /dev/null
+++ b/src/images/socials-icons/facebook 1.svg
@@ -0,0 +1,10 @@
+
diff --git a/src/images/socials-icons/instagram.svg b/src/images/socials-icons/instagram.svg
new file mode 100644
index 0000000000..76a83d304d
--- /dev/null
+++ b/src/images/socials-icons/instagram.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/images/socials-icons/socials-facebook-icon.png b/src/images/socials-icons/socials-facebook-icon.png
new file mode 100644
index 0000000000..8e19df7742
Binary files /dev/null and b/src/images/socials-icons/socials-facebook-icon.png differ
diff --git a/src/images/socials-icons/socials-instagram-icon.png b/src/images/socials-icons/socials-instagram-icon.png
new file mode 100644
index 0000000000..915f7a3269
Binary files /dev/null and b/src/images/socials-icons/socials-instagram-icon.png differ
diff --git a/src/images/socials-icons/socials-twitter-icon.png b/src/images/socials-icons/socials-twitter-icon.png
new file mode 100644
index 0000000000..9a06b94484
Binary files /dev/null and b/src/images/socials-icons/socials-twitter-icon.png differ
diff --git a/src/images/socials-icons/twitter 1.svg b/src/images/socials-icons/twitter 1.svg
new file mode 100644
index 0000000000..74cbdbf5d4
--- /dev/null
+++ b/src/images/socials-icons/twitter 1.svg
@@ -0,0 +1,10 @@
+
diff --git a/src/images/testimonials/quotation-marks .svg b/src/images/testimonials/quotation-marks .svg
new file mode 100644
index 0000000000..b1a5abb623
--- /dev/null
+++ b/src/images/testimonials/quotation-marks .svg
@@ -0,0 +1,3 @@
+
diff --git a/src/styles/_typography.scss b/src/styles/_typography.scss
deleted file mode 100644
index 1837eb46e2..0000000000
--- a/src/styles/_typography.scss
+++ /dev/null
@@ -1,3 +0,0 @@
-h1 {
- @extend %h1;
-}
diff --git a/src/styles/_utils.scss b/src/styles/_utils.scss
deleted file mode 100644
index 3280c3fe10..0000000000
--- a/src/styles/_utils.scss
+++ /dev/null
@@ -1,3 +0,0 @@
-@import 'utils/vars';
-@import 'utils/mixins';
-@import 'utils/extends';
diff --git a/src/styles/blocks/about.scss b/src/styles/blocks/about.scss
new file mode 100644
index 0000000000..9fdd513b7d
--- /dev/null
+++ b/src/styles/blocks/about.scss
@@ -0,0 +1,29 @@
+.about {
+ background-color: $background-color-light-blue;
+
+ &__wrapper {
+ max-width: 716px;
+ margin-inline: auto;
+ }
+
+ &__title {
+ color: $c-title;
+ font-weight: $font-half-bold;
+ line-height: 150%;
+ text-align: center;
+ font-size: 32px;
+ margin-bottom: 24px;
+
+ @include on-tablet {
+ margin-bottom: 16px;
+ }
+ }
+
+ &__text {
+ color: $c-text;
+ text-align: center;
+ font-size: 24px;
+ font-weight: $font-half-bold;
+ font-family: 'Open Sans', sans-serif;
+ }
+}
diff --git a/src/styles/blocks/apply.scss b/src/styles/blocks/apply.scss
new file mode 100644
index 0000000000..5bbc6e693c
--- /dev/null
+++ b/src/styles/blocks/apply.scss
@@ -0,0 +1,50 @@
+.apply {
+ padding-block: 72px;
+ background-color: $c-white;
+
+ @include on-tablet {
+ padding-block: 200px;
+ }
+
+ background-image: url(../images/Shapes.png);
+ background-position: top;
+ background-size: bottom;
+
+ &__wrapper {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+
+ @include on-small-desk {
+ max-width: 754px;
+ margin-inline: auto;
+ }
+ }
+
+ &__title {
+ text-align: center;
+ }
+
+ &__text-motivation {
+ color: $c-text;
+ font-family: 'Open Sans', sans-serif;
+ font-weight: $font-half-bold;
+ font-size: 22px;
+ line-height: 150%;
+ text-align: center;
+
+ margin-bottom: 56px;
+
+ @include on-tablet {
+ margin-bottom: 64px;
+ }
+ }
+
+ &__button {
+ @include button-style;
+
+ width: 280px;
+ font-weight: $font-half-bold;
+ }
+}
diff --git a/src/styles/blocks/caption.scss b/src/styles/blocks/caption.scss
new file mode 100644
index 0000000000..c9e76eeef3
--- /dev/null
+++ b/src/styles/blocks/caption.scss
@@ -0,0 +1,52 @@
+.caption {
+ display: flex;
+ flex-direction: column;
+ gap: 16px;
+
+ &__sliders {
+ display: flex;
+ gap: 16px;
+ }
+
+ &__info {
+ display: flex;
+ flex-direction: column;
+ gap: 8px;
+ }
+
+ &__label {
+ text-transform: uppercase;
+ font-weight: $font-bold;
+ font-size: 13px;
+ letter-spacing: 3px;
+ }
+
+ &__text {
+ font-family: 'Open Sans', sans-serif;
+ font-size: 14px;
+ line-height: 140%;
+ font-weight: normal;
+ }
+
+ &__slider {
+ width: 32px;
+ height: 32px;
+ background-color: $c-white;
+ border-radius: 50%;
+ color: #253757;
+
+ display: flex;
+ align-items: center;
+ justify-content: center;
+
+ border: none;
+ font-weight: $font-bold;
+ font-size: 12px;
+ cursor: pointer;
+ transition: text-shadow $effectDuration;
+
+ &:hover {
+ text-shadow: 0 2px 5px #253757;
+ }
+ }
+}
diff --git a/src/styles/blocks/container.scss b/src/styles/blocks/container.scss
new file mode 100644
index 0000000000..e18f785d02
--- /dev/null
+++ b/src/styles/blocks/container.scss
@@ -0,0 +1,9 @@
+.container {
+ max-width: 1024px;
+ margin-inline: auto;
+ padding-inline: 20px;
+
+ @include on-tablet {
+ padding-inline: 40px;
+ }
+}
diff --git a/src/styles/blocks/expertise.scss b/src/styles/blocks/expertise.scss
new file mode 100644
index 0000000000..8eaef36e6b
--- /dev/null
+++ b/src/styles/blocks/expertise.scss
@@ -0,0 +1,84 @@
+.expertise {
+ border-radius: 30px;
+ background-color: $c-white;
+ padding-block: 72px;
+
+ @include on-tablet {
+ padding-block: 128px;
+ }
+
+ &__title {
+ color: $c-title;
+ font-weight: $font-half-bold;
+ font-size: 44px;
+
+ margin-bottom: 56px;
+ text-align: center;
+
+ @include on-tablet {
+ margin-bottom: 64px;
+ }
+ }
+
+ &__wrapper {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 56px;
+
+ @include on-small-desk {
+ flex-direction: row;
+ gap: 137px;
+ }
+ }
+
+ &__article {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ }
+
+ &__article-name {
+ color: $c-title;
+ font-weight: $font-half-bold;
+ font-size: 20px;
+ line-height: 140%;
+ }
+
+ &__article-text {
+ color: $c-text;
+ font-family: 'Open Sans', sans-serif;
+ font-weight: $font-normal;
+ font-size: 14px;
+ line-height: 150%;
+ text-align: center;
+ max-width: 362px;
+ }
+
+ &__img-link {
+ display: block;
+ height: 166px;
+ width: 166px;
+
+ margin-bottom: 32px;
+
+ @include on-small-desk {
+ margin-bottom: 40px;
+ }
+ }
+
+ &__img {
+ display: block;
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+ object-position: center;
+ }
+
+ &__text-content {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 16px;
+ }
+}
diff --git a/src/styles/blocks/footer.scss b/src/styles/blocks/footer.scss
new file mode 100644
index 0000000000..6cfcbd4062
--- /dev/null
+++ b/src/styles/blocks/footer.scss
@@ -0,0 +1,204 @@
+.footer {
+ --column-count: 2;
+
+ min-height: 100vh;
+ background-color: $background-color-dark;
+
+ padding-block: 72px 80px;
+
+ @include on-tablet {
+ --column-count: 6;
+
+ padding-top: 180px;
+ }
+
+ @include on-small-desk {
+ --column-count: 12;
+ }
+
+ &__wrapper-grid {
+ display: grid;
+ grid-template-columns: repeat(var(--column-count), 1fr);
+
+ gap: 80px 24px;
+
+ @include on-tablet {
+ row-gap: 120px;
+ }
+ }
+
+ &__send-message {
+ grid-column: 1 / -1;
+ grid-row: 1 / 2;
+
+ @include on-tablet {
+ grid-column: span 4;
+ }
+
+ @include on-small-desk {
+ grid-column: 1 / 6;
+ }
+ }
+
+ &__contact {
+ grid-column: 1 / -1;
+ grid-row: 2 / 3;
+
+ @include on-tablet {
+ grid-column: span 4;
+ }
+
+ @include on-small-desk {
+ grid-column: 7 / -1;
+ grid-row: 1 / 2;
+ }
+
+ @include on-desk {
+ grid-column: 8 / -1;
+ }
+ }
+
+ &__nav {
+ grid-column: 1 / -1;
+ grid-row: 3 / 4;
+
+ display: flex;
+ flex-direction: column;
+ gap: 48px;
+
+ @include on-tablet {
+ gap: 24px;
+ }
+
+ @include on-small-desk {
+ flex-direction: row;
+ justify-content: space-between;
+ }
+ }
+
+ &__form {
+ display: flex;
+ flex-direction: column;
+ gap: 48px;
+ }
+
+ &__title {
+ font-family: Poppins, sans-serif;
+ font-weight: $font-half-bold;
+ font-size: 32px;
+ vertical-align: middle;
+ color: $c-white;
+
+ margin-bottom: 48px;
+
+ @include on-tablet {
+ margin-bottom: 56px;
+ }
+ }
+
+ &__label {
+ @include visually-hidden;
+ }
+
+ &__form-input {
+ box-sizing: border-box;
+ padding-left: 15px;
+ height: 40px;
+ width: 100%;
+ background-color: $background-color-dark;
+ color: $c-white;
+ border: 1px solid transparent;
+
+ font-family: Poppins, sans-serif;
+ font-weight: $font-half-bold;
+ font-size: 15px;
+
+ border-bottom: 1px solid #fff;
+
+ &:focus {
+ outline: none;
+ border-bottom: 1px solid $c-blue;
+ }
+
+ &:-webkit-autofill,
+ &:-webkit-autofill:hover,
+ &:-webkit-autofill:focus,
+ &:-webkit-autofill:active {
+ -webkit-text-fill-color: $c-white;
+ font-family: Poppins, sans-serif;
+ font-size: 15px;
+
+ -webkit-box-shadow: 0 0 0 1000px $background-color-dark inset;
+ box-shadow: 0 0 0 1000px $background-color-dark inset;
+
+ transition: background-color 9999s ease-in-out 0s;
+ }
+ }
+
+ &__form-button {
+ @include button-style;
+ }
+
+ &__category-name {
+ display: block;
+ font-weight: $font-bold;
+ font-size: 13px;
+ letter-spacing: 3px;
+ text-transform: uppercase;
+ opacity: 50%;
+
+ margin-bottom: 8px;
+ }
+
+ &__categories {
+ display: flex;
+ flex-direction: column;
+ gap: 40px;
+ }
+
+ &__category-link {
+ font-family: 'Open sans', sans-serif;
+
+ text-decoration: none;
+ color: $c-white;
+ line-height: 150%;
+ font-weight: $font-half-bold;
+
+ @include link-underline-style;
+ }
+
+ &__socials {
+ display: flex;
+ flex-direction: row;
+ gap: 32px;
+ }
+
+ &__socials-link {
+ display: block;
+ height: 32px;
+ width: 32px;
+
+ @include link-underline-style;
+
+ &:active {
+ filter: invert(43%) sepia(89%) saturate(6782%) hue-rotate(221deg)
+ brightness(101%) contrast(93%);
+ }
+ }
+
+ &__socials-img {
+ width: 100%;
+ height: 100%;
+ }
+
+ &__logo-link {
+ display: block;
+ width: 46px;
+ height: 28px;
+ }
+
+ &__logo-img {
+ width: 100%;
+ height: 100%;
+ }
+}
diff --git a/src/styles/blocks/header.scss b/src/styles/blocks/header.scss
new file mode 100644
index 0000000000..837dfd65c8
--- /dev/null
+++ b/src/styles/blocks/header.scss
@@ -0,0 +1,129 @@
+.header {
+ overflow: hidden;
+ box-sizing: border-box;
+ background-color: $background-color-dark;
+ min-height: 100vh;
+ position: relative;
+
+ @include header-padding-y;
+
+ &__hero {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+
+ margin-top: 48px;
+
+ @include on-tablet {
+ margin-top: 56px;
+ gap: 147px;
+ }
+
+ @include on-small-desk {
+ margin-top: 164px;
+
+ flex-direction: row;
+ }
+ }
+
+ &__left {
+ display: flex;
+ flex-direction: column;
+ gap: 72px;
+
+ @include on-small-desk {
+ flex: 1;
+ }
+ }
+
+ &__info {
+ display: flex;
+ flex-direction: column;
+ gap: 32px;
+
+ @include on-tablet {
+ gap: 24px;
+ }
+
+ @include on-small-desk {
+ gap: 32px;
+ }
+ }
+
+ &__title {
+ padding: 0;
+
+ font-weight: $font-bold;
+ font-size: 52px;
+ letter-spacing: -2px;
+ line-height: 120%;
+
+ @include on-tablet {
+ font-size: 64px;
+ line-height: 68px;
+ }
+ }
+
+ &__slogan {
+ font-size: 18px;
+ font-family: 'Open Sans', sans-serif;
+ }
+
+ &__button {
+ @include button-style;
+ }
+
+ &__right {
+ @include on-small-desk {
+ flex: 1;
+ }
+ }
+
+ &__img-wrapper {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ right: 0;
+
+ border-radius: 30px;
+ overflow: hidden;
+ height: 30%;
+ flex-shrink: 0;
+
+ @include on-small-desk {
+ margin-inline-start: 0;
+ height: 80%;
+ left: 50%;
+ bottom: 0;
+ }
+ }
+
+ &__img {
+ display: block;
+ width: 100%;
+ height: 100%;
+
+ object-fit: cover;
+ object-position: center;
+ }
+
+ &__caption {
+ position: absolute;
+ left: 20px;
+ bottom: 24px;
+
+ @include on-tablet {
+ left: 41px;
+ bottom: 32px;
+ }
+
+ @include on-small-desk {
+ left: 78px;
+ bottom: 48px;
+ }
+
+ @include on-design {
+ left: 48px;
+ }
+ }
+}
diff --git a/src/styles/blocks/menu.scss b/src/styles/blocks/menu.scss
new file mode 100644
index 0000000000..baccdbc959
--- /dev/null
+++ b/src/styles/blocks/menu.scss
@@ -0,0 +1,27 @@
+.menu {
+ overflow: auto;
+ box-sizing: border-box;
+ height: 100vh;
+ width: 100vw;
+ min-width: 320px;
+ background-color: #1e293b;
+ font-weight: $font-bold;
+
+ padding-top: 50px;
+
+ &__content {
+ display: flex;
+ justify-content: space-between;
+ align-items: flex-start;
+
+ position: sticky; /* to keep cross always visible */
+ top: 0;
+ z-index: 1;
+ }
+
+ &__icon-close {
+ background-image: url(../images/icons/dia-icon-close.png);
+
+ @include icons-style;
+ }
+}
diff --git a/src/styles/blocks/nav.scss b/src/styles/blocks/nav.scss
new file mode 100644
index 0000000000..821f217b7a
--- /dev/null
+++ b/src/styles/blocks/nav.scss
@@ -0,0 +1,54 @@
+.nav {
+ &__list {
+ @include list-style;
+
+ &--big-screen {
+ display: none;
+
+ @include on-small-desk {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
+ gap: 48px;
+ }
+ }
+
+ &--footer {
+ display: flex;
+ flex-direction: column;
+ gap: 24px;
+
+ @include on-tablet {
+ flex-direction: row;
+ gap: 40px;
+ }
+
+ @include on-small-desk {
+ gap: 64px;
+ }
+ }
+
+ &--menu {
+ display: flex;
+ flex-direction: column;
+ align-items: flex-start;
+ justify-content: center;
+ gap: 48px;
+ }
+ }
+
+ &__link {
+ padding-block: 5px;
+ text-decoration: none;
+ text-transform: uppercase;
+ color: $c-white;
+
+ font-weight: $font-bold;
+ font-size: 13px;
+ line-height: 150%;
+ letter-spacing: 3px;
+
+ @include link-underline-style;
+ }
+}
diff --git a/src/styles/blocks/page.scss b/src/styles/blocks/page.scss
new file mode 100644
index 0000000000..c01ffd72f4
--- /dev/null
+++ b/src/styles/blocks/page.scss
@@ -0,0 +1,42 @@
+p,
+h1,
+h2,
+h3,
+h4 {
+ margin: 0;
+}
+
+.page {
+ scroll-behavior: smooth;
+ &:has(.page__menu:target) {
+ overflow: hidden; /* not to scroll the page */
+ }
+
+ &__body {
+ font-family: Poppins, sans-serif;
+ background-color: #f2f6fa;
+ color: $c-white;
+ margin: 0;
+ min-width: 320px;
+ min-height: 100vh;
+ overflow-x: hidden;
+ }
+
+ &__menu {
+ position: fixed;
+ top: 0;
+ left: 0;
+ right: 0;
+
+ opacity: 0;
+ transform: translateY(-100%);
+ pointer-events: none;
+ transition: all $effectDuration;
+
+ &:target {
+ opacity: 1;
+ transform: translateY(0);
+ pointer-events: all;
+ }
+ }
+}
diff --git a/src/styles/blocks/section.scss b/src/styles/blocks/section.scss
new file mode 100644
index 0000000000..eac5fec04b
--- /dev/null
+++ b/src/styles/blocks/section.scss
@@ -0,0 +1,15 @@
+.section {
+ padding-block: 120px;
+
+ @include on-small-desk {
+ padding-block: 148px;
+ }
+
+ &__title {
+ color: $c-title;
+ font-weight: $font-half-bold;
+ line-height: 130%;
+ font-size: 32px;
+ margin-bottom: 24px;
+ }
+}
diff --git a/src/styles/blocks/services.scss b/src/styles/blocks/services.scss
new file mode 100644
index 0000000000..9aa90f4f1e
--- /dev/null
+++ b/src/styles/blocks/services.scss
@@ -0,0 +1,146 @@
+.services {
+ @include on-tablet {
+ padding-block: 0 120px;
+ }
+
+ @include on-small-desk {
+ padding-block: 148px;
+ }
+
+ &__wrapper-grid {
+ display: grid;
+ grid-template-columns: 1fr;
+ gap: 48px;
+
+ @include on-tablet {
+ grid-template-columns: 1fr 1fr;
+ }
+ }
+
+ &__text-content {
+ @include on-tablet {
+ grid-column: 1 / 2;
+ transform: translateY(50%);
+ }
+
+ @include on-small-desk {
+ transform: translateY(0);
+ }
+ }
+
+ &__categories {
+ display: grid;
+ grid-template-columns: 1fr;
+ gap: 24px;
+
+ @include on-tablet {
+ grid-template-columns: 1fr 1fr;
+ gap: 30px;
+ grid-column: 1 / -1;
+ }
+
+ @include on-small-desk {
+ grid-column: 2 / -1;
+ }
+ }
+
+ &__category {
+ background-color: $c-white;
+ padding: 32px;
+
+ @include blocks-styling-shadow;
+
+ @include on-tablet {
+ &:nth-child(1) {
+ transform: translateY(50%);
+ }
+
+ &:nth-child(3) {
+ transform: translateY(50%);
+ }
+ }
+ }
+
+ &__name {
+ @include section-name-gray;
+ }
+
+ &__title {
+ color: $c-title;
+ font-weight: $font-half-bold;
+ line-height: 130%;
+ font-size: 32px;
+
+ margin-bottom: 24px;
+ }
+
+ &__text {
+ color: $c-text;
+ font-family: 'Open Sans', sans-serif;
+ font-weight: $font-normal;
+ font-size: 14px;
+ line-height: 150%;
+
+ @include on-tablet {
+ margin-bottom: 56px;
+ }
+ }
+
+ &__category-num {
+ background-color: rgba($color: $c-blue, $alpha: 0.1);
+ color: $c-blue;
+ width: fit-content;
+ padding: 2px 12px;
+ border-radius: 23px;
+
+ font-weight: $font-half-bold;
+ font-size: 13px;
+ margin-bottom: 24px;
+ }
+
+ &__categories-list {
+ @include list-style;
+
+ margin-bottom: 32px;
+ }
+
+ &__category-link {
+ color: $c-text;
+ text-decoration: none;
+ font-family: 'Open Sans', sans-serif;
+ font-weight: $font-half-bold;
+ font-size: 13px;
+ }
+
+ &__go-further-wrapper {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ gap: 16px;
+ }
+
+ &__go-further-button {
+ background-color: $c-blue;
+ color: $c-white;
+ text-decoration: none;
+ padding: 8px;
+ border-radius: 50%;
+ width: 24px;
+ height: 24px;
+
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ transition: transform $effectDuration;
+
+ &:hover {
+ transform: scale(1.1);
+ }
+ }
+
+ &__go-further-text {
+ color: #334563;
+ font-weight: $font-half-bold;
+ text-decoration: none;
+ }
+}
diff --git a/src/styles/blocks/testimonials.scss b/src/styles/blocks/testimonials.scss
new file mode 100644
index 0000000000..b6818a8fbc
--- /dev/null
+++ b/src/styles/blocks/testimonials.scss
@@ -0,0 +1,161 @@
+.testimonials {
+ padding-top: 50px;
+
+ @include on-tablet {
+ padding-top: 120px;
+ }
+ &__name {
+ display: block;
+ @include section-name-gray;
+ }
+
+ &__title {
+ margin-bottom: 32px;
+
+ @include on-tablet {
+ margin-bottom: 56px;
+ }
+
+ @include on-small-desk {
+ margin-bottom: 85px;
+ }
+ }
+
+ &__blocks {
+ display: flex;
+ flex-direction: column;
+ gap: 24px;
+
+ @include on-tablet {
+ gap: 30px;
+ }
+
+ @include on-small-desk {
+ flex-direction: row;
+ }
+ }
+
+ &__block {
+ background-color: $c-white;
+ padding: 32px 42px;
+
+ @include blocks-styling-shadow;
+
+ @include on-tablet {
+ padding-block: 45px;
+ }
+ }
+
+ &__imgs-wrapper {
+ padding-block: 32px;
+ max-width: 150px;
+ margin-inline: auto;
+
+ position: relative;
+
+ @include on-tablet {
+ max-width: 190px;
+ }
+ }
+
+ &__background-blocks-container {
+ display: flex;
+ flex-direction: row;
+ justify-content: space-between;
+ transform: rotate(45deg);
+ }
+
+ &__background-block {
+ width: 45px;
+ height: 110px;
+ background-color: $c-blue;
+ border-radius: 12px;
+
+ @include on-tablet {
+ width: 56px;
+ height: 140px;
+ }
+ }
+
+ &__reviewer-img {
+ width: 110px;
+ height: 110px;
+ display: block;
+
+ object-fit: cover;
+ object-position: top;
+ border-radius: 50%;
+
+ position: absolute;
+ bottom: 50%;
+ left: 50%;
+ transform: translate(-50%, 50%);
+
+ @include on-tablet {
+ width: 140px;
+ height: 140px;
+ }
+ }
+
+ &__symbols {
+ background-image: url(../images/testimonials/quotation-marks\ .svg);
+ background-size: cover;
+ background-position: center;
+ width: 24px;
+ height: 24px;
+ display: block;
+
+ margin: 0 auto 8px;
+
+ @include on-tablet {
+ margin-bottom: 16px;
+ }
+ }
+
+ &__reviewer {
+ margin-top: 40px;
+
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+
+ @include on-tablet {
+ margin-top: 70px;
+ }
+ }
+
+ &__activity-block {
+ margin-bottom: 16px;
+ }
+
+ &__descr {
+ max-width: 362px;
+ color: $c-text;
+ font-family: 'Open Sans', sans-serif;
+ font-weight: $font-half-bold;
+ font-size: 13px;
+ line-height: 150%;
+ text-align: center;
+ }
+
+ &__reviewer-info {
+ display: flex;
+ flex-direction: column;
+ gap: 10px;
+
+ justify-content: center;
+ align-items: center;
+ }
+
+ &__reviewer-name {
+ color: $c-title;
+ font-family: 'Open Sans', sans-serif;
+ font-weight: $font-half-bold;
+ font-size: 13px;
+ }
+
+ &__reviewer-occupation {
+ @include section-name-gray;
+ }
+}
diff --git a/src/styles/blocks/top-bar.scss b/src/styles/blocks/top-bar.scss
new file mode 100644
index 0000000000..54b28b9f76
--- /dev/null
+++ b/src/styles/blocks/top-bar.scss
@@ -0,0 +1,54 @@
+.top-bar {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+
+ &__start {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ gap: 32px;
+ }
+
+ &__logo-img {
+ display: block;
+ width: 46px;
+ height: 28px;
+ }
+
+ &__burger-button {
+ background-image: url(../images/icons/dia-menu.png);
+
+ @include icons-style;
+
+ @include on-small-desk {
+ display: none;
+ }
+ }
+
+ &__action {
+ position: relative;
+ color: $c-white;
+ text-decoration: none;
+ font-weight: $font-bold;
+ font-size: 13px;
+ line-height: 150%;
+ letter-spacing: 3px;
+ text-transform: uppercase;
+
+ &::after {
+ position: absolute;
+ content: '';
+ display: block;
+ width: 100%;
+ height: 1px;
+ background-color: $c-blue;
+ bottom: -8px;
+ transition: background-color 0.3s;
+ }
+
+ &:hover::after {
+ background-color: $c-white;
+ }
+ }
+}
diff --git a/src/styles/_fonts.scss b/src/styles/fonts.scss
similarity index 100%
rename from src/styles/_fonts.scss
rename to src/styles/fonts.scss
diff --git a/src/styles/main.scss b/src/styles/main.scss
deleted file mode 100644
index fb9195d128..0000000000
--- a/src/styles/main.scss
+++ /dev/null
@@ -1,7 +0,0 @@
-@import 'utils';
-@import 'fonts';
-@import 'typography';
-
-body {
- background: $c-gray;
-}
diff --git a/src/styles/style.scss b/src/styles/style.scss
new file mode 100644
index 0000000000..3200b3b20c
--- /dev/null
+++ b/src/styles/style.scss
@@ -0,0 +1,16 @@
+@import 'utils/vars';
+@import 'utils/mixins';
+@import 'blocks/page';
+@import 'blocks/top-bar';
+@import 'blocks/header';
+@import 'blocks/nav';
+@import 'blocks/container';
+@import 'blocks/menu';
+@import 'blocks/caption';
+@import 'blocks/about';
+@import 'blocks/section';
+@import 'blocks/expertise';
+@import 'blocks/services';
+@import 'blocks/testimonials';
+@import 'blocks/apply';
+@import 'blocks/footer';
diff --git a/src/styles/utils/_extends.scss b/src/styles/utils/_extends.scss
deleted file mode 100644
index d7201e7b3e..0000000000
--- a/src/styles/utils/_extends.scss
+++ /dev/null
@@ -1,4 +0,0 @@
-%h1 {
- font-family: Roboto, sans-serif;
- font-weight: 400;
-}
diff --git a/src/styles/utils/_mixins.scss b/src/styles/utils/_mixins.scss
deleted file mode 100644
index 80c79780dc..0000000000
--- a/src/styles/utils/_mixins.scss
+++ /dev/null
@@ -1,6 +0,0 @@
-@mixin hover($_property, $_toValue) {
- transition: #{$_property} 0.3s;
- &:hover {
- #{$_property}: $_toValue;
- }
-}
diff --git a/src/styles/utils/_vars.scss b/src/styles/utils/_vars.scss
deleted file mode 100644
index aeb006ffbb..0000000000
--- a/src/styles/utils/_vars.scss
+++ /dev/null
@@ -1 +0,0 @@
-$c-gray: #eee;
diff --git a/src/styles/utils/mixins.scss b/src/styles/utils/mixins.scss
new file mode 100644
index 0000000000..4cbdaec93a
--- /dev/null
+++ b/src/styles/utils/mixins.scss
@@ -0,0 +1,136 @@
+@mixin hover($_property, $_toValue) {
+ transition: #{$_property} 0.3s;
+ &:hover {
+ #{$_property}: $_toValue;
+ }
+}
+
+@mixin on-tablet {
+ @media (min-width: $tablet-min-width) {
+ @content;
+ }
+}
+@mixin on-small-desk {
+ @media (min-width: 1024px) {
+ @content;
+ }
+}
+@mixin on-desk {
+ @media (min-width: 1280px) {
+ @content;
+ }
+}
+@mixin on-design {
+ @media (min-width: 1600px) {
+ @content;
+ }
+}
+@mixin on-large-screen {
+ @media (min-width: 2560px) {
+ @content;
+ }
+}
+
+@mixin header-padding-y {
+ padding-top: 20px;
+
+ @include on-small-desk {
+ padding-top: 52px;
+ }
+}
+
+@mixin icons-style {
+ display: block;
+ width: 24px;
+ height: 24px;
+ background-size: cover;
+ background-repeat: no-repeat;
+ background-position: center;
+}
+
+@mixin button-style {
+ box-sizing: border-box;
+ display: block;
+ color: $c-white;
+ width: 280px;
+ height: 50px;
+ line-height: 48px;
+ text-align: center;
+ border-radius: 8px;
+ background-color: $c-blue;
+ text-decoration: none;
+ font-size: 15px;
+ letter-spacing: 0;
+ border: 1px solid transparent;
+ cursor: pointer;
+
+ transition:
+ background-color $effectDuration,
+ color $effectDuration,
+ border $effectDuration;
+
+ @include on-tablet {
+ width: 264px;
+ }
+
+ &:hover {
+ background-color: $c-white;
+ color: $c-blue;
+ border: 1px solid $c-blue;
+ }
+}
+
+@mixin list-style {
+ margin: 0;
+ padding: 0;
+ list-style: none;
+}
+
+@mixin section-name-gray {
+ color: #c0cdd7;
+ font-weight: $font-bold;
+ font-size: 13px;
+ line-height: 100%;
+ letter-spacing: 3px;
+ text-transform: uppercase;
+ margin-bottom: 16px;
+}
+
+@mixin blocks-styling-shadow {
+ border-radius: 16px;
+ box-shadow: 0 9px 18px 0 #25293108;
+}
+
+@mixin visually-hidden {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ margin: -1px;
+ padding: 0;
+ overflow: hidden;
+ border: 0;
+ clip: rect(0 0 0 0);
+ clip-path: inset(100%);
+ white-space: nowrap;
+}
+
+@mixin link-underline-style {
+ position: relative;
+
+ &::after {
+ position: absolute;
+ display: block;
+ content: '';
+ bottom: -8px;
+ height: 1px;
+ width: 100%;
+ background-color: $c-white;
+
+ transform: scale(0);
+ transition: transform $effectDuration;
+ }
+
+ &:hover::after {
+ transform: scale(1);
+ }
+}
diff --git a/src/styles/utils/vars.scss b/src/styles/utils/vars.scss
new file mode 100644
index 0000000000..7c8740375e
--- /dev/null
+++ b/src/styles/utils/vars.scss
@@ -0,0 +1,14 @@
+$c-gray: #eee;
+$c-white: #fff;
+$c-blue: #2060f6;
+$c-title: #253757;
+$c-text: #6c788b;
+$background-color-dark: #2c2c2c;
+$background-color-light-blue: #f2f6fa;
+$min-screen-width: 320px;
+$tablet-min-width: 640px;
+$desktop-min-width: 1024px;
+$font-bold: 700;
+$font-half-bold: 600;
+$font-normal: 400;
+$effectDuration: 0.3s;