@import "./variables"; @import "./experimentation-page.scss"; * { margin: 0; line-height: 1; font-family: "Lato", sans-serif; color: white; box-sizing: border-box; } svg { overflow: visible; } $content-width: 1200px; $breakpoint: 1200px; body, html { overflow-x: hidden; background: $black; } @mixin nav-height() { height: 80px; @media all and(max-width:$breakpoint) { height: 75px; } } @mixin margin-nav-height() { margin-top: 80px; @media all and(max-width:$breakpoint) { margin-top: 75px; } } @mixin button($color, $bg-color) { cursor: pointer; display: flex; text-decoration: none; align-items: center; @media all and(min-width:$breakpoint) { & > div:not(:last-child) { margin-right: 1rem; } } img { margin-right: 1rem; } justify-content: space-between; background: $bg-color; color: $color; border-radius: 2px; width: 100%; height: 56px; max-width: fit-content; padding: 1rem; margin: 2rem 0; border: 0; transition: all 400ms ease; &:hover { box-shadow: 0px 0px 20px 0px $yellow; } span { font-weight: 900; } } .text-18-white { font-weight: 400; color: white; font-size: 1.125rem; line-height: 1.6rem; } .text-18-white-padding { font-weight: 400; padding-top: 2rem; color: white; font-size: 1.125rem; line-height: 1.6rem; } .text-18-black-padding { font-weight: 400; padding-top: 2rem; color: $black; font-size: 1.125rem; line-height: 1.6rem; } .text-16-black-padding { font-weight: 400; padding-top: 2rem; color: $black; font-size: 1rem; line-height: 1.3rem; } .text-18-black { font-weight: 400; color: $black; font-size: 1.125rem; line-height: 1.6rem; } .text-36-white { font-weight: 900; font-size: 2.25rem; } .text-36-black { font-weight: 900; font-size: 2.25rem; color: $black; } nav { @include nav-height(); width: 100%; padding: 1rem; position: fixed; top: 0; z-index: 100; background: radial-gradient( 74.83% 76.97% at 50% 13.64%, #343641 0%, #1b1c22 100% ); display: grid; justify-items: end; align-items: center; grid-template-columns: 1.2fr 3fr 0.3fr; transition: all 300ms ease; .main-logo { grid-column: 1; display: flex; align-items: center; .beta-logo { width: 60px; margin-left: 0.7rem; } } .links { grid-column: 2; display: flex; align-items: center; justify-content: center; & > a:not(:last-child) { margin-right: 2.5rem; } align-items: center; .navlink { display: inline-block; margin-right: 1.5rem; text-decoration: none; text-align: center; } } } .container { padding: 0 1rem; @media (min-width: $breakpoint) { padding: 0; } } .main-cta { min-height: 580px; background-color: $black; margin-bottom: -7px; .container { max-width: $content-width; margin: auto; display: flex; justify-content: center; align-items: center; min-height: 580px; padding-top: 7rem; @media all and(min-width:$breakpoint) { padding-top: 5rem; & > div:not(:last-child) { margin-right: 2rem; } } .content-txt { .button { @include button($black, $yellow); font-size: 1.25rem; text-align: center; justify-content: center; font-weight: 700; background: radial-gradient( 105.25% 64.58% at 49.68% 70.83%, rgba(226, 137, 4, 0.5) 0%, rgba(255, 255, 255, 0) 100% ), #f1c017; margin: 2rem auto; @media (min-width: $breakpoint) { margin: 2rem 0; } } @media (min-width: $breakpoint) { p { padding-right: 5rem; } } } .mobile-illu { display: block; @media (min-width: $breakpoint) { display: none; } } .content-img { width: 100%; } } } .explanation { min-height: 680px; background: radial-gradient( 74.83% 76.97% at 50% 13.64%, #343641 0%, #1b1c22 100% ); display: flex; text-align: center; .content { margin: auto; width: 100%; padding-top: 0; @media (min-width: $breakpoint) { width: auto; padding-top: 8rem; } .compteurs { display: flex; align-items: center; justify-content: center; margin-top: 5rem; @media all and(min-width:$breakpoint) { & > *:not(:last-child) { margin-right: 0.8rem; } } span { color: $grey; text-transform: uppercase; font-size: 1.1rem; } .bloc { width: 280px; height: 280px; padding: 0.5rem 0.5rem 1rem 0.5rem; border: solid 1px; text-align: center; background: linear-gradient(180deg, #323339 0%, #25262b 100%); box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.55); border-radius: 4px; display: flex; flex-direction: column; position: relative; h3 { margin-top: 8rem; font-weight: 900; font-size: 2rem; } .compteur-img { max-height: 160px; position: absolute; top: -3rem; left: 0; right: 0; margin: auto; } p { padding-top: 0.5rem; } .provider-logo { margin-top: auto; display: flex; height: 35px; img { margin: auto; } } } .elec-color { border-color: rgba(216, 123, 57, 0.4); transition: all 300ms ease; &:hover { box-shadow: 0 0 10px 0 rgb(216, 123, 57); } h3 { color: $elec-color; } } .gaz-color { border-color: rgba(69, 209, 184, 0.4); transition: all 300ms ease; &:hover { box-shadow: 0 0 10px 0 rgb(69, 209, 184); } h3 { color: $gaz-color; } } .water-color { border-color: rgba(58, 152, 236, 0.4); transition: all 300ms ease; &:hover { box-shadow: 0 0 10px 0 rgb(58, 152, 236); } h3 { color: $water-color; } } } .fluid-pipes { margin-top: 1.5rem; img { @media (max-width: $breakpoint) { width: 100%; } } } } } .security { background: $yellow; display: flex; margin-top: -1rem; position: relative; &:before, &::after { content: ""; display: inline-block; position: absolute; width: 100%; height: 10px; left: 0; background-image: url("assets/pattern-dot.svg"); background-color: $dark-yellow; background-repeat: repeat-x; background-position: center; z-index: 1; } &::before { top: -0.5rem; } &:after { bottom: -0.5rem; } .container { max-width: $content-width; margin: 0 auto; } .container-cloud { display: flex; position: relative; padding: 7rem 0 2rem; justify-content: space-between; align-items: center; @media (min-width: $breakpoint) { padding: 3rem 0; } } p { color: $black; font-size: 1.5rem; font-weight: 700; flex-basis: 40%; &:nth-of-type(1) { text-align: right; } } .xs-text { display: block; flex-basis: 100%; text-align: center; @media (min-width: $breakpoint) { display: none; } } .xl-text { display: none; @media (min-width: $breakpoint) { display: block; } } .container-img { position: absolute; z-index: 2; top: 50%; left: 50%; transform: translate(-50%, -50%); @media (max-width: $breakpoint) { top: -70px; transform: translateX(-50%); width: 45%; } img { max-width: 192px; width: 100%; display: inline-block; } } } .views-app { background: radial-gradient( 74.83% 76.97% at 50% 13.64%, #343641 0%, #1b1c22 100% ); padding-bottom: 5rem; @media (max-width: $breakpoint) { padding-bottom: 1rem; } .content { max-width: 945px; width: 100%; margin: 0 auto; } .fluid-pipes { text-align: center; @media (max-width: $breakpoint) { display: none; } } .screens-container { display: flex; justify-content: center; @media (max-width: $breakpoint) { flex-direction: column; margin-top: 0.5rem; .screen { text-align: center; padding-top: 6rem; position: relative; &:before, &:after { content: ""; display: inline-block; height: 100px; width: 1px; background: $yellow; position: absolute; top: 0; z-index: 1; } &::before { left: 48%; transform: translateX(-50%); } &::after { left: 52%; transform: translateX(-50%); } } img { width: 90%; position: relative; z-index: 2; } p { margin: 1.5rem 0; } } .screen { &:first-child, &:last-child { margin-top: 0; @media (min-width: $breakpoint) { margin-top: -4rem; } } &.consumption { span { color: $yellow; } } &.challenge { span { color: $light-blue; } } &.ecogesture { span { color: $light-green; } } } } p { line-height: 24px; font-size: 1.25rem; text-align: center; margin: 1.5rem 0; @media (min-width: $breakpoint) { margin: 2rem 0 0; } span { display: block; font-size: 1.5rem; } } } .test-ecolyo { background-color: black; padding: 3.75rem 0; display: flex; text-align: center; .container { max-width: $content-width; margin: auto; display: flex; justify-content: center; align-items: center; .button { @include button($black, $yellow); font-size: 1.25rem; text-align: center; justify-content: center; font-weight: 700; background: radial-gradient( 105.25% 64.58% at 49.68% 70.83%, rgba(226, 137, 4, 0.5) 0%, rgba(255, 255, 255, 0) 100% ), #f1c017; } } .center-button { margin-top: 1rem; display: flex; justify-content: center; } } .cloud-gl { padding: 2rem 0 3rem; background: #ffffff; .container { max-width: $content-width; margin: auto; } .text-content { max-width: 689px; text-align: center; margin: 0 auto; } h2, p { color: $black; } h2 { font-size: 1.75rem; font-weight: 900; margin: 0.5rem 0 1rem; } p { line-height: 1.463rem; padding: 0; font-weight: 500; } .button { display: inline-block; background: $red-alert; text-align: center; border-radius: 4px; padding: 0.5rem 1.25rem; margin-top: 1.25rem; text-decoration: none; max-width: 221px; font-size: 1.125rem; line-height: 1.238rem; transition: all 0.4s; &:hover { box-shadow: 0px 0px 10px 0px $red-alert; } span { display: block; } } } footer { min-height: 230px; background-color: black; width: 100%; .content { padding-top: 5rem; display: flex; flex-direction: column; align-items: center; min-height: 230px; justify-content: space-between; @media (max-width: $breakpoint) { padding-top: 2rem; } h2 { text-align: center; } .button { @include button($black, $yellow); font-size: 1.25rem; text-align: center; justify-content: center; font-weight: 700; margin-top: -6rem; background: radial-gradient( 105.25% 64.58% at 49.68% 70.83%, rgba(226, 137, 4, 0.5) 0%, rgba(255, 255, 255, 0) 100% ), #f1c017; } .bottom { display: flex; align-items: center; width: 100%; justify-content: space-between; padding: 1rem 2rem; @media (max-width: $breakpoint) { padding: 1rem; } .logos-footer { display: flex; align-items: center; @media (max-width: $breakpoint) { flex-direction: column; margin-left: 0; width: 100%; } @media (min-width: $breakpoint) { flex-basis: 33.33%; } .container-img { &:last-child { display: flex; align-items: center; @media (max-width: $breakpoint) { width: 100%; img:not(.tiga) { width: 31.33%; margin-right: 5%; } } } } img:not(.tiga) { margin-right: 2rem; } .gl { width: 130px; margin-right: 2rem; @media (max-width: $breakpoint) { margin-right: 0; } } .tiga { width: 67px; @media (max-width: $breakpoint) { width: 25%; } } } .contact { @media (min-width: $breakpoint) { flex-basis: 33.33%; text-align: center; } @media (min-width: 1400px) { margin-left: -5.5rem; } a { color: $yellow; font-weight: 700; @media (max-width: $breakpoint) { display: block; margin-top: 1rem; } } } } .info { display: flex; align-items: center; img { margin-right: 0.3rem; } margin-left: -5rem; a { text-decoration: none; } @media (min-width: $breakpoint) { flex-basis: 33.33%; justify-content: flex-end; } } } } @media all and(max-width:$breakpoint) { .text-36-white, .text-36-black { font-size: 1.85rem; } .navlink { display: none; } nav { grid-template-columns: 1fr; .button-column { .button { height: 44px; max-width: 120px; font-size: 1rem; text-align: center; display: none; } } .main-logo { margin: auto; img { max-width: 100px; &:nth-child(2) { width: 45px; } } } .links { display: none; } } .banner p { margin-left: 0.6rem; } .main-cta { .desktop-illu { display: none; } .container { .content-img { min-height: 0; .illu { width: 100%; margin-left: -0.5rem; } } } } .explanation { padding: 4rem 2rem; .content { .compteurs { flex-direction: column; & > div:not(.gaz-color) { margin-bottom: 2rem; } span { margin-bottom: 4rem; } } } } .security { .container .button { width: 100%; font-size: 0.95rem; padding: 1rem; text-align: center; } } .test-ecolyo { padding: 2rem 0; .content .button { width: 100%; font-size: 1.25rem; padding: 1rem; text-align: center; } } footer { .content { .button { margin-top: 1rem; margin-bottom: 3rem; } .bottom { flex-direction: column; & > div:not(:last-child) { margin-bottom: 2rem; } .contact { order: 1; margin: auto; text-align: center; } .logos-footer { order: 2; max-width: 250px; margin-left: 1.5rem; } .info { margin-left: 0; order: 3; transform: scale(0.8); } } } } }