// Photos Page .photos { // Intro Section &__intro { overflow: hidden; margin-bottom: 72px; color: $color-text; text-align: center; // 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: 52%; transform: translateY(-50%); margin-bottom: 0; } } &__bar { display: flex; justify-content: center; align-items: center; height: 72px; margin: 20px 0; padding: 0 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 2px; } } img { color: #fff; margin-right: 12px; @include bp (sm) { margin-right: 16px; } } .select { position: relative; display: flex; align-items: center; padding: 8px 16px; font-weight: 900; border-radius: 100vh; transition: background-color 0.2s; select { opacity: 0; position: absolute; top: 0; left: 0; width: 100%; height: 100%; cursor: pointer; } &:hover { background-color: $color-primary-tertiary20; } } } // Actions &__actions { display: flex; align-items: center; justify-content: center; @include bp (sm) { position: absolute; top: 50%; right: 56px; 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; } } // Reset link .reset { transition: color 0.3s; &:hover { color: $color-tertiary; } } // Shuffle button .shuffle { display: flex; align-items: center; justify-content: center; height: 32px; background-color: $color-tertiary; padding: 0 16px; border-radius: 50vh; margin-left: 16px; } } } // Content Block &__content { background-color: $color-tertiary; width: 100%; // margin: 0 12px; padding: 64px 0; } // Photo Grid &__grid { grid-column: 2 / span 22; display: grid; grid-template-columns: repeat(4, 1fr); grid-gap: 40px; .photo { overflow: hidden; border-radius: 6px; a { position: relative; display: block; height: 100%; & > picture { width: 100%; height: 100%; img { display: block; width: 100%; height: 100%; object-fit: cover; } } } .post-card { position: absolute; bottom: 0; right: 0; } // Photo sizes &:nth-child(11n+1) { grid-column: 1 / span 2; } &:nth-child(11n+8) { grid-column: 3 / span 2; } &:nth-child(11n) { grid-column: 1 / span 4; } } } /** * Controls */ .controls { grid-column: 1 / span var(--columns); display: grid; margin: 48px auto; align-items: center; justify-content: center; @include bp (sm) { --columns: 22; grid-column: 2 / span var(--columns); justify-content: space-between; margin: 80px 0; } // Updated Date &__date { grid-column: span var(--columns); grid-row: 2; font-size: rem(18px); color: rgba($color-gray, 0.6); font-weight: 300; text-align: center; margin: 24px 0 48px; @include bp (sm) { grid-column: span 4; grid-row: 1; text-align: left; margin: 0; } } // See More Photos .button { grid-column: span var(--columns); grid-row: 1; margin: 0 auto; height: 56px; background-color: #F2D3B8; font-size: rem(16px); @include bp (sm) { grid-column: 6 / span 12; height: 72px; padding: 0 40px; font-size: rem(18px); } } // Photo Count &__count { grid-column: span var(--columns); grid-row: 3; text-align: center; color: rgba($color-gray, 0.3); font-family: $font-serif; font-size: rem(64px); line-height: 1; letter-spacing: -0.05em; @include bp (sm) { grid-column: 16 / span 7; grid-row: 1; margin-left: auto; text-align: right; } } } // Modules .grid-modules { grid-column: 1 / span var(--columns); margin-bottom: 0; @include bp (sm) { grid-column: 2 / span 22; } } }