@-ms-viewport {
  zoom: 1.0;
  width: extend-to-zoom;
}

@viewport {
  zoom: 1.0;
  width: extend-to-zoom;
}

html {
  overflow-x: hidden;
  font-size: 20px;
  max-width: 100%;
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
}

body {
  line-height: 1.6;
  width: 100%;
  height: 100%;
  padding-top: 1.5rem;
  background: #3a3a3a;
  font-family: 'Lato', Arial, sans-serif;
  font-weight: 300;
  color: #3a3a3a;
}

@media (max-width: 990px) {
  body {
    padding-top: 0;
  }
}

main {
  position: relative;
  z-index: 1;
  max-width: 990px;
  margin: auto;
  border-radius: .33rem;
  box-shadow: 0 0px 50px -10px black;
}

@media (max-width: 990px) {
  main {
    border-radius: 0;
    box-shadow: 0 0px 50px black;
  }
}

h1, h2, h3 {
  line-height: 1.1;
}

h1 {
  font-size: 2.8rem;
  letter-spacing: -1px;
  color: white;
  font-weight: 700;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5), 0 -1px 1px rgba(0, 0, 0, 0.5);
}

h2 {
  font-size: 2rem;
  font-weight: 700;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5), 0 -1px 1px rgba(0, 0, 0, 0.5);
}

a {
  text-decoration: none;
  color: #f3a102;
}

a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

a:active {
  text-decoration: underline;
}

#bg1 {
  position: absolute;
  top: 0;
  z-index: -2;
  height: -webkit-calc(100% + 1rem);
  height: calc(100% + 1rem);
  width: 100%;
  background: #3a3a3a;
}

/*--=============================================--
		NAV BAR
  --=============================================--*/
#navname {
  background: deepskyblue;
}

nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  background: rgba(255, 255, 255, 0.9);
  border-bottom: 0.5px solid #777;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

nav #logo {
  width: -webkit-calc(4.75rem - 0.5rem * 2);
  width: calc(4.75rem - 0.5rem * 2);
  height: -webkit-calc(4.75rem - 0.5rem * 2);
  height: calc(4.75rem - 0.5rem * 2);
  margin: 0.5rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  border-radius: -webkit-calc((4.75rem - 1rem) / 2);
  border-radius: calc((4.75rem - 1rem) / 2);
  box-shadow: 0 1px 1px rgba(255, 255, 255, 0.5), 0 -1px 1px rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

nav a {
  font-weight: 700;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

nav a div {
  padding: 0.5rem 1rem;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

nav #mainlogo {
  margin: 0.5rem;
}

nav #mainlogo img {
  max-width: 8.5rem;
}

nav #navif {
  text-decoration: none;
  background: rgba(42, 53, 119, 0.9);
  text-shadow: none;
}

nav #navif p {
  color: white;
}

nav #navif:hover {
  background: #2a3577;
}

nav #navif:hover p:after {
  display: none;
}

nav #nav-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

nav #nav-items a {
  text-decoration: none;
}

nav #nav-items a p {
  color: rgba(255, 255, 255, 0.9);
  color: #2A3577;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

nav #nav-items a p:after {
  width: 0%;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

nav #nav-items a:hover p {
  text-shadow: none;
}

nav #nav-items a:hover p:after {
  content: "";
  display: block;
  background: #2A3577;
  position: relative;
  margin-bottom: -1.5px;
  width: 100%;
  height: 1.5px;
}

nav #nav-launcher-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media only screen and (min-width: 681px) {
  nav #nav-launcher-wrapper {
    display: none;
  }
}

nav #nav-launcher {
  margin-right: .5rem;
  color: white;
}

@media (max-width: 680px) {
  nav {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: .5rem 0;
    background: none;
    border: none;
  }
}

@media (max-width: 680px) {
  .mobile-hide {
    display: none !important;
  }
}

#mobile-nav {
  list-style: none;
  position: relative;
  font-size: 10vw;
  font-weight: 100;
}

#mobile-nav a {
  color: white;
}

#mobile-nav li {
  margin-top: 1em;
}

@media (orientation: landscape) {
  #mobile-nav {
    font-size: 7vh;
  }
}

.anim {
  -webkit-animation: fadeInRight 0.25s ease;
          animation: fadeInRight 0.25s ease;
}

#modal {
  position: absolute;
  overflow-x: hidden;
  z-index: 5;
  width: 100%;
  height: 110%;
  padding: 2rem;
  top: 0;
  background-color: #151a3b;
}

/*--=============================================--
		HEADER
  --=============================================--*/
header {
  background: url(img/feature1500/living-room-low.JPG);
  background-size: cover;
  background-position: center;
}

#header-text, .header-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2rem;
  max-width: 100%;
}

#header-text .header-text-wrapper, .header-text .header-text-wrapper {
  color: white;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 30rem;
  margin: 2rem 1rem;
  padding: 2rem;
  background: rgba(0, 0, 0, 0.5);
}

@media (max-width: 680px) {
  #header-text .header-text-wrapper, .header-text .header-text-wrapper {
    margin: 0;
    max-width: 100%;
  }
}

