diff --git a/2470113-accelerator-project-2.zip b/2470113-accelerator-project-2.zip new file mode 100644 index 000000000..ba103584c Binary files /dev/null and b/2470113-accelerator-project-2.zip differ diff --git a/source/apple-touch-icon.png b/source/apple-touch-icon.png new file mode 100644 index 000000000..07a113dd0 Binary files /dev/null and b/source/apple-touch-icon.png differ diff --git a/source/apple-touch-icon.webp b/source/apple-touch-icon.webp new file mode 100644 index 000000000..41b8a85fd Binary files /dev/null and b/source/apple-touch-icon.webp differ diff --git a/source/favicon-96x96.png b/source/favicon-96x96.png new file mode 100644 index 000000000..f844d1fad Binary files /dev/null and b/source/favicon-96x96.png differ diff --git a/source/favicon-96x96.webp b/source/favicon-96x96.webp new file mode 100644 index 000000000..517ae9a98 Binary files /dev/null and b/source/favicon-96x96.webp differ diff --git a/source/favicon.ico b/source/favicon.ico new file mode 100644 index 000000000..22738a830 Binary files /dev/null and b/source/favicon.ico differ diff --git a/source/favicon.svg b/source/favicon.svg new file mode 100644 index 000000000..ca9e58c5c --- /dev/null +++ b/source/favicon.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/source/fonts/Montserrat-VariableFont_wght.woff b/source/fonts/Montserrat-VariableFont_wght.woff new file mode 100644 index 000000000..73ae9d5ab Binary files /dev/null and b/source/fonts/Montserrat-VariableFont_wght.woff differ diff --git a/source/fonts/Montserrat-VariableFont_wght.woff2 b/source/fonts/Montserrat-VariableFont_wght.woff2 new file mode 100644 index 000000000..020c59db3 Binary files /dev/null and b/source/fonts/Montserrat-VariableFont_wght.woff2 differ diff --git a/source/img/clouds-1-desktop.jpg b/source/img/clouds-1-desktop.jpg new file mode 100644 index 000000000..855ba0479 Binary files /dev/null and b/source/img/clouds-1-desktop.jpg differ diff --git a/source/img/clouds-1-desktop.webp b/source/img/clouds-1-desktop.webp new file mode 100644 index 000000000..e2b4f2f25 Binary files /dev/null and b/source/img/clouds-1-desktop.webp differ diff --git a/source/img/clouds-1-desktop@2x.jpg b/source/img/clouds-1-desktop@2x.jpg new file mode 100644 index 000000000..479703838 Binary files /dev/null and b/source/img/clouds-1-desktop@2x.jpg differ diff --git a/source/img/clouds-1-desktop@2x.webp b/source/img/clouds-1-desktop@2x.webp new file mode 100644 index 000000000..069859909 Binary files /dev/null and b/source/img/clouds-1-desktop@2x.webp differ diff --git a/source/img/clouds-1-mobile.jpg b/source/img/clouds-1-mobile.jpg new file mode 100644 index 000000000..e33b38fcf Binary files /dev/null and b/source/img/clouds-1-mobile.jpg differ diff --git a/source/img/clouds-1-mobile.webp b/source/img/clouds-1-mobile.webp new file mode 100644 index 000000000..e8e380249 Binary files /dev/null and b/source/img/clouds-1-mobile.webp differ diff --git a/source/img/clouds-1-mobile@2x.jpg b/source/img/clouds-1-mobile@2x.jpg new file mode 100644 index 000000000..b15c80ed9 Binary files /dev/null and b/source/img/clouds-1-mobile@2x.jpg differ diff --git a/source/img/clouds-1-mobile@2x.webp b/source/img/clouds-1-mobile@2x.webp new file mode 100644 index 000000000..064d5f502 Binary files /dev/null and b/source/img/clouds-1-mobile@2x.webp differ diff --git a/source/img/clouds-1-tablet.jpg b/source/img/clouds-1-tablet.jpg new file mode 100644 index 000000000..4dcbafe5c Binary files /dev/null and b/source/img/clouds-1-tablet.jpg differ diff --git a/source/img/clouds-1-tablet.webp b/source/img/clouds-1-tablet.webp new file mode 100644 index 000000000..e65629a8e Binary files /dev/null and b/source/img/clouds-1-tablet.webp differ diff --git a/source/img/clouds-1-tablet@2x.jpg b/source/img/clouds-1-tablet@2x.jpg new file mode 100644 index 000000000..6ca1e2f15 Binary files /dev/null and b/source/img/clouds-1-tablet@2x.jpg differ diff --git a/source/img/clouds-1-tablet@2x.webp b/source/img/clouds-1-tablet@2x.webp new file mode 100644 index 000000000..519606b36 Binary files /dev/null and b/source/img/clouds-1-tablet@2x.webp differ diff --git a/source/img/clouds-2-desktop.jpg b/source/img/clouds-2-desktop.jpg new file mode 100644 index 000000000..e9f698571 Binary files /dev/null and b/source/img/clouds-2-desktop.jpg differ diff --git a/source/img/clouds-2-desktop.png b/source/img/clouds-2-desktop.png new file mode 100644 index 000000000..9042b0dcd Binary files /dev/null and b/source/img/clouds-2-desktop.png differ diff --git a/source/img/clouds-2-desktop.webp b/source/img/clouds-2-desktop.webp new file mode 100644 index 000000000..584ab5705 Binary files /dev/null and b/source/img/clouds-2-desktop.webp differ diff --git a/source/img/clouds-2-desktop@2x.jpg b/source/img/clouds-2-desktop@2x.jpg new file mode 100644 index 000000000..0018be7ea Binary files /dev/null and b/source/img/clouds-2-desktop@2x.jpg differ diff --git a/source/img/clouds-2-desktop@2x.webp b/source/img/clouds-2-desktop@2x.webp new file mode 100644 index 000000000..4426c21e2 Binary files /dev/null and b/source/img/clouds-2-desktop@2x.webp differ diff --git a/source/img/clouds-2-tablet.jpg b/source/img/clouds-2-tablet.jpg new file mode 100644 index 000000000..8884fc07e Binary files /dev/null and b/source/img/clouds-2-tablet.jpg differ diff --git a/source/img/clouds-2-tablet.webp b/source/img/clouds-2-tablet.webp new file mode 100644 index 000000000..828aa35da Binary files /dev/null and b/source/img/clouds-2-tablet.webp differ diff --git a/source/img/clouds-2-tablet@2x.jpg b/source/img/clouds-2-tablet@2x.jpg new file mode 100644 index 000000000..497c95b1c Binary files /dev/null and b/source/img/clouds-2-tablet@2x.jpg differ diff --git a/source/img/clouds-2-tablet@2x.webp b/source/img/clouds-2-tablet@2x.webp new file mode 100644 index 000000000..a25b73743 Binary files /dev/null and b/source/img/clouds-2-tablet@2x.webp differ diff --git a/source/img/clouds-3-desktop.jpg b/source/img/clouds-3-desktop.jpg new file mode 100644 index 000000000..7db804279 Binary files /dev/null and b/source/img/clouds-3-desktop.jpg differ diff --git a/source/img/clouds-3-desktop.webp b/source/img/clouds-3-desktop.webp new file mode 100644 index 000000000..0537b252f Binary files /dev/null and b/source/img/clouds-3-desktop.webp differ diff --git a/source/img/clouds-3-desktop@2x.jpg b/source/img/clouds-3-desktop@2x.jpg new file mode 100644 index 000000000..b6c58d39f Binary files /dev/null and b/source/img/clouds-3-desktop@2x.jpg differ diff --git a/source/img/clouds-3-desktop@2x.webp b/source/img/clouds-3-desktop@2x.webp new file mode 100644 index 000000000..c35c69eac Binary files /dev/null and b/source/img/clouds-3-desktop@2x.webp differ diff --git a/source/img/clouds-3-tablet.jpg b/source/img/clouds-3-tablet.jpg new file mode 100644 index 000000000..7727a0d27 Binary files /dev/null and b/source/img/clouds-3-tablet.jpg differ diff --git a/source/img/clouds-3-tablet.webp b/source/img/clouds-3-tablet.webp new file mode 100644 index 000000000..a6a170bac Binary files /dev/null and b/source/img/clouds-3-tablet.webp differ diff --git a/source/img/clouds-3-tablet@2x.jpg b/source/img/clouds-3-tablet@2x.jpg new file mode 100644 index 000000000..6f1dfc90b Binary files /dev/null and b/source/img/clouds-3-tablet@2x.jpg differ diff --git a/source/img/clouds-3-tablet@2x.webp b/source/img/clouds-3-tablet@2x.webp new file mode 100644 index 000000000..7b6a5045a Binary files /dev/null and b/source/img/clouds-3-tablet@2x.webp differ diff --git a/source/img/clouds-desktop.png b/source/img/clouds-desktop.png new file mode 100644 index 000000000..86d3d58ff Binary files /dev/null and b/source/img/clouds-desktop.png differ diff --git a/source/img/clouds-desktop.webp b/source/img/clouds-desktop.webp new file mode 100644 index 000000000..0023d1a01 Binary files /dev/null and b/source/img/clouds-desktop.webp differ diff --git a/source/img/clouds-tablet.png b/source/img/clouds-tablet.png new file mode 100644 index 000000000..0ed60080e Binary files /dev/null and b/source/img/clouds-tablet.png differ diff --git a/source/img/clouds-tablet.webp b/source/img/clouds-tablet.webp new file mode 100644 index 000000000..ee5f8474d Binary files /dev/null and b/source/img/clouds-tablet.webp differ diff --git a/source/img/form-background-desktop.jpg b/source/img/form-background-desktop.jpg new file mode 100644 index 000000000..8c836abcd Binary files /dev/null and b/source/img/form-background-desktop.jpg differ diff --git a/source/img/form-background-desktop.webp b/source/img/form-background-desktop.webp new file mode 100644 index 000000000..7027b8ad3 Binary files /dev/null and b/source/img/form-background-desktop.webp differ diff --git a/source/img/form-background-desktop@2x.jpg b/source/img/form-background-desktop@2x.jpg new file mode 100644 index 000000000..0b872511f Binary files /dev/null and b/source/img/form-background-desktop@2x.jpg differ diff --git a/source/img/form-background-desktop@2x.webp b/source/img/form-background-desktop@2x.webp new file mode 100644 index 000000000..349c67736 Binary files /dev/null and b/source/img/form-background-desktop@2x.webp differ diff --git a/source/img/form-background-tablet.jpg b/source/img/form-background-tablet.jpg new file mode 100644 index 000000000..1b2a426e8 Binary files /dev/null and b/source/img/form-background-tablet.jpg differ diff --git a/source/img/form-background-tablet.webp b/source/img/form-background-tablet.webp new file mode 100644 index 000000000..cedf805ad Binary files /dev/null and b/source/img/form-background-tablet.webp differ diff --git a/source/img/form-background-tablet@2x.jpg b/source/img/form-background-tablet@2x.jpg new file mode 100644 index 000000000..5f85901c1 Binary files /dev/null and b/source/img/form-background-tablet@2x.jpg differ diff --git a/source/img/form-background-tablet@2x.webp b/source/img/form-background-tablet@2x.webp new file mode 100644 index 000000000..a8767dad0 Binary files /dev/null and b/source/img/form-background-tablet@2x.webp differ diff --git a/source/img/gallery-photo-1-desktop.jpg b/source/img/gallery-photo-1-desktop.jpg new file mode 100644 index 000000000..7c2a277ad Binary files /dev/null and b/source/img/gallery-photo-1-desktop.jpg differ diff --git a/source/img/gallery-photo-1-desktop.webp b/source/img/gallery-photo-1-desktop.webp new file mode 100644 index 000000000..4b15de1a2 Binary files /dev/null and b/source/img/gallery-photo-1-desktop.webp differ diff --git a/source/img/gallery-photo-1-desktop@2x.jpg b/source/img/gallery-photo-1-desktop@2x.jpg new file mode 100644 index 000000000..43d4d00b6 Binary files /dev/null and b/source/img/gallery-photo-1-desktop@2x.jpg differ diff --git a/source/img/gallery-photo-1-desktop@2x.webp b/source/img/gallery-photo-1-desktop@2x.webp new file mode 100644 index 000000000..49a437a3c Binary files /dev/null and b/source/img/gallery-photo-1-desktop@2x.webp differ diff --git a/source/img/gallery-photo-1-mobile.jpg b/source/img/gallery-photo-1-mobile.jpg new file mode 100644 index 000000000..3d37ad1b8 Binary files /dev/null and b/source/img/gallery-photo-1-mobile.jpg differ diff --git a/source/img/gallery-photo-1-mobile.webp b/source/img/gallery-photo-1-mobile.webp new file mode 100644 index 000000000..5371633fb Binary files /dev/null and b/source/img/gallery-photo-1-mobile.webp differ diff --git a/source/img/gallery-photo-1-mobile@2x.jpg b/source/img/gallery-photo-1-mobile@2x.jpg new file mode 100644 index 000000000..eea085bbf Binary files /dev/null and b/source/img/gallery-photo-1-mobile@2x.jpg differ diff --git a/source/img/gallery-photo-1-mobile@2x.webp b/source/img/gallery-photo-1-mobile@2x.webp new file mode 100644 index 000000000..1e67a5e14 Binary files /dev/null and b/source/img/gallery-photo-1-mobile@2x.webp differ diff --git a/source/img/gallery-photo-1-tablet.jpg b/source/img/gallery-photo-1-tablet.jpg new file mode 100644 index 000000000..1468f5328 Binary files /dev/null and b/source/img/gallery-photo-1-tablet.jpg differ diff --git a/source/img/gallery-photo-1-tablet.webp b/source/img/gallery-photo-1-tablet.webp new file mode 100644 index 000000000..c6156e88f Binary files /dev/null and b/source/img/gallery-photo-1-tablet.webp differ diff --git a/source/img/gallery-photo-1-tablet@2x.jpg b/source/img/gallery-photo-1-tablet@2x.jpg new file mode 100644 index 000000000..326f2f111 Binary files /dev/null and b/source/img/gallery-photo-1-tablet@2x.jpg differ diff --git a/source/img/gallery-photo-1-tablet@2x.webp b/source/img/gallery-photo-1-tablet@2x.webp new file mode 100644 index 000000000..9da60c163 Binary files /dev/null and b/source/img/gallery-photo-1-tablet@2x.webp differ diff --git a/source/img/gallery-photo-2-desktop.jpg b/source/img/gallery-photo-2-desktop.jpg new file mode 100644 index 000000000..3b2b65cdc Binary files /dev/null and b/source/img/gallery-photo-2-desktop.jpg differ diff --git a/source/img/gallery-photo-2-desktop.webp b/source/img/gallery-photo-2-desktop.webp new file mode 100644 index 000000000..073be74ff Binary files /dev/null and b/source/img/gallery-photo-2-desktop.webp differ diff --git a/source/img/gallery-photo-2-desktop@2x.jpg b/source/img/gallery-photo-2-desktop@2x.jpg new file mode 100644 index 000000000..dc6a92072 Binary files /dev/null and b/source/img/gallery-photo-2-desktop@2x.jpg differ diff --git a/source/img/gallery-photo-2-desktop@2x.webp b/source/img/gallery-photo-2-desktop@2x.webp new file mode 100644 index 000000000..fd009f053 Binary files /dev/null and b/source/img/gallery-photo-2-desktop@2x.webp differ diff --git a/source/img/gallery-photo-2-mobile.jpg b/source/img/gallery-photo-2-mobile.jpg new file mode 100644 index 000000000..8f5920c2c Binary files /dev/null and b/source/img/gallery-photo-2-mobile.jpg differ diff --git a/source/img/gallery-photo-2-mobile.webp b/source/img/gallery-photo-2-mobile.webp new file mode 100644 index 000000000..815aad695 Binary files /dev/null and b/source/img/gallery-photo-2-mobile.webp differ diff --git a/source/img/gallery-photo-2-mobile@2x.jpg b/source/img/gallery-photo-2-mobile@2x.jpg new file mode 100644 index 000000000..7b368d6f9 Binary files /dev/null and b/source/img/gallery-photo-2-mobile@2x.jpg differ diff --git a/source/img/gallery-photo-2-mobile@2x.webp b/source/img/gallery-photo-2-mobile@2x.webp new file mode 100644 index 000000000..de2be0678 Binary files /dev/null and b/source/img/gallery-photo-2-mobile@2x.webp differ diff --git a/source/img/gallery-photo-2-tablet.jpg b/source/img/gallery-photo-2-tablet.jpg new file mode 100644 index 000000000..2e9917fcc Binary files /dev/null and b/source/img/gallery-photo-2-tablet.jpg differ diff --git a/source/img/gallery-photo-2-tablet.webp b/source/img/gallery-photo-2-tablet.webp new file mode 100644 index 000000000..396b4fa63 Binary files /dev/null and b/source/img/gallery-photo-2-tablet.webp differ diff --git a/source/img/gallery-photo-2-tablet@2x.jpg b/source/img/gallery-photo-2-tablet@2x.jpg new file mode 100644 index 000000000..5e9608eb8 Binary files /dev/null and b/source/img/gallery-photo-2-tablet@2x.jpg differ diff --git a/source/img/gallery-photo-2-tablet@2x.webp b/source/img/gallery-photo-2-tablet@2x.webp new file mode 100644 index 000000000..044ea1a8f Binary files /dev/null and b/source/img/gallery-photo-2-tablet@2x.webp differ diff --git a/source/img/gallery-photo-3-desktop.jpg b/source/img/gallery-photo-3-desktop.jpg new file mode 100644 index 000000000..56f421808 Binary files /dev/null and b/source/img/gallery-photo-3-desktop.jpg differ diff --git a/source/img/gallery-photo-3-desktop.webp b/source/img/gallery-photo-3-desktop.webp new file mode 100644 index 000000000..2afb8160f Binary files /dev/null and b/source/img/gallery-photo-3-desktop.webp differ diff --git a/source/img/gallery-photo-3-desktop@2x.jpg b/source/img/gallery-photo-3-desktop@2x.jpg new file mode 100644 index 000000000..33a18f82e Binary files /dev/null and b/source/img/gallery-photo-3-desktop@2x.jpg differ diff --git a/source/img/gallery-photo-3-desktop@2x.webp b/source/img/gallery-photo-3-desktop@2x.webp new file mode 100644 index 000000000..15d2012c7 Binary files /dev/null and b/source/img/gallery-photo-3-desktop@2x.webp differ diff --git a/source/img/gallery-photo-3-mobile.jpg b/source/img/gallery-photo-3-mobile.jpg new file mode 100644 index 000000000..2ee0ab59e Binary files /dev/null and b/source/img/gallery-photo-3-mobile.jpg differ diff --git a/source/img/gallery-photo-3-mobile.webp b/source/img/gallery-photo-3-mobile.webp new file mode 100644 index 000000000..446a5748f Binary files /dev/null and b/source/img/gallery-photo-3-mobile.webp differ diff --git a/source/img/gallery-photo-3-mobile@2x.jpg b/source/img/gallery-photo-3-mobile@2x.jpg new file mode 100644 index 000000000..7fb4df7c8 Binary files /dev/null and b/source/img/gallery-photo-3-mobile@2x.jpg differ diff --git a/source/img/gallery-photo-3-mobile@2x.webp b/source/img/gallery-photo-3-mobile@2x.webp new file mode 100644 index 000000000..53cd5e283 Binary files /dev/null and b/source/img/gallery-photo-3-mobile@2x.webp differ diff --git a/source/img/gallery-photo-3-tablet.jpg b/source/img/gallery-photo-3-tablet.jpg new file mode 100644 index 000000000..9951d8a3c Binary files /dev/null and b/source/img/gallery-photo-3-tablet.jpg differ diff --git a/source/img/gallery-photo-3-tablet.webp b/source/img/gallery-photo-3-tablet.webp new file mode 100644 index 000000000..f31c97cf3 Binary files /dev/null and b/source/img/gallery-photo-3-tablet.webp differ diff --git a/source/img/gallery-photo-3-tablet@2x.jpg b/source/img/gallery-photo-3-tablet@2x.jpg new file mode 100644 index 000000000..0d5783bb6 Binary files /dev/null and b/source/img/gallery-photo-3-tablet@2x.jpg differ diff --git a/source/img/gallery-photo-3-tablet@2x.webp b/source/img/gallery-photo-3-tablet@2x.webp new file mode 100644 index 000000000..5a8f3b9aa Binary files /dev/null and b/source/img/gallery-photo-3-tablet@2x.webp differ diff --git a/source/img/gallery-photo-4-desktop.jpg b/source/img/gallery-photo-4-desktop.jpg new file mode 100644 index 000000000..14f284ddb Binary files /dev/null and b/source/img/gallery-photo-4-desktop.jpg differ diff --git a/source/img/gallery-photo-4-desktop.webp b/source/img/gallery-photo-4-desktop.webp new file mode 100644 index 000000000..709cc4a97 Binary files /dev/null and b/source/img/gallery-photo-4-desktop.webp differ diff --git a/source/img/gallery-photo-4-desktop@2x.jpg b/source/img/gallery-photo-4-desktop@2x.jpg new file mode 100644 index 000000000..c0383701d Binary files /dev/null and b/source/img/gallery-photo-4-desktop@2x.jpg differ diff --git a/source/img/gallery-photo-4-desktop@2x.webp b/source/img/gallery-photo-4-desktop@2x.webp new file mode 100644 index 000000000..64b9ba98c Binary files /dev/null and b/source/img/gallery-photo-4-desktop@2x.webp differ diff --git a/source/img/gallery-photo-4-tablet.jpg b/source/img/gallery-photo-4-tablet.jpg new file mode 100644 index 000000000..1a236a1f8 Binary files /dev/null and b/source/img/gallery-photo-4-tablet.jpg differ diff --git a/source/img/gallery-photo-4-tablet.webp b/source/img/gallery-photo-4-tablet.webp new file mode 100644 index 000000000..a28efecc4 Binary files /dev/null and b/source/img/gallery-photo-4-tablet.webp differ diff --git a/source/img/gallery-photo-4-tablet@2x.jpg b/source/img/gallery-photo-4-tablet@2x.jpg new file mode 100644 index 000000000..00df7e5a2 Binary files /dev/null and b/source/img/gallery-photo-4-tablet@2x.jpg differ diff --git a/source/img/gallery-photo-4-tablet@2x.webp b/source/img/gallery-photo-4-tablet@2x.webp new file mode 100644 index 000000000..e46184aba Binary files /dev/null and b/source/img/gallery-photo-4-tablet@2x.webp differ diff --git a/source/img/gallery-photo-5-desktop.jpg b/source/img/gallery-photo-5-desktop.jpg new file mode 100644 index 000000000..e13d350ed Binary files /dev/null and b/source/img/gallery-photo-5-desktop.jpg differ diff --git a/source/img/gallery-photo-5-desktop.webp b/source/img/gallery-photo-5-desktop.webp new file mode 100644 index 000000000..1f2725fff Binary files /dev/null and b/source/img/gallery-photo-5-desktop.webp differ diff --git a/source/img/gallery-photo-5-desktop@2x.jpg b/source/img/gallery-photo-5-desktop@2x.jpg new file mode 100644 index 000000000..a96c6297e Binary files /dev/null and b/source/img/gallery-photo-5-desktop@2x.jpg differ diff --git a/source/img/gallery-photo-5-desktop@2x.webp b/source/img/gallery-photo-5-desktop@2x.webp new file mode 100644 index 000000000..1759c8993 Binary files /dev/null and b/source/img/gallery-photo-5-desktop@2x.webp differ diff --git a/source/img/gallery-photo-6-desktop.jpg b/source/img/gallery-photo-6-desktop.jpg new file mode 100644 index 000000000..a89c578bf Binary files /dev/null and b/source/img/gallery-photo-6-desktop.jpg differ diff --git a/source/img/gallery-photo-6-desktop.webp b/source/img/gallery-photo-6-desktop.webp new file mode 100644 index 000000000..16247904c Binary files /dev/null and b/source/img/gallery-photo-6-desktop.webp differ diff --git a/source/img/gallery-photo-6-desktop@2x.jpg b/source/img/gallery-photo-6-desktop@2x.jpg new file mode 100644 index 000000000..581ec3242 Binary files /dev/null and b/source/img/gallery-photo-6-desktop@2x.jpg differ diff --git a/source/img/gallery-photo-6-desktop@2x.webp b/source/img/gallery-photo-6-desktop@2x.webp new file mode 100644 index 000000000..9bc3c6de8 Binary files /dev/null and b/source/img/gallery-photo-6-desktop@2x.webp differ diff --git a/source/img/gallery-photo-7-desktop.jpg b/source/img/gallery-photo-7-desktop.jpg new file mode 100644 index 000000000..4c0ce9d24 Binary files /dev/null and b/source/img/gallery-photo-7-desktop.jpg differ diff --git a/source/img/gallery-photo-7-desktop.webp b/source/img/gallery-photo-7-desktop.webp new file mode 100644 index 000000000..55be4cafb Binary files /dev/null and b/source/img/gallery-photo-7-desktop.webp differ diff --git a/source/img/gallery-photo-7-desktop@2x.jpg b/source/img/gallery-photo-7-desktop@2x.jpg new file mode 100644 index 000000000..82ba29d27 Binary files /dev/null and b/source/img/gallery-photo-7-desktop@2x.jpg differ diff --git a/source/img/gallery-photo-7-desktop@2x.webp b/source/img/gallery-photo-7-desktop@2x.webp new file mode 100644 index 000000000..87c0c8f9b Binary files /dev/null and b/source/img/gallery-photo-7-desktop@2x.webp differ diff --git a/source/img/hero-photo-1-desktop.png b/source/img/hero-photo-1-desktop.png new file mode 100644 index 000000000..b7f2911e9 Binary files /dev/null and b/source/img/hero-photo-1-desktop.png differ diff --git a/source/img/hero-photo-1-desktop.webp b/source/img/hero-photo-1-desktop.webp new file mode 100644 index 000000000..6da9ea94c Binary files /dev/null and b/source/img/hero-photo-1-desktop.webp differ diff --git a/source/img/hero-photo-1-desktop@2x.png b/source/img/hero-photo-1-desktop@2x.png new file mode 100644 index 000000000..61aee1f38 Binary files /dev/null and b/source/img/hero-photo-1-desktop@2x.png differ diff --git a/source/img/hero-photo-1-desktop@2x.webp b/source/img/hero-photo-1-desktop@2x.webp new file mode 100644 index 000000000..96384e533 Binary files /dev/null and b/source/img/hero-photo-1-desktop@2x.webp differ diff --git a/source/img/hero-photo-1-tablet.png b/source/img/hero-photo-1-tablet.png new file mode 100644 index 000000000..a20fc8ebb Binary files /dev/null and b/source/img/hero-photo-1-tablet.png differ diff --git a/source/img/hero-photo-1-tablet.webp b/source/img/hero-photo-1-tablet.webp new file mode 100644 index 000000000..92ae4cc5b Binary files /dev/null and b/source/img/hero-photo-1-tablet.webp differ diff --git a/source/img/hero-photo-1-tablet@2x.png b/source/img/hero-photo-1-tablet@2x.png new file mode 100644 index 000000000..919a6bd7f Binary files /dev/null and b/source/img/hero-photo-1-tablet@2x.png differ diff --git a/source/img/hero-photo-1-tablet@2x.webp b/source/img/hero-photo-1-tablet@2x.webp new file mode 100644 index 000000000..875f4d242 Binary files /dev/null and b/source/img/hero-photo-1-tablet@2x.webp differ diff --git a/source/img/hero-photo-2-desktop.png b/source/img/hero-photo-2-desktop.png new file mode 100644 index 000000000..916979675 Binary files /dev/null and b/source/img/hero-photo-2-desktop.png differ diff --git a/source/img/hero-photo-2-desktop.webp b/source/img/hero-photo-2-desktop.webp new file mode 100644 index 000000000..e85f98aa1 Binary files /dev/null and b/source/img/hero-photo-2-desktop.webp differ diff --git a/source/img/hero-photo-2-desktop@2x.png b/source/img/hero-photo-2-desktop@2x.png new file mode 100644 index 000000000..3e31aad60 Binary files /dev/null and b/source/img/hero-photo-2-desktop@2x.png differ diff --git a/source/img/hero-photo-2-desktop@2x.webp b/source/img/hero-photo-2-desktop@2x.webp new file mode 100644 index 000000000..63b8bbcbf Binary files /dev/null and b/source/img/hero-photo-2-desktop@2x.webp differ diff --git a/source/img/hero-photo-2-tablet.png b/source/img/hero-photo-2-tablet.png new file mode 100644 index 000000000..ea267e893 Binary files /dev/null and b/source/img/hero-photo-2-tablet.png differ diff --git a/source/img/hero-photo-2-tablet.webp b/source/img/hero-photo-2-tablet.webp new file mode 100644 index 000000000..b4ba0b48b Binary files /dev/null and b/source/img/hero-photo-2-tablet.webp differ diff --git a/source/img/hero-photo-2-tablet@2x.png b/source/img/hero-photo-2-tablet@2x.png new file mode 100644 index 000000000..c75b0df73 Binary files /dev/null and b/source/img/hero-photo-2-tablet@2x.png differ diff --git a/source/img/hero-photo-2-tablet@2x.webp b/source/img/hero-photo-2-tablet@2x.webp new file mode 100644 index 000000000..0b955b3e3 Binary files /dev/null and b/source/img/hero-photo-2-tablet@2x.webp differ diff --git a/source/img/hero-slide-altay-mobile.jpg b/source/img/hero-slide-altay-mobile.jpg new file mode 100644 index 000000000..677797335 Binary files /dev/null and b/source/img/hero-slide-altay-mobile.jpg differ diff --git a/source/img/hero-slide-altay-mobile.webp b/source/img/hero-slide-altay-mobile.webp new file mode 100644 index 000000000..6c6f87628 Binary files /dev/null and b/source/img/hero-slide-altay-mobile.webp differ diff --git a/source/img/hero-slide-altay-mobile@2x.jpg b/source/img/hero-slide-altay-mobile@2x.jpg new file mode 100644 index 000000000..085d02072 Binary files /dev/null and b/source/img/hero-slide-altay-mobile@2x.jpg differ diff --git a/source/img/hero-slide-altay-mobile@2x.webp b/source/img/hero-slide-altay-mobile@2x.webp new file mode 100644 index 000000000..9f6a95eeb Binary files /dev/null and b/source/img/hero-slide-altay-mobile@2x.webp differ diff --git a/source/img/hero-slide-altay.jpg b/source/img/hero-slide-altay.jpg new file mode 100644 index 000000000..84a5ed70e Binary files /dev/null and b/source/img/hero-slide-altay.jpg differ diff --git a/source/img/hero-slide-altay.webp b/source/img/hero-slide-altay.webp new file mode 100644 index 000000000..369d318e4 Binary files /dev/null and b/source/img/hero-slide-altay.webp differ diff --git a/source/img/hero-slide-altay@2x.jpg b/source/img/hero-slide-altay@2x.jpg new file mode 100644 index 000000000..b086cb608 Binary files /dev/null and b/source/img/hero-slide-altay@2x.jpg differ diff --git a/source/img/hero-slide-altay@2x.webp b/source/img/hero-slide-altay@2x.webp new file mode 100644 index 000000000..6a7cde661 Binary files /dev/null and b/source/img/hero-slide-altay@2x.webp differ diff --git a/source/img/hero-slide-caucas-mobile.jpg b/source/img/hero-slide-caucas-mobile.jpg new file mode 100644 index 000000000..138a9cbf8 Binary files /dev/null and b/source/img/hero-slide-caucas-mobile.jpg differ diff --git a/source/img/hero-slide-caucas-mobile.webp b/source/img/hero-slide-caucas-mobile.webp new file mode 100644 index 000000000..fa86605b1 Binary files /dev/null and b/source/img/hero-slide-caucas-mobile.webp differ diff --git a/source/img/hero-slide-caucas-mobile@2x.jpg b/source/img/hero-slide-caucas-mobile@2x.jpg new file mode 100644 index 000000000..5c507ee06 Binary files /dev/null and b/source/img/hero-slide-caucas-mobile@2x.jpg differ diff --git a/source/img/hero-slide-caucas-mobile@2x.webp b/source/img/hero-slide-caucas-mobile@2x.webp new file mode 100644 index 000000000..360cde7c9 Binary files /dev/null and b/source/img/hero-slide-caucas-mobile@2x.webp differ diff --git a/source/img/hero-slide-caucas.jpg b/source/img/hero-slide-caucas.jpg new file mode 100644 index 000000000..d0332d57f Binary files /dev/null and b/source/img/hero-slide-caucas.jpg differ diff --git a/source/img/hero-slide-caucas.webp b/source/img/hero-slide-caucas.webp new file mode 100644 index 000000000..e1b975edf Binary files /dev/null and b/source/img/hero-slide-caucas.webp differ diff --git a/source/img/hero-slide-caucas@2x.jpg b/source/img/hero-slide-caucas@2x.jpg new file mode 100644 index 000000000..a67d82b51 Binary files /dev/null and b/source/img/hero-slide-caucas@2x.jpg differ diff --git a/source/img/hero-slide-caucas@2x.webp b/source/img/hero-slide-caucas@2x.webp new file mode 100644 index 000000000..933fd0a08 Binary files /dev/null and b/source/img/hero-slide-caucas@2x.webp differ diff --git a/source/img/hero-slide-kamchatka-mobile.jpg b/source/img/hero-slide-kamchatka-mobile.jpg new file mode 100644 index 000000000..657b33372 Binary files /dev/null and b/source/img/hero-slide-kamchatka-mobile.jpg differ diff --git a/source/img/hero-slide-kamchatka-mobile.webp b/source/img/hero-slide-kamchatka-mobile.webp new file mode 100644 index 000000000..cfc158acc Binary files /dev/null and b/source/img/hero-slide-kamchatka-mobile.webp differ diff --git a/source/img/hero-slide-kamchatka-mobile@2x.jpg b/source/img/hero-slide-kamchatka-mobile@2x.jpg new file mode 100644 index 000000000..6616fb19e Binary files /dev/null and b/source/img/hero-slide-kamchatka-mobile@2x.jpg differ diff --git a/source/img/hero-slide-kamchatka-mobile@2x.webp b/source/img/hero-slide-kamchatka-mobile@2x.webp new file mode 100644 index 000000000..83d488ced Binary files /dev/null and b/source/img/hero-slide-kamchatka-mobile@2x.webp differ diff --git a/source/img/hero-slide-kamchatka.jpg b/source/img/hero-slide-kamchatka.jpg new file mode 100644 index 000000000..a113a776f Binary files /dev/null and b/source/img/hero-slide-kamchatka.jpg differ diff --git a/source/img/hero-slide-kamchatka.webp b/source/img/hero-slide-kamchatka.webp new file mode 100644 index 000000000..2c46bb1ee Binary files /dev/null and b/source/img/hero-slide-kamchatka.webp differ diff --git a/source/img/hero-slide-kamchatka@2x.jpg b/source/img/hero-slide-kamchatka@2x.jpg new file mode 100644 index 000000000..2b650d67e Binary files /dev/null and b/source/img/hero-slide-kamchatka@2x.jpg differ diff --git a/source/img/hero-slide-kamchatka@2x.webp b/source/img/hero-slide-kamchatka@2x.webp new file mode 100644 index 000000000..70925a274 Binary files /dev/null and b/source/img/hero-slide-kamchatka@2x.webp differ diff --git a/source/img/map-desktop.png b/source/img/map-desktop.png new file mode 100644 index 000000000..92e0907bc Binary files /dev/null and b/source/img/map-desktop.png differ diff --git a/source/img/map-desktop.webp b/source/img/map-desktop.webp new file mode 100644 index 000000000..dee7ce846 Binary files /dev/null and b/source/img/map-desktop.webp differ diff --git a/source/img/map-desktop@2x.png b/source/img/map-desktop@2x.png new file mode 100644 index 000000000..d3d5cd422 Binary files /dev/null and b/source/img/map-desktop@2x.png differ diff --git a/source/img/map-desktop@2x.webp b/source/img/map-desktop@2x.webp new file mode 100644 index 000000000..e27837a7a Binary files /dev/null and b/source/img/map-desktop@2x.webp differ diff --git a/source/img/map-mobile.png b/source/img/map-mobile.png new file mode 100644 index 000000000..eabeb57e7 Binary files /dev/null and b/source/img/map-mobile.png differ diff --git a/source/img/map-mobile.webp b/source/img/map-mobile.webp new file mode 100644 index 000000000..6b193479a Binary files /dev/null and b/source/img/map-mobile.webp differ diff --git a/source/img/map-mobile@2x.png b/source/img/map-mobile@2x.png new file mode 100644 index 000000000..eea839027 Binary files /dev/null and b/source/img/map-mobile@2x.png differ diff --git a/source/img/map-mobile@2x.webp b/source/img/map-mobile@2x.webp new file mode 100644 index 000000000..faf09e503 Binary files /dev/null and b/source/img/map-mobile@2x.webp differ diff --git a/source/img/map-tablet.png b/source/img/map-tablet.png new file mode 100644 index 000000000..1e872b8fb Binary files /dev/null and b/source/img/map-tablet.png differ diff --git a/source/img/map-tablet.webp b/source/img/map-tablet.webp new file mode 100644 index 000000000..3edb1d453 Binary files /dev/null and b/source/img/map-tablet.webp differ diff --git a/source/img/map-tablet@2x.png b/source/img/map-tablet@2x.png new file mode 100644 index 000000000..b2ce4bb1a Binary files /dev/null and b/source/img/map-tablet@2x.png differ diff --git a/source/img/map-tablet@2x.webp b/source/img/map-tablet@2x.webp new file mode 100644 index 000000000..4f9820815 Binary files /dev/null and b/source/img/map-tablet@2x.webp differ diff --git a/source/img/photo-desktop.jpg b/source/img/photo-desktop.jpg new file mode 100644 index 000000000..264b8dd00 Binary files /dev/null and b/source/img/photo-desktop.jpg differ diff --git a/source/img/photo-desktop.webp b/source/img/photo-desktop.webp new file mode 100644 index 000000000..2b774ca41 Binary files /dev/null and b/source/img/photo-desktop.webp differ diff --git a/source/img/photo-desktop@2x.jpg b/source/img/photo-desktop@2x.jpg new file mode 100644 index 000000000..7b22ac327 Binary files /dev/null and b/source/img/photo-desktop@2x.jpg differ diff --git a/source/img/photo-desktop@2x.webp b/source/img/photo-desktop@2x.webp new file mode 100644 index 000000000..9697cf4ac Binary files /dev/null and b/source/img/photo-desktop@2x.webp differ diff --git a/source/img/photo-mobile.jpg b/source/img/photo-mobile.jpg new file mode 100644 index 000000000..cf844c176 Binary files /dev/null and b/source/img/photo-mobile.jpg differ diff --git a/source/img/photo-mobile.webp b/source/img/photo-mobile.webp new file mode 100644 index 000000000..a2ffdcd20 Binary files /dev/null and b/source/img/photo-mobile.webp differ diff --git a/source/img/photo-mobile@2x.jpg b/source/img/photo-mobile@2x.jpg new file mode 100644 index 000000000..dd8bc74bf Binary files /dev/null and b/source/img/photo-mobile@2x.jpg differ diff --git a/source/img/photo-mobile@2x.webp b/source/img/photo-mobile@2x.webp new file mode 100644 index 000000000..966e90605 Binary files /dev/null and b/source/img/photo-mobile@2x.webp differ diff --git a/source/img/photo-tablet.jpg b/source/img/photo-tablet.jpg new file mode 100644 index 000000000..e55a1b439 Binary files /dev/null and b/source/img/photo-tablet.jpg differ diff --git a/source/img/photo-tablet.webp b/source/img/photo-tablet.webp new file mode 100644 index 000000000..bb74836de Binary files /dev/null and b/source/img/photo-tablet.webp differ diff --git a/source/img/photo-tablet@2x.jpg b/source/img/photo-tablet@2x.jpg new file mode 100644 index 000000000..9dfadceab Binary files /dev/null and b/source/img/photo-tablet@2x.jpg differ diff --git a/source/img/photo-tablet@2x.webp b/source/img/photo-tablet@2x.webp new file mode 100644 index 000000000..ca9071926 Binary files /dev/null and b/source/img/photo-tablet@2x.webp differ diff --git a/source/img/review-alex-desktop.jpg b/source/img/review-alex-desktop.jpg new file mode 100644 index 000000000..22fd13329 Binary files /dev/null and b/source/img/review-alex-desktop.jpg differ diff --git a/source/img/review-alex-desktop.webp b/source/img/review-alex-desktop.webp new file mode 100644 index 000000000..554bf4efc Binary files /dev/null and b/source/img/review-alex-desktop.webp differ diff --git a/source/img/review-alex-desktop@2x.jpg b/source/img/review-alex-desktop@2x.jpg new file mode 100644 index 000000000..1e76a566c Binary files /dev/null and b/source/img/review-alex-desktop@2x.jpg differ diff --git a/source/img/review-alex-desktop@2x.webp b/source/img/review-alex-desktop@2x.webp new file mode 100644 index 000000000..2e38e742f Binary files /dev/null and b/source/img/review-alex-desktop@2x.webp differ diff --git a/source/img/review-alex-mobile.jpg b/source/img/review-alex-mobile.jpg new file mode 100644 index 000000000..172936d73 Binary files /dev/null and b/source/img/review-alex-mobile.jpg differ diff --git a/source/img/review-alex-mobile.webp b/source/img/review-alex-mobile.webp new file mode 100644 index 000000000..d37837036 Binary files /dev/null and b/source/img/review-alex-mobile.webp differ diff --git a/source/img/review-alex-mobile@2x.jpg b/source/img/review-alex-mobile@2x.jpg new file mode 100644 index 000000000..e45f882f9 Binary files /dev/null and b/source/img/review-alex-mobile@2x.jpg differ diff --git a/source/img/review-alex-mobile@2x.webp b/source/img/review-alex-mobile@2x.webp new file mode 100644 index 000000000..c2b687640 Binary files /dev/null and b/source/img/review-alex-mobile@2x.webp differ diff --git a/source/img/review-alex-tablet.jpg b/source/img/review-alex-tablet.jpg new file mode 100644 index 000000000..63fef1f82 Binary files /dev/null and b/source/img/review-alex-tablet.jpg differ diff --git a/source/img/review-alex-tablet.webp b/source/img/review-alex-tablet.webp new file mode 100644 index 000000000..80ca129ba Binary files /dev/null and b/source/img/review-alex-tablet.webp differ diff --git a/source/img/review-alex-tablet@2x.jpg b/source/img/review-alex-tablet@2x.jpg new file mode 100644 index 000000000..d832ec180 Binary files /dev/null and b/source/img/review-alex-tablet@2x.jpg differ diff --git a/source/img/review-alex-tablet@2x.webp b/source/img/review-alex-tablet@2x.webp new file mode 100644 index 000000000..6143e1b10 Binary files /dev/null and b/source/img/review-alex-tablet@2x.webp differ diff --git a/source/img/review-elena-desktop.jpg b/source/img/review-elena-desktop.jpg new file mode 100644 index 000000000..8699fe613 Binary files /dev/null and b/source/img/review-elena-desktop.jpg differ diff --git a/source/img/review-elena-desktop.webp b/source/img/review-elena-desktop.webp new file mode 100644 index 000000000..947146036 Binary files /dev/null and b/source/img/review-elena-desktop.webp differ diff --git a/source/img/review-elena-desktop@2x.jpg b/source/img/review-elena-desktop@2x.jpg new file mode 100644 index 000000000..aa53f17c2 Binary files /dev/null and b/source/img/review-elena-desktop@2x.jpg differ diff --git a/source/img/review-elena-desktop@2x.webp b/source/img/review-elena-desktop@2x.webp new file mode 100644 index 000000000..39a111067 Binary files /dev/null and b/source/img/review-elena-desktop@2x.webp differ diff --git a/source/img/review-elena-mobile.jpg b/source/img/review-elena-mobile.jpg new file mode 100644 index 000000000..beda39e4a Binary files /dev/null and b/source/img/review-elena-mobile.jpg differ diff --git a/source/img/review-elena-mobile.webp b/source/img/review-elena-mobile.webp new file mode 100644 index 000000000..92049628e Binary files /dev/null and b/source/img/review-elena-mobile.webp differ diff --git a/source/img/review-elena-mobile@2x.jpg b/source/img/review-elena-mobile@2x.jpg new file mode 100644 index 000000000..155cc0689 Binary files /dev/null and b/source/img/review-elena-mobile@2x.jpg differ diff --git a/source/img/review-elena-mobile@2x.webp b/source/img/review-elena-mobile@2x.webp new file mode 100644 index 000000000..f97e7bfc4 Binary files /dev/null and b/source/img/review-elena-mobile@2x.webp differ diff --git a/source/img/review-elena-tablet.jpg b/source/img/review-elena-tablet.jpg new file mode 100644 index 000000000..058d85667 Binary files /dev/null and b/source/img/review-elena-tablet.jpg differ diff --git a/source/img/review-elena-tablet.webp b/source/img/review-elena-tablet.webp new file mode 100644 index 000000000..4b02f4b51 Binary files /dev/null and b/source/img/review-elena-tablet.webp differ diff --git a/source/img/review-elena-tablet@2x.jpg b/source/img/review-elena-tablet@2x.jpg new file mode 100644 index 000000000..9dbdb95c8 Binary files /dev/null and b/source/img/review-elena-tablet@2x.jpg differ diff --git a/source/img/review-elena-tablet@2x.webp b/source/img/review-elena-tablet@2x.webp new file mode 100644 index 000000000..f50f09287 Binary files /dev/null and b/source/img/review-elena-tablet@2x.webp differ diff --git a/source/img/review-evgenia-desktop.jpg b/source/img/review-evgenia-desktop.jpg new file mode 100644 index 000000000..5b9508831 Binary files /dev/null and b/source/img/review-evgenia-desktop.jpg differ diff --git a/source/img/review-evgenia-desktop.webp b/source/img/review-evgenia-desktop.webp new file mode 100644 index 000000000..366425cd8 Binary files /dev/null and b/source/img/review-evgenia-desktop.webp differ diff --git a/source/img/review-evgenia-desktop@2x.jpg b/source/img/review-evgenia-desktop@2x.jpg new file mode 100644 index 000000000..cd195d2be Binary files /dev/null and b/source/img/review-evgenia-desktop@2x.jpg differ diff --git a/source/img/review-evgenia-desktop@2x.webp b/source/img/review-evgenia-desktop@2x.webp new file mode 100644 index 000000000..9196598fe Binary files /dev/null and b/source/img/review-evgenia-desktop@2x.webp differ diff --git a/source/img/review-evgenia-mobile.jpg b/source/img/review-evgenia-mobile.jpg new file mode 100644 index 000000000..eedcc5e27 Binary files /dev/null and b/source/img/review-evgenia-mobile.jpg differ diff --git a/source/img/review-evgenia-mobile.webp b/source/img/review-evgenia-mobile.webp new file mode 100644 index 000000000..fc7ba724f Binary files /dev/null and b/source/img/review-evgenia-mobile.webp differ diff --git a/source/img/review-evgenia-mobile@2x.jpg b/source/img/review-evgenia-mobile@2x.jpg new file mode 100644 index 000000000..3f5257bef Binary files /dev/null and b/source/img/review-evgenia-mobile@2x.jpg differ diff --git a/source/img/review-evgenia-mobile@2x.webp b/source/img/review-evgenia-mobile@2x.webp new file mode 100644 index 000000000..4d6dd6daa Binary files /dev/null and b/source/img/review-evgenia-mobile@2x.webp differ diff --git a/source/img/review-evgenia-tablet.jpg b/source/img/review-evgenia-tablet.jpg new file mode 100644 index 000000000..c38e4e51e Binary files /dev/null and b/source/img/review-evgenia-tablet.jpg differ diff --git a/source/img/review-evgenia-tablet.webp b/source/img/review-evgenia-tablet.webp new file mode 100644 index 000000000..57198c1af Binary files /dev/null and b/source/img/review-evgenia-tablet.webp differ diff --git a/source/img/review-evgenia-tablet@2x.jpg b/source/img/review-evgenia-tablet@2x.jpg new file mode 100644 index 000000000..9e8eaaad2 Binary files /dev/null and b/source/img/review-evgenia-tablet@2x.jpg differ diff --git a/source/img/review-evgenia-tablet@2x.webp b/source/img/review-evgenia-tablet@2x.webp new file mode 100644 index 000000000..7826fc470 Binary files /dev/null and b/source/img/review-evgenia-tablet@2x.webp differ diff --git a/source/img/review-ivan-desktop.jpg b/source/img/review-ivan-desktop.jpg new file mode 100644 index 000000000..f08eca1e5 Binary files /dev/null and b/source/img/review-ivan-desktop.jpg differ diff --git a/source/img/review-ivan-desktop.webp b/source/img/review-ivan-desktop.webp new file mode 100644 index 000000000..ddb29894f Binary files /dev/null and b/source/img/review-ivan-desktop.webp differ diff --git a/source/img/review-ivan-desktop@2x.jpg b/source/img/review-ivan-desktop@2x.jpg new file mode 100644 index 000000000..e6bf754b1 Binary files /dev/null and b/source/img/review-ivan-desktop@2x.jpg differ diff --git a/source/img/review-ivan-desktop@2x.webp b/source/img/review-ivan-desktop@2x.webp new file mode 100644 index 000000000..c308068fb Binary files /dev/null and b/source/img/review-ivan-desktop@2x.webp differ diff --git a/source/img/review-ivan-mobile.jpg b/source/img/review-ivan-mobile.jpg new file mode 100644 index 000000000..b961a53c0 Binary files /dev/null and b/source/img/review-ivan-mobile.jpg differ diff --git a/source/img/review-ivan-mobile.webp b/source/img/review-ivan-mobile.webp new file mode 100644 index 000000000..91a7862e3 Binary files /dev/null and b/source/img/review-ivan-mobile.webp differ diff --git a/source/img/review-ivan-mobile@2x.jpg b/source/img/review-ivan-mobile@2x.jpg new file mode 100644 index 000000000..12e585af4 Binary files /dev/null and b/source/img/review-ivan-mobile@2x.jpg differ diff --git a/source/img/review-ivan-mobile@2x.webp b/source/img/review-ivan-mobile@2x.webp new file mode 100644 index 000000000..b50b25ddd Binary files /dev/null and b/source/img/review-ivan-mobile@2x.webp differ diff --git a/source/img/review-ivan-tablet.jpg b/source/img/review-ivan-tablet.jpg new file mode 100644 index 000000000..b078a2c38 Binary files /dev/null and b/source/img/review-ivan-tablet.jpg differ diff --git a/source/img/review-ivan-tablet.webp b/source/img/review-ivan-tablet.webp new file mode 100644 index 000000000..4ebe4c24d Binary files /dev/null and b/source/img/review-ivan-tablet.webp differ diff --git a/source/img/review-ivan-tablet@2x.jpg b/source/img/review-ivan-tablet@2x.jpg new file mode 100644 index 000000000..730f5f027 Binary files /dev/null and b/source/img/review-ivan-tablet@2x.jpg differ diff --git a/source/img/review-ivan-tablet@2x.webp b/source/img/review-ivan-tablet@2x.webp new file mode 100644 index 000000000..8c57f20c8 Binary files /dev/null and b/source/img/review-ivan-tablet@2x.webp differ diff --git a/source/img/sprite/arrow-left.svg b/source/img/sprite/arrow-left.svg new file mode 100644 index 000000000..6c4d4290b --- /dev/null +++ b/source/img/sprite/arrow-left.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/arrow-right.svg b/source/img/sprite/arrow-right.svg new file mode 100644 index 000000000..8ae667508 --- /dev/null +++ b/source/img/sprite/arrow-right.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/boot-black.svg b/source/img/sprite/boot-black.svg new file mode 100644 index 000000000..a5d536388 --- /dev/null +++ b/source/img/sprite/boot-black.svg @@ -0,0 +1,4 @@ + + + + diff --git a/source/img/sprite/boot-blue.svg b/source/img/sprite/boot-blue.svg new file mode 100644 index 000000000..78b0ce485 --- /dev/null +++ b/source/img/sprite/boot-blue.svg @@ -0,0 +1,4 @@ + + + + diff --git a/source/img/sprite/cross.svg b/source/img/sprite/cross.svg new file mode 100644 index 000000000..7ff9df653 --- /dev/null +++ b/source/img/sprite/cross.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/crown.svg b/source/img/sprite/crown.svg new file mode 100644 index 000000000..6e5c02805 --- /dev/null +++ b/source/img/sprite/crown.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/leaf.svg b/source/img/sprite/leaf.svg new file mode 100644 index 000000000..404fb2bae --- /dev/null +++ b/source/img/sprite/leaf.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/level.svg b/source/img/sprite/level.svg new file mode 100644 index 000000000..59ec265fa --- /dev/null +++ b/source/img/sprite/level.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/source/img/sprite/line-pin.svg b/source/img/sprite/line-pin.svg new file mode 100644 index 000000000..f045eb099 --- /dev/null +++ b/source/img/sprite/line-pin.svg @@ -0,0 +1,4 @@ + + + + diff --git a/source/img/sprite/logo.svg b/source/img/sprite/logo.svg deleted file mode 100644 index aee2e13c0..000000000 --- a/source/img/sprite/logo.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/source/img/sprite/logotype-black.svg b/source/img/sprite/logotype-black.svg new file mode 100644 index 000000000..702652489 --- /dev/null +++ b/source/img/sprite/logotype-black.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/img/sprite/logotype-white.svg b/source/img/sprite/logotype-white.svg new file mode 100644 index 000000000..ed2dc6dba --- /dev/null +++ b/source/img/sprite/logotype-white.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/img/sprite/mail.svg b/source/img/sprite/mail.svg new file mode 100644 index 000000000..e30286f88 --- /dev/null +++ b/source/img/sprite/mail.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/map-pin.svg b/source/img/sprite/map-pin.svg new file mode 100644 index 000000000..7a4d2dddf --- /dev/null +++ b/source/img/sprite/map-pin.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/map.svg b/source/img/sprite/map.svg new file mode 100644 index 000000000..997300335 --- /dev/null +++ b/source/img/sprite/map.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/source/img/sprite/menu.svg b/source/img/sprite/menu.svg new file mode 100644 index 000000000..f99f86ccb --- /dev/null +++ b/source/img/sprite/menu.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/source/img/sprite/moon.svg b/source/img/sprite/moon.svg new file mode 100644 index 000000000..2d166dab8 --- /dev/null +++ b/source/img/sprite/moon.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/odnoklassniki.svg b/source/img/sprite/odnoklassniki.svg new file mode 100644 index 000000000..382210a25 --- /dev/null +++ b/source/img/sprite/odnoklassniki.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/path.svg b/source/img/sprite/path.svg new file mode 100644 index 000000000..3aa14496e --- /dev/null +++ b/source/img/sprite/path.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/peak.svg b/source/img/sprite/peak.svg new file mode 100644 index 000000000..2baef3a1d --- /dev/null +++ b/source/img/sprite/peak.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/source/img/sprite/phone.svg b/source/img/sprite/phone.svg new file mode 100644 index 000000000..4b135be8a --- /dev/null +++ b/source/img/sprite/phone.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/pin.svg b/source/img/sprite/pin.svg new file mode 100644 index 000000000..97ff19536 --- /dev/null +++ b/source/img/sprite/pin.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/readmore.svg b/source/img/sprite/readmore.svg new file mode 100644 index 000000000..174e76009 --- /dev/null +++ b/source/img/sprite/readmore.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/reddit.svg b/source/img/sprite/reddit.svg new file mode 100644 index 000000000..275e7396f --- /dev/null +++ b/source/img/sprite/reddit.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/shield.svg b/source/img/sprite/shield.svg new file mode 100644 index 000000000..93ce57b97 --- /dev/null +++ b/source/img/sprite/shield.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/stars-five.svg b/source/img/sprite/stars-five.svg new file mode 100644 index 000000000..91c1e3e82 --- /dev/null +++ b/source/img/sprite/stars-five.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/source/img/sprite/stars-four.svg b/source/img/sprite/stars-four.svg new file mode 100644 index 000000000..5bfc193b6 --- /dev/null +++ b/source/img/sprite/stars-four.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/source/img/sprite/stars-three.svg b/source/img/sprite/stars-three.svg new file mode 100644 index 000000000..2d5d46075 --- /dev/null +++ b/source/img/sprite/stars-three.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/source/img/sprite/sun.svg b/source/img/sprite/sun.svg new file mode 100644 index 000000000..81bd15e18 --- /dev/null +++ b/source/img/sprite/sun.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/source/img/sprite/tree.svg b/source/img/sprite/tree.svg new file mode 100644 index 000000000..7b4f84653 --- /dev/null +++ b/source/img/sprite/tree.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/sprite/vk.svg b/source/img/sprite/vk.svg new file mode 100644 index 000000000..c56d27104 --- /dev/null +++ b/source/img/sprite/vk.svg @@ -0,0 +1,3 @@ + + + diff --git a/source/img/tour-belukha.jpg b/source/img/tour-belukha.jpg new file mode 100644 index 000000000..9da6d2a1f Binary files /dev/null and b/source/img/tour-belukha.jpg differ diff --git a/source/img/tour-belukha.webp b/source/img/tour-belukha.webp new file mode 100644 index 000000000..8d54d3165 Binary files /dev/null and b/source/img/tour-belukha.webp differ diff --git a/source/img/tour-belukha@2x.jpg b/source/img/tour-belukha@2x.jpg new file mode 100644 index 000000000..da4f15ff2 Binary files /dev/null and b/source/img/tour-belukha@2x.jpg differ diff --git a/source/img/tour-belukha@2x.webp b/source/img/tour-belukha@2x.webp new file mode 100644 index 000000000..8abc1961e Binary files /dev/null and b/source/img/tour-belukha@2x.webp differ diff --git a/source/img/tour-elbrus.jpg b/source/img/tour-elbrus.jpg new file mode 100644 index 000000000..d120880a8 Binary files /dev/null and b/source/img/tour-elbrus.jpg differ diff --git a/source/img/tour-elbrus.webp b/source/img/tour-elbrus.webp new file mode 100644 index 000000000..603067587 Binary files /dev/null and b/source/img/tour-elbrus.webp differ diff --git a/source/img/tour-elbrus@2x.jpg b/source/img/tour-elbrus@2x.jpg new file mode 100644 index 000000000..384ff5627 Binary files /dev/null and b/source/img/tour-elbrus@2x.jpg differ diff --git a/source/img/tour-elbrus@2x.webp b/source/img/tour-elbrus@2x.webp new file mode 100644 index 000000000..2d4263cdb Binary files /dev/null and b/source/img/tour-elbrus@2x.webp differ diff --git a/source/img/tour-fisht.jpg b/source/img/tour-fisht.jpg new file mode 100644 index 000000000..13fb1c882 Binary files /dev/null and b/source/img/tour-fisht.jpg differ diff --git a/source/img/tour-fisht.webp b/source/img/tour-fisht.webp new file mode 100644 index 000000000..46c825632 Binary files /dev/null and b/source/img/tour-fisht.webp differ diff --git a/source/img/tour-fisht@2x.jpg b/source/img/tour-fisht@2x.jpg new file mode 100644 index 000000000..c521dafbd Binary files /dev/null and b/source/img/tour-fisht@2x.jpg differ diff --git a/source/img/tour-fisht@2x.webp b/source/img/tour-fisht@2x.webp new file mode 100644 index 000000000..66500ccf0 Binary files /dev/null and b/source/img/tour-fisht@2x.webp differ diff --git a/source/img/tour-manaraga.jpg b/source/img/tour-manaraga.jpg new file mode 100644 index 000000000..2f1c2a13c Binary files /dev/null and b/source/img/tour-manaraga.jpg differ diff --git a/source/img/tour-manaraga.webp b/source/img/tour-manaraga.webp new file mode 100644 index 000000000..cdd2750ac Binary files /dev/null and b/source/img/tour-manaraga.webp differ diff --git a/source/img/tour-manaraga@2x.jpg b/source/img/tour-manaraga@2x.jpg new file mode 100644 index 000000000..51e4695d0 Binary files /dev/null and b/source/img/tour-manaraga@2x.jpg differ diff --git a/source/img/tour-manaraga@2x.webp b/source/img/tour-manaraga@2x.webp new file mode 100644 index 000000000..634c9d82e Binary files /dev/null and b/source/img/tour-manaraga@2x.webp differ diff --git a/source/img/trainer-alex-tablet.jpg b/source/img/trainer-alex-tablet.jpg new file mode 100644 index 000000000..207e24152 Binary files /dev/null and b/source/img/trainer-alex-tablet.jpg differ diff --git a/source/img/trainer-alex-tablet.png b/source/img/trainer-alex-tablet.png new file mode 100644 index 000000000..8bf3d0b28 Binary files /dev/null and b/source/img/trainer-alex-tablet.png differ diff --git a/source/img/trainer-alex-tablet.webp b/source/img/trainer-alex-tablet.webp new file mode 100644 index 000000000..083c02fcb Binary files /dev/null and b/source/img/trainer-alex-tablet.webp differ diff --git a/source/img/trainer-alex-tablet@2x.jpg b/source/img/trainer-alex-tablet@2x.jpg new file mode 100644 index 000000000..23c53022e Binary files /dev/null and b/source/img/trainer-alex-tablet@2x.jpg differ diff --git a/source/img/trainer-alex-tablet@2x.webp b/source/img/trainer-alex-tablet@2x.webp new file mode 100644 index 000000000..5e111bb7c Binary files /dev/null and b/source/img/trainer-alex-tablet@2x.webp differ diff --git a/source/img/trainer-alex.jpg b/source/img/trainer-alex.jpg new file mode 100644 index 000000000..4642d901b Binary files /dev/null and b/source/img/trainer-alex.jpg differ diff --git a/source/img/trainer-alex.webp b/source/img/trainer-alex.webp new file mode 100644 index 000000000..98e4cd0cb Binary files /dev/null and b/source/img/trainer-alex.webp differ diff --git a/source/img/trainer-alex@2x.jpg b/source/img/trainer-alex@2x.jpg new file mode 100644 index 000000000..ee8f64896 Binary files /dev/null and b/source/img/trainer-alex@2x.jpg differ diff --git a/source/img/trainer-alex@2x.webp b/source/img/trainer-alex@2x.webp new file mode 100644 index 000000000..066948082 Binary files /dev/null and b/source/img/trainer-alex@2x.webp differ diff --git a/source/img/trainer-daniel.jpg b/source/img/trainer-daniel.jpg new file mode 100644 index 000000000..d97850741 Binary files /dev/null and b/source/img/trainer-daniel.jpg differ diff --git a/source/img/trainer-daniel.webp b/source/img/trainer-daniel.webp new file mode 100644 index 000000000..ffe956f87 Binary files /dev/null and b/source/img/trainer-daniel.webp differ diff --git a/source/img/trainer-daniel@2x.jpg b/source/img/trainer-daniel@2x.jpg new file mode 100644 index 000000000..64983a096 Binary files /dev/null and b/source/img/trainer-daniel@2x.jpg differ diff --git a/source/img/trainer-daniel@2x.webp b/source/img/trainer-daniel@2x.webp new file mode 100644 index 000000000..b2a8cc495 Binary files /dev/null and b/source/img/trainer-daniel@2x.webp differ diff --git a/source/img/trainer-fedor.jpg b/source/img/trainer-fedor.jpg new file mode 100644 index 000000000..c5888e9d4 Binary files /dev/null and b/source/img/trainer-fedor.jpg differ diff --git a/source/img/trainer-fedor.webp b/source/img/trainer-fedor.webp new file mode 100644 index 000000000..df5c12166 Binary files /dev/null and b/source/img/trainer-fedor.webp differ diff --git a/source/img/trainer-fedor@2x.jpg b/source/img/trainer-fedor@2x.jpg new file mode 100644 index 000000000..bc51a0108 Binary files /dev/null and b/source/img/trainer-fedor@2x.jpg differ diff --git a/source/img/trainer-fedor@2x.webp b/source/img/trainer-fedor@2x.webp new file mode 100644 index 000000000..adf77030f Binary files /dev/null and b/source/img/trainer-fedor@2x.webp differ diff --git a/source/img/trainer-nadya-desktop.jpg b/source/img/trainer-nadya-desktop.jpg new file mode 100644 index 000000000..cf832935d Binary files /dev/null and b/source/img/trainer-nadya-desktop.jpg differ diff --git a/source/img/trainer-nadya-desktop.webp b/source/img/trainer-nadya-desktop.webp new file mode 100644 index 000000000..1ac2f65dc Binary files /dev/null and b/source/img/trainer-nadya-desktop.webp differ diff --git a/source/img/trainer-nadya-desktop@2x.jpg b/source/img/trainer-nadya-desktop@2x.jpg new file mode 100644 index 000000000..818cc3276 Binary files /dev/null and b/source/img/trainer-nadya-desktop@2x.jpg differ diff --git a/source/img/trainer-nadya-desktop@2x.webp b/source/img/trainer-nadya-desktop@2x.webp new file mode 100644 index 000000000..4acbe7d12 Binary files /dev/null and b/source/img/trainer-nadya-desktop@2x.webp differ diff --git a/source/img/trainer-nadya-mobile.jpg b/source/img/trainer-nadya-mobile.jpg new file mode 100644 index 000000000..a54d031a4 Binary files /dev/null and b/source/img/trainer-nadya-mobile.jpg differ diff --git a/source/img/trainer-nadya-mobile.webp b/source/img/trainer-nadya-mobile.webp new file mode 100644 index 000000000..15c72df22 Binary files /dev/null and b/source/img/trainer-nadya-mobile.webp differ diff --git a/source/img/trainer-nadya-mobile@2x.jpg b/source/img/trainer-nadya-mobile@2x.jpg new file mode 100644 index 000000000..1a8dec8f1 Binary files /dev/null and b/source/img/trainer-nadya-mobile@2x.jpg differ diff --git a/source/img/trainer-nadya-mobile@2x.webp b/source/img/trainer-nadya-mobile@2x.webp new file mode 100644 index 000000000..2476f299e Binary files /dev/null and b/source/img/trainer-nadya-mobile@2x.webp differ diff --git a/source/img/trainer-nadya-tablet.jpg b/source/img/trainer-nadya-tablet.jpg new file mode 100644 index 000000000..bb9befd34 Binary files /dev/null and b/source/img/trainer-nadya-tablet.jpg differ diff --git a/source/img/trainer-nadya-tablet.webp b/source/img/trainer-nadya-tablet.webp new file mode 100644 index 000000000..ac98ab9e9 Binary files /dev/null and b/source/img/trainer-nadya-tablet.webp differ diff --git a/source/img/trainer-nadya-tablet@2x.jpg b/source/img/trainer-nadya-tablet@2x.jpg new file mode 100644 index 000000000..5adb96110 Binary files /dev/null and b/source/img/trainer-nadya-tablet@2x.jpg differ diff --git a/source/img/trainer-nadya-tablet@2x.webp b/source/img/trainer-nadya-tablet@2x.webp new file mode 100644 index 000000000..dd48fd48d Binary files /dev/null and b/source/img/trainer-nadya-tablet@2x.webp differ diff --git a/source/img/trainer-svetlana-tablet.jpg b/source/img/trainer-svetlana-tablet.jpg new file mode 100644 index 000000000..9813468f6 Binary files /dev/null and b/source/img/trainer-svetlana-tablet.jpg differ diff --git a/source/img/trainer-svetlana-tablet.webp b/source/img/trainer-svetlana-tablet.webp new file mode 100644 index 000000000..8de3e8426 Binary files /dev/null and b/source/img/trainer-svetlana-tablet.webp differ diff --git a/source/img/trainer-svetlana-tablet@2x.jpg b/source/img/trainer-svetlana-tablet@2x.jpg new file mode 100644 index 000000000..82c5da4a2 Binary files /dev/null and b/source/img/trainer-svetlana-tablet@2x.jpg differ diff --git a/source/img/trainer-svetlana-tablet@2x.webp b/source/img/trainer-svetlana-tablet@2x.webp new file mode 100644 index 000000000..8627b8fb8 Binary files /dev/null and b/source/img/trainer-svetlana-tablet@2x.webp differ diff --git a/source/img/trainer-svetlana.jpg b/source/img/trainer-svetlana.jpg new file mode 100644 index 000000000..1bbadfde1 Binary files /dev/null and b/source/img/trainer-svetlana.jpg differ diff --git a/source/img/trainer-svetlana.webp b/source/img/trainer-svetlana.webp new file mode 100644 index 000000000..dc2cb2430 Binary files /dev/null and b/source/img/trainer-svetlana.webp differ diff --git a/source/img/trainer-svetlana@2x.jpg b/source/img/trainer-svetlana@2x.jpg new file mode 100644 index 000000000..0bd0a8acb Binary files /dev/null and b/source/img/trainer-svetlana@2x.jpg differ diff --git a/source/img/trainer-svetlana@2x.webp b/source/img/trainer-svetlana@2x.webp new file mode 100644 index 000000000..32ff4d23d Binary files /dev/null and b/source/img/trainer-svetlana@2x.webp differ diff --git a/source/index.html b/source/index.html index 0ce0e1c9c..9617236ef 100644 --- a/source/index.html +++ b/source/index.html @@ -1,31 +1,684 @@ - + - - - - Lifetour - - + + + + Lifetour + + + + + + + + + + + + + + + + + + + + - - - Это спрайт - - - - -
header
-
hero
-
tours
-
training
-
about
-
reviews
-
adv
-
gallery
-
form
-
footer
- - + +
+
+ + + + 8 800 000-00-00 +
+
+
+
+
+

