diff --git a/src/components/BottomWave.vue b/src/components/Wave.vue similarity index 61% rename from src/components/BottomWave.vue rename to src/components/Wave.vue index 54eabedf3aec8bc5c881c3c87df51db0707e5d3b..6140c2f2fb286eed574255537e6e7345ab190d1b 100644 --- a/src/components/BottomWave.vue +++ b/src/components/Wave.vue @@ -1,30 +1,55 @@ <template> - <div class="wave-container"> + <div class="wave-container dark" :class="{ bottom }"> <div class="bg"> <div class="bg-mask"></div> - <div class="wave-divider"> + <div v-if="top" class="wave-divider"> + <svg viewBox="0 70 500 60" preserveAspectRatio="none"> + <rect x="0" y="0" width="500" height="500" /> + <path d="M0,100 C150,200 350,0 500,100 L500,00 L0,0 Z" /> + </svg> + </div> + <div v-if="bottom" class="wave-divider bottom"> <svg viewBox="0 70 500 60" preserveAspectRatio="none"> <rect x="0" y="0" width="500" height="500" /> <path d="M0,100 C150,200 350,0 500,100 L500,00 L0,0 Z" /> </svg> </div> </div> - <slot></slot> </div> </template> +<script> +export default { + name: "Wave", + props: { + top: { + type: Boolean, + default: true + }, + bottom: { + type: Boolean, + default: true + } + } +}; +</script> <style lang="scss" scoped> .wave-container { position: relative; padding-top: 10rem; + padding-bottom: 3rem; z-index: 1; + &.bottom { + padding-bottom: 10rem; + } + .bg { position: absolute; overflow: auto; background-image: url(~@/assets/images/tech-bg.jpg); background-attachment: fixed; - background-position-y: 150px; + background-position-y: 100px; background-size: cover; background-repeat: no-repeat; @@ -42,20 +67,25 @@ background-image: linear-gradient( to bottom, $gradient-alpha -20%, - $bottom-bg 90% + $bottom-bg 150% ); } .wave-divider { - --divider-height: 4rem; + $divider-height: 4rem; position: relative; - height: var(--divider-height); + height: $divider-height; width: 100%; float: left; z-index: 0; position: relative; + &.bottom { + top: calc(100% - 2 *#{$divider-height}); + transform: scale(-1); + } + svg { width: 100%; height: 100%; diff --git a/src/components/WhoWeServe.vue b/src/components/WhoWeServe.vue index 634058637305824e192b9fcd1d271e6d7d4c4baf..e31e7c8e2fbcf3309d19c9ba82edb5d6acff9c42 100644 --- a/src/components/WhoWeServe.vue +++ b/src/components/WhoWeServe.vue @@ -65,8 +65,6 @@ export default { </script> <style lang="scss" scoped> .who-we-serve { - padding-bottom: 3rem; - .container { max-width: 1080px; } diff --git a/src/views/Home.vue b/src/views/Home.vue index 1776580b6d81c754db0590fc7fb2e723e2675dcf..b8bd50a9052b2b43dc151f2e85d24c0c5f3ad01b 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -7,9 +7,9 @@ <IntroVideo /> <ProductsSummary /> <ServicesSummary /> - <BottomWave> + <Wave :bottom="false"> <WhoWeServe /> - </BottomWave> + </Wave> </div> </template> @@ -19,7 +19,7 @@ import IntroVideo from "@/components/IntroVideo"; import ServicesSummary from "@/components/ServicesSummary"; import ProductsSummary from "@/components/ProductsSummary"; import WhoWeServe from "@/components/WhoWeServe"; -import BottomWave from "@/components/BottomWave"; +import Wave from "@/components/Wave"; export default { name: "Home", @@ -28,7 +28,7 @@ export default { IntroVideo, ServicesSummary, ProductsSummary, - BottomWave, + Wave, WhoWeServe } }; diff --git a/src/views/WhoWeAre.vue b/src/views/WhoWeAre.vue index 7af58115d45d2782b164f1109b402dd32dffdb01..1c2f34735ad1fdc8fd155adc93def4e6e00e584c 100644 --- a/src/views/WhoWeAre.vue +++ b/src/views/WhoWeAre.vue @@ -37,7 +37,7 @@ </div> </div> </div> - <BottomWave class="values-container dark"> + <Wave class="values-container dark"> <h2>VALUE STATEMENTS</h2> <p class="section-description mx-auto px-5"> Our values were determined through a working session that was @@ -85,7 +85,7 @@ </div> </div> </div> - </BottomWave> + </Wave> <div class="container principles-container"> <h2>CORE PRINCIPLES</h2> <div class="row"> @@ -106,11 +106,11 @@ <script> import PageHeader from "@/components/PageHeader"; import QuotesLogo from "@/assets/images/icons/Quotes.svg"; -import BottomWave from "@/components/BottomWave"; +import Wave from "@/components/Wave"; export default { name: "WhoWeAre", - components: { PageHeader, QuotesLogo, BottomWave }, + components: { PageHeader, QuotesLogo, Wave }, data: function() { return { principles: [