@media (max-width: 700px) {
  #header-text .header-text-wrapper, .header-text .header-text-wrapper {
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    padding-top: 2rem;
  }
  #header-text .header-text-wrapper .hlogo-wrapper, .header-text .header-text-wrapper .hlogo-wrapper {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
            align-self: center;
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
    margin-bottom: 2rem;
    margin-left: 0;
  }
}

@media (max-width: 405px) {
  #header-text .header-text-wrapper, .header-text .header-text-wrapper {
    padding-top: 1.5rem;
  }
  #header-text .header-text-wrapper .hlogo-wrapper, .header-text .header-text-wrapper .hlogo-wrapper {
    min-width: 6rem;
    width: 6rem;
    margin-bottom: 1.5rem;
  }
}

@media (max-width: 405px) {
  #header-text h1, .header-text h1 {
    font-size: 1.8rem;
  }
}

.home {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 0;
}

#biglogo {
  max-width: 100%;
  position: relative;
  z-index: 3;
  border-radius: 50%;
  box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.4), 0 2px 4px white;
  background: #2A3577;
}

.hwords {
  max-width: 27rem;
}

.hwords h1 {
  text-shadow: 0 -4px 8px 4px black;
}

.hlogo-wrapper {
  margin-left: 1rem;
  min-width: 9rem;
  width: 9rem;
}

/*--=============================================--
		PRODUCTS
  --=============================================--*/
#products .row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  width: 100%;
}

#products .box {
  min-width: 200px;
  min-height: 200px;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1;
      -ms-flex: 1 1;
          flex: 1 1;
  height: 247.5px;
  text-decoration: none;
}

@media (max-width: 1000px) {
  #products .box {
    -webkit-box-flex: 0;
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    width: 100%;
  }
}

#products .box .overlay {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

#products .box .overlay h2 {
  color: #3a3a3a;
  font-size: 1.4rem;
  -webkit-transition: text-shadow 0.5s;
          transition: text-shadow 0.5s;
  -webkit-transition: -webkit-transform 0.5s;
          transition: transform 0.5s;
}

#products .box .overlay:hover {
  width: 90%;
  height: 90%;
  background: rgba(255, 255, 255, 0.5);
}

#products .box .overlay:hover h2 {
  text-shadow: 0 2.5px 5px rgba(58, 58, 58, 0.5);
  color: #EEE;
  -webkit-transform: translate(0, -5px);
      -ms-transform: translate(0, -5px);
          transform: translate(0, -5px);
}

/*--=============================================--
		BENEFITS
  --=============================================--*/
#benefits {
  padding: 2rem;
  background: #EEE;
  background: url(img/subtle_white_feathers.png);
  background-size: tile;
}

#benefits h2 {
  color: #3A3A3A;
  font-weight: 800;
}

#benefits .row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 30.5rem;
  margin: auto;
}

@media (max-width: 680px) {
  #benefits .row {
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

#benefits .item {
  display: inline-block;
  margin: 0;
  text-align: center;
  max-width: 12.35rem;
}

@media (max-width: 610px) {
  #benefits .item {
    max-width: none;
  }
}

#benefits .paragraph {
  max-width: 30.5rem;
  margin: 2rem auto;
  text-shadow: none;
}

@media (max-width: 680px) {
  #benefits .paragraph {
    max-width: none;
  }
}

.action {
  background: url(img/desk-grey.jpg);
  background-size: cover;
  background-position: center;
}

.action .overlay {
  background: rgba(255, 255, 255, 0.5);
  position: relative;
  padding: 2rem;
  text-align: center;
}

.button {
  display: inline-block;
  text-decoration: none;
  padding: .5rem;
  margin-top: 1rem;
  background: transparent;
  border: 0.2rem solid #37469d;
  border-radius: .1rem;
  font-family: 'Lato';
  font-weight: 300;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

.button h3 {
  display: inline-block;
  font-weight: 700;
  color: #37469d;
  text-shadow: none;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

.button:hover {
  border-color: #F1A027;
  padding: 0.5rem 1rem;
  color: #F1A027;
}

.button:hover h3 {
  color: #F1A027;
}

input[type=submit] {
  font-weight: 700;
  color: #37469d;
  text-shadow: none;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

#feature {
  padding: 2rem;
  background: white;
  text-align: center;
}

#feature h2 {
  line-height: 1.4;
  margin-bottom: 1rem;
}

@media (max-width: 800px) {
  #feature {
    padding: 2rem 0.25rem 0.25rem;
  }
}

.wrapper .row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}

.wrapper img {
  margin: 0.125rem;
  width: -webkit-calc(50% - 0.25rem);
  width: calc(50% - 0.25rem);
  -webkit-box-flex: 1;
  -webkit-flex: auto;
      -ms-flex: auto;
          flex: auto;
}

@media (max-width: 800px) {
  .wrapper img {
    width: -webkit-calc(100% - .25rem);
    width: calc(100% - .25rem);
  }
}

/*--=============================================--
		SHOWROOM
  --=============================================--*/