Организация походов

+
+
    +
  • +
    +

    Захватывающие вершины Кавказа

    +

    В сопровождении опытных гидов вы пройдёте через потрясающие ландшафты и совершите восход на вершину + горы Чегет.

    + Смотреть тур +
    + 6 дней/5 ночей + Высокая сложность +
    +
    +
  • +
  • +
    +

    Невероятная природа Камчатки

    +

    Незабываемое приключение, во время которого вы отправитесь в путешествие по одному из самых нетронутых + уголков дикой природы в мире.

    + Смотреть тур +
    + + + фото гейзеров Камчатки + + + + фото похода на Камчатке + +
    +
    + 9 дней/10 ночей + Средняя сложность +
    +
    +
  • +
  • +
    +

    Магические пейзажи Алтайского Края

    +

    Алтайский трекинг-тур — это захватывающее приключение с посещением магических и захватывающих + дух ландшафтов Алтайских гор.

    + Смотреть тур +
    + 8 дней/7 ночей + Лёгкая сложность +
    +
    +
  • +
+
+
+
+
+
+
+

Ближайшие туры

+ + +
    +
  • + + Эльбрус + +
    +
    +
    + Кавказ +
    +
    + 4 дня + 3 ночи +
    +
    +

    Путешествие вокруг Эльбруса

    +
    +
    + Сложность: +
    +
    +
    + Даты набора: + 12.06–19.06 +
    +
    + Группа: + до 15 чел. +
    +
    +
    +
  • +
  • + + Белуха + +
    +
    +
    + Алтай +
    +
    + 14 дней + 13 ночей +
    +
    +

    Путь к подножию + Белухи

    +
    +
    + Сложность: +
    +
    +
    + Даты набора: + 14.06–23.06 +
    +
    + Группа: + до 25 чел. +
    +
    +
    + +
  • +
  • + + Фишт + +
    +
    +
    + Адыгея +
    +
    + 7 дней + 6 ночей +
    +
    +

    Через Фишт + к Чёрному морю и обратно

    +
    +
    + Сложность: +
    +
    +
    + Даты набора: + 15.07–19.07 +
    +
    + Группа: + до 22 чел. +
    +
    +
    +
  • +
  • + + Манарага + +
    +
    +
    + Урал +
    +
    + 9 дней + 10 ночей +
    +
    +

    Восхождение + Манарага

    +
    +
    + Сложность: +
    +
    +
    + Даты набора: + 12.07–19.07 +
    +
    + Группа: + до 7 чел. +
    +
    +
    +
  • +
