@font-face {
  font-family: "sonos-logoregular";
  src: url(https://idassets.sonos.com/fonts/sonos-logo-regular-webfont.woff2) format("truetype");
}

html {
  height: 100%;
}

body {
  background-color: #d8d8d8;
  margin: 0;
  height: 100%;
}

#app,
.home {
  height: inherit;
}

#default-landing {
  display: block;
  margin-top: 0;
  margin-bottom: 0;
  height: auto;
  width: 327px;
  min-width: 300px;
  margin-left: auto;
  margin-right: auto;
  height: 777px;
  overflow: hidden;
}

.landing-container-center {
  margin: 0 auto;
}

.landing-content {
  padding: 0;
  -moz-transition: padding-top 0.4s;
  -webkit-transition: padding-top 0.4s;
  transition: padding-top 0.4s;
  height: 278px;
}

.landing-content img {
  margin-top: 131px;
  margin-bottom: 130px;
}

#default-landing .landing-content .landing-content-inner {
  position: relative;
}

#default-landing .landing-container-center h2 {
  color: #000;
  margin: 0;
}

#default-landing .landing-container-center.main-container {
  background-color: #d8d8d8;
  padding-top: 80px;
}

#default-landing.landing-container-center .link {
  font-family: "Roboto", sans-serif;
  box-shadow: 0 0 0px #d8d8d8;
}

#default-landing .focused-input,
#default-landing .link.help:focus {
  box-shadow: 0 0 0px #d8d8d8;
}

#default-landing .landing-head {
  background: #d8d8d8;
}

.login-bg-image {
  background-color: #d8d8d8 !important;
}

@media (max-width: 600px) {
  .login-bg-image {
    background-color: #d8d8d8 !important;
  }
}

#default-landing .landing-content {
  background: #d8d8d8;
}

#default-landing .landing-title {
  font-size: 30px;
  text-align: left;
  color: #000;
}

#default-landing.landing-container-center .default-landing-header {
  border-bottom-color: #d8d8d8;
}

#default-landing .focused-input {
  background: #d8d8d8;
  border: none;
  border-bottom: 1px solid black;
  box-shadow: 0 0 0px #d8d8d8;
}

#default-landing.landing-container-center.main-container {
  box-shadow: 0 0 0px #d8d8d8;
  border-color: #d8d8d8;
}

#default-landing .link.help.focus {
  box-shadow: 0 0 0px #d8d8d8;
}

/* WEB TEAM OVERRIDE */
#default-landing.landing-container-center .landing-content {
  margin: 0 auto;
}

#default-landing.landing-container-center.main-container {
  margin: 0 auto;
}

.standalone-sonos-logo,
#default-landing div.standalone-sonos-logo {
  display: none;
  color: #000;
  font-family: sonos-logoregular, "Neue Helvetica W02", Helvetica, Arial, sans-serif;
  font-size: 2.5rem;
  letter-spacing: 0.25rem;
  text-transform: uppercase;
  text-align: center;
  margin: 3rem 0 0 0;
}

#default-landing div.standalone-sonos-logo {
  display: block;
}

#default-landing .sonos-header {
  color: #000;
  padding: 30px 42px 10px;
  position: relative;
  z-index: 10;
  -moz-transition: padding-bottom 0.4s;
  -webkit-transition: padding-bottom 0.4s;
  transition: padding-bottom 0.4s;
}

#default-landing .sonos-footer {
  position: relative;
  z-index: 10;
  -moz-transition: padding-bottom 0.4s;
  -webkit-transition: padding-bottom 0.4s;
  transition: padding-bottom 0.4s;
}

#default-landing .sonos-footer .logout {
  width: 100%;
  text-align: center;
  font-size: 16px;
  position: relative;
  display: block;
  cursor: pointer;
}

#default-landing .sonos-footer .logout:hover {
  cursor: pointer;
  text-decoration: underline;
}

@media only screen and (max-device-width: 480px) {
  #default-landing .landing-content {
    padding-left: 20px;
    padding-right: 20px;
  }

  #default-landing .landing-button {
    width: 100%;
  }
}
@media only screen and (max-width: 350px) {
  #default-landing .landing-content {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media only screen and (max-width: 300px) {
  #default-landing {
    min-width: 100%;
    width: 100%;
  }

  #default-landing .landing-button {
    width: 100%;
  }

  #default-landing .sonos-footer {
    padding: 15px;
  }
}

@media (max-height: 700px) {
  #default-landing {
    height: 100%;
    display: flex;
    flex-direction: column;
  }

  #default-landing img {
    margin: auto;
  }

  #default-landing .landing-container-center {
    height: 100%;
  }

  #default-landing .landing-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  #default-landing .validation {
    height: 100%;
  }
}