.locations {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  margin: auto;
  text-align: center;
  margin-bottom: 1.5rem;
}

.gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  width: 100%;
  background: white;
}

.gallery a {
  background: deepskyblue;
  width: 100%;
}

.gallery img {
  width: 25%;
}

#gallery {
  margin: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media (max-width: 760px) {
  #gallery {
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

#gallery a {
  width: -webkit-calc(50% - .25rem);
  width: calc(50% - .25rem);
  margin: 0.125rem;
}

@media (max-width: 760px) {
  #gallery a {
    width: -webkit-calc(100% - .25rem);
    width: calc(100% - .25rem);
    margin-bottom: 5px;
  }
}

#gallery img {
  width: 100%;
}

/*--=============================================--
		FOOTER
  --=============================================--*/
footer {
  position: relative;
  z-index: 0;
  margin-top: -1rem;
  padding-top: .1rem;
  background: #9EA09F;
}

footer #footer-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 990px;
  padding: 2rem 0;
  margin: auto;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
}

footer #footer-content ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  font-weight: 700;
}

footer #footer-content li {
  display: inline-block;
  font-size: 1rem;
  letter-spacing: 0;
  color: #3a3a3a;
  margin-right: .5rem;
}

footer #footer-content li:hover {
  color: white;
  text-shadow: 0 2px 3px #AAA;
  text-shadow: 0 2.5px 5px rgba(58, 58, 58, 0.5);
}

footer #footer-content p.disclaimer {
  font-size: .6rem;
}

footer #footer-content #footer-brand {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  line-height: 1.35;
  font-size: 0.6rem;
  font-weight: 400;
}

footer #footer-content #footer-brand a {
  text-shadow: none;
}

footer #footer-content #footer-brand b {
  font-weight: 700;
}

footer #footer-content #footer-brand .name {
  font-weight: 800;
  font-size: 1rem;
  line-height: 1.6;
}

footer #footer-content #footer-nav {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-shrink: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
  margin-bottom: .75rem;
}

@media (max-width: 990px) {
  footer #footer-content #footer-nav {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
  }
}

@media (max-width: 990px) {
  footer #footer-content {
    box-sizing: border-box;
    width: 100%;
    padding: 2rem 0.5rem;
    padding-right: 0;
    -webkit-flex-flow: column wrap;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
  }
}

.dash {
  border-top: 1px dashed white;
}

/*--=============================================--
		AUXILIARY
  --=============================================--*/
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(1rem, 0, 0);
            transform: translate3d(1rem, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(1rem, 0, 0);
            transform: translate3d(1rem, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}

.flex-center-contents {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.hidden {
  pointer-events: none;
  display: none;
  opacity: 0;
}

.noscroll {
  overflow: hidden;
}

/*--=============================================--
		OTHER PAGES
  --=============================================--*/
input[type=text], textarea {
  border: 1px solid #999;
  border-radius: .2rem;
  min-height: 1.6rem;
  padding: .5rem;
  -webkit-transition: all 0.25s;
          transition: all 0.25s;
}

input[type=text]:hover, textarea:hover {
  border: 1px solid #3a3a3a;
}

input[type=text]:active, input[type=text]:focus, textarea:active, textarea:focus {
  border: 1px solid #E9AA2A;
  outline: 0;
}

form .row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

form .col {
  width: 100%;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

form .col:first-of-type {
  margin-left: 0;
}

@media (max-width: 680px) {
  form .row {
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  form .col {
    margin-left: 0;
  }
}

.prod-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: .5rem;
}

.prod-row:last-of-type {
  margin-bottom: 0;
}

.prod-row div {
  min-height: 4rem;
}

@media (max-width: 750px) {
  .prod-row {
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .reorder {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
  }
}

.grow1 {
  -webkit-box-flex: 5;
  -webkit-flex: 5;
      -ms-flex: 5;
          flex: 5;
}

.grow2 {
  -webkit-box-flex: 7;
  -webkit-flex: 7;
      -ms-flex: 7;
          flex: 7;
}

.words {
  background: rgba(255, 255, 255, 0.9);
  padding: 1rem;
}

#header-overlay {
  background: RGBa(255, 255, 255, 0.25);
  background: rgba(0, 0, 0, 0.2);
}

#content {
  padding: 1.5rem 0.5rem 0.5rem;
  background: url(img/subtle_white_feathers.png);
  background-size: tile;
  line-height: 1.6;
}

#content .row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.anouncement {
  font-weight: 400;
  font-size: .8rem;
  text-align: center;
  background: #2A3577;
  color: white;
  padding: 0.4rem;
}

@media (max-width: 680px) {
  .anouncement {
    background: white;
    color: #2A3577;
  }
}

.menu-button {
  height: 1.2rem;
  width: 1.575rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.menu-button:hover {
  cursor: pointer;
}

.menu-button span {
  height: 2px;
  width: 1.575rem;
  display: block;
  background: white;
  border-radius: 2px;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}

.menu-button span:last-of-type {
  margin-bottom: 0;
}