+
+ Показать все туры +
+
+

Обучение

+

Обучение проводится квалифицированными специалистами, за плечами которых десятки пройденных маршрутов + Кавказа, + Крыма, Гималаев, Эльбруса, Алтая, Карелии, Адыгеи и других.

+
+

Наши инструкторы

+ + +
    +
  • + + + + Александр Прокофьев + +

    Александр
    Прокофьев

    + VK +

    Строгий и внимательный инструктор, весёлый и общительный человек. Любит природу.

    +
  • +
  • + + + + Александр Прокофьев + +

    Светлана
    Афиногенова

    + VK +

    Видеть мир вокруг, познавать его опасности, находить друг друга, становиться ближе, чувствовать — в этом + назначение жизни.

    +
  • +
  • + + + + Александр Прокофьев + +

    Надежда
    Колесниченко

    + VK +

    Участники говорят, что Надежда ответственная, приятная в общении, и в поездках с ней чувствуешь себя + спокойно и уверенно.

    +
  • +
  • + + Александр Прокофьев + +

    Федор
    Кайгородов

    + VK +

    Опыт походов: Ходит в походы с 2001 года. В России побывал в горных районах Хибины, Архыз, много + путешествует по Европе.

    +
  • +
  • + + Александр Прокофьев + +

    Даниэль
    Васнецов

    + VK +

    Покорял самые сложные вершины. Выбирался из под лавин, дружит с медведями и не только.

    +
  • +
