@import url(http://fonts.fontstorage.com/import/20db.css);
:root {
  height: 100vh;
  font-size: 16px;
  font-family: 'Open Sans', 'Helvetica Neue', sans-serif;
  color: #fff;
  text-shadow: 1px 1px 1px #2e2d2d; }
  :root a {
    text-decoration: none;
    color: #3af1ab; }
    :root a:active {
      color: #57f5d3; }
    :root a:visited {
      color: #3af1ab; }
    :root a:hover {
      color: white; }
  :root ul, :root menu {
    list-style: none; }
  :root h1 {
    font-size: 1.4rem; }
  :root * {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  :root body {
    background-image: url("../images/backgrounds/16.jpeg");
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
    height: 100vh; }
    :root body .wrapper {
      width: 80%;
      height: 100vh;
      margin: 0 auto;
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
      grid-gap: 1rem; }
      :root body .wrapper header {
        grid-area: a_header;
        letter-spacing: .2rem;
        text-align: center; }
        :root body .wrapper header .logo {
          font-family: sans-serif;
          font-family: '20 db';
          font-style: normal;
          text-shadow: none;
          line-height: 1.2em;
          letter-spacing: 0.1em;
          color: #eb9f6f;
          color: #000;
          -webkit-text-fill-color: transparent;
          background: -webkit-linear-gradient(transparent, transparent), url("../images/backgrounds/burger_back.png") no-repeat;
          background: -o-linear-gradient(transparent, transparent);
          -webkit-background-clip: text;
          background-size: 100%;
          background-attachment: scroll;
          background-position: center; }
    :root body nav.top_menu {
      grid-area: a_nav;
      text-align: center; }
      :root body nav.top_menu menu {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        font-weight: bold; }
        :root body nav.top_menu menu li a {
          margin: 0 .3rem;
          padding: 0 .3rem; }
          :root body nav.top_menu menu li a:hover {
            background-image: url("../images/backgrounds/burger_back.png");
            background-size: 100%;
            background-attachment: fixed;
            background-position: center;
            color: #fdfdfd;
            border-radius: 5px;
            -webkit-box-shadow: -1px 1px 1rem #04c56570;
            box-shadow: -1px 1px 1rem #04c56570; }
    :root body main {
      grid-area: a_main; }
      :root body main .content {
        background-color: rgba(255, 255, 255, 0.336);
        -webkit-box-shadow: -1px 1px 1rem #04c56570;
        box-shadow: -1px 1px 1rem #04c56570;
        border-radius: 10px;
        height: 100%;
        min-width: 200px;
        padding: 1rem 0; }
        :root body main .content h1 {
          color: #eb9f6f;
          text-align: center; }
        :root body main .content .categories {
          font-weight: bold; }
          :root body main .content .categories .cats ul {
            list-style: circle; }
            :root body main .content .categories .cats ul li {
              margin: 1rem 1rem 1rem 2rem; }
        :root body main .content .addresses, :root body main .content .contacts, :root body main .content .benefits {
          list-style-type: circle;
          line-height: 1.6rem; }
          :root body main .content .addresses li, :root body main .content .contacts li, :root body main .content .benefits li {
            margin: 1rem 1rem 1rem 2rem; }
            :root body main .content .addresses li a, :root body main .content .contacts li a, :root body main .content .benefits li a {
              color: #fff; }
              :root body main .content .addresses li a:hover, :root body main .content .contacts li a:hover, :root body main .content .benefits li a:hover {
                color: #57f5d3; }
        :root body main .content .contacts > li {
          background-color: rgba(255, 255, 255, 0.336);
          border-radius: 5px;
          padding: .5rem 1rem; }
    :root body aside {
      background-color: rgba(255, 255, 255, 0.336);
      border-radius: 10px;
      grid-area: a_aside;
      -webkit-box-shadow: -1px 1px 1rem #04c56570;
      box-shadow: -1px 1px 1rem #04c56570; }
      :root body aside .gallery_slider {
        height: 100%;
        min-height: 200px; }
        :root body aside .gallery_slider #main {
          position: relative;
          margin: 0 auto;
          height: 100%; }
          :root body aside .gallery_slider #main #scr {
            margin: 0 auto;
            min-height: 50%;
            height: 100%;
            background-color: rgba(49, 49, 49, 0.281);
            background-size: auto;
            background-position: center;
            background-repeat: no-repeat;
            border-radius: 10px; }
          :root body aside .gallery_slider #main button {
            position: absolute;
            top: 0;
            width: 3rem;
            height: 100%;
            font: 2rem arial, tahoma, sans-serif;
            color: rgba(0, 255, 221, 0.288);
            font-weight: bold;
            background-color: transparent;
            border: none;
            outline: none; }
            :root body aside .gallery_slider #main button:hover {
              color: #058f7c;
              background-color: rgba(255, 255, 255, 0.137); }
          :root body aside .gallery_slider #main .left {
            left: 0;
            border-radius: 10px 0 0 10px; }
          :root body aside .gallery_slider #main .right {
            right: 0;
            border-radius: 0 10px 10px 0; }
      :root body aside .g_maps {
        margin: 0 auto;
        height: 100%; }
        :root body aside .g_maps iframe {
          width: 100%;
          height: 100%;
          border-radius: 10px; }
      :root body aside .feedback {
        height: 100%;
        padding: 1rem;
        margin: 0 auto;
        border-radius: 10px; }
        :root body aside .feedback .form {
          height: 100%; }
          :root body aside .feedback .form input[type="text"],
          :root body aside .feedback .form input[type="email"],
          :root body aside .feedback .form input[type="tel"],
          :root body aside .feedback .form textarea {
            display: block;
            padding: .7rem;
            width: 100%;
            font-size: 1rem;
            border: 1px solid #ced4da;
            border-radius: 5px;
            background-clip: padding-box;
            background-color: rgba(255, 255, 255, 0.4);
            -webkit-box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.05), inset 0 1px 2px 0 rgba(0, 0, 0, 0.05);
            box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.05), inset 0 1px 2px 0 rgba(0, 0, 0, 0.05);
            color: #fff;
            font-weight: bold; }
            :root body aside .feedback .form input[type="text"]:focus,
            :root body aside .feedback .form input[type="email"]:focus,
            :root body aside .feedback .form input[type="tel"]:focus,
            :root body aside .feedback .form textarea:focus {
              outline-color: #0ba39c;
              background-color: rgba(0, 255, 221, 0.288); }
          :root body aside .feedback .form .form-group {
            margin-bottom: .5rem; }
            :root body aside .feedback .form .form-group label {
              line-height: 1.7;
              letter-spacing: .1rem;
              font-size: .9rem; }
            :root body aside .feedback .form .form-group textarea {
              resize: none; }
          :root body aside .feedback .form .last_steps {
            text-align: center; }
            :root body aside .feedback .form .last_steps .button_design {
              padding: .5rem;
              font-size: 1rem;
              border: none;
              border-radius: 5px;
              background-color: #fff;
              outline-color: #0ba39c;
              color: #0ba39c;
              margin: .1rem; }
              :root body aside .feedback .form .last_steps .button_design:hover {
                color: #fff;
                background-color: #0ba39c;
                -webkit-box-shadow: 1px 1px .3rem #fff;
                box-shadow: 1px 1px .3rem #fff;
                text-shadow: 1px 1px 1px #2e2d2d; }
            :root body aside .feedback .form .last_steps select {
              padding: .5rem;
              border: 5px;
              font-size: 1rem;
              border: none;
              border-radius: 5px;
              outline-color: #0ba39c;
              color: #0ba39c;
              background-color: #fff; }
              :root body aside .feedback .form .last_steps select:hover {
                background-color: #0ba39c;
                color: #fff;
                outline: #fff; }
          :root body aside .feedback .form .imp {
            font-size: 1rem; }
    :root body footer {
      grid-area: a_footer;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      text-align: center;
      justify-items: center; }
      :root body footer .social a img {
        width: 1.5rem;
        border-radius: 8px;
        opacity: .7; }
        :root body footer .social a img:hover {
          -webkit-box-shadow: -1px 1px 1rem #04c56570;
          box-shadow: -1px 1px 1rem #04c56570;
          opacity: 1; }
