body > .underlay > header, body > .underlay > footer { display: flex; .site-logo { margin: 0; padding: 0; line-height: .5; font-size: 24px; color: white; font-weight: 600; white-space: nowrap; :link, :hover, :visited { color: inherit; } svg { height: 30px; vertical-align: middle; } @media screen and (min-width: $bigscreen-breakpoint) { margin-right: 100px; } } .social-links { > a { margin-left: 14px; font-size: 18px; &:first-child { margin-left: 0; } } } } .parent-hub-plug { .logo { display: block; } .layout--home > .underlay.header > .hero > .text > & { position: absolute; bottom: 0; right: 0; text-align: right; } body > .underlay.footer & { display: flex; flex-flow: row nowrap; align-items: center; white-space: nowrap; line-height: .5; opacity: 0.8; color: white; @media screen and (min-width: $bigscreen-breakpoint) { margin-right: 50px; } .label { margin-right: 20px; font-weight: 500; } } } .underlay.header { body > & { background: $header-background; > .hero { padding-top: 20px; @media screen and (min-width: $widescreen-breakpoint) { padding-top: 55px; padding-bottom: 30px; } color: white; > .text { position: relative; padding-bottom: 80px; > .title { font-size: 44px; font-weight: 700; margin: 0 0 20px 0; line-height: 1.2; } > .desc { font-size: 20px; margin: 0; } > .cta { // Call to action. margin-top: 40px; .button { &:not(:first-child) { @include cta-button(rgba(white, 0.32), white); } &:first-child { @include cta-button(white, $primary-dark-color); } &:last-child { margin-right: 0; } } } } } } .site--hub.layout--software-index > & { background: $hub-software--hero-background; } .site--hub.layout--spec-index > & { background: $hub-specs--hero-background; } .layout--home > & { background: $superhero-background; > .hero { > .text { padding-bottom: 85px; @media screen and (min-width: $bigscreen-breakpoint) { padding-bottom: 100px; } } } } .site--hub > & { > .hero { text-align: center; } } .site--hub.layout--home > & { > .hero { text-align: left; .illustration { display: none; } @media screen and (min-width: $bigscreen-breakpoint) { display: flex; flex-flow: row nowrap; .text { width: 550px; } .illustration { flex: 1; display: flex; flex-flow: column nowrap; align-items: center; } } } } .site--project > & { > .hero { text-align: center; > .text { > .desc { @media screen and (min-width: $bigscreen-breakpoint) { margin: 0 7em; } } } } } .site--project.layout--home > & { > .hero { padding-bottom: 30px; @media screen and (min-width: $widescreen-breakpoint) { padding-bottom: 40px; } } } } body > .underlay.footer { background: #2E333B; } body > .underlay > header { padding-top: 26px; padding-bottom: 26px; align-items: flex-start; flex-flow: row nowrap; justify-content: space-between; color: white; > button.hamburger { border: 0; background: transparent; color: white; font-size: inherit; z-index: 20; } > .hamburger-menu { position: absolute; top: 0; left: 0; right: 0; transform: translateY(-100%); transition: transform .2s ease-out; height: 100vh; overflow: hidden; z-index: 10; color: white; background: rgba($primary-dark-color, 0.95); display: flex; flex-flow: column nowrap; align-items: center; justify-content: flex-start; .site-logo-container { margin-left: 2em; margin-top: 26px; align-self: flex-start; } > nav, > .social-links { span, a { &:link, &:visited, &:hover { color: white; font-size: 1.3em; } } } > nav { flex: 1; display: flex; flex-flow: column nowrap; align-items: center; justify-content: center; > * { margin: .25em; } > .active { font-weight: bold; } } .social-links { margin-top: 1em; margin-bottom: 2em; } &.expanded { transform: translateY(0); } } > .top-menu { flex: 1; > * { display: inline-block; font-weight: 600; margin-right: 20px; padding: 6px 10px 6px 10px; white-space: nowrap; } } > .top-menu, > .social-links { color: white; display: none; .active { background-color: rgba(black, 0.1); } a:link, a:hover, a:visited { color: white; } } @media screen and (min-width: $bigscreen-breakpoint) { justify-content: unset; > button.hamburger { display: none; } > .top-menu, > .social-links { display: block; } } } body > .underlay > footer { padding-top: 50px; padding-bottom: 50px; align-items: center; flex-flow: column nowrap; color: #909B9C; a:link, a:visited, a:hover { color: #909B9C; } .legal { font-size: 14px; flex: 1; display: flex; flex-flow: column nowrap; justify-content: space-around; margin-top: 1em; margin-bottom: 1em; .copyright { text-align: center; .copyright-head, .copyright-tail { white-space: nowrap; } } nav { display: flex; flex-flow: row wrap; justify-content: space-around; } @media screen and (min-width: $bigscreen-breakpoint) { margin-top: 0; margin-bottom: 0; } @media screen and (min-width: $widescreen-breakpoint) { flex-flow: row nowrap; nav { display: block; } nav > * { margin-right: 40px; } .copyright { margin-right: 40px; } } } @media screen and (min-width: $bigscreen-breakpoint) { flex-flow: row nowrap; } }