+
+

Процесс обучения

+ +
+
+ + + + Поход + +

О нас

+
+

История компании

+

В далёком 2000 году мы начали заниматься туризмом — походы, поездки, восхождения, нам это настолько + понравилось, что мы этим стали жить.
Спустя 5 лет, в 2005 году мы основали компанию, чтобы показывать + людям + удивительные места нашей страны.

+

Наша цель

+

Подарить вам незабываемые впечатления от похода в горы. Мы берём на себя все организационные вопросы. + При организации мы обязательно учтём все ваши пожелания. Вам останется только наслаждаться незабываемым + приключением в приятной компании.

+
+
+
+
+

Отзывы

+ + +
    +
  • + + + + Фролов Александр + +
    +

    Осенью ходили в поход на Алтай с друзьями. Впечатления потрясающие! Инструкторы, настоящие эксперты, + всему научили, все показали. Делились историями о местах, людях, культуре места.

    +

    С уверенностью могу сказать, что жизнь разделилась на до этого и после. Ещё никогда не отдыхал + так душой + и телом. Всем очень рекомендую!

    +

    Фролов Александр

    + 38 лет, Москва +
    +
  • +
  • + + + + Фролов Александр + +
    +

    Хороший полноценный поход с разнообразными локациями. В начале дорога идёт по лыжне, далее прошли мимо + полигона, по болотам, у озёр и лесных ручьёв, остатков дач конца 19 века. Было очень интересно!

    +

    Инструктор Федор дружелюбный, внимательный к технике безопасности и своим туристам. Всем советую + этот тур.

    +

    Иван Соловьёв

    + 25 лет, Владивосток +
    +
  • +
  • + + + + Фролов Александр + +
    +

    Ранее не ходила на такие длинные дистанции. В первый день прошли около 30 км, физически я устала + на 18 км, поэтому не была уверена, пройду ли до конца. Но я справилась. Второй день прошёл легче, + чем ожидала, видимо организм уже привык.

    +

    Спасибо ребятам, инструкторам за помощь и поддержку! Я была рада быть в такой компании.

    +

    Евгения Баженова

    + 23 года, Кострома +
    +
  • +
  • + + + + Фролов Александр + +
    +

    Это был опыт, изменивший мою жизнь! Думала, не справлюсь, но все получилось! Дух захватывает, когда + наконец‑то, преодолев все трудности и препятствия, взбираешься на вершину.

    +

    У нас собралась потрясающая команда. Все друг друга поддерживали, по вечерам мы сидели вместе у костра + и пели песни. Обязательно повторю такое приключение!

    +

    Елена Пирогова

    + 37 лет, Тюмень +
    +
  • +
+
+
+
+

Преимущества

+
+
    +
  • +

    Безопасность

    +

    Уделяем внимание безопасности клиентов, внедряя строгие процедуры и протоколы безопасности. Имеем + планы действий на случай непредвиденных обстоятельств и даем гарантию полной безопасности + во время всего тура. +

    +
  • +
  • +

    Экспертиза и знания

    +

    Наша команда опытных гидов имеет обширные знания о местности, погодных условиях и технике безопасности. + Это гарантирует, что наши клиенты находятся в надежных руках и могут в полной мере + насладиться + опытом без опасений.

    +
  • +
  • +

    Оборудование и снаряжение

    +

    Мы предоставляем клиентам все необходимое оборудование, необходимое для путешествия. + Это избавляет клиентов от необходимости покупать, брать с собой снаряжение, + что делает путешествие более удобным и экономически выгодным.

    +
  • +
  • +

    Индивидуальные маршруты

    +

    Предлагаем широкий выбор туров, отвечающих различным уровням мастерства и интересам. + Мы также можем + адаптировать маршруты к вашим конкретным потребностям и предпочтениям, чтобы вы получили + индивидуальный + опыт.

    +
  • +
  • +

    Бережное отношение к природе

    +

    Уделяем первостепенное внимание охране окружающей среды и гарантируем, что туры оказывают минимальное + воздействие на природную среду. Наша компания следует принципу «Не оставлять следов».

    +
  • + +
+ + +
+
+ +
+
+

Остались вопросы?

+

Заполните форму и наш оператор свяжется
с вами для консультации.

