diff --git a/Anastasiya Santalova/flexbox/hw2.css b/Anastasiya Santalova/flexbox/hw2.css
new file mode 100644
index 0000000..5648de6
--- /dev/null
+++ b/Anastasiya Santalova/flexbox/hw2.css
@@ -0,0 +1,359 @@
+body {
+ box-sizing: border-box;
+ width: 100%;
+ height: 100%;
+
+ min-width: 320px;
+ min-height: 320px;
+
+ margin: 0;
+ padding: 40px 20px;
+
+ font-size: 15pt;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff;
+
+ background-image: url(img/main-background.png);
+ background-size: cover;
+ background-repeat: no-repeat;
+ background-attachment: fixed;
+ background-position: center center;
+}
+
+.widget {
+ width: 100%;
+ height: 100%;
+ position: absolute;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+
+ display: flex;
+ flex-flow: row wrap;
+ align-content: center;
+ justify-content: center;
+
+ overflow: auto;
+}
+
+.row {
+ display: flex;
+ flex-wrap: wrap;
+ max-width: 830px;
+ align-content: center;
+ justify-content: center;
+}
+
+.weather {
+ display: flex;
+ align-content: center;
+ align-items: center;
+
+ width: 274px;
+ height: 274px;
+ min-width: 250px;
+}
+
+.weather-skyblue {
+ background-color: #06b3db;
+}
+
+.weather-green {
+ background-color: #4ed486;
+}
+
+.weather-blue {
+ background-color: #6139f6;
+}
+
+.weather-orange {
+ background-color: #e3b63d;
+}
+
+.weather-pink {
+ background-color: #dc3d66;
+}
+
+.weather-purple {
+ background-color: #db51e2;
+}
+
+.weather__block_visible {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+ align-items: center;
+
+ box-sizing: border-box;
+
+ width: 100%;
+ height: 100%;
+ padding-top: 20%;
+ padding-bottom: 15%;
+}
+
+.weather__image_large {
+ width: 110px;
+}
+
+.weather__city {
+ display: inline-block;
+ box-sizing: border-box;
+ padding: 0 5%;
+}
+
+/* Invisible elements before hover */
+
+.weather__block_invisible {
+ display: none;
+ position: relative;
+}
+
+.weather__period-info {
+ display: flex;
+ flex-direction: row;
+ justify-content: space-around;
+ align-items: center;
+
+ padding: 0 30px;
+
+ width: 100%;
+ height: 100%;
+}
+
+.weather__background_transparent {
+ position: absolute;
+ box-sizing: border-box;
+
+ width: 100%;
+ height: 100%;
+
+ background: radial-gradient(at center, #7c7c7c, #000000);
+ opacity: 0.25;
+
+ z-index: 1;
+}
+
+.weather__day-info,
+.weather__day-info_invisible {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+ align-items: center;
+
+ box-sizing: border-box;
+
+ width: 20%;
+ height: 65%;
+
+ margin-top: 10px;
+
+ z-index: 2;
+
+ font-size: 12pt;
+}
+
+.weather__day-info_invisible {
+ display: none;
+}
+
+.weather__image_small {
+ width: 30px;
+}
+
+/* Styles for hover */
+
+.weather:hover {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+}
+
+.weather:hover .weather__block_visible {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+
+ padding-top: unset;
+ padding-bottom: unset;
+}
+
+.weather:hover .weather__image_large {
+ display: flex;
+
+ width: 85px;
+}
+
+.weather:hover .weather__city {
+ display: none;
+}
+
+.weather:hover .weather__block_invisible {
+ display: flex;
+
+ box-sizing: border-box;
+
+ width: 100%;
+ height: 90%;
+}
+
+
+/* Media */
+@media (min-width: 1300px) {
+ body {
+ font-size: 1.5rem;
+ }
+
+ .weather {
+ width: 350px;
+ height: 350px;
+ }
+
+ .row {
+ max-width: 1050px;
+ }
+
+ .weather__image_large {
+ width: 140px;
+ }
+
+ .weather__day-info_invisible {
+ display: flex;
+ }
+
+ .weather__day-info,
+ .weather__day-info_invisible {
+ width: 10%;
+ height: 60%;
+ }
+
+ .weather:hover .weather__image_large {
+ display: flex;
+
+ width: 105px;
+ }
+}
+
+@media (min-width: 1600px) {
+ body {
+ font-size: 1.8rem;
+ }
+
+ .weather {
+ width: 400px;
+ height: 400px;
+ }
+
+ .row {
+ max-width: 1200px;
+ }
+
+ .weather__image_large {
+ width: 160px;
+ }
+
+ .weather__day-info,
+ .weather__day-info_invisible {
+ height: 55%;
+
+ font-size: 13pt;
+ }
+
+ .weather:hover .weather__image_large {
+ display: flex;
+
+ width: 115px;
+ }
+}
+
+@media (min-width: 2000px) {
+ body {
+ font-size: 2rem;
+ }
+
+ .weather {
+ width: 450px;
+ height: 450px;
+ }
+
+ .row {
+ max-width: 1500px;
+ }
+
+ .weather__image_large {
+ width: 180px;
+ }
+
+ .weather__day-info,
+ .weather__day-info_invisible {
+ height: 53%;
+
+ font-size: 14pt;
+ }
+
+ .weather:hover .weather__image_large {
+ display: flex;
+
+ width: 130px;
+ }
+}
+
+@media (max-width: 768px) {
+ body {
+ font-size: 14pt;
+ }
+
+ .row {
+ max-width: 650px;
+ }
+
+ .weather__image_small {
+ width: 28px;
+ }
+}
+
+@media (max-width: 550px) {
+ .widget {
+ position: relative;
+ }
+}
+
+@media (max-width: 480px) {
+ .row {
+ max-width: 300px;
+ }
+
+}
+
+@media (max-width: 320px) {
+ .row {
+ max-width: 250px;
+ }
+
+ .weather {
+ width: 250px;
+ height: 250px;
+ }
+}
+
+@media (max-width: 840px) and (orientation: landscape) {
+ .widget {
+ position: relative;
+ }
+}
+
+@media (max-width: 568px) and (orientation: landscape) {
+ .row {
+ max-width: 500px;
+ }
+
+ .weather {
+ width: 250px;
+ height: 250px;
+ }
+}
\ No newline at end of file
diff --git a/Anastasiya Santalova/flexbox/hw2.html b/Anastasiya Santalova/flexbox/hw2.html
new file mode 100644
index 0000000..48bf348
--- /dev/null
+++ b/Anastasiya Santalova/flexbox/hw2.html
@@ -0,0 +1,389 @@
+
+
+
+
+
+
+
+ Cubes / FlexBox / Santalova
+
+
+
+
+
+
+
+
+
+
+
+
+

+
САНКТ-ПЕТЕРБУРГ / 22°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
МОСКВА / 26°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
ЛОНДОН / 20°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
ПАРИЖ / 27°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
НЬЮ-ЙОРК / 19°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
ПРАГА / 20°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Anastasiya Santalova/flexbox/img/cloudy.png b/Anastasiya Santalova/flexbox/img/cloudy.png
new file mode 100644
index 0000000..3fe3dd6
Binary files /dev/null and b/Anastasiya Santalova/flexbox/img/cloudy.png differ
diff --git a/Anastasiya Santalova/flexbox/img/fog.png b/Anastasiya Santalova/flexbox/img/fog.png
new file mode 100644
index 0000000..24716a0
Binary files /dev/null and b/Anastasiya Santalova/flexbox/img/fog.png differ
diff --git a/Anastasiya Santalova/flexbox/img/main-background.png b/Anastasiya Santalova/flexbox/img/main-background.png
new file mode 100644
index 0000000..142e770
Binary files /dev/null and b/Anastasiya Santalova/flexbox/img/main-background.png differ
diff --git a/Anastasiya Santalova/flexbox/img/night.png b/Anastasiya Santalova/flexbox/img/night.png
new file mode 100644
index 0000000..7c353df
Binary files /dev/null and b/Anastasiya Santalova/flexbox/img/night.png differ
diff --git a/Anastasiya Santalova/flexbox/img/rain.png b/Anastasiya Santalova/flexbox/img/rain.png
new file mode 100644
index 0000000..ba0233d
Binary files /dev/null and b/Anastasiya Santalova/flexbox/img/rain.png differ
diff --git a/Anastasiya Santalova/flexbox/img/sun_cloudy.png b/Anastasiya Santalova/flexbox/img/sun_cloudy.png
new file mode 100644
index 0000000..5067896
Binary files /dev/null and b/Anastasiya Santalova/flexbox/img/sun_cloudy.png differ
diff --git a/Anastasiya Santalova/flexbox/img/sun_rain.png b/Anastasiya Santalova/flexbox/img/sun_rain.png
new file mode 100644
index 0000000..c5dfa9f
Binary files /dev/null and b/Anastasiya Santalova/flexbox/img/sun_rain.png differ
diff --git a/Anastasiya Santalova/grid/SCSS/_mixins.scss b/Anastasiya Santalova/grid/SCSS/_mixins.scss
new file mode 100644
index 0000000..aad0e4c
--- /dev/null
+++ b/Anastasiya Santalova/grid/SCSS/_mixins.scss
@@ -0,0 +1,73 @@
+@mixin gridThreeColumns ($weatherSize: 274px) {
+ display: grid;
+
+ grid-template-areas:
+ ". . . . ."
+ ". wskyblue wgreen wblue ."
+ ". worange wpink wpurple ."
+ ". . . . .";
+
+ grid-template-columns: 1fr repeat(3, $weatherSize) 1fr;
+ grid-template-rows: 1fr repeat(2, $weatherSize) 1fr;
+}
+
+@mixin gridTwoColumns ($weatherSize: 250px) {
+ display: grid;
+
+ grid-template-areas:
+ ". . . ."
+ ". wskyblue wgreen ."
+ ". wblue worange ."
+ ". wpink wpurple ."
+ ". . . .";
+
+ grid-template-columns: 1fr repeat(2, $weatherSize) 1fr;
+ grid-template-rows: 1fr repeat(3, $weatherSize) 1fr;
+}
+
+@mixin gridOneColumn ($weatherSize: 250px) {
+ display: grid;
+
+ grid-template-areas:
+ ". . ."
+ ". wskyblue ."
+ ". wgreen ."
+ ". wblue ."
+ ". worange ."
+ ". wpink ."
+ ". wpurple ."
+ ". . .";
+
+ grid-template-columns: 1fr $weatherSize 1fr;
+ grid-template-rows: 1fr repeat(6, $weatherSize) 1fr;
+}
+
+@mixin fullContainer {
+ width: 100%;
+ height: 100%;
+}
+
+@mixin font ($size, $weight: 600) {
+ font-size: $size;
+ font-family: "Avenir Next", monospace;
+ font-weight: $weight;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff;
+}
+
+@mixin dayInfo ($width: 20%, $height: 65%) {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+ align-items: center;
+
+ box-sizing: border-box;
+
+ width: $width;
+ height: $height;
+
+ margin-top: 10px;
+
+ z-index: 2;
+}
\ No newline at end of file
diff --git a/Anastasiya Santalova/grid/SCSS/_variables.scss b/Anastasiya Santalova/grid/SCSS/_variables.scss
new file mode 100644
index 0000000..dfb509c
--- /dev/null
+++ b/Anastasiya Santalova/grid/SCSS/_variables.scss
@@ -0,0 +1,8 @@
+// Colors for weather blocks
+
+$skyBlue: #06b3db;
+$green: #4ed486;
+$blue: #6139f6;
+$orange: #e3b63d;
+$pink: #dc3d66;
+$purple: #db51e2;
\ No newline at end of file
diff --git a/Anastasiya Santalova/grid/SCSS/hw2_grid.scss b/Anastasiya Santalova/grid/SCSS/hw2_grid.scss
new file mode 100644
index 0000000..06ea5f8
--- /dev/null
+++ b/Anastasiya Santalova/grid/SCSS/hw2_grid.scss
@@ -0,0 +1,317 @@
+@import "_variables";
+@import "_mixins";
+
+
+// CSS Styles
+
+html {
+ @include fullContainer;
+}
+
+body {
+ box-sizing: border-box;
+
+ @include fullContainer;
+
+ min-width: 320px;
+ min-height: 320px;
+
+ margin: 0;
+ padding: 30px;
+
+ @include font(15pt, 600);
+
+ background-image: url(img/main-background.png);
+ background-size: cover;
+ background-repeat: no-repeat;
+ background-attachment: fixed;
+ background-position: center center;
+}
+
+.widget {
+ @include fullContainer;
+
+ @include gridThreeColumns();
+}
+
+.weather {
+ @include fullContainer;
+
+ display: flex;
+ align-content: center;
+ align-items: center;
+
+ &-skyblue {
+ grid-area: wskyblue;
+
+ background-color: $skyBlue;
+ }
+
+ &-green {
+ grid-area: wgreen;
+
+ background-color: $green;
+ }
+
+ &-blue {
+ grid-area: wblue;
+
+ background-color: $blue;
+ }
+
+ &-orange {
+ grid-area: worange;
+
+ background-color: $orange;
+ }
+
+ &-pink {
+ grid-area: wpink;
+
+ background-color: $pink;
+ }
+
+ &-purple {
+ grid-area: wpurple;
+
+ background-color: $purple;
+ }
+}
+
+
+// Visible elements before hover
+
+.weather__block_visible {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+ align-items: center;
+
+ box-sizing: border-box;
+
+ @include fullContainer;
+ padding-top: 20%;
+ padding-bottom: 15%;
+
+ .weather__image_large {
+ width: 110px;
+ }
+
+ .weather__city {
+ display: inline-block;
+ box-sizing: border-box;
+ padding: 0 5%;
+ }
+}
+
+// Invisible elements before hover
+
+.weather__block_invisible {
+ display: none;
+ position: relative;
+
+ .weather__background_transparent {
+ position: absolute;
+ box-sizing: border-box;
+
+ @include fullContainer;
+
+ background: radial-gradient(at center, #7c7c7c, #000000);
+ opacity: 0.25;
+
+ z-index: 1;
+ }
+
+ .weather__period-info {
+ display: flex;
+ flex-direction: row;
+ justify-content: space-around;
+ align-items: center;
+
+ padding: 0 30px;
+
+ @include fullContainer;
+
+ .weather__day-info,
+ .weather__day-info_invisible {
+ @include dayInfo();
+
+ @include font(12pt, 600);
+
+ .weather__image_small {
+ width: 30px;
+ }
+ }
+
+ .weather__day-info_invisible {
+ display: none;
+ }
+ }
+}
+
+// Styles for hover
+
+.weather:hover {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+
+ .weather__block_visible {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+
+ padding-top: unset;
+ padding-bottom: unset;
+
+ .weather__image_large {
+ display: flex;
+
+ width: 85px;
+ }
+
+ .weather__city {
+ display: none;
+ }
+ }
+
+ .weather__block_invisible {
+ display: flex;
+
+ box-sizing: border-box;
+
+ width: 100%;
+ height: 90%;
+ }
+}
+
+
+// Media-queries
+
+@media (min-width: 1300px) {
+ body {
+ @include font(1.5rem, 600);
+ }
+
+ .widget {
+ @include gridThreeColumns(350px);
+ }
+
+ .weather__block_visible {
+ .weather__image_large {
+ width: 140px;
+ }
+ }
+
+ .weather__block_invisible {
+ .weather__period-info {
+ .weather__day-info,
+ .weather__day-info_invisible {
+ @include dayInfo(10%, 60%);
+ }
+ }
+ }
+
+ .weather:hover .weather__image_large {
+ display: flex;
+
+ width: 105px;
+ }
+}
+
+@media (min-width: 1600px) {
+ body {
+ @include font(1.8rem);
+ }
+
+ .widget {
+ @include gridThreeColumns(400px);
+ }
+
+ .weather__block_visible {
+ .weather__image_large {
+ width: 160px;
+ }
+ }
+
+ .weather__block_invisible {
+ .weather__period-info {
+ .weather__day-info,
+ .weather__day-info_invisible {
+ @include dayInfo(10%, 55%);
+
+ @include font(13pt);
+ }
+ }
+ }
+
+ .weather:hover .weather__image_large {
+ display: flex;
+
+ width: 115px;
+ }
+}
+
+@media (min-width: 2000px) {
+ body {
+ @include font(2rem);
+ }
+
+ .widget {
+ @include gridThreeColumns(450px);
+ }
+
+ .weather__block_visible {
+ .weather__image_large {
+ width: 180px;
+ }
+ }
+
+ .weather__block_invisible {
+ .weather__period-info {
+ .weather__day-info,
+ .weather__day-info_invisible {
+ @include dayInfo(10%, 53%);
+
+ @include font(14pt);
+ }
+ }
+ }
+
+ .weather:hover .weather__image_large {
+ display: flex;
+
+ width: 130px;
+ }
+}
+
+@media (max-width: 880px) {
+ body {
+ @include font(14pt);
+ }
+
+ .widget {
+ @include gridThreeColumns(250px);
+ }
+
+ .weather__image_small {
+ width: 28px;
+ }
+}
+
+@media (max-width: 815px) {
+ .widget {
+ @include gridTwoColumns();
+ }
+
+ .weather__image_small {
+ width: 28px;
+ }
+}
+
+@media (max-width: 565px) {
+ .widget {
+ @include gridOneColumn();
+ }
+}
\ No newline at end of file
diff --git a/Anastasiya Santalova/grid/hw2.html b/Anastasiya Santalova/grid/hw2.html
new file mode 100644
index 0000000..595b20c
--- /dev/null
+++ b/Anastasiya Santalova/grid/hw2.html
@@ -0,0 +1,385 @@
+
+
+
+
+
+
+
+ Cubes / Grid / Santalova
+
+
+
+
+
+
+
+
+
+
+

+
САНКТ-ПЕТЕРБУРГ / 22°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
МОСКВА / 26°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
ЛОНДОН / 20°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
ПАРИЖ / 27°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
НЬЮ-ЙОРК / 19°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+

+
ПРАГА / 20°
+
+
+
+
+
+
+
+
+
+ пн
+
+ 22°
+
+
+
+ вт
+
+ 20°
+
+
+
+ ср
+
+ 25°
+
+
+
+ чт
+
+ 22°
+
+
+
+ пт
+
+ 20°
+
+
+
+ сб
+
+ 25°
+
+
+
+ вс
+
+ 22°
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Anastasiya Santalova/grid/hw2_grid.css b/Anastasiya Santalova/grid/hw2_grid.css
new file mode 100644
index 0000000..2c6cc6d
--- /dev/null
+++ b/Anastasiya Santalova/grid/hw2_grid.css
@@ -0,0 +1,374 @@
+html {
+ width: 100%;
+ height: 100%; }
+
+body {
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 100%;
+ height: 100%;
+ min-width: 320px;
+ min-height: 320px;
+ margin: 0;
+ padding: 30px;
+ font-size: 15pt;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff;
+ background-image: url(img/main-background.png);
+ background-size: cover;
+ background-repeat: no-repeat;
+ background-attachment: fixed;
+ background-position: center center; }
+
+.widget {
+ width: 100%;
+ height: 100%;
+ display: grid;
+ grid-template-areas: ". . . . ." ". wskyblue wgreen wblue ." ". worange wpink wpurple ." ". . . . .";
+ grid-template-columns: 1fr repeat(3, 274px) 1fr;
+ grid-template-rows: 1fr repeat(2, 274px) 1fr; }
+
+.weather {
+ width: 100%;
+ height: 100%;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -ms-flex-line-pack: center;
+ align-content: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center; }
+ .weather-skyblue {
+ grid-area: wskyblue;
+ background-color: #06b3db; }
+ .weather-green {
+ grid-area: wgreen;
+ background-color: #4ed486; }
+ .weather-blue {
+ grid-area: wblue;
+ background-color: #6139f6; }
+ .weather-orange {
+ grid-area: worange;
+ background-color: #e3b63d; }
+ .weather-pink {
+ grid-area: wpink;
+ background-color: #dc3d66; }
+ .weather-purple {
+ grid-area: wpurple;
+ background-color: #db51e2; }
+
+.weather__block_visible {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 100%;
+ height: 100%;
+ padding-top: 20%;
+ padding-bottom: 15%; }
+ .weather__block_visible .weather__image_large {
+ width: 110px; }
+ .weather__block_visible .weather__city {
+ display: inline-block;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ padding: 0 5%; }
+
+.weather__block_invisible {
+ display: none;
+ position: relative; }
+ .weather__block_invisible .weather__background_transparent {
+ position: absolute;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 100%;
+ height: 100%;
+ background: radial-gradient(at center, #7c7c7c, #000000);
+ opacity: 0.25;
+ z-index: 1; }
+ .weather__block_invisible .weather__period-info {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: horizontal;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: row;
+ flex-direction: row;
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ padding: 0 30px;
+ width: 100%;
+ height: 100%; }
+ .weather__block_invisible .weather__period-info .weather__day-info,
+ .weather__block_invisible .weather__period-info .weather__day-info_invisible {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 20%;
+ height: 65%;
+ margin-top: 10px;
+ z-index: 2;
+ font-size: 12pt;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff; }
+ .weather__block_invisible .weather__period-info .weather__day-info .weather__image_small,
+ .weather__block_invisible .weather__period-info .weather__day-info_invisible .weather__image_small {
+ width: 30px; }
+ .weather__block_invisible .weather__period-info .weather__day-info_invisible {
+ display: none; }
+
+.weather:hover {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between; }
+ .weather:hover .weather__block_visible {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ padding-top: unset;
+ padding-bottom: unset; }
+ .weather:hover .weather__block_visible .weather__image_large {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ width: 85px; }
+ .weather:hover .weather__block_visible .weather__city {
+ display: none; }
+ .weather:hover .weather__block_invisible {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 100%;
+ height: 90%; }
+
+@media (min-width: 1300px) {
+ body {
+ font-size: 1.5rem;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff; }
+
+ .widget {
+ display: grid;
+ grid-template-areas: ". . . . ." ". wskyblue wgreen wblue ." ". worange wpink wpurple ." ". . . . .";
+ grid-template-columns: 1fr repeat(3, 350px) 1fr;
+ grid-template-rows: 1fr repeat(2, 350px) 1fr; }
+
+ .weather__block_visible .weather__image_large {
+ width: 140px; }
+
+ .weather__block_invisible .weather__period-info .weather__day-info,
+ .weather__block_invisible .weather__period-info .weather__day-info_invisible {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 10%;
+ height: 60%;
+ margin-top: 10px;
+ z-index: 2; }
+
+ .weather:hover .weather__image_large {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ width: 105px; } }
+@media (min-width: 1600px) {
+ body {
+ font-size: 1.8rem;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff; }
+
+ .widget {
+ display: grid;
+ grid-template-areas: ". . . . ." ". wskyblue wgreen wblue ." ". worange wpink wpurple ." ". . . . .";
+ grid-template-columns: 1fr repeat(3, 400px) 1fr;
+ grid-template-rows: 1fr repeat(2, 400px) 1fr; }
+
+ .weather__block_visible .weather__image_large {
+ width: 160px; }
+
+ .weather__block_invisible .weather__period-info .weather__day-info,
+ .weather__block_invisible .weather__period-info .weather__day-info_invisible {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 10%;
+ height: 55%;
+ margin-top: 10px;
+ z-index: 2;
+ font-size: 13pt;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff; }
+
+ .weather:hover .weather__image_large {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ width: 115px; } }
+@media (min-width: 2000px) {
+ body {
+ font-size: 2rem;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff; }
+
+ .widget {
+ display: grid;
+ grid-template-areas: ". . . . ." ". wskyblue wgreen wblue ." ". worange wpink wpurple ." ". . . . .";
+ grid-template-columns: 1fr repeat(3, 450px) 1fr;
+ grid-template-rows: 1fr repeat(2, 450px) 1fr; }
+
+ .weather__block_visible .weather__image_large {
+ width: 180px; }
+
+ .weather__block_invisible .weather__period-info .weather__day-info,
+ .weather__block_invisible .weather__period-info .weather__day-info_invisible {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 10%;
+ height: 53%;
+ margin-top: 10px;
+ z-index: 2;
+ font-size: 14pt;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff; }
+
+ .weather:hover .weather__image_large {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ width: 130px; } }
+@media (max-width: 880px) {
+ body {
+ font-size: 14pt;
+ font-family: "Avenir Next", monospace;
+ font-weight: 600;
+ text-transform: uppercase;
+ text-align: center;
+ color: #ffffff; }
+
+ .widget {
+ display: grid;
+ grid-template-areas: ". . . . ." ". wskyblue wgreen wblue ." ". worange wpink wpurple ." ". . . . .";
+ grid-template-columns: 1fr repeat(3, 250px) 1fr;
+ grid-template-rows: 1fr repeat(2, 250px) 1fr; }
+
+ .weather__image_small {
+ width: 28px; } }
+@media (max-width: 815px) {
+ .widget {
+ display: grid;
+ grid-template-areas: ". . . ." ". wskyblue wgreen ." ". wblue worange ." ". wpink wpurple ." ". . . .";
+ grid-template-columns: 1fr repeat(2, 250px) 1fr;
+ grid-template-rows: 1fr repeat(3, 250px) 1fr; }
+
+ .weather__image_small {
+ width: 28px; } }
+@media (max-width: 565px) {
+ .widget {
+ display: grid;
+ grid-template-areas: ". . ." ". wskyblue ." ". wgreen ." ". wblue ." ". worange ." ". wpink ." ". wpurple ." ". . .";
+ grid-template-columns: 1fr 250px 1fr;
+ grid-template-rows: 1fr repeat(6, 250px) 1fr; } }
diff --git a/Anastasiya Santalova/grid/img/cloudy.png b/Anastasiya Santalova/grid/img/cloudy.png
new file mode 100644
index 0000000..3fe3dd6
Binary files /dev/null and b/Anastasiya Santalova/grid/img/cloudy.png differ
diff --git a/Anastasiya Santalova/grid/img/fog.png b/Anastasiya Santalova/grid/img/fog.png
new file mode 100644
index 0000000..24716a0
Binary files /dev/null and b/Anastasiya Santalova/grid/img/fog.png differ
diff --git a/Anastasiya Santalova/grid/img/main-background.png b/Anastasiya Santalova/grid/img/main-background.png
new file mode 100644
index 0000000..142e770
Binary files /dev/null and b/Anastasiya Santalova/grid/img/main-background.png differ
diff --git a/Anastasiya Santalova/grid/img/night.png b/Anastasiya Santalova/grid/img/night.png
new file mode 100644
index 0000000..7c353df
Binary files /dev/null and b/Anastasiya Santalova/grid/img/night.png differ
diff --git a/Anastasiya Santalova/grid/img/rain.png b/Anastasiya Santalova/grid/img/rain.png
new file mode 100644
index 0000000..ba0233d
Binary files /dev/null and b/Anastasiya Santalova/grid/img/rain.png differ
diff --git a/Anastasiya Santalova/grid/img/sun_cloudy.png b/Anastasiya Santalova/grid/img/sun_cloudy.png
new file mode 100644
index 0000000..5067896
Binary files /dev/null and b/Anastasiya Santalova/grid/img/sun_cloudy.png differ
diff --git a/Anastasiya Santalova/grid/img/sun_rain.png b/Anastasiya Santalova/grid/img/sun_rain.png
new file mode 100644
index 0000000..c5dfa9f
Binary files /dev/null and b/Anastasiya Santalova/grid/img/sun_rain.png differ