/******************************************************************

Stylesheet: SP EGO

This stylesheet is only loaded by when Wilfa EGO
page template is being used.

******************************************************************/
body.page-template-page-ego .builder {
  font-weight: 400;
  color: #ffffff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed; }

body.page-template-page-ego .cd-main-content {
  padding-top: 66px !important; }

body.page-template-page-ego h1, body.page-template-page-ego h2, body.page-template-page-ego h3, body.page-template-page-ego h4, body.page-template-page-ego h5, body.page-template-page-ego h6, body.page-template-page-ego .h1, body.page-template-page-ego .h2, body.page-template-page-ego .h3, body.page-template-page-ego .h4, body.page-template-page-ego .h5, body.page-template-page-ego .h6 {
  font-weight: 400;
  line-height: 1.4; }

.ego-title {
  max-width: 420px; }

@media (min-width: 992px) {
  .ego-title {
    font-size: 46px;
    max-width: 600px; }
  body.page-template-page-ego .cd-main-content {
    padding-top: 80px !important; } }

.ego-sub-title {
  display: inline-block;
  margin-bottom: 32px;
  padding: 14px 32px;
  border: 3px solid #ffffff;
  border-radius: 7px;
  font-weight: 400; }

.ego-section {
  min-height: 100vh;
  font-size: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }
  .ego-section.with-background {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
  .ego-section.repeat-background {
    background-size: contain;
    background-repeat: repeat; }
  .ego-section.space-top-bottom {
    padding-top: 128px;
    padding-bottom: 128px; }
  .ego-section.align-middle {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; }
  .ego-section.ego-section-standard {
    padding-top: 32px;
    padding-bottom: 32px;
    min-height: 1px; }

.container.align-middle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }
  .container.align-middle > * {
    margin-bottom: 64px; }
    .container.align-middle > *:last-child {
      margin-bottom: 0; }

@media (min-width: 768px) {
  .container.align-middle {
    flex-direction: row;
    align-items: center; }
    .container.align-middle > * {
      margin-bottom: 0; } }

@media (min-width: 992px) {
  .ego-section.space-top-bottom {
    padding-top: 180px;
    padding-bottom: 180px; } }

.ego-text > * {
  margin-bottom: 16px; }
  .ego-text > *:last-child {
    margin-bottom: 0; }

.ego-text h2, .ego-text h3, .ego-text h4 {
  margin-bottom: 32px; }

section.ego-header .container {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  max-width: 900px; }

section.ego-header .ego-header-logo {
  max-width: 300px;
  margin-right: auto; }
  section.ego-header .ego-header-logo img {
    width: 100%;
    height: auto; }

section.ego-header .ego-header-stamp {
  max-width: 120px;
  margin-left: 32px; }
  section.ego-header .ego-header-stamp img {
    width: 100%;
    height: auto; }

section.ego-featured-products .container {
  text-align: center; }

.ego-product-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  max-width: 900px;
  margin: 0 auto; }

.ego-section-desc {
  margin-bottom: 32px;
  text-align: center; }
  .ego-section-desc h3 {
    text-transform: uppercase; }

.ego-product {
  margin-bottom: 64px;
  text-align: left; }
  .ego-product a {
    color: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: flex-start; }
    .ego-product a h3 {
      display: inline-block;
      position: relative; }
      .ego-product a h3:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        height: 2px;
        width: 0;
        background: #ffffff;
        transition: all .5s ease-in-out; }
    .ego-product a:hover h3:after, .ego-product a:focus h3:after {
      width: 100%; }
    .ego-product a:hover > img, .ego-product a:focus > img {
      animation-name: cut;
      animation-duration: 3s;
      animation-iteration-count: infinite;
      animation-timing-function: ease-in-out; }
  .ego-product > img {
    max-height: 160px;
    max-width: 660px;
    width: auto;
    height: auto;
    margin-bottom: -16px;
    transform: rotate(0) translateX(0);
    transition: .5s ease-in-out; }
  .ego-product .suitable-for {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center; }
    .ego-product .suitable-for img {
      margin: 0 5px;
      max-width: 26px;
      max-height: 26px;
      height: auto;
      width: auto; }

.ego-product-split {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start; }

@media (min-width: 768px) {
  .ego-product-split {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between; }
    .ego-product-split .suitable-for {
      margin-left: auto;
      margin-top: 17px; } }

@keyframes cut {
  0% {
    transform: rotate(0) translateX(0); }
  20% {
    transform: rotate(6deg) translateX(25px); }
  35% {
    transform: rotate(6deg) translateX(30px); }
  50% {
    transform: rotate(8deg) translateX(0px); }
  65% {
    transform: rotate(6deg) translateX(35px); }
  80% {
    transform: rotate(8deg) translateX(5px); }
  100% {
    transform: rotate(0) translateX(0); } }