+
+ + +
+
+ + +
+ +
+
+
+ + + diff --git a/source/js/main.js b/source/js/main.js index 70fde252c..a05d7b125 100644 --- a/source/js/main.js +++ b/source/js/main.js @@ -1,4 +1,328 @@ -// https://swiperjs.com/get-started#installation -// import Swiper from "swiper"; -// import {Navigation, Pagination} from "swiper/modules"; -// import 'swiper/css'; +/* https://swiperjs.com/get-started#installation */ + +import Swiper from 'swiper'; +import { Navigation, Pagination } from 'swiper/modules'; +import 'swiper/css'; + +/* Кнопка меню */ +const menuToggle = document.querySelector('.header__toggle'); +const overlay = document.querySelector('.main__overlay'); +const menuItems = document.querySelectorAll('.nav-item__link'); +menuToggle.onclick = function () { + menuToggle.classList.toggle('header__toggle--closed'); + menuToggle.classList.toggle('header__toggle--opened'); + overlay.classList.toggle('active'); +}; +menuItems.forEach((item) => { + item.addEventListener('click', () => { + overlay.classList.remove('active'); + menuToggle.classList.add('header__toggle--closed'); + menuToggle.classList.remove('header__toggle--opened'); + }); +}); + +/* Слайдер промоблока */ +let swiperHero = null; + +function initHeroSwiper() { + swiperHero = new Swiper('.hero-swiper', { + modules: [Pagination], + speed: 400, + spaceBetween: 0, + loop: true, + pagination: { + el: '.swiper-pagination', + renderBullet: (index, className) => ``, + }, + breakpoints: { + 0: { + allowTouchMove: true, + pagination: { + clickable: false, + }, + }, + 1440: { + allowTouchMove: false, + pagination: { + clickable: true, + }, + }, + }, + on: { + slideChange: updateTabIndexes, + init: updateTabIndexes, + }, + keyboard: { + enabled: true, + onlyInViewport: true, + }, + }); +} + +/* переход между слайдами с помощью буллетов по пробелу*/ +document.addEventListener('keydown', (event) => { + if (event.key === ' ' || event.code === 'Space' || event.code === 'Enter') { + const activeBullet = document.activeElement; + + if (activeBullet && activeBullet.classList.contains('swiper-pagination-bullet')) { + event.preventDefault(); + + const bulletIndex = [...activeBullet.parentElement.children].indexOf(activeBullet); + + swiperHero.slideTo(bulletIndex); + updateTabIndexes(); + } + } +}); +initHeroSwiper(); + +/* запрещаем переход табом для ссылок на невидимых слайдах */ +function updateTabIndexes() { + const slides = document.querySelectorAll('.hero-item'); + + slides.forEach((slide) => { + const isVisible = slide.classList.contains('swiper-slide-active'); + const links = slide.querySelectorAll('a'); + links.forEach((link) => { + if (isVisible) { + link.setAttribute('tabindex', '0'); + } else { + link.setAttribute('tabindex', '-1'); + } + }); + }); +} +updateTabIndexes(); + +/* Добавляем прокрутку слайдов клавишами */ +document.addEventListener('keydown', (event) => { + if (event.key === 'ArrowLeft') { + swiperHero.slideTo(swiperHero.activeIndex - 1); + updateTabIndexes(); + } else if (event.key === 'ArrowRight') { + swiperHero.slideTo(swiperHero.activeIndex + 1); + updateTabIndexes(); + } +}); + +/* Слайдер туров */ +const swiperTours = new Swiper('.tours-swiper', { + modules: [Navigation], + speed: 400, + loop: false, + slidesPerView: 1, + spaceBetween: 15, + breakpoints: { + 320: { + slidesPerView: 1, + spaceBetween: 15 + }, + 768: { + slidesPerView: 2, + spaceBetween: 18 + }, + 1440: { + slidesPerView: 3, + spaceBetween: 30 + } + }, + navigation: { + nextEl: '.tours-swiper__button--next', + prevEl: '.tours-swiper__button--prev', + }, +}); + +/* слайдер тренеров */ +const swiperTrainers = new Swiper('.training-swiper', { + modules: [Navigation], + speed: 400, + spaceBetween: 15, + loop: false, + slidesPerView: 1, + breakpoints: { + 320: { + slidesPerView: 1, + spaceBetween: 15, + initialSlide: 2 + }, + 768: { + slidesPerView: 3, + spaceBetween: 20, + initialSlide: 0 + }, + 1440: { + slidesPerView: 4, + spaceBetween: 20 + } + }, + navigation: { + nextEl: '.training-swiper__button--next', + prevEl: '.training-swiper__button--prev', + }, +}); + +/* слайдер отзывов */ +const swiperReviews = new Swiper('.reviews-swiper', { + modules: [Navigation], + speed: 400, + spaceBetween: 15, + loop: false, + slidesPerView: 1, + breakpoints: { + 320: { + slidesPerView: 1, + spaceBetween: 15 + }, + 768: { + slidesPerView: 'auto', + spaceBetween: 30 + }, + 1440: { + slidesPerView: 'auto', + spaceBetween: 120 + } + }, + navigation: { + nextEl: '.reviews-swiper__button--next', + prevEl: '.reviews-swiper__button--prev', + }, +}); + +/* слайдер преимуществ */ +let swiperAdv = null; + +function initAdvSwiper() { + + if (window.innerWidth >= 1440) { + + /* добавляем слайды для корректного отображения*/ + const advList = document.querySelector('.adv-swiper__list'); + const advSlides = document.querySelectorAll('.adv-swiper__item'); + advSlides.forEach((slide) => { + advList.appendChild(slide.cloneNode(true)); + }); + + /* создаем сам слайдер */ + if (!swiperAdv) { + swiperAdv = new Swiper('.adv-swiper', { + modules: [Navigation], + slidesPerView: 'auto', + loop: true, + spaceBetween: 30, + centeredSlides: true, + slidesPerGroup: 2, + initialSlide: 2, + navigation: { + nextEl: '.adv-swiper__button--next', + prevEl: '.adv-swiper__button--prev', + }, + }); + } + } else { + + /* уничтожаем слайдер */ + if (swiperAdv) { + swiperAdv.destroy(true, true); + swiperAdv = null; + } + + /* убираем слайды после пятого */ + const advList = document.querySelector('.adv-swiper__list'); + const advItems = advList.children; + for (let i = advItems.length - 1; i >= 5; i--) { + advList.removeChild(advItems[i]); + } + } +} + +initAdvSwiper(); + +/* слайдер галереи */ +let swiperGallery = null; + +function initGallerySwiper() { + if (window.innerWidth < 1440) { + swiperGallery = new Swiper('.gallery-swiper', { + modules: [Navigation], + speed: 400, + slidesPerView: 'auto', + spaceBetween: 5, + loop: true, + navigation: { + nextEl: '.gallery-swiper__button--next', + prevEl: '.gallery-swiper__button--prev', + }, + }); + } else { + if (swiperGallery) { + swiperGallery = null; + } + } +} + +initGallerySwiper(); + + +/* сортировка пунктов меню футера */ +document.addEventListener('DOMContentLoaded', () => { + const items = document.querySelectorAll('.footer-navigation__item'); + + items.forEach((item, index) => { + item.style.gridColumn = index < Math.ceil(items.length / 2) ? '1' : '2'; + }); +}); + + +/* Валидация формы */ + +document.addEventListener('DOMContentLoaded', () => { + const form = document.querySelector('.form'); + const phoneInput = document.querySelector('.form__input--phone'); + const emailInput = document.querySelector('.form__input--email'); + + form.addEventListener('submit', (event) => { + let isValid = true; + + const phoneRegex = /^\+?\d[\d\s()-]*\d$|^\+?\d(?:(?:[\s()]\d)|(?:-\d))+$/; + if (!phoneRegex.test(phoneInput.value)) { + isValid = false; + phoneInput.setCustomValidity('Номер телефона может состоять только из цифр, пробелов, «+», «-» и скобок'); + phoneInput.classList.add('error'); + } else { + phoneInput.setCustomValidity(''); + } + + const emailRegex = /^[^\s@]+@[^\s@]+\.(?:[a-z]{2,}|рф)$/i; + if (!emailRegex.test(emailInput.value)) { + isValid = false; + emailInput.setCustomValidity('Введите корректный email'); + emailInput.classList.add('error'); + } else { + emailInput.setCustomValidity(''); + } + + if (!isValid) { + event.preventDefault(); + } + }); + + phoneInput.addEventListener('input', () => { + if (phoneInput.validity.valid) { + phoneInput.classList.remove('error'); + phoneInput.setCustomValidity(''); + } + }); + + emailInput.addEventListener('input', () => { + if (emailInput.validity.valid) { + emailInput.classList.remove('error'); + emailInput.setCustomValidity(''); + } + }); +}); + +/* перерисовываем страницу при ресайзе для корректного отображения элементов */ + +window.addEventListener('resize', () => { + location.reload(); +}); diff --git a/source/sass/blocks/about.scss b/source/sass/blocks/about.scss new file mode 100644 index 000000000..b7a276896 --- /dev/null +++ b/source/sass/blocks/about.scss @@ -0,0 +1,146 @@ +.about { + padding: 20px 0 21px; + + @media (min-width: $tablet-width) { + padding: 60px 48px 42px 0; + display: grid; + grid-template-columns: 450px 1fr; + grid-template-rows: auto auto; + grid-auto-flow: dense; + } + + @media (min-width: $desktop-width) { + padding: 75px 0 100px; + grid-template-columns: 660px 1fr; + grid-template-rows: 163px auto; + } +} + +.about__picture { + display: block; + margin: 0; + padding: 0; + margin-bottom: 17px; + + @media (min-width: $tablet-width) { + grid-column: 1/2; + grid-row: 2/3; + margin-bottom: 0; + width: 120%; + height: auto; + margin-top: 41px; + } + + @media (min-width: $desktop-width) { + margin-top: 24px; + grid-row: 1/3; + width: 100%; + } +} + +.about__picture img { + object-fit: cover; + width: 100%; + display: block; + margin: 0; + padding: 0; + object-position: 20% 50%; +} + +.about__title { + @include section-title; + + margin: 0; + padding: 0 15px; + margin-bottom: 42px; + + @media (min-width: $tablet-width) { + grid-column: 2/3; + grid-row: 1/2; + padding: 0; + margin-bottom: 48px; + + + &::after { + bottom: 0; + } + } + + @media (min-width: $desktop-width) { + margin-top: 69px; + margin-bottom: 0; + + &::after { + bottom: 78px; + } + } +} + +.about__wrapper { + padding: 0 15px; + + @media (min-width: $tablet-width) { + grid-column: 2/3; + padding: 0; + max-width: $tablet-width; + } + + @media (min-width: $desktop-width) { + max-width: calc($desktop-width - 540px); + } +} + +.about__wrapper h3 { + font-size: 16px; + font-weight: 700; + line-height: 16px; + margin: 0; + padding: 0; + margin-bottom: 13px; + + @media (min-width: $tablet-width) { + font-size: 18px; + line-height: 18px; + margin-bottom: 11px; + } + + @media (min-width: $desktop-width) { + font-size: 21px; + line-height: 21px; + margin-bottom: 16px; + } +} + +.about__wrapper p { + font-size: 14px; + font-weight: 400; + line-height: 20px; + margin: 0; + padding: 0; + margin-bottom: 27px; + + @media (min-width: $tablet-width) { + font-size: 16px; + line-height: 24px; + margin-bottom: 29px; + } + + @media (min-width: $desktop-width) { + font-size: 14px; + line-height: 22px; + margin-bottom: 29px; + margin-right: 195px; + } + + &:last-child { + margin-bottom: 0; + } +} + +.about__wrapper p br { + display: none; + + @media (min-width: $desktop-width) { + display: inline; + } +} diff --git a/source/sass/blocks/adv-swiper.scss b/source/sass/blocks/adv-swiper.scss new file mode 100644 index 000000000..038b9941c --- /dev/null +++ b/source/sass/blocks/adv-swiper.scss @@ -0,0 +1,193 @@ +.adv-swiper { + @media (min-width: $desktop-width) { + display: flex; + flex-flow: row wrap; + justify-content: center; + column-gap: 4px; + width: 100%; + align-items: flex-start; + overflow: hidden; + } +} + +.adv-swiper .swiper-wrapper { + margin: 0; + padding: 0; + display: flex; + flex-direction: column; + gap: 15px; + + @media (min-width: $tablet-width) { + flex-flow: row wrap; + gap: 30px; + justify-content: center; + align-items: stretch; + } + + @media (min-width: $desktop-width) { + flex-flow: row nowrap; + margin-bottom: 50px; + gap: 0; + justify-content: flex-start; + } +} + +.adv-swiper__list .swiper-slide { + margin: 0; + padding: 19px 9px; + border: 1px solid rgba(2, 102, 193, 0.1); + display: flex; + flex-direction: column; + align-items: center; + background-color: $primary-light-color; + + /* white-space: break-spaces; */ + + @media (min-width: $tablet-width) { + width: calc((100% - 30px) / 2); + padding: 29px 19px; + min-height: 340px; + } + + @media (min-width: $desktop-width) { + width: 380px; + padding: 39px 19px; + min-height: 329px; + } +} + +.adv-swiper__item h3 { + margin: 0 15px 15px; + padding: 0; + font-size: 14px; + font-weight: 600; + line-height: 14px; + display: flex; + flex-direction: column; + align-items: center; + text-align: center; + white-space: break-spaces; + + @media (min-width: $tablet-width) { + font-size: 16px; + line-height: 16px; + margin: 0 auto 14px; + } + + @media (min-width: $desktop-width) { + font-size: 18px; + line-height: 18px; + margin: 0 auto 15px; + } + + &::before { + content: ""; + display: block; + width: 42px; + height: 42px; + border: 1px solid $primary-accent-color; + margin-bottom: 20px; + background-repeat: no-repeat; + background-position: center; + + @media (min-width: $tablet-width) { + width: 48px; + height: 48px; + margin-bottom: 26px; + } + + @media (min-width: $desktop-width) { + width: 54px; + height: 54px; + margin-bottom: 30px; + } + } +} + +.adv-swiper__item--shield h3::before { + background-image: url("/__spritemap#sprite-shield-view"); + background-size: 56%; + + @media (min-width: $tablet-width) { + background-size: 48%; + } +} + +.adv-swiper__item--crown h3::before { + background-image: url("/__spritemap#sprite-crown-view"); + background-size: 59%; + background-position-y: 9px; + + @media (min-width: $tablet-width) { + background-size: 52%; + background-position-y: 12px; + } + + @media (min-width: $desktop-width) { + background-size: 47%; + background-position-y: 15px; + } +} + +.adv-swiper__item--boot h3::before { + background-image: url("/__spritemap#sprite-boot-blue-view"); + background-size: 56%; + + @media (min-width: $tablet-width) { + background-size: 48%; + } + + @media (min-width: $desktop-width) { + background-size: 43%; + } +} + +.adv-swiper__item--map h3::before { + background-image: url("/__spritemap#sprite-path-view"); + background-size: 59%; + background-position-y: 8px; + + @media (min-width: $tablet-width) { + background-size: 52%; + background-position-y: 11px; + } + + @media (min-width: $desktop-width) { + background-size: 47%; + background-position-y: 14px; + } +} + +.adv-swiper__item--flower h3::before { + background-image: url("/__spritemap#sprite-leaf-view"); + background-size: 59%; + background-position-y: 11px; + + @media (min-width: $tablet-width) { + background-size: 52%; + background-position-y: 14px; + } +} + +.adv-swiper__item p { + margin: 0; + padding: 0; + font-size: 12px; + font-weight: 400; + line-height: 18px; + text-align: center; + + @media (min-width: $tablet-width) { + font-size: 14px; + line-height: 22px; + } +} + +.adv-swiper__button { + display: none; + + @media (min-width: $desktop-width) { + display: block; + z-index: 5; + } +} diff --git a/source/sass/blocks/adv.scss b/source/sass/blocks/adv.scss new file mode 100644 index 000000000..cf60ed784 --- /dev/null +++ b/source/sass/blocks/adv.scss @@ -0,0 +1,46 @@ +.adv { + padding: 37px 15px 20px; + width: 100%; + + @media (min-width: $tablet-width) { + padding: 60px 45px 40px; + } + + @media (min-width: $desktop-width) { + padding: 135px 0 100px; + background: none; + } +} + +.adv__title { + margin: 0; + padding: 0; + + @include section-title; + + display: flex; + justify-content: center; + margin-bottom: 36px; + + &::after { + bottom: 10px; + left: 50%; + transform: translateX(-50%); + } + + @media (min-width: $tablet-width) { + margin-bottom: 60px; + + &::after { + bottom: 0; + } + } + + @media (min-width: $desktop-width) { + margin-bottom: 50px; + + &::after { + bottom: 9px; + } + } +} diff --git a/source/sass/blocks/contacts.scss b/source/sass/blocks/contacts.scss new file mode 100644 index 000000000..84586fd81 --- /dev/null +++ b/source/sass/blocks/contacts.scss @@ -0,0 +1,257 @@ +.contacts { + padding: 37px 0 19px; + border-bottom: 1px solid rgba(45, 56, 63, 0.2); + + @media (min-width: $tablet-width) { + padding: 60px 0 39px; + } + + @media (min-width: $desktop-width) { + padding: 123px 0 94px; + display: grid; + grid-template-columns: 1fr 500px 600px 1fr; + grid-template-rows: auto auto auto; + column-gap: 100px; + grid-auto-flow: dense; + } +} + +.contacts__title { + @include section-title; + + margin: 0 15px 28px; + padding: 0; + + @media (min-width: $tablet-width) { + margin: 0 45px 21px; + + &::after { + bottom: 0; + } + } + + @media (min-width: $desktop-width) { + margin: 0 0 23px; + grid-column: 2/3; + + &::after { + bottom: -3px; + } + } +} + +.contacts p { + margin: 0 15px 30px; + padding: 0; + font-size: 14px; + font-weight: 400; + line-height: 20px; + + @media (min-width: $tablet-width) { + margin: 0 45px 40px; + font-size: 16px; + line-height: 24px; + width: 70%; + } + + @media (min-width: $desktop-width) { + margin: 0 0 49px; + grid-column: 2/3; + width: 100%; + } +} + +.contacts__list { + margin: 0; + padding: 0 15px; + list-style: none; + display: flex; + flex-direction: column; + gap: 30px; + margin-bottom: 30px; + + @media (min-width: $tablet-width) { + margin: 0 43px 40px 45px; + flex-direction: row; + justify-content: space-between; + padding: 0; + } + + @media (min-width: $desktop-width) { + margin: 0; + grid-column: 2/3; + flex-direction: column; + gap: 34px; + justify-content: flex-start; + } +} + +.contacts__item { + display: grid; + grid-template-columns: 20px 1fr; + grid-template-rows: auto auto; + column-gap: 12px; + row-gap: 8px; + margin: 0; + padding: 0; + + &::before { + content: ""; + display: block; + width: 22px; + height: 23px; + grid-column: 1/2; + grid-row: 1/3; + } + + @media (min-width: $tablet-width) { + grid-template-columns: 24px 1fr; + column-gap: 10px; + row-gap: 5px; + + &::before { + width: 24px; + height: 22px; + grid-row: 1/3; + align-self: flex-start; + } + } + + @media (min-width: $desktop-width) { + grid-template-columns: 26px 1fr; + column-gap: 30px; + row-gap: 9px; + + &::before { + width: 26px; + height: 26px; + margin-top: 12px; + } + } + + &--phone::before { + background: url("/__spritemap#sprite-phone-view") no-repeat center/100%; + } + + &--email::before { + background: url("/__spritemap#sprite-mail-view") no-repeat center/99%; + } + + &--address::before { + background: url("/__spritemap#sprite-line-pin-view") no-repeat center/74%; + } +} + +.contacts__item h3 { + margin: 0; + padding: 0; + font-size: 14px; + font-weight: 600; + line-height: 14px; + + @media (min-width: $tablet-width) { + font-size: 16px; + line-height: 16px; + } + + @media (min-width: $desktop-width) { + font-size: 18px; + line-height: 18px; + } +} + +.contacts__item a, +.contacts__item address { + margin: 0; + padding: 0; + text-decoration: none; + font-style: normal; + color: $primary-dark-color; + font-size: 14px; + font-weight: 400; + line-height: 20px; + text-align: left; + + @media (min-width: $tablet-width) { + line-height: 22px; + } + + @media (min-width: $desktop-width) { + font-size: 16px; + line-height: 24px; + } +} + +.contacts__item a { + &:hover { + outline: none; + color: $primary-accent-color; + opacity: 10%; + } + + &:focus { + outline: none; + color: $primary-accent-color; + opacity: 100%; + } + + &:active { + color: $darker-accent-color; + } + + &--disabled { + outline: none; + color: $disabled-color; + opacity: 100%; + } +} + +.contacts__item br { + @media (min-width: $tablet-width) { + display: none; + } +} + +.contacts__map, +.contacts__map img { + object-fit: cover; + display: block; + width: 100%; +} + +.contacts__map { + position: relative; + + @media (min-width: $desktop-width) { + grid-column: 3/4; + grid-row: 1/-1; + margin-top: 26px; + height: auto; + } + + &::before { + display: block; + content: ""; + width: 28px; + height: 28px; + background: url("/__spritemap#sprite-map-pin-view") no-repeat center /70%; + position: absolute; + top: 171px; + left: calc(50% + 38px); + + @media (min-width: $tablet-width) { + width: 42px; + height: 42px; + top: 181px; + left: calc(50% + 1px); + background: url("/__spritemap#sprite-map-pin-view") no-repeat center /71%; + } + + @media (min-width: $desktop-width) { + width: 48px; + height: 48px; + top: 161px; + left: 360px; + } + } +} diff --git a/source/sass/blocks/footer.scss b/source/sass/blocks/footer.scss new file mode 100644 index 000000000..c2e799972 --- /dev/null +++ b/source/sass/blocks/footer.scss @@ -0,0 +1,281 @@ +.footer { + padding: 23px 0 20px; + display: flex; + flex-direction: column; + row-gap: 20px; + + @media (min-width: $tablet-width) { + flex-flow: row wrap; + padding: 34px 42px 20px 45px; + align-items: center; + justify-content: space-between; + row-gap: 34px; + } + + @media (min-width: $desktop-width) { + padding: 32px 120px; + row-gap: 22px; + max-width: $desktop-width; + margin: 0 auto; + } +} + +.footer__logo, +.footer__logo img { + display: block; + margin: 0 auto; + padding: 0; + + @media (min-width: $tablet-width) { + margin: 0; + } + + @media (min-width: $desktop-width) { + margin: 8px 29px; + } +} + +.footer__logo { + &:hover, + &:focus { + opacity: 50%; + } + + &:active { + opacity: 25%; + } +} + +.footer__logo img { + display: block; + margin: 0; + padding: 0; +} + +.footer-navigation { + display: grid; + margin: 0; + padding: 0 15px; + grid-template-columns: repeat(2, 1fr); + grid-template-rows: auto; + grid-auto-flow: dense; + list-style: none; + column-gap: 50px; + row-gap: 8px; + + @media (min-width: $tablet-width) { + display: flex; + flex-direction: row; + column-gap: 10px; + padding: 0; + } + + @media (min-width: $desktop-width) { + margin-top: 2px; + column-gap: 19px; + } +} + +.footer-navigation__item { + margin: 0; + padding: 0; +} + +.footer-navigation__item a { + display: flex; + justify-content: center; + align-items: center; + width: 100%; + text-decoration: none; + font-size: 14px; + font-weight: 400; + line-height: 14px; + text-align: center; + color: $primary-dark-color; + padding: 3px 5px; + border: 1px solid transparent; + outline: none; + + @media (min-width: $tablet-width) { + white-space-collapse: preserve; + } + + @media (min-width: $desktop-width) { + font-size: 16px; + line-height: 16px; + white-space-collapse: collapse; + } + + &:hover { + border-bottom: 1px solid $primary-dark-color; + } + + &:focus { + border: 1px solid $primary-dark-color; + } + + &:active { + border: 1px solid transparent; + color: $primary-accent-color; + } + + &--disabled { + border: 1px solid transparent; + color: $disabled-color; + } +} + +.footer__phone { + display: none; + + @media (min-width: $desktop-width) { + display: block; + font-size: 18px; + font-weight: 600; + line-height: 18px; + text-align: right; + text-decoration: none; + color: $primary-dark-color; + margin-top: 3px; + margin-left: 55px; + outline: none; + } + + &:hover { + color: $primary-accent-color; + opacity: 30%; + } + + &:focus { + color: $primary-accent-color; + } + + &:active { + color: $darker-accent-color; + } + + &--disabled { + color: $disabled-color; + opacity: 100%; + } +} + +.footer__social { + display: flex; + flex-flow: row wrap; + gap: 16px; + margin: -1px auto 0; + padding: 0; + list-style: none; + width: 100%; + justify-content: center; + + @media (min-width: $tablet-width) { + margin: 0 auto; + } +} + +.footer-social__item { + display: block; + width: 30px; + height: 30px; + border: 1px solid rgba(45, 56, 63, 0.3); + background-color: transparent; + + &--vk { + @media (min-width: $tablet-width) { + margin-left: -3px; + } + + @media (min-width: $desktop-width) { + margin-left: 0; + } + } + + &:has(a:hover) { + border: 1px solid $primary-dark-color; + } + + &:has(a:focus) { + border: 1px solid transparent; + } + + &:has(a:active) { + border: 1px solid $primary-accent-color; + background-color: $primary-accent-color; + } +} + +.footer-social__item a { + display: block; + width: 100%; + height: 100%; + mask-repeat: no-repeat; + background-color: $primary-dark-color; + + &:active { + background-color: $primary-light-color; + } +} + +.footer-social__item--vk a { + mask-image: url("/__spritemap#sprite-vk-view"); + mask-size: 16px; + mask-position: top 10px left 6px; + + @media (min-width: $desktop-width) { + mask-position: top 11px left 7px; + } +} + +.footer-social__item--ok a { + mask-image: url("/__spritemap#sprite-odnoklassniki-view"); + mask-size: 9px; + mask-position: center left 9px; + + @media (min-width: $desktop-width) { + mask-position: top 7px left 9px; + } +} + +.footer-social__item--reddit a { + mask-image: url("/__spritemap#sprite-reddit-view"); + mask-size: 14px; + mask-position: top 6px left 7px; + + @media (min-width: $desktop-width) { + mask-position: top 7px left 6px; + } +} + +.footer__policy { + font-size: 12px; + font-weight: 300; + line-height: 12px; + text-align: center; + width: auto; + margin: 0 auto; + padding: 0; + text-decoration: none; + color: $primary-dark-color; + justify-content: center; + outline: none; + + &:hover { + color: $primary-accent-color; + opacity: 30%; + } + + &:focus { + color: $primary-accent-color; + } + + &:active { + color: $darker-accent-color; + } + + &--disabled { + color: $disabled-color; + opacity: 100%; + } +} diff --git a/source/sass/blocks/form-section.scss b/source/sass/blocks/form-section.scss new file mode 100644 index 000000000..677bcc392 --- /dev/null +++ b/source/sass/blocks/form-section.scss @@ -0,0 +1,40 @@ +.form-section { + background-color: $primary-dark-color; + background: + linear-gradient(to left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), + url("../../img/form-background-tablet.webp") no-repeat center; + background-size: cover; + padding: 177px 31px 174px; + + @media (min-resolution: 2dppx) { + background: + linear-gradient(to left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), + url("../../img/form-background-tablet@2x.webp") no-repeat center; + background-size: cover; + } + + @media (min-width: $tablet-width) { + min-height: 680px; + padding: 180px 204px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + } + + @media (min-width: $desktop-width) { + min-height: 760px; + padding: 200px 240px; + background: + linear-gradient(to left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), + url("../../img/form-background-desktop.webp") no-repeat center; + background-size: cover; + } + + @media (min-width: $desktop-width) and (min-resolution: 2dppx) { + background: + linear-gradient(to left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), + url("../../img/form-background-desktop@2x.webp") no-repeat center; + background-size: cover; + } +} diff --git a/source/sass/blocks/form.scss b/source/sass/blocks/form.scss new file mode 100644 index 000000000..0987ecffe --- /dev/null +++ b/source/sass/blocks/form.scss @@ -0,0 +1,222 @@ +.form { + display: flex; + flex-direction: column; + + @media (min-width: $desktop-width) { + flex-flow: row wrap; + column-gap: 30px; + justify-content: stretch; + max-width: $desktop-width; + margin: 0 auto; + } +} + +.form h2 { + color: $primary-light-color; + font-size: 22px; + font-weight: 800; + line-height: 22px; + text-align: center; + margin: 0 auto 17px; + padding: 0; + width: 100%; + + @media (min-width: $tablet-width) { + font-size: 25px; + line-height: 25px; + margin: 4px auto 23px; + } + + @media (min-width: $desktop-width) { + font-size: 35px; + line-height: 35px; + margin: 3px auto 17px; + } +} + +.form p { + font-size: 12px; + font-weight: 400; + line-height: 18px; + text-align: center; + margin: 0 0 20px 1px; + padding: 0; + color: $primary-light-color; + white-space: break-spaces; + width: 100%; + + @media (min-width: $tablet-width) { + font-size: 16px; + line-height: 24px; + margin: 0 auto 24px; + } + + @media (min-width: $desktop-width) { + margin: 0 auto 40px; + } +} + +.form p br { + @media (min-width: $tablet-width) { + display: none; + } +} + +.form__wrapper { + position: relative; + margin-bottom: 8px; + + @media (min-width: $tablet-width) { + margin-bottom: 11px; + } + + @media (min-width: $desktop-width) { + margin-bottom: 0; + flex-grow: 1; + } +} + +.form__input, +.form__label { + display: block; + width: 100%; + height: 50px; + background-color: $primary-light-color; + border-radius: 2px; + font-size: 16px; + font-weight: 400; + line-height: 16px; + + @media (min-width: $tablet-width) { + height: 56px; + } +} + +.form__input { + border: 1px solid transparent; + + &--phone { + padding: 16px 14px 14px; + + @media (min-width: $tablet-width) { + padding: 17px 29px; + } + } + + &--email { + padding: 16px 14px 13px; + + @media (min-width: $tablet-width) { + padding: 17px 29px; + } + } + + &:hover { + border: 1px solid $primary-accent-color; + } + + &:focus { + outline: none; + border: 1px solid $primary-dark-color; + } + + &:disabled { + border: 1px solid $disabled-color; + } +} + +.form__input.error { + border: 1px solid #ff121f; +} + +.form__input::placeholder { + font-size: 16px; + font-weight: 400; + line-height: 16px; + text-align: left; + color: rgba(45, 56, 63, 0.5); + padding: 0; + margin: 0; +} + +.form__label { + position: absolute; + z-index: 1; + color: rgba(45, 56, 63, 0.5); + top: 0; + border: 1px solid rgba(2, 102, 193, 0.1); + border-radius: 2px; + + &--phone { + padding: 16px 14px 14px; + + @media (min-width: $tablet-width) { + padding: 19px 29px; + } + } + + &--email { + padding: 16px 14px 13px; + + @media (min-width: $tablet-width) { + padding: 19px 29px; + } + } + + &:hover { + border: 1px solid $primary-accent-color; + } +} + +.form__input:focus + .form__label { + display: none; +} + +.form__input:not(:placeholder-shown) + .form__label { + display: none; +} + +.form__input:disabled + .form__label { + border: 1px solid #999999; + color: rgba(153, 153, 153, 0.5); +} + +.form__submit { + background-color: $primary-accent-color; + color: $primary-light-color; + font-size: 16px; + font-weight: 500; + line-height: 16px; + text-align: center; + padding: 21px 19px 19px; + border: 1px solid $primary-accent-color; + + @media (min-width: $tablet-width) { + padding: 20px 19px 18px; + } + + @media (min-width: $desktop-width) { + height: 56px; + min-width: 180px; + } + + &:hover { + background-color: $primary-light-color; + border: 1px solid $darker-accent-color; + color: $darker-accent-color; + } + + &:focus { + outline: none; + background-color: $primary-light-color; + border: 1px solid $primary-light-color; + color: $darker-accent-color; + } + + &:active { + outline: none; + background-color: $darker-accent-color; + border: 1px solid $darker-accent-color; + color: $primary-light-color; + } +} diff --git a/source/sass/blocks/gallery-swiper.scss b/source/sass/blocks/gallery-swiper.scss new file mode 100644 index 000000000..96b82477f --- /dev/null +++ b/source/sass/blocks/gallery-swiper.scss @@ -0,0 +1,127 @@ +.gallery-swiper { + display: flex; + flex-flow: row wrap; + column-gap: 4px; + row-gap: 31px; + align-items: flex-end; + + @media (min-width: $tablet-width) { + row-gap: 21px; + } + + @media (min-width: $desktop-width) { + row-gap: 45px; + } +} + +.gallery-swiper p { + margin: 0 15px; + padding: 0; + font-size: 12px; + font-weight: 400; + line-height: 18px; + text-align: left; + + @media (min-width: $tablet-width) { + width: 62%; + margin: 0 auto 0 45px; + font-size: 14px; + line-height: 22px; + } + + @media (min-width: $desktop-width) { + margin: 0 120px; + font-size: 16px; + line-height: 24px; + width: 43%; + } +} + +.gallery-swiper__button { + display: none; + + @media (min-width: $tablet-width) { + display: block; + } + + @media (min-width: $desktop-width) { + display: none; + } +} + +.gallery-swiper__button:last-of-type { + margin-right: 45px; +} + +.gallery-swiper .swiper-wrapper { + margin: 0; + padding: 0; + display: flex; + height: 266px; + + @media (min-width: $tablet-width) { + height: 418px; + } + + @media (min-width: $desktop-width) { + height: 463px; + column-gap: 5px; + } +} + +.gallery-swiper .swiper-slide { + width: 158px; + margin: 0; + padding: 0; + + @media (min-width: $tablet-width) { + width: 253px; + } + + @media (min-width: $desktop-width) { + width: 284px; + } +} + +.gallery-swiper .swiper-slide:has(ul) { + width: 157px; + + @media (min-width: $tablet-width) { + width: 252px; + } + + @media (min-width: $desktop-width) { + width: 284px; + } +} + +.gallery-swiper picture, +.gallery-swiper img { + display: block; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + object-fit: cover; +} + +.gallery-swiper .swiper-slide__sublist { + margin: 0; + padding: 0; + display: flex; + flex-direction: column; + gap: 6px; + list-style: none; + height: 100%; + + @media (min-width: $desktop-width) { + gap: 7px; + } +} + +.gallery-swiper .swiper-slide__sublist li { + margin: 0; + padding: 0; + width: 100%; + height: 100%; +} diff --git a/source/sass/blocks/gallery.scss b/source/sass/blocks/gallery.scss new file mode 100644 index 000000000..b532294f9 --- /dev/null +++ b/source/sass/blocks/gallery.scss @@ -0,0 +1,36 @@ +.gallery { + padding: 37px 0 3px; + + @media (min-width: $tablet-width) { + padding: 60px 0 3px; + } + + @media (min-width: $desktop-width) { + padding: 123px 0 3px; + max-width: $desktop-width; + margin: 0 auto; + } +} + +.gallery__title { + @include section-title; + + margin: 0 15px 26px; + padding: 0; + + @media (min-width: $tablet-width) { + margin: 0 45px 30px; + + &::after { + bottom: 0; + } + } + + @media (min-width: $desktop-width) { + margin: 0 120px 24px; + + &::after { + bottom: -3px; + } + } +} diff --git a/source/sass/blocks/header.scss b/source/sass/blocks/header.scss new file mode 100644 index 000000000..b691739fc --- /dev/null +++ b/source/sass/blocks/header.scss @@ -0,0 +1,143 @@ +.header { + background-color: $primary-accent-color; + width: 100%; + grid-row: 1/2; +} + +.header__wrapper { + display: flex; + flex-flow: row wrap; + width: 100%; + max-width: $desktop-width; + padding: 15px 15px 13px; + align-items: flex-start; + position: relative; + margin: 0 auto; + + @media (min-width: $tablet-width) { + padding: 20px 45px 16px; + align-items: center; + } + + @media (min-width: $desktop-width) { + padding: 42px 120px 38px; + justify-content: space-between; + } +} + +.header__toggle { + display: block; + width: 26px; + height: 26px; + border: 0; + mask-repeat: no-repeat; + mask-position: center; + background-color: $primary-light-color; + margin-right: auto; + outline: none; + + &:hover { + opacity: 50%; + } + + &:focus { + background-color: $darker-accent-color; + } + + &:active { + background-color: $primary-light-color; + opacity: 80%; + } + + @media (min-width: $tablet-width) { + margin-top: -5px; + } + + @media (min-width: $desktop-width) { + display: none; + } +} + +.header__toggle--closed { + mask-image: url("/__spritemap#sprite-menu-view"); +} + +.header__toggle--opened { + mask-image: url("/__spritemap#sprite-cross-view"); +} + +.header__navigation { + display: none; + width: 100%; + order: 4; + z-index: 11; + position: absolute; + background-color: $primary-accent-color; + top: 100px; + padding: 0 15px; + left: 0; + + + @media (min-width: $tablet-width) { + top: 80px; + padding: 0 45px; + } + + @media (min-width: $desktop-width) { + display: flex; + order: 0; + position: static; + width: auto; + padding: 0; + } +} + +.header__toggle--opened ~ .header__navigation { + display: flex; +} + +.header__logo { + margin-bottom: 12px; + + @media (min-width: $tablet-width) { + margin-bottom: 0; + margin-right: 129px; + } + + @media (min-width: $desktop-width) { + margin-left: 32px; + margin-right: 31px; + } +} + +.header__phone { + width: 100%; + text-align: right; + font-family: $primary-font; + font-size: 14px; + font-weight: 600; + line-height: 14px; + text-decoration: none; + color: $primary-light-color; + + @media (min-width: $tablet-width) { + width: auto; + font-size: 16px; + line-height: 16px; + } + + @media (min-width: $desktop-width) { + font-size: 18px; + line-height: 18px; + } + + &:hover { + opacity: 50%; + } + + &:focus { + opacity: 100%; + color: $primary-dark-color; + outline: none; + } +} diff --git a/source/sass/blocks/hero-swiper.scss b/source/sass/blocks/hero-swiper.scss new file mode 100644 index 000000000..43c526ba0 --- /dev/null +++ b/source/sass/blocks/hero-swiper.scss @@ -0,0 +1,62 @@ +.hero-swiper .swiper-pagination { + position: absolute; + bottom: 40px; + left: 50%; + transform: translate(-50%); + z-index: 3; + width: auto; + height: 16px; + display: flex; + gap: 20px; + + @media (min-width: $tablet-width) { + bottom: 44px; + } + + @media (min-width: $desktop-width) { + right: calc(50% - 650px); + left: auto; + bottom: 96px; + } +} + +.hero-swiper .swiper-pagination-bullet { + display: block; + width: 16px; + height: 16px; + border-radius: 50%; + border: 1px solid $primary-light-color; + cursor: pointer; + background-color: transparent; + + @media (min-width: $tablet-width) { + width: 20px; + height: 20px; + } + + &:hover { + background-color: #d9d9d9; + } + + &:focus { + outline: 1px solid rgba(255, 255, 255, 0.5); + outline-offset: 1px; + } + + &:active { + background-color: rgba(255, 255, 255, 0.5); + } +} + +.hero-swiper .swiper-pagination-bullet-active { + background-color: $primary-light-color; +} + +.hero-swiper .swiper-slide { + height: 568px; + width: 100%; + + @media (min-width: $tablet-width) { + height: auto; + } +} diff --git a/source/sass/blocks/hero.scss b/source/sass/blocks/hero.scss new file mode 100644 index 000000000..3b83c14b3 --- /dev/null +++ b/source/sass/blocks/hero.scss @@ -0,0 +1,305 @@ +.hero { + width: 100%; + overflow: hidden; +} + +.hero-swiper__list { + margin: 0; + padding: 0; + list-style: none; +} + +.hero-item { + background-size: cover; + position: relative; + background-color: $primary-accent-color; + + &--caucas { + background: $slider-linear, + url("../../img/hero-slide-caucas-mobile.webp") bottom center /cover; + + @media (min-resolution: 2dppx) { + background: $slider-linear, + url("../../img/hero-slide-caucas-mobile@2x.webp") bottom center /cover; + } + + @media (min-width: $tablet-width) { + background: $slider-linear, + url("../../img/hero-slide-caucas.webp") bottom center /cover; + } + + @media (min-width: $tablet-width) and (min-resolution: 2dppx) { + background: $slider-linear, + url("../../img/hero-slide-caucas@2x.webp") bottom center /cover; + } + } + + &--kamchatka { + background: $slider-linear, + url("../../img/hero-slide-kamchatka-mobile.webp") bottom center /cover; + + @media (min-resolution: 2dppx) { + background: $slider-linear, + url("../../img/hero-slide-kamchatka-mobile@2x.webp") bottom center /cover; + } + + @media (min-width: $tablet-width) { + background: $slider-linear, + url("../../img/hero-slide-kamchatka.webp") bottom center /cover; + } + + @media (min-width: $tablet-width) and (min-resolution: 2dppx) { + background: $slider-linear, + url("../../img/hero-slide-kamchatka@2x.webp") bottom center /cover; + } + } + + + &--altay { + background: $slider-linear, + url("../../img/hero-slide-altay-mobile.webp") bottom center /cover; + + @media (min-resolution: 2dppx) { + background: $slider-linear, + url("../../img/hero-slide-altay-mobile@2x.webp") bottom center /cover; + } + + @media (min-width: $tablet-width) { + background: $slider-linear, + url("../../img/hero-slide-altay.webp") bottom center /cover; + } + + @media (min-width: $tablet-width) and (min-resolution: 2dppx) { + background: $slider-linear, + url("../../img/hero-slide-altay@2x.webp") bottom center /cover; + } + } + + @media (min-width: $tablet-width) { + min-height: 1034px; + } + + @media (min-width: $desktop-width) { + background-position: 0 center; + min-height: 800px; + } +} + +.hero-item__photo-wrapper { + position: relative; + margin: 0 auto; + display: none; + + @media (min-width: $tablet-width) { + display: block; + width: 442px; + height: 365px; + } + + @media (min-width: $desktop-width) { + width: 420px; + height: 459px; + position: absolute; + top: 187px; + right: calc(50% - 610px); + } +} + +.hero-item__photo { + display: none; + + @media (min-width: $tablet-width) { + display: block; + position: absolute; + + &--two { + left: 206px; + top: 53px; + } + } + + @media (min-width: $desktop-width) { + + &--two { + top: 93px; + left: auto; + right: 10px; + } + } +} + +.hero-item__wrapper { + height: 100%; + padding: 42px 15px 60px; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + @media (min-width: $tablet-width) { + padding: 0 45px; + justify-content: flex-start; + max-width: $tablet-width; + margin: 0 auto; + } + + @media (min-width: $desktop-width) { + padding: 80px 120px; + justify-content: flex-start; + align-items: flex-start; + max-width: $desktop-width; + } +} + +.hero-item__wrapper h2 { + margin: 0 auto 15px; + padding: 0; + font-family: $primary-font; + font-size: 26px; + font-weight: 800; + line-height: 26px; + text-align: center; + color: $primary-light-color; + + @media (min-width: $tablet-width) { + margin: 342px auto 13px; + font-size: 56px; + line-height: 56px; + text-align: center; + } + + @media (min-width: $desktop-width) { + font-size: 77px; + line-height: 77px; + text-align: left; + margin: 120px 0 23px; + max-width: 944px; + z-index: 3; + } +} + +.hero-item--kamchatka .hero-item__wrapper h2 { + @media (min-width: $tablet-width) { + margin: 137px auto 13px; + } + + @media (min-width: $desktop-width) { + margin: 120px 0 23px; + } +} + +.hero-item__wrapper p { + margin: 0 auto 60px; + padding: 0; + font-family: $primary-font; + font-size: 15px; + font-weight: 400; + line-height: 20px; + text-align: center; + color: $primary-light-color; + + @media (min-width: $tablet-width) { + font-size: 17px; + font-weight: 400; + line-height: 24px; + text-align: center; + margin: 0 89px 37px; + } + + @media (min-width: $desktop-width) { + text-align: left; + max-width: 464px; + margin: 0 0 37px; + } +} + +.hero-item__link { + display: block; + padding: 19px 33px; + color: $primary-light-color; + background-color: $primary-accent-color; + font-family: $primary-font; + font-size: 16px; + font-weight: 500; + line-height: 16px; + text-align: center; + text-decoration: none; + margin: 0 auto -1px; + border: 1px solid $primary-accent-color; + + @media (min-width: $tablet-width) { + margin: 0 auto 45px; + padding: 20px 33px 18px; + } + + @media (min-width: $desktop-width) { + margin: 0 0 134px; + } + + &:hover { + background-color: $primary-light-color; + border: 1px solid $darker-accent-color; + color: $darker-accent-color; + } + + &:focus { + outline: none; + background-color: $primary-light-color; + border: 1px solid $primary-light-color; + color: $darker-accent-color; + } + + &:active { + outline: none; + background-color: $darker-accent-color; + border: 1px solid $darker-accent-color; + color: $primary-light-color; + } +} + +.hero-item__link--disabled { + outline: none; + background-color: $disabled-color; + border: 1px solid $disabled-color; + color: $primary-light-color; +} + +.hero-item__options { + display: none; + + @media (min-width: $desktop-width) { + display: flex; + gap: 10px; + } +} + +.hero-item__options span { + padding: 13px 19px; + border: 1px solid rgba(255, 255, 255, 0.5); + color: $primary-light-color; + font-size: 12px; + font-weight: 400; + line-height: 16px; + display: flex; + gap: 8px; + align-items: center; + + &::before { + content: ""; + display: block; + width: 12px; + height: 12px; + } +} + +.options__length::before { + background: url("/__spritemap#sprite-moon-view") no-repeat center; +} + +.hero-item__options .options__level { + padding-right: 20px; +} + +.options__level::before { + background: url("/__spritemap#sprite-level-view") no-repeat center; +} diff --git a/source/sass/blocks/main.scss b/source/sass/blocks/main.scss new file mode 100644 index 000000000..524b5c929 --- /dev/null +++ b/source/sass/blocks/main.scss @@ -0,0 +1,56 @@ +.main { + position: relative; + background: url("../../img/clouds-1-mobile.webp") no-repeat top 10px right; + background-size: auto; + + @media (min-resolution:2dppx) { + background: url("../../img/clouds-1-mobile@2x.webp") no-repeat top 10px right; + background-size: 50%; + } + + @media (min-width: $tablet-width) { + background: url("../../img/clouds-1-tablet.webp") no-repeat top 942px right, + url("../../img/clouds-2-tablet.webp") no-repeat top 2283px right, + url("../../img/clouds-3-tablet.webp") no-repeat top 4066px right; + } + + @media (min-width: $tablet-width) and (min-resolution:2dppx) { + background: url("../../img/clouds-1-tablet@2x.webp") no-repeat top 942px right /425px, + url("../../img/clouds-2-tablet@2x.webp") no-repeat top 2283px right /465px, + url("../../img/clouds-3-tablet@2x.webp") no-repeat top 4066px right /768px; + } + + @media (min-width: $desktop-width) { + background: + url("../../img/clouds-1-desktop.webp") no-repeat top 674px right, + url("../../img/clouds-2-desktop.webp") no-repeat top 2226px right, + url("../../img/clouds-3-desktop.webp") no-repeat top 3517px right; + } + + @media (min-width: $desktop-width) and (min-resolution:2dppx) { + background: + url("../../img/clouds-1-desktop@2x.webp") no-repeat top 674px right /602px, + url("../../img/clouds-2-desktop@2x.webp") no-repeat top 2226px right /635px, + url("../../img/clouds-3-desktop@2x.webp") no-repeat top 3517px right /1440px; + } +} + +.main__overlay { + width: 100vw; + height: 100vh; + background-color: rgba(45, 56, 63, 0.6); + position: absolute; + top: 0; + left: 0; + display: none; + z-index: 10; +} + +.main__overlay.active { + display: flex; +} + +.page:has(.header__toggle--opened) { + height: 100vh; + overflow: hidden; +} diff --git a/source/sass/blocks/nav-list.scss b/source/sass/blocks/nav-list.scss new file mode 100644 index 000000000..7da3fe1d9 --- /dev/null +++ b/source/sass/blocks/nav-list.scss @@ -0,0 +1,77 @@ +.nav-list { + list-style: none; + padding: 28px 15px 35px; + display: flex; + flex-direction: column; + gap: 22px; + justify-content: center; + background-color: $primary-accent-color; + width: 100%; + height: fit-content; + + @media (min-width: $tablet-width) { + margin: 33px 0 69px; + gap: 26px; + padding: 0; + } + + @media (min-width: $desktop-width) { + flex-flow: row wrap; + margin: 0; + gap: 19px; + margin-top: -3px; + } +} + +.nav-item { + margin: 0; + padding: 0; + display: flex; + align-items: center; +} + +.nav-item__link { + font-family: $primary-font; + margin: 0; + padding: 3px 5px; + font-size: 14px; + font-weight: 700; + line-height: 14px; + letter-spacing: 0.04em; + text-decoration: none; + color: $primary-light-color; + text-transform: uppercase; + border: 1px solid transparent; + + @media (min-width: $tablet-width) { + font-size: 16px; + line-height: 16px; + } + + @media (min-width: $desktop-width) { + text-transform: none; + font-weight: 400; + font-size: 15px; + } + + &:hover { + border-bottom: 1px solid $primary-light-color; + } + + &:focus { + outline: none; + border: 1px solid $primary-light-color; + } + + &:active { + outline: none; + border: 1px solid transparent; + color: $darker-accent-color; + } +} + +.nav-item__link.disabled { + outline: none; + border: 1px solid transparent; + color: $disabled-color; +} diff --git a/source/sass/blocks/reviews-swiper.scss b/source/sass/blocks/reviews-swiper.scss new file mode 100644 index 000000000..178a542c7 --- /dev/null +++ b/source/sass/blocks/reviews-swiper.scss @@ -0,0 +1,186 @@ +.reviews-swiper { + display: flex; + flex-flow: row wrap; + row-gap: 31px; + column-gap: 4px; + padding: 20px 15px 0; + + @media (min-width: $tablet-width) { + row-gap: 25px; + padding: 40px 0 0 45px; + } + + @media (min-width: $desktop-width) { + padding: 40px 0 0 120px; + row-gap: 38px; + } +} + +.reviews-swiper__title { + @include section-title; + + margin: 0; + padding: 0; + width: auto; + margin-right: auto; + + &::after { + bottom: 10px; + } + + @media (min-width: $desktop-width) { + &::after { + bottom: 19px; + } + } +} + + +.reviews-swiper__button { + display: none; + + @media (min-width: $tablet-width) { + display: flex; + } +} + +.reviews-swiper__button--next { + @media (min-width: $tablet-width) { + margin-right: 45px; + } + + @media (min-width: $desktop-width) { + margin-right: 120px; + } +} + +.reviews-swiper__list { + margin: 0; + padding: 0; + list-style: none; + + @media (min-width: $desktop-width) { + margin-left: 10px; + } +} + +.reviews-swiper .swiper-slide { + margin: 0; + padding: 20px; + box-shadow: 0 0 20px 0 rgba(28, 51, 116, 0.1); + background-color: $primary-light-color; + + @media (min-width: $tablet-width) { + width: 565px; + display: flex; + column-gap: 30px; + align-items: center; + padding: 20px; + } + + @media (min-width: $desktop-width) { + width: 700px; + align-items: flex-start; + padding-right: 40px; + } +} + +.reviews-swiper__item picture, +.reviews-swiper__item img { + display: block; + margin: 0; + padding: 0; + width: 100%; + object-fit: cover; + + @media (min-width: $tablet-width) { + width: auto; + } +} + +.reviews-swiper__item picture { + margin-bottom: 19px; + + @media (min-width: $tablet-width) { + width: 186px; + margin-bottom: 0; + } + + @media (min-width: $desktop-width) { + width: 258px; + } +} + +.reviews-swiper__item div { + display: flex; + flex-direction: column; + align-items: flex-start; + width: 100%; + height: fit-content; +} + +.reviews-swiper__item p { + margin: 0; + padding: 0; + font-size: 12px; + font-weight: 400; + line-height: 18px; + + @media (min-width: $desktop-width) { + font-size: 14px; + line-height: 22px; + } +} + +.reviews-swiper__item p:first-of-type { + @media (min-width: $desktop-width) { + margin-top: -2px; + } +} + +.reviews-swiper__item p:not(:last-of-type) { + margin-bottom: 10px; + + @media (min-width: $tablet-width) { + margin-bottom: 10px; + } +} + +.reviews-swiper__item p:last-of-type { + margin-bottom: 16px; + + @media (min-width: $tablet-width) { + margin-bottom: 26px; + } + + @media (min-width: $desktop-width) { + margin-bottom: 4px; + } +} + +.reviews-swiper__item h3 { + font-size: 12px; + font-weight: 700; + line-height: 12px; + margin: 0; + padding: 0; + margin-bottom: 8px; + + @media (min-width: $tablet-width) { + font-size: 13px; + line-height: 13px; + margin-bottom: 6px; + } + + @media (min-width: $desktop-width) { + margin-bottom: 8px; + } +} + +.reviews-swiper__item span { + margin: 0; + padding: 0; + font-size: 12px; + font-weight: 300; + line-height: 12px; +} diff --git a/source/sass/blocks/reviews.scss b/source/sass/blocks/reviews.scss new file mode 100644 index 000000000..87cf3139c --- /dev/null +++ b/source/sass/blocks/reviews.scss @@ -0,0 +1,13 @@ +.reviews { + padding: 17px 0 2px; + + @media (min-width: $tablet-width) { + padding: 20px 0 40px; + } + + @media (min-width: $desktop-width) { + padding: 105px 0 87px; + max-width: $desktop-width; + margin: 0 auto; + } +} diff --git a/source/sass/blocks/swiper-button.scss b/source/sass/blocks/swiper-button.scss new file mode 100644 index 000000000..5953a376f --- /dev/null +++ b/source/sass/blocks/swiper-button.scss @@ -0,0 +1,76 @@ +.swiper-button { + width: 37px; + height: 35px; + border-radius: 0; + border: 1px solid $primary-accent-color; + background-color: $primary-accent-color; + display: none; + + @media (min-width: $tablet-width) { + display: block; + } + + &:hover { + outline: none; + border: 1px solid $darker-accent-color; + background-color: transparent; + } + + &:focus { + outline: none; + border: 1px solid $primary-light-color; + background-color: $primary-light-color; + } + + &:active { + outline: none; + border: 1px solid $darker-accent-color; + background-color: $darker-accent-color; + } + + &:disabled { + outline: none; + border: 1px solid #999999; + background-color: #999999; + } +} + +.swiper-button-next { + @media (min-width: $tablet-width) { + right: 45px; + } +} + +.swiper-button-prev { + @media (min-width: $tablet-width) { + right: 86px; + } +} + +.swiper-button__overlay { + display: block; + width: 100%; + height: 100%; + background-color: $primary-light-color; + mask-position: center; + mask-repeat: no-repeat; + mask-size: 13px; +} + +.swiper-button:hover .swiper-button__overlay, +.swiper-button:focus .swiper-button__overlay { + background-color: $darker-accent-color; +} + +.swiper-button:active .swiper-button__overlay, +.swiper-button:disabled .swiper-button__overlay { + background-color: $primary-light-color; +} + +.swiper-button-prev .swiper-button__overlay { + mask-image: url("/__spritemap#sprite-arrow-left-view"); +} + +.swiper-button-next .swiper-button__overlay { + mask-image: url("/__spritemap#sprite-arrow-right-view"); +} diff --git a/source/sass/blocks/tour.scss b/source/sass/blocks/tour.scss new file mode 100644 index 000000000..fdca1f89b --- /dev/null +++ b/source/sass/blocks/tour.scss @@ -0,0 +1,190 @@ +.tour { + min-height: 416px; + margin: 0; + padding: 0; + position: relative; +} + +.tour__image { + width: 100%; + height: 100%; + margin: 0; + padding: 0; +} + +.tour__image img { + object-fit: cover; + display: block; + margin: 0; + padding: 0; + width: 100%; +} + +.tour__wrapper { + width: 100%; + height: 100%; + position: absolute; + top: 0; + left: 0; + padding: 30px 20px; + background: $tour-linear; + display: flex; + flex-flow: row wrap; + color: $primary-light-color; + align-items: center; + justify-content: flex-start; + align-content: flex-end; +} + +.tour__info, +.tour__details { + width: 100%; + display: flex; + justify-content: space-between; +} + +.tour__info { + align-items: center; + row-gap: 12px; + flex-flow: row wrap; +} + +.tour-details { + align-items: flex-end; +} + +.tour-info__location { + display: flex; + padding: 9px 13px 9px 16px; + align-items: center; + justify-content: center; + background-color: $primary-accent-color; + flex-direction: row; + + @media (min-width: $tablet-width) { + padding: 8px 13px 8px 16px; + } +} + +.tour-location__title { + font-size: 12px; + font-weight: 500; + line-height: 12px; + display: flex; + + &::before { + content: ""; + display: block; + width: 9px; + height: 12px; + margin-right: 9px; + mask-image: url("/__spritemap#sprite-pin-view"); + background-color: $primary-light-color; + } +} + +.tour-info__length { + display: flex; + gap: 15px; + flex-shrink: 0; + flex-flow: row nowrap; +} + +.tour-length__text { + font-size: 12px; + font-weight: 500; + line-height: 12px; + display: flex; + align-items: center; + + &::before { + content: ""; + display: block; + width: 20px; + height: 20px; + margin-right: 12px; + background-color: $primary-light-color; + } + + &--day::before { + mask-image: url("/__spritemap#sprite-sun-view"); + } + + &--night::before { + mask-image: url("/__spritemap#sprite-moon-view"); + mask-size: 16px; + mask-position: center; + mask-repeat: no-repeat; + } +} + +.tour__title { + margin: 15px 0 14px; + padding: 0; + font-size: 24px; + font-weight: 700; + line-height: 28px; + + @media (min-width: $tablet-width) { + margin: 16px 0 14px; + } + + @media (min-width: $desktop-width) { + margin-right: 50px; + } +} + +.tour-level { + display: flex; + flex-direction: column; + gap: 4px; + padding-top: 15px; + border-top: 1px solid rgba(255, 255, 255, 0.2); +} + +.tour-level__title, +.tour-dates__title, +.tour-group__title { + font-size: 12px; + font-weight: 300; + line-height: 12px; +} + +.tour-level__image { + display: block; + width: 84px; + height: 16px; +} + +.tour--belukha .tour-level__image { + background: url("/__spritemap#sprite-stars-three-view") no-repeat center; +} + +.tour--elbrus .tour-level__image, +.tour--fisht .tour-level__image { + background: url("/__spritemap#sprite-stars-four-view") no-repeat center; +} + +.tour--manaraga .tour-level__image { + background: url("/__spritemap#sprite-stars-five-view") no-repeat center; +} + +.tour-dates, +.tour-group { + display: flex; + flex-direction: column; + justify-content: flex-end; +} + +.tour__dates { + margin: 0 auto; +} + +.tour-dates__text, +.tour-group__text { + font-size: 13px; + font-weight: 700; + line-height: 13px; + margin-top: 7px; + margin-right: 1px; +} diff --git a/source/sass/blocks/tours-swiper.scss b/source/sass/blocks/tours-swiper.scss new file mode 100644 index 000000000..f3bc83424 --- /dev/null +++ b/source/sass/blocks/tours-swiper.scss @@ -0,0 +1,60 @@ +.tours-swiper { + overflow: hidden; + display: flex; + flex-flow: row wrap; + column-gap: 4px; + row-gap: 39px; + + @media (min-width: $tablet-width) { + row-gap: 25px; + padding-top: 20px; + } + + @media (min-width: $desktop-width) { + row-gap: 50px; + } +} + +.tours-swiper__title { + @include section-title; + + @media (min-width: $tablet-width) { + margin-right: auto; + margin-top: -3px; + + &::after { + bottom: 10px; + } + } + + @media (min-width: $desktop-width) { + margin-top: 0; + + &::after { + bottom: -3px; + } + } +} + +.tours-swiper__button { + margin-top: -3px; +} + +.tours-swiper__list { + margin: 0; + padding: 0; + list-style: none; + width: 100%; +} + +.tours-swiper .swiper-slide { + width: 100%; + + @media (min-width: $tablet-width) { + width: calc((100% - 18px) / 2); + } + + @media (min-width: $desktop-width) { + width: calc((100% - 60px) / 3); + } +} diff --git a/source/sass/blocks/tours.scss b/source/sass/blocks/tours.scss new file mode 100644 index 000000000..38567e453 --- /dev/null +++ b/source/sass/blocks/tours.scss @@ -0,0 +1,108 @@ +.tours { + padding: 39px 15px 20px; + + @media (min-width: $tablet-width) { + padding: 43px 45px 40px; + position: relative; + background-image: none; + } + + @media (min-width: $desktop-width) { + padding: 103px 120px 100px; + max-width: 1440px; + margin: 0 auto; + } +} + +.tours__swiper { + margin-bottom: 25px; + + @media (min-width: $tablet-width) { + margin-bottom: 26px; + } + + @media (min-width: $desktop-width) { + margin-bottom: 54px; + } +} + +.tours__link { + display: block; + padding: 10px; + text-decoration: none; + color: $primary-dark-color; + margin: 0 auto; + width: fit-content; + + &:hover { + outline: none; + color: $primary-accent-color; + opacity: 10%; + } + + &:focus { + outline: none; + color: $primary-accent-color; + opacity: 100%; + } + + &:active { + color: $darker-accent-color; + } + + &--disabled { + outline: none; + color: $disabled-color; + opacity: 100%; + } +} + +.tours__link span { + font-size: 14px; + font-weight: 700; + line-height: 14px; + letter-spacing: 0.04em; + display: flex; + align-items: flex-start; + justify-content: center; + text-transform: uppercase; + width: auto; + + @media (min-width: $tablet-width) { + font-size: 16px; + line-height: 16px; + } + + &::after { + display: block; + content: ""; + width: 9px; + height: 14px; + mask-image: url("/__spritemap#sprite-readmore-view"); + mask-position: center; + mask-repeat: no-repeat; + background-color: $primary-dark-color; + margin-left: 11px; + margin-right: -2px; + + @media (min-width: $tablet-width) { + margin-left: 12px; + } + } +} + +.tours__link:hover span::after { + background-color: $primary-accent-color; +} + +.tours__link:focus span::after { + background-color: $primary-accent-color; +} + +.tours__link:active span::after { + background-color: $darker-accent-color; +} + +.tours__link--disabled span::after { + background-color: $disabled-color; +} diff --git a/source/sass/blocks/trainer-card.scss b/source/sass/blocks/trainer-card.scss new file mode 100644 index 000000000..9b8849dbc --- /dev/null +++ b/source/sass/blocks/trainer-card.scss @@ -0,0 +1,99 @@ +.trainer-card__photo, +.trainer-card__photo img { + display: block; + margin: 0; + padding: 0; + width: 100%; +} + +.trainer-card__photo img { + object-fit: cover; +} + +.trainer-card__photo { + margin-bottom: 16px; +} + +.trainer-card h4 { + font-size: 14px; + font-weight: 700; + line-height: 16px; + margin: 0; + padding: 0; + white-space: normal; + word-break: break-word; + overflow-wrap: anywhere; + margin-right: auto; + margin-bottom: 14px; +} + +.trainer-card p { + margin: 0; + padding: 0; + font-size: 12px; + font-weight: 400; + line-height: 16px; + text-align: left; + text-underline-position: from-font; + text-decoration-skip-ink: none; + margin-bottom: auto; +} + +.trainer-link { + display: block; + width: 24px; + height: 24px; + border: 1px solid rgba(45, 56, 63, 0.3); + margin-top: -1px; + outline: none; + + &:hover { + border: 1px solid $primary-dark-color; + background-color: $primary-light-color; + } + + &:focus { + border: 1px solid $primary-light-color; + background-color: $primary-light-color; + } + + &:active { + border: 1px solid $primary-accent-color; + background-color: $primary-accent-color; + } + + &--disabled { + border: 1px solid $primary-dark-color; + background-color: $primary-light-color; + opacity: 30%; + } +} + +.trainer-link__logo { + display: block; + width: 100%; + height: 100%; + + mask-image: url("/__spritemap#sprite-vk-view"); + mask-position: center; + mask-repeat: no-repeat; + mask-size: 14px; + background-color: $primary-dark-color; + + &:hover { + background-color: $primary-dark-color; + } + + &:focus { + background-color: $primary-dark-color; + } + + &:active { + background-color: $primary-light-color; + } +} + +.trainer-link--disabled .trainer-link__logo { + background-color: $primary-dark-color; + opacity: 30%; +} diff --git a/source/sass/blocks/training-swiper.scss b/source/sass/blocks/training-swiper.scss new file mode 100644 index 000000000..2d673c9dd --- /dev/null +++ b/source/sass/blocks/training-swiper.scss @@ -0,0 +1,61 @@ +.training-swiper { + display: flex; + flex-flow: row wrap; + row-gap: 22px; + overflow: hidden; + margin-bottom: 26px; + + @media (min-width: $tablet-width) { + display: flex; + flex-flow: row wrap; + column-gap: 4px; + row-gap: 30px; + margin-bottom: 27px; + } + + @media (min-width: $desktop-width) { + row-gap: 16px; + margin-bottom: 58px; + } +} + +.training-swiper__title { + margin: 0; + padding: 0; + font-size: 22px; + font-weight: 800; + line-height: 22px; + + @media (min-width: $tablet-width) { + font-size: 25px; + font-weight: 800; + line-height: 25px; + margin-right: auto; + margin-top: 3px; + } + + + @media (min-width: $desktop-width) { + font-size: 35px; + font-weight: 800; + line-height: 35px; + margin-top: 4px; + } +} + +.training-swiper .swiper-wrapper { + margin: 0; + padding: 0; + list-style: none; + align-items: stretch; +} + +.training-swiper .swiper-slide { + padding: 14px; + border: 1px solid rgba(2, 102, 193, 0.1); + display: flex; + flex-flow: row wrap; + align-content: flex-start; + background-color: $primary-light-color; + height: auto; +} diff --git a/source/sass/blocks/training.scss b/source/sass/blocks/training.scss new file mode 100644 index 000000000..5a9da5103 --- /dev/null +++ b/source/sass/blocks/training.scss @@ -0,0 +1,269 @@ +.training { + padding: 37px 15px 21px; + margin: 0 auto; + + @media (min-width: $tablet-width) { + padding: 59px 45px 42px; + } + + @media (min-width: $desktop-width) { + padding: 62px 120px 65px; + max-width: $desktop-width; + + } +} + +.training__title { + @include section-title; + + margin: 0; + padding: 0; + margin-bottom: 33px; + + @media (min-width: $tablet-width) { + margin-bottom: 34px; + + &::after { + bottom: 0; + } + } + + @media (min-width: $desktop-width) { + margin-bottom: 32px; + + &::after { + bottom: -3px; + } + } +} + +.training > p { + margin: 0; + padding: 0; + font-size: 14px; + font-weight: 400; + line-height: 20px; + margin-bottom: 10px; + + + @media (min-width: $tablet-width) { + font-size: 16px; + line-height: 24px; + max-width: $tablet-width; + } + + @media (min-width: $desktop-width) { + max-width: 820px; + } +} + +.training > p:last-of-type { + margin-bottom: 29px; + + @media (min-width: $tablet-width) { + margin-bottom: 27px; + } + + @media (min-width: $desktop-width) { + margin-bottom: 58px; + } +} + +.training__subtitle { + font-size: 16px; + font-weight: 700; + line-height: 16px; + margin: 0; + padding: 0; + margin-bottom: 24px; + + @media (min-width: $tablet-width) { + font-size: 18px; + line-height: 18px; + max-width: $tablet-width; + margin: 0 auto; + margin-bottom: 100px; + } + + @media (min-width: $desktop-width) { + font-size: 21px; + line-height: 21px; + margin-bottom: 27px; + max-width: 100%; + } +} + +.training__list { + margin: 0; + padding: 0; + list-style: none; + height: auto; + position: relative; + padding-left: 30px; + display: flex; + flex-direction: column; + gap: 25px; + margin-top: -1px; + + @media (min-width: $tablet-width) { + display: grid; + gap: 104px 84px; + margin: 0 auto; + grid-template-columns: auto auto; + grid-template-rows: auto auto; + padding-left: 0; + max-width: $tablet-width; + } + + @media (min-width: $desktop-width) { + display: flex; + flex-direction: row; + gap: 9px; + max-width: 100%; + } + + &::before { + content: ""; + display: block; + width: 2px; + height: calc(100% - 30px); + background-color: $primary-accent-color; + position: absolute; + left: 6px; + top: 50%; + transform: translateY(-50%); + + @media (min-width: $tablet-width) { + display: none; + } + + @media (min-width: $desktop-width) { + display: block; + width: calc(100% - 20px); + height: 2px; + top: auto; + bottom: -11px; + left: 20px; + } + } +} + +.training__item { + position: relative; + + @media (min-width: $tablet-width) { + &:nth-child(1) { + grid-area: 1/1/2/2; + } + + &:nth-child(2) { + grid-area: 2/1/3/2; + } + + &:nth-child(3) { + grid-area: 2/2/3/3; + } + + &:nth-child(4) { + grid-area: 1/2/2/3; + } + } + + @media (min-width: $desktop-width) { + width: 21%; + + &:nth-child(1) { + margin-left: 10px; + } + + &:nth-child(4) { + width: 37%; + } + } +} + +.training__item::before { + content: ""; + display: block; + width: 14px; + height: 14px; + border-radius: 50%; + background-color: $primary-accent-color; + position: absolute; + left: -30px; + top: 50%; + transform: translateY(calc(-50% + 1px)); + + @media (min-width: $tablet-width) { + display: none; + } + + @media (min-width: $desktop-width) { + display: block; + width: 14px; + height: 14px; + left: 10px; + top: auto; + bottom: -22px; + } +} + +.training__item:nth-child(3)::before { + @media (min-width: $desktop-width) { + left: -9px; + } +} + +.training__item span { + font-size: 12px; + font-weight: 400; + line-height: 18px; + display: flex; + padding-left: 33px; + position: relative; + margin-right: 15px; + + @media (min-width: $tablet-width) { + padding-left: 35px; + font-size: 14px; + line-height: 22px; + } + + @media (min-width: $desktop-width) { + font-size: 16px; + line-height: 24px; + max-width: 230px; + margin-right: 0; + } +} + +.training__item span::before { + content: ""; + display: block; + width: 25px; + height: 25px; + position: absolute; + left: -1px; + top: 1px; + + @media (min-width: $tablet-width) { + left: 0; + top: 2px; + } +} + +.training__item--map span::before { + background: url("/__spritemap#sprite-map-view") no-repeat center/25px; +} + +.training__item--boot span::before { + background: url("/__spritemap#sprite-boot-black-view") no-repeat center/26px; +} + +.training__item--tree span::before { + background: url("/__spritemap#sprite-tree-view") no-repeat center/26px; +} + +.training__item--peak span::before { + background: url("/__spritemap#sprite-peak-view") no-repeat center/26px; +} diff --git a/source/sass/fonts.scss b/source/sass/fonts.scss new file mode 100644 index 000000000..b9fd9f8be --- /dev/null +++ b/source/sass/fonts.scss @@ -0,0 +1,6 @@ +/* @include font-face('Montserrat', 300, normal, url("../fonts/Montserrat-VariableFont_wght.woff") format("woff")); +@include font-face('Montserrat', 400, normal, url("../fonts/Montserrat-VariableFont_wght.woff") format("woff")); +@include font-face('Montserrat', 500, normal, url("../fonts/Montserrat-VariableFont_wght.woff") format("woff")); +@include font-face('Montserrat', 700, normal, url("../fonts/Montserrat-VariableFont_wght.woff") format("woff")); +@include font-face('Montserrat', 800, normal, url("../fonts/Montserrat-VariableFont_wght.woff") format("woff")); */ +@include font-face("Montserrat", 300 800, normal, url("../fonts/Montserrat-VariableFont_wght.woff2") format("woff2")); diff --git a/source/sass/global.scss b/source/sass/global.scss new file mode 100644 index 000000000..97a5736c0 --- /dev/null +++ b/source/sass/global.scss @@ -0,0 +1,38 @@ +*, +*::before, +*::after { + box-sizing: border-box; +} + +.page { + width: 100%; + height: 100%; + overflow-x: hidden; +} + +.body { + width: 100%; + margin: 0; + padding: 0; + min-width: 320px; + height: fit-content; + min-height: 100%; + + /* display: grid; + grid-template-columns: 100%; + grid-template-rows: auto 1fr auto; */ + font-family: $primary-font; + color: $primary-dark-color; + overflow-x: hidden; +} + +.visually-hidden { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + border: 0; + clip: rect(0 0 0 0); + overflow: hidden; + padding: 0; +} diff --git a/source/sass/mixins.scss b/source/sass/mixins.scss new file mode 100644 index 000000000..184d84b3d --- /dev/null +++ b/source/sass/mixins.scss @@ -0,0 +1,57 @@ +@mixin font-face($font-family, $font-weight, $font-style, $font-src) { + @font-face { + font-family: $font-family; + font-weight: $font-weight; + font-style: $font-style; + src: $font-src; + font-display: swap; + } +} + +@mixin section-title { + margin: 0; + padding: 0; + font-family: $primary-font; + font-size: 22px; + font-weight: 800; + line-height: 22px; + color: $primary-dark-color; + z-index: 1; + position: relative; + display: flex; + + &::after { + content: attr(data-content); + font-family: $primary-font; + font-size: 26px; + font-weight: 800; + line-height: 26px; + color: $primary-dark-color; + opacity: 0.03; + z-index: 0; + position: absolute; + bottom: 12px; + left: 0; + white-space: nowrap; + } + + @media (min-width: $tablet-width) { + font-size: 25px; + line-height: 25px; + + &::after { + font-size: 40px; + line-height: 40px; + } + } + + @media (min-width: $desktop-width) { + font-size: 35px; + line-height: 35px; + + &::after { + font-size: 55px; + line-height: 55px; + } + } +} diff --git a/source/sass/style.scss b/source/sass/style.scss index 96467369f..4e7a06ab6 100644 --- a/source/sass/style.scss +++ b/source/sass/style.scss @@ -2,3 +2,30 @@ // --------------------------------- @import "vendor/normalize"; +@import "variables"; +@import "global"; +@import "mixins"; +@import "fonts"; +@import "blocks/header"; +@import "blocks/nav-list"; +@import "blocks/main"; +@import "blocks/hero"; +@import "blocks/hero-swiper"; +@import "blocks/tours"; +@import "blocks/tours-swiper"; +@import "blocks/swiper-button"; +@import "blocks/tour"; +@import "blocks/training"; +@import "blocks/training-swiper"; +@import "blocks/trainer-card"; +@import "blocks/about"; +@import "blocks/reviews"; +@import "blocks/reviews-swiper"; +@import "blocks/adv"; +@import "blocks/adv-swiper"; +@import "blocks/gallery"; +@import "blocks/gallery-swiper"; +@import "blocks/form-section"; +@import "blocks/form"; +@import "blocks/contacts"; +@import "blocks/footer"; diff --git a/source/sass/variables.scss b/source/sass/variables.scss new file mode 100644 index 000000000..003d8a8d1 --- /dev/null +++ b/source/sass/variables.scss @@ -0,0 +1,19 @@ +/* брейкпоинты */ +$mobile-width: 320px; +$tablet-width: 768px; +$desktop-width: 1440px; + +/* цвета */ +$primary-dark-color: #2d383f; +$primary-light-color: #ffffff; +$primary-accent-color: #0266c1; +$darker-accent-color: #1c3374; +$disabled-color: #999999; + + +/* градиенты */ +$slider-linear: linear-gradient(112.1deg, rgba(15, 20, 41, 0.33) 17.23%, rgba(15, 20, 41, 0) 94.93%); +$tour-linear: linear-gradient(0deg, rgba(0, 0, 0, 0.6) 22.3%, rgba(0, 0, 0, 0) 60.32%); + +/* шрифты */ +$primary-font: "Montserrat", "Arial", sans-serif; diff --git a/source/site.webmanifest b/source/site.webmanifest new file mode 100644 index 000000000..ccf313a3e --- /dev/null +++ b/source/site.webmanifest @@ -0,0 +1,21 @@ +{ + "name": "MyWebSite", + "short_name": "MySite", + "icons": [ + { + "src": "/web-app-manifest-192x192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable" + }, + { + "src": "/web-app-manifest-512x512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} \ No newline at end of file diff --git a/source/web-app-manifest-192x192.png b/source/web-app-manifest-192x192.png new file mode 100644 index 000000000..7f01e309c Binary files /dev/null and b/source/web-app-manifest-192x192.png differ diff --git a/source/web-app-manifest-192x192.webp b/source/web-app-manifest-192x192.webp new file mode 100644 index 000000000..8fc53ece2 Binary files /dev/null and b/source/web-app-manifest-192x192.webp differ diff --git a/source/web-app-manifest-512x512.png b/source/web-app-manifest-512x512.png new file mode 100644 index 000000000..71df1e7bf Binary files /dev/null and b/source/web-app-manifest-512x512.png differ diff --git a/source/web-app-manifest-512x512.webp b/source/web-app-manifest-512x512.webp new file mode 100644 index 000000000..87edfc108 Binary files /dev/null and b/source/web-app-manifest-512x512.webp differ