diff --git a/src/routes/photos.svelte b/src/routes/photos.svelte new file mode 100644 index 0000000..38bcfbf --- /dev/null +++ b/src/routes/photos.svelte @@ -0,0 +1,95 @@ + + + + +
+
+

Houses

+

+ Discover {count.photos} homes
+ from {count.locations} cities + of {count.countries} countries +

+ +
+ Filter photos + +
+
    +
  • +
    + Earth + Worldwide + +
    +
  • +
  • +
    + Sort + Worldwide + +
    +
  • +
+
+ +
+ Reset + +
+
+
+
+ + + diff --git a/src/style/pages/_photos.scss b/src/style/pages/_photos.scss new file mode 100644 index 0000000..6867d60 --- /dev/null +++ b/src/style/pages/_photos.scss @@ -0,0 +1,144 @@ +// Photos Page +.photos { + // Intro Section + &__intro { + color: $color-text; + text-align: center; + overflow: hidden; + padding-bottom: clamp(250px, 27vw, 600px); + + // Title + h1 { + color: $color-secondary; + line-height: 1; + margin-top: -20px; + + @include bp (sm) { + margin-top: -100px; + } + } + // Text + p { + max-width: 350px; + margin: 20px auto 56px; + + @include bp (sm) { + margin: 50px auto 72px; + max-width: 524px; + } + } + } + + // Filter + .filter { + position: relative; + max-width: 982px; + margin: 0 auto; + padding: 0 32px; + + // Span + &__label { + display: block; + color: rgba($color-tertiary, 0.7); + + @include bp (sm) { + position: absolute; + left: 64px; + top: 50%; + transform: translateY(-50%); + margin-bottom: 0; + } + } + + &__bar { + display: flex; + justify-content: center; + align-items: center; + margin: 20px 0; + padding: 20px 22px; + background: $color-primary-darker; + border-radius: 50vh; + + @include bp (sm) { + padding: 28px 32px; + } + + ul { + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: center; + } + li { + display: block; + margin: 8px 10px; + font-size: rem(16px); + color: #fff; + + @include bp (sm) { + margin: 0 16px; + } + } + img { + color: #fff; + margin-right: 12px; + + @include bp (sm) { + margin-right: 16px; + } + } + + .select { + position: relative; + font-weight: 900; + + select { + opacity: 0; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + cursor: pointer; + } + } + } + + // Actions + &__actions { + display: flex; + align-items: center; + justify-content: center; + + @include bp (sm) { + position: absolute; + right: 64px; + top: 50%; + transform: translateY(-50%); + } + + a { + display: block; + text-decoration: none; + color: rgba(#fff, 0.6); + font-size: rem(14px); + font-weight: 900; + line-height: 1; + + img { + display: block; + } + } + .shuffle { + display: flex; + align-items: center; + justify-content: center; + height: 32px; + background-color: $color-tertiary; + padding: 0 16px; + border-radius: 50vh; + margin-left: 16px; + } + } + } +} \ No newline at end of file diff --git a/src/style/style.scss b/src/style/style.scss index 4753ae6..652ddf4 100644 --- a/src/style/style.scss +++ b/src/style/style.scss @@ -21,6 +21,7 @@ // Pages @import "pages/homepage"; +@import "pages/photos"; // Modules @import "modules/globe"; diff --git a/static/images/icons/shuffle.svg b/static/images/icons/shuffle.svg new file mode 100644 index 0000000..b5815b6 --- /dev/null +++ b/static/images/icons/shuffle.svg @@ -0,0 +1,3 @@ + + + diff --git a/static/images/icons/sort.svg b/static/images/icons/sort.svg new file mode 100644 index 0000000..f188fa8 --- /dev/null +++ b/static/images/icons/sort.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file