@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?bvek43");
  src: url("fonts/icomoon.eot?bvek43#iefix") format("embedded-opentype"), url("fonts/icomoon.woff2?bvek43") format("woff2"), url("fonts/icomoon.ttf?bvek43") format("truetype"), url("fonts/icomoon.woff?bvek43") format("woff"), url("fonts/icomoon.svg?bvek43#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-star:before {
  content: "\e900"; }

.icon-aperture:before {
  content: "\e901"; }

.icon-arrow-left:before {
  content: "\e902"; }

.icon-arrow-left-circle:before {
  content: "\e903"; }

.icon-arrow-right:before {
  content: "\e904"; }

.icon-arrow-right-circle:before {
  content: "\e905"; }

.icon-at-sign:before {
  content: "\e906"; }

.icon-book-open:before {
  content: "\e907"; }

.icon-camera:before {
  content: "\e908"; }

.icon-camera-off:before {
  content: "\e909"; }

.icon-check:before {
  content: "\e90a"; }

.icon-chevron-right:before {
  content: "\e90b"; }

.icon-chevron-up:before {
  content: "\e90c"; }

.icon-codepen:before {
  content: "\e90d"; }

.icon-codesandbox:before {
  content: "\e90e"; }

.icon-coffee:before {
  content: "\e90f"; }

.icon-eye:before {
  content: "\e910"; }

.icon-eye-off:before {
  content: "\e911"; }

.icon-facebook:before {
  content: "\e912"; }

.icon-flag:before {
  content: "\e913"; }

.icon-globe:before {
  content: "\e914"; }

.icon-home:before {
  content: "\e915"; }

.icon-image:before {
  content: "\e916"; }

.icon-instagram:before {
  content: "\e917"; }

.icon-map-pin:before {
  content: "\e918"; }

.icon-menu:before {
  content: "\e919"; }

.icon-message-circle:before {
  content: "\e91a"; }

.icon-message-square:before {
  content: "\e91b"; }

.icon-more-horizontal:before {
  content: "\e91c"; }

.icon-more-vertical:before {
  content: "\e91d"; }

.icon-phone:before {
  content: "\e91e"; }

.icon-sliders:before {
  content: "\e91f"; }

.icon-smartphone:before {
  content: "\e920"; }

.icon-truck:before {
  content: "\e921"; }

.icon-x:before {
  content: "\e922"; }

* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box; }

body {
  margin: 0;
  padding: 0px;
  background: #3b3b3b;
  font-size: 14px;
  color: #FFF; }

html, body {
  height: 100%; }

body {
  font-family: "Lora", serif; }

h1, h2, h3, h4, b, h5 {
  font-weight: 500; }

h1 {
  font-size: 60px;
  margin: 40px 0 40px; }

h2 {
  font-size: 26px;
  line-height: 32px;
  margin: 0 0 48px;
  padding: 15px 0;
  position: relative;
  min-width: 300px;
  	/*
  	&:before,
  	&:after { content: ""; position: absolute;  left: -10%; display: inline-block; width: 120%; height: 1px; background: $light-border-color; }
  
  	&:before {
  		top: 0;
  	}
  
  	&:after {
  		bottom: 0;
  	}*/ }
  @media only screen and (max-width: 800px) {
    h2 {
      font-size: 22px;
      line-height: 26px; } }

h4 {
  font-size: 16px;
  margin: 0px 0 5px; }

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

.btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*background: $accent-color;*/
  border: 1px solid #FFF;
  color: #FFF;
  padding: 16px 16px 16px 24px;
  width: 240px;
  transition: 0.2s;
  border-radius: 2px;
  font-size: 14px;
  line-height: 1.4; }
  .btn:hover {
    /*background: $accent-color-hover;*/
    box-shadow: 0 0 5px #000; }
  .btn.btn-grey {
    background: none;
    border: 1px solid #595959;
    color: #595959; }
    .btn.btn-grey:hover {
      background: #F7F7F7; }

.main {
  display: flex;
  align-items: center;
  flex-direction: column; }

.content {
  width: 100%;
  max-width: 1000px; }

ul.sociala-medier {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex; }
  ul.sociala-medier li {
    display: flex; }

.shadow {
  display: none;
  position: fixed;
  z-index: 2;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  transition: all 0.5s ease 0s; }

ol.steps {
  margin: 0;
  padding: 0 16px; }
  ol.steps li {
    margin-bottom: 16px; }

a.show-mobile-menu {
  display: flex;
  font-size: 24px;
  order: 3;
  margin-left: 10px;
  position: absolute;
  right: 20px;
  top: 20px; }
  @media only screen and (min-width: 800px) {
    a.show-mobile-menu {
      height: 44px;
      width: 44px;
      align-items: center;
      justify-content: center;
      background: #b7410e;
      border-radius: 100px;
      transition: 0.2s;
      left: 20px; }
      a.show-mobile-menu:hover {
        background: #92340b;
        box-shadow: 0 0 5px #000; } }
  a.show-mobile-menu span {
    display: flex;
    color: #FFF;
    width: 32px;
    height: 32px;
    border-radius: 30px;
    align-items: center;
    justify-content: center; }

.top {
  display: flex;
  justify-content: center;
  padding: 32px 0 0;
  position: relative; }
  .top.top-image {
    /*position: absolute; left: 0; top: 0; width: 100%; z-index: 1;*/ }
  @media only screen and (max-width: 800px) {
    .top {
      margin: 0;
      padding: 16px; } }
  .top .content {
    display: flex;
    justify-content: center;
    padding: 10px 0;
    align-items: center; }
    @media only screen and (max-width: 800px) {
      .top .content {
        padding: 0px;
        align-items: center; } }
    .top .content a.logo {
      order: 1; }
      .top .content a.logo img {
        display: flex;
        height: 80px; }
      @media only screen and (max-width: 800px) {
        .top .content a.logo img {
          height: 40px; } }
    .top .content .right-block {
      display: none;
      justify-content: space-between;
      flex-direction: column;
      align-items: flex-end;
      order: 2; }
      @media only screen and (max-width: 800px) {
        .top .content .right-block {
          border-right: 1px solid #595959; } }
      .top .content .right-block ul.sociala-medier {
        margin-right: 10px; }
        @media only screen and (max-width: 800px) {
          .top .content .right-block ul.sociala-medier {
            margin-right: 20px;
            display: none; } }
        .top .content .right-block ul.sociala-medier li {
          padding-left: 10px; }
          @media only screen and (max-width: 800px) {
            .top .content .right-block ul.sociala-medier li {
              padding-left: 20px; } }
          .top .content .right-block ul.sociala-medier li a {
            font-size: 24px; }
      .top .content .right-block div.menu {
        display: flex;
        justify-content: center; }
        @media only screen and (max-width: 800px) {
          .top .content .right-block div.menu {
            display: none; } }
        .top .content .right-block div.menu ul {
          list-style: none;
          margin: 0;
          padding: 0;
          display: flex; }
          .top .content .right-block div.menu ul li {
            padding: 5px 10px;
            margin-left: 10px;
            border: 1px solid transparent;
            border-width: 1px 0; }
            .top .content .right-block div.menu ul li a:hover {
              border-bottom: 2px solid #b7410e; }
            @media only screen and (min-width: 800px) {
              .top .content .right-block div.menu ul li.selected {
                border-color: #595959; } }

div.mobile-menu {
  display: flex;
  position: relative;
  transition: all 0.5s ease 0s;
  position: fixed;
  z-index: 3;
  left: 0;
  top: -100%;
  width: 100%;
  height: 100%;
  background: #262626;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  overflow: auto; }
  div.mobile-menu a.close-mobile-menu {
    position: absolute;
    right: 16px;
    top: 16px;
    font-size: 32px;
    color: #FFF;
    width: 60px;
    height: 60px;
    align-items: center;
    justify-content: center; }
  div.mobile-menu a.logo {
    margin-top: 24px; }
    div.mobile-menu a.logo img {
      height: 96px; }
      @media only screen and (max-width: 800px) {
        div.mobile-menu a.logo img {
          height: 52px; } }
  div.mobile-menu ul {
    list-style: none;
    margin: 96px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    width: 100%; }
    div.mobile-menu ul li {
      padding: 12px 0px;
      text-align: center; }
      @media only screen and (max-width: 800px) {
        div.mobile-menu ul li {
          padding: 16px 0; } }
      div.mobile-menu ul li a {
        color: #FFF;
        font-size: 42px; }
        @media only screen and (max-width: 800px) {
          div.mobile-menu ul li a {
            font-size: 32px; } }
        div.mobile-menu ul li a:hover {
          text-decoration: underline; }
      div.mobile-menu ul li.selected {
        border-color: #595959; }

.big-image {
  width: 100%;
  background-size: cover;
  background-position: center center;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media only screen and (max-width: 800px) {
    .big-image {
      background-position: center center; } }
  .big-image .hover {
    display: flex;
    width: 100%;
    background: rgba(0, 0, 0, 0.25);
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 24px 0 0px; }
    .big-image .hover a.logo img {
      display: flex;
      height: 80px; }
    @media only screen and (max-width: 800px) {
      .big-image .hover a.logo img {
        height: 40px;
        margin-bottom: 32px; } }
    .big-image .hover .block {
      display: flex;
      flex-direction: column;
      align-items: center;
      width: 100%;
      max-width: 700px;
      padding: 128px 16px 156px; }
      @media only screen and (max-width: 800px) {
        .big-image .hover .block {
          max-width: 500px;
          padding: 48px 16px; } }
      .big-image .hover .block h1 {
        font-size: 50px;
        text-shadow: 0 0 20px #1a1a1a;
        text-align: center;
        margin: 0px 0 30px;
        padding: 0 20px;
        color: #FFF; }
        @media only screen and (max-width: 800px) {
          .big-image .hover .block h1 {
            font-size: 36px;
            text-shadow: 0 0 10px #1a1a1a; } }
      .big-image .hover .block .description {
        text-align: center;
        width: 70%;
        color: #FFF;
        padding: 0 16px;
        font-size: 17px;
        line-height: 24px; }
        @media only screen and (max-width: 800px) {
          .big-image .hover .block .description {
            width: 100%; } }
      .big-image .hover .block ul.buttons {
        list-style: none;
        padding: 0;
        margin: 40px 0 0;
        display: flex; }
        @media only screen and (max-width: 800px) {
          .big-image .hover .block ul.buttons {
            flex-direction: column;
            width: 100%; } }
        .big-image .hover .block ul.buttons li {
          display: flex;
          margin: 0 5px; }
          @media only screen and (max-width: 800px) {
            .big-image .hover .block ul.buttons li {
              margin: 0 0 10px; } }
          .big-image .hover .block ul.buttons li a {
            display: flex;
            justify-content: space-between;
            align-items: center;
            /*background: $accent-color;*/
            border: 1px solid #FFF;
            color: #FFF;
            padding: 16px 16px 16px 24px;
            width: 240px;
            transition: 0.2s;
            border-radius: 2px; }
            @media only screen and (max-width: 800px) {
              .big-image .hover .block ul.buttons li a {
                width: 100%; } }
            .big-image .hover .block ul.buttons li a span {
              font-size: 20px; }
            .big-image .hover .block ul.buttons li a:hover {
              background: rgba(0, 0, 0, 0.3);
              box-shadow: 0 0 5px #000; }
          .big-image .hover .block ul.buttons li.kontakt {
            display: none; }
            @media only screen and (max-width: 800px) {
              .big-image .hover .block ul.buttons li.kontakt {
                display: flex; } }

ul.list-images {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
  width: 100%; }
  @media only screen and (max-width: 800px) {
    ul.list-images {
      flex-direction: column;
      justify-content: center; } }
  ul.list-images > li {
    display: flex;
    width: calc(33.3% - 16px);
    border: 1px solid #595959; }
    @media only screen and (max-width: 800px) {
      ul.list-images > li {
        width: 100%;
        border: 0;
        margin-bottom: 32px; } }
    ul.list-images > li a {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: flex-start;
      width: 100%;
      padding: 12px; }
      @media only screen and (max-width: 800px) {
        ul.list-images > li a {
          padding: 0; } }
      @media only screen and (min-width: 800px) {
        ul.list-images > li a:hover {
          box-shadow: 0 0 5px #3c3c3c; } }
      ul.list-images > li a div.top-block {
        display: flex;
        flex-direction: column; }
        ul.list-images > li a div.top-block div {
          width: 100%; }
          @media only screen and (max-width: 800px) {
            ul.list-images > li a div.top-block div {
              width: 100%; }
              ul.list-images > li a div.top-block div.image {
                height: 200px; } }
          ul.list-images > li a div.top-block div.image {
            background-size: cover;
            background-position: center center;
            height: 160px; }
          ul.list-images > li a div.top-block div.text {
            display: flex;
            align-items: center;
            padding: 24px 16px 16px; }
            ul.list-images > li a div.top-block div.text div {
              display: flex;
              flex-direction: column;
              align-items: flex-start;
              line-height: 20px; }
              ul.list-images > li a div.top-block div.text div h3 {
                font-size: 24px;
                margin: 0 0 12px; }
              ul.list-images > li a div.top-block div.text div ul {
                margin: 20px 0; }
      ul.list-images > li a span.read-more {
        display: flex;
        margin: 20px 16px 12px;
        padding: 8px 12px;
        font-size: 12px;
        border: 1px solid #FFF; }
        ul.list-images > li a span.read-more:hover {
          background: rgba(0, 0, 0, 0.1); }

/* Startsidan */
body.index .top .content a.logo img {
  height: 80px; }
  @media only screen and (max-width: 800px) {
    body.index .top .content a.logo img {
      height: 60px; } }
body.index .big-image {
  min-height: 75%;
  align-items: stretch; }
  @media only screen and (max-width: 800px) {
    body.index .big-image {
      background-position: -316px center; } }
  body.index .big-image .hover {
    background: rgba(0, 0, 0, 0.5); }
    body.index .big-image .hover .block {
      min-height: calc(100% - 104px);
      justify-content: center; }
      @media only screen and (max-width: 400px) {
        body.index .big-image .hover .block {
          min-height: calc(100% - 72px); }
          body.index .big-image .hover .block h1 {
            padding: 0;
            width: 200px; } }
      body.index .big-image .hover .block .description {
        padding: 0;
        font-size: 14px; }
body.index .main .content {
  display: flex;
  flex-direction: column;
  align-items: center; }
  body.index .main .content .desc {
    padding: 0 16px;
    font-size: 15px;
    line-height: 24px;
    margin: 48px 0;
    text-align: center;
    max-width: 700px; }
    @media only screen and (max-width: 800px) {
      body.index .main .content .desc {
        font-size: 15px; } }
body.index .main .contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-bottom: 100px; }
  body.index .main .contact h4 {
    width: 100%;
    margin: 0 0 10px; }
  body.index .main .contact .img {
    padding-right: 30px; }
    body.index .main .contact .img img {
      border-radius: 100px;
      width: 140px; }
      @media only screen and (max-width: 800px) {
        body.index .main .contact .img img {
          width: 100px; } }

/* Vanlig sida */
body.page .big-image {
  margin-bottom: 48px;
  /*.hover {
  	padding: 180px 0 120px;
  	
  	@media only screen and (max-width: $mobile-width) { 
  		padding: 100px 0 80px;	
  	}
  }*/ }
@media only screen and (max-width: 800px) {
  body.page .main .content {
    padding: 0 16px; } }
body.page .main .content {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center; }
  body.page .main .content .desc {
    display: flex;
    flex-direction: column;
    align-items: left;
    width: 100%;
    max-width: 700px;
    padding: 0 16px;
    font-size: 15px;
    line-height: 24px;
    text-align: left; }
    @media only screen and (max-width: 800px) {
      body.page .main .content .desc {
        font-size: 15px;
        line-height: 21px;
        padding: 0; } }
    body.page .main .content .desc p {
      width: 100%;
      margin-top: 0; }
    body.page .main .content .desc ul.locations {
      list-style: none;
      margin: 0;
      padding: 0; }
      body.page .main .content .desc ul.locations li {
        padding: 12px 0;
        border-top: 1px solid #CCC; }
        body.page .main .content .desc ul.locations li a {
          display: flex;
          flex-direction: column; }
          body.page .main .content .desc ul.locations li a h5 {
            margin: 0;
            font-size: 15px; }
    body.page .main .content .desc h2, body.page .main .content .desc h3 {
      margin: 24px 0 16px;
      padding: 0; }
    body.page .main .content .desc ul.list {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      list-style: none;
      margin: 0 0 32px;
      padding: 0; }
      body.page .main .content .desc ul.list li {
        font-size: 16px;
        display: flex;
        align-items: center;
        margin-bottom: 10px; }
        body.page .main .content .desc ul.list li span {
          color: #b7410e;
          margin-right: 5px;
          font-size: 15px; }
  body.page .main .content ul.images {
    display: flex;
    list-style: none;
    margin: 48px 0 32px;
    padding: 0;
    max-width: 90%; }
    @media only screen and (max-width: 800px) {
      body.page .main .content ul.images {
        flex-direction: column;
        max-width: 100%; } }
    body.page .main .content ul.images li {
      display: flex;
      justify-content: flex-start;
      margin: 0 5px; }
      @media only screen and (max-width: 800px) {
        body.page .main .content ul.images li {
          margin: 0 0 10px; } }
      body.page .main .content ul.images li img {
        max-width: 100%; }
  body.page .main .content .text-content {
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-bottom: 60px;
    /*h2 { margin-bottom: 30px; }*/ }
    body.page .main .content .text-content ul {
      margin-top: 0; }

body.kontakt .main {
  padding-bottom: 48px; }
  body.kontakt .main div.team {
    display: flex;
    flex-direction: column;
    align-items: center; }
    body.kontakt .main div.team h2 {
      text-align: center;
      margin-bottom: 12px; }
    body.kontakt .main div.team ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      list-style: none;
      padding: 0;
      margin: 0; }
      body.kontakt .main div.team ul li {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0 16px 32px; }
        body.kontakt .main div.team ul li h5 {
          margin-top: 8px; }
  body.kontakt .main div.addresses {
    margin-top: 64px;
    display: flex;
    flex-wrap: wrap; }
    body.kontakt .main div.addresses div {
      display: flex;
      flex-direction: column; }
      @media only screen and (max-width: 800px) {
        body.kontakt .main div.addresses div {
          width: 100%;
          margin-bottom: 32px; } }
      body.kontakt .main div.addresses div.company-info {
        margin-right: 48px; }
    body.kontakt .main div.addresses h2 {
      font-size: 20px;
      margin: 0 0 12px;
      padding: 0; }
  body.kontakt .main .desc i {
    font-size: 12px;
    line-height: 14px; }

body.portfolio .main .content ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0 4px; }
  body.portfolio .main .content ul li {
    display: flex;
    width: 200px;
    height: 200px;
    padding: 0 4px 8px 4px; }
    @media only screen and (max-width: 500px) {
      body.portfolio .main .content ul li {
        width: 50%;
        height: 160px; } }
    body.portfolio .main .content ul li a {
      display: flex;
      width: 100%;
      height: 100%;
      align-items: center;
      justify-content: center;
      border: 1px solid #CCC;
      padding: 4px; }
      body.portfolio .main .content ul li a img {
        display: flex; }
        body.portfolio .main .content ul li a img.img-horizontal {
          width: 100%; }
        body.portfolio .main .content ul li a img.img-vertical {
          height: 100%; }

.contact-box {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  margin: 96px 0 48px; }
  @media only screen and (max-width: 1000px) {
    .contact-box {
      padding: 0 16px; } }
  .contact-box .box {
    display: flex;
    width: 1000px;
    background: #262626;
    color: #FFF;
    border-radius: 6px;
    justify-content: space-between;
    align-items: center;
    padding: 24px; }
    @media only screen and (max-width: 800px) {
      .contact-box .box {
        flex-direction: column;
        justify-content: center; } }
    .contact-box .box .info {
      display: flex;
      flex-direction: column;
      width: 60%; }
      @media only screen and (max-width: 800px) {
        .contact-box .box .info {
          width: 100%;
          margin-bottom: 24px; } }
      .contact-box .box .info h3 {
        margin: 0 0 10px; }
      .contact-box .box .info p {
        margin: 0;
        line-height: 1.6; }
    .contact-box .box a.btn {
      background: none;
      border: 1px solid #FFF;
      color: #FFF; }
      @media only screen and (max-width: 800px) {
        .contact-box .box a.btn {
          width: 100%; } }

.cities {
  display: flex;
  justify-content: center;
  padding-bottom: 24px;
  /*border-bottom: 1px solid $border-color;*/ }
  .cities ul {
    width: 1000px;
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
    .cities ul li {
      padding: 0 16px;
      border-right: 1px solid #595959; }
      .cities ul li:nth-last-child(1) {
        border: 0; }
      @media only screen and (max-width: 800px) {
        .cities ul li {
          margin-bottom: 16px; }
          .cities ul li:nth-child(4) {
            border: 0; } }
      .cities ul li a {
        cursor: default;
        font-size: 12px;
        color: #FFF; }

body.city-selected .cities {
  display: none; }

div.total-review {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  padding: 24px 0;
  background: #262626; }
  div.total-review.desktop {
    /*border-top: 1px solid $border-color;*/ }
    @media only screen and (max-width: 800px) {
      div.total-review.desktop {
        display: none; } }
  div.total-review.mobile {
    border-bottom: 1px solid #595959; }
    @media only screen and (min-width: 800px) {
      div.total-review.mobile {
        display: none; } }
  div.total-review div.review-total {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; }
    div.total-review div.review-total a {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap; }
      div.total-review div.review-total a .grade {
        display: flex;
        margin-right: 12px; }
        div.total-review div.review-total a .grade span {
          color: #dbc300;
          margin: 0 1px;
          font-size: 20px; }
      div.total-review div.review-total a div.rating {
        font-size: 14px; }
        @media only screen and (min-width: 800px) {
          div.total-review div.review-total a div.rating {
            font-size: 14px; } }
      div.total-review div.review-total a span.google_info {
        width: 100%;
        display: none;
        justify-content: center;
        margin-top: 12px;
        font-family: "Lora", serif;
        font-optical-sizing: auto;
        font-style: italic;
        font-weight: 400;
        font-size: 12px; }
        @media only screen and (min-width: 800px) {
          div.total-review div.review-total a span.google_info {
            margin-top: 12px; } }

.foot {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  background: #262626; }
  @media only screen and (max-width: 1000px) {
    .foot {
      padding: 0 16px; } }
  .foot .content {
    display: flex;
    align-items: flex-start;
    padding: 48px 0 48px;
    justify-content: space-between;
    flex-wrap: wrap; }
    @media only screen and (max-width: 800px) {
      .foot .content {
        flex-direction: column; } }
    .foot .content .logo img {
      height: 60px; }
    @media only screen and (max-width: 800px) {
      .foot .content .logo {
        order: 2;
        display: none; } }
    .foot .content .right {
      display: flex;
      align-items: flex-start;
      line-height: 1.7; }
      @media only screen and (max-width: 800px) {
        .foot .content .right {
          order: 1;
          margin-bottom: 50px;
          width: 100%;
          justify-content: space-between;
          padding: 0 16px;
          flex-direction: column;
          line-height: 1.6; } }
      .foot .content .right .menu {
        display: flex;
        flex-direction: column;
        padding-right: 80px; }
        @media only screen and (max-width: 800px) {
          .foot .content .right .menu {
            padding: 0 0 24px;
            border-bottom: 1px solid #595959;
            width: 100%; } }
        .foot .content .right .menu ul {
          list-style: none;
          margin: 0;
          padding: 0;
          display: flex;
          flex-direction: column; }
      .foot .content .right .contact {
        display: flex;
        flex-direction: column;
        padding-right: 80px; }
        @media only screen and (max-width: 800px) {
          .foot .content .right .contact {
            padding: 24px 0;
            border-bottom: 1px solid #595959;
            width: 100%; } }
        .foot .content .right .contact span.sms-info {
          display: none; }
      @media only screen and (max-width: 800px) {
        .foot .content .right .social {
          padding: 24px 0; } }
      .foot .content .right .social ul.sociala-medier {
        display: flex;
        flex-direction: column; }
        .foot .content .right .social ul.sociala-medier li {
          padding-right: 10px;
          margin-bottom: 12px; }
          @media only screen and (max-width: 800px) {
            .foot .content .right .social ul.sociala-medier li {
              padding-right: 20px; } }
          .foot .content .right .social ul.sociala-medier li a {
            display: flex;
            align-items: center; }
            .foot .content .right .social ul.sociala-medier li a span {
              font-size: 24px;
              margin-right: 4px; }
              @media only screen and (max-width: 800px) {
                .foot .content .right .social ul.sociala-medier li a span {
                  font-size: 32px; } }

a#up {
  position: fixed;
  text-decoration: none;
  bottom: 20px;
  right: 20px;
  z-index: 10;
  display: none; }
  a#up span {
    display: flex;
    font-size: 28px;
    background: #b7410e;
    color: #FFF;
    border-radius: 40px;
    width: 50px;
    height: 50px;
    align-items: center;
    justify-content: center; }
    @media only screen and (max-width: 800px) {
      a#up span {
        width: 40px;
        height: 40px; } }

body.reference .main .content {
  display: flex;
  flex-direction: column; }
  body.reference .main .content .desc {
    margin-bottom: 32px; }
  body.reference .main .content .object {
    display: flex;
    padding: 32px 0;
    flex-direction: column;
    border-bottom: 1px solid #CCC; }
    body.reference .main .content .object h2 {
      margin: 0;
      font-weight: normal;
      font-size: 18px;
      padding: 0 0 16px; }
    body.reference .main .content .object .images {
      display: flex; }
      @media only screen and (max-width: 800px) {
        body.reference .main .content .object .images {
          flex-direction: column; } }
      body.reference .main .content .object .images div {
        position: relative;
        display: flex; }
        body.reference .main .content .object .images div.before {
          padding-right: 6px; }
        body.reference .main .content .object .images div.after {
          padding-left: 6px; }
          body.reference .main .content .object .images div.after span {
            left: 18px; }
        @media only screen and (max-width: 800px) {
          body.reference .main .content .object .images div.before {
            padding-right: 0px;
            padding-bottom: 6px; }
          body.reference .main .content .object .images div.after {
            padding: 0; }
            body.reference .main .content .object .images div.after span {
              left: 12px; } }
        body.reference .main .content .object .images div img {
          max-width: 100%; }
        body.reference .main .content .object .images div span {
          position: absolute;
          top: 12px;
          left: 12px;
          color: #FFF;
          text-shadow: 0 0 5px #333;
          font-size: 18px; }
          @media only screen and (max-width: 800px) {
            body.reference .main .content .object .images div span {
              font-size: 16px; } }

body.price-request form .fields {
  display: none;
  flex-direction: column;
  align-items: center; }
body.price-request form .field {
  display: none;
  align-items: center;
  flex-direction: column;
  margin-bottom: 32px; }
  body.price-request form .field.show {
    display: flex; }
  body.price-request form .field h3 {
    margin: 0 0 8px !important; }
  body.price-request form .field input[type=text],
  body.price-request form .field textarea {
    padding: 12px;
    border: 1px solid #CCC;
    font-family: "Lora", serif;
    font-size: 13px; }
  body.price-request form .field textarea {
    width: 300px;
    max-width: 100%; }
  body.price-request form .field ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
    body.price-request form .field ul li {
      display: flex;
      margin: 0 4px 8px; }
      body.price-request form .field ul li div {
        position: relative; }
        body.price-request form .field ul li div label {
          display: flex;
          align-items: center;
          background: #F7F7F7;
          padding: 8px 16px;
          cursor: pointer;
          border-radius: 2px; }
        body.price-request form .field ul li div input {
          position: absolute;
          opacity: 0.001;
          z-index: -1; }
        body.price-request form .field ul li div input:checked + label {
          background: #b7410e;
          color: #FFF; }
    body.price-request form .field ul.dates input {
      width: 100px; }
  body.price-request form .field div.squaremeters {
    display: flex;
    align-items: center; }
    body.price-request form .field div.squaremeters input {
      width: 60px;
      margin-right: 4px; }
  body.price-request form .field .error {
    display: none;
    align-items: center;
    margin-top: 8px;
    font-size: 13px; }
    body.price-request form .field .error span {
      background: #990000;
      color: #FFF;
      width: 16px;
      height: 16px;
      font-size: 10px;
      border-radius: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-right: 8px; }
    body.price-request form .field .error.spam-error {
      margin-top: 24px; }
body.price-request form .contact {
  margin-top: 32px; }
  body.price-request form .contact .field {
    margin-bottom: 12px;
    align-items: flex-start; }
    body.price-request form .contact .field input {
      width: 300px; }
  body.price-request form .contact a {
    margin-top: 24px; }
body.price-request .main .content div.price-request-sent {
  display: none;
  flex-direction: column;
  align-items: center; }
  body.price-request .main .content div.price-request-sent .desc {
    text-align: center; }

div.contact-block {
  display: flex;
  width: 100%;
  justify-content: center;
  margin: 64px 0 24px;
  padding: 48px 0; }
  div.contact-block .content {
    display: flex;
    flex-direction: row !important;
    align-items: flex-start !important; }
    div.contact-block .content div.image {
      width: 50%;
      padding: 0 48px; }
      @media only screen and (max-width: 800px) {
        div.contact-block .content div.image {
          display: none; } }
      div.contact-block .content div.image img {
        width: 100%; }
    div.contact-block .content div.form {
      width: 50%;
      padding: 16px 48px 0; }
      @media only screen and (max-width: 800px) {
        div.contact-block .content div.form {
          width: 100%;
          padding: 0 16px; } }
      div.contact-block .content div.form form {
        display: flex;
        align-items: flex-start;
        flex-direction: column; }
        div.contact-block .content div.form form .img {
          border-radius: 100px; }
          div.contact-block .content div.form form .img img {
            border-radius: 100px;
            width: 140px; }
            @media only screen and (max-width: 800px) {
              div.contact-block .content div.form form .img img {
                width: 100px; } }
        div.contact-block .content div.form form h5 {
          font-size: 18px;
          margin: 0; }
        div.contact-block .content div.form form .contact {
          display: flex;
          align-items: center;
          margin-bottom: 48px; }
          div.contact-block .content div.form form .contact .info {
            display: flex;
            flex-direction: column;
            padding-left: 24px; }
            @media only screen and (max-width: 800px) {
              div.contact-block .content div.form form .contact .info {
                padding-left: 16px; } }
            div.contact-block .content div.form form .contact .info h5 {
              margin-bottom: 3px; }
            div.contact-block .content div.form form .contact .info span.title {
              margin-bottom: 12px; }
        div.contact-block .content div.form form h2 {
          margin: 0; }
        div.contact-block .content div.form form p {
          margin: 0 0 32px;
          line-height: 1.4; }
        div.contact-block .content div.form form .contact {
          border-bottom: 1px solid #595959;
          padding-bottom: 24px;
          margin-bottom: 32px;
          width: 100%;
          justify-content: center; }
        div.contact-block .content div.form form .field {
          display: flex;
          align-items: flex-start;
          flex-direction: column;
          margin-bottom: 16px;
          width: 100%; }
          div.contact-block .content div.form form .field label {
            padding-bottom: 4px; }
          div.contact-block .content div.form form .field input[type=text],
          div.contact-block .content div.form form .field input[type=email],
          div.contact-block .content div.form form .field textarea {
            padding: 12px 12px;
            border: 0;
            font-family: "Lora", serif;
            font-size: 13px;
            width: 100%; }
          div.contact-block .content div.form form .field textarea {
            width: 100%;
            height: 100px; }
          div.contact-block .content div.form form .field .error {
            display: none;
            align-items: center;
            margin-top: 8px;
            font-size: 13px; }
            div.contact-block .content div.form form .field .error span {
              background: #990000;
              color: #FFF;
              width: 16px;
              height: 16px;
              font-size: 10px;
              border-radius: 40px;
              display: flex;
              align-items: center;
              justify-content: center;
              margin-right: 8px; }
            div.contact-block .content div.form form .field .error.spam-error {
              margin-top: 24px; }
        div.contact-block .content div.form form .btn {
          width: auto;
          padding: 12px 24px; }
        div.contact-block .content div.form form .spam-error {
          display: none; }
      div.contact-block .content div.form div.contact-form-sent {
        display: none;
        flex-direction: column; }
        div.contact-block .content div.form div.contact-form-sent h2 {
          margin: 0; }

/************** ADMIN *********************/
body.admin a.btn {
  width: auto;
  padding: 8px 16px; }
body.admin .main {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  min-height: 100%; }
  body.admin .main .menu {
    width: 200px;
    background: #3b3b3b; }
    body.admin .main .menu img {
      width: 60%;
      margin: 32px 20% 0; }
    body.admin .main .menu ul {
      list-style: none;
      margin: 32px 0 0;
      padding: 0; }
      body.admin .main .menu ul li {
        border-top: 1px solid #595959; }
        body.admin .main .menu ul li a {
          display: flex;
          color: #FFF;
          padding: 8px 16px; }
  body.admin .main .content {
    width: calc(100% - 200px);
    max-width: 100%;
    padding: 32px;
    display: flex;
    flex-direction: column;
    align-items: flex-start; }
    body.admin .main .content h1 {
      font-size: 24px;
      margin: 0 0 24px; }
body.admin form.filter {
  display: flex;
  flex-direction: column;
  width: 100%; }
  body.admin form.filter div {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 8px 0;
    border-top: 1px solid #CCC; }
    body.admin form.filter div label,
    body.admin form.filter div a {
      width: 100%; }
    body.admin form.filter div div.values {
      border: 0;
      display: flex; }
      body.admin form.filter div div.values label {
        border: 1px solid #CCC;
        display: flex;
        padding: 4px;
        width: auto;
        margin: 0 4px 4px 0; }
body.admin ul.items {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 32px 0 0;
  padding: 0; }
  body.admin ul.items li {
    display: flex;
    margin: 0 8px 8px 0; }
    body.admin ul.items li a {
      display: flex;
      flex-direction: column;
      border: 1px solid #CCC;
      padding: 16px; }
      body.admin ul.items li a div.top {
        display: flex;
        flex-direction: column; }
      body.admin ul.items li a div.foot {
        display: flex;
        flex-direction: column; }
        body.admin ul.items li a div.foot h3 {
          margin: 8px 0;
          font-size: 14px; }
body.admin.edit-item form {
  display: flex;
  flex-direction: column;
  align-items: flex-start; }
  body.admin.edit-item form div.images ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0; }
    body.admin.edit-item form div.images ul li {
      display: flex;
      flex-direction: column;
      border: 1px solid #CCC;
      padding: 8px; }
  body.admin.edit-item form .field {
    padding: 16px 0;
    display: flex;
    flex-wrap: wrap; }
    body.admin.edit-item form .field label {
      font-weight: bold;
      width: 100%;
      padding-bottom: 4px; }
    body.admin.edit-item form .field.field-size table {
      border-collapse: collapse; }
      body.admin.edit-item form .field.field-size table tr td {
        border-bottom: 1px solid #CCC;
        padding: 5px; }
        body.admin.edit-item form .field.field-size table tr td input {
          width: 50px; }
    body.admin.edit-item form .field.field-category {
      width: 400px;
      max-width: 100%; }
      body.admin.edit-item form .field.field-category ul {
        list-style: none;
        margin: 0;
        padding: 0;
        width: 100%; }
        body.admin.edit-item form .field.field-category ul li {
          border-bottom: 1px solid #CCC;
          padding: 8px 0;
          display: flex;
          align-items: center;
          flex-wrap: wrap;
          justify-content: space-between; }
          body.admin.edit-item form .field.field-category ul li.add-row {
            border: 0;
            justify-content: flex-start; }
            body.admin.edit-item form .field.field-category ul li.add-row .add {
              margin-right: 16px; }
          body.admin.edit-item form .field.field-category ul li label {
            width: auto; }
          body.admin.edit-item form .field.field-category ul li ul {
            padding-left: 16px;
            width: 100%; }
    body.admin.edit-item form .field.field-settings {
      width: 400px;
      max-width: 100%; }
      body.admin.edit-item form .field.field-settings ul {
        list-style: none;
        margin: 0;
        padding: 0;
        width: 100%; }
        body.admin.edit-item form .field.field-settings ul li {
          border-bottom: 1px solid #CCC;
          padding: 8px 0;
          display: flex;
          align-items: center;
          flex-wrap: wrap;
          justify-content: space-between; }
          body.admin.edit-item form .field.field-settings ul li.add-row {
            border: 0;
            justify-content: flex-start; }
            body.admin.edit-item form .field.field-settings ul li.add-row .add {
              margin-right: 16px; }
          body.admin.edit-item form .field.field-settings ul li label {
            width: auto; }
          body.admin.edit-item form .field.field-settings ul li ul {
            padding-left: 16px;
            width: 100%; }
    body.admin.edit-item form .field a.add {
      display: flex;
      background: #b7410e;
      color: #FFF;
      height: 20px;
      width: 20px;
      line-height: 20px;
      align-items: center;
      justify-content: center;
      border-radius: 10px; }

div.reviews {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 32px;
  width: 100%;
  	/*
  	.average {
  		display: flex; align-items: center; justify-content: center; flex-wrap: wrap;
  		span {
  			color: $yellow; font-size: 24px; margin: 0 1px;
  		
  			&.average { color: $black; margin-left: 24px; font-weight: $semi-bold; }
  			&.amount { width: 100%; color: $black; font-size: 16px; font-style: italic; display: flex; align-items: center; justify-content: center; }
  
  			div.google_review_info {
  				position: relative;
  				.icon-info { color: $grey; font-size: 14px; margin-left: 4px; }
  				div { display: none; position: absolute; bottom: 110%; right: 0; width: 160px; border: 1px solid $grey; padding: 4px; background: #FFF; font-size: 11px; font-style: normal; }
  
  				&:hover {
  					div {
  						display: block;
  					}
  				}
  			}
  		}
  	}
  	*/ }
  div.reviews h3 {
    font-size: 22px;
    margin: 0; }
  div.reviews ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 32px 0 0;
    flex-direction: column; }
    @media only screen and (min-width: 800px) {
      div.reviews ul {
        flex-direction: row; } }
    div.reviews ul li {
      width: 100%;
      padding: 24px;
      border: 1px solid #CCC;
      display: flex;
      align-items: center;
      flex-direction: column;
      margin-bottom: 12px; }
      @media only screen and (min-width: 800px) {
        div.reviews ul li {
          max-width: 300px;
          margin: 0 8px; } }
      div.reviews ul li .review, div.reviews ul li .customer {
        font-size: 14px;
        line-height: 22px;
        text-align: center;
        font-family: "Lora", serif;
        font-optical-sizing: auto;
        font-style: italic;
        font-weight: 400; }
      div.reviews ul li .author {
        display: none; }
      div.reviews ul li .grade {
        margin-bottom: 12px; }
        div.reviews ul li .grade span {
          color: #dbc300;
          margin: 0 1px;
          font-size: 20px; }
      div.reviews ul li .customer {
        margin-top: 16px; }
  div.reviews a.link-google {
    margin-top: 12px;
    font-family: "Lora", serif;
    font-optical-sizing: auto;
    font-style: italic;
    font-weight: 400;
    font-size: 12px; }
    @media only screen and (min-width: 800px) {
      div.reviews a.link-google {
        margin-top: 24px; } }

div.faq {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 48px;
  width: 100%;
  background: #262626;
  color: #FFF;
  padding: 64px 0; }
  @media only screen and (max-width: 800px) {
    div.faq {
      padding: 32px 0; } }
  div.faq div.content {
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: space-between; }
    @media only screen and (max-width: 800px) {
      div.faq div.content {
        flex-direction: column !important; } }
    div.faq div.content div.description {
      display: flex;
      flex-direction: column;
      width: 40%;
      align-items: flex-start; }
      @media only screen and (max-width: 800px) {
        div.faq div.content div.description {
          width: 100%; } }
      div.faq div.content div.description h2 {
        margin: 0 0 24px;
        padding: 0;
        width: 100%; }
        div.faq div.content div.description h2 span {
          font-weight: normal;
          font-size: 22px; }
      div.faq div.content div.description p {
        margin: 0;
        line-height: 24px;
        width: 100%; }
      div.faq div.content div.description a.btn {
        margin-top: 16px;
        width: auto;
        padding: 12px 16px;
        background: none;
        border: 1px solid #FFF; }
        div.faq div.content div.description a.btn:hover {
          box-shadow: 0 0 2px #000; }
    div.faq div.content div.questions {
      width: 50%;
      display: flex;
      flex-direction: column; }
      @media only screen and (max-width: 800px) {
        div.faq div.content div.questions {
          width: 100%;
          margin-top: 32px; } }
      div.faq div.content div.questions ul {
        display: flex;
        width: 100%;
        flex-direction: column;
        list-style: none;
        margin: 0;
        padding: 0; }
        div.faq div.content div.questions ul li {
          display: flex;
          flex-direction: column;
          margin-bottom: 12px; }
          div.faq div.content div.questions ul li a {
            display: flex;
            align-items: center;
            color: #FFF;
            border: 1px solid #595959;
            padding: 16px;
            justify-content: space-between;
            font-size: 17px;
            transition: .5s; }
            @media only screen and (max-width: 800px) {
              div.faq div.content div.questions ul li a {
                font-size: 15px;
                padding: 12px; } }
            div.faq div.content div.questions ul li a:hover {
              background: #363636; }
            div.faq div.content div.questions ul li a span.question {
              margin-right: 12px; }
            div.faq div.content div.questions ul li a span.toggle {
              font-size: 22px; }
              @media only screen and (max-width: 800px) {
                div.faq div.content div.questions ul li a span.toggle {
                  font-size: 18px; } }
              div.faq div.content div.questions ul li a span.toggle.close {
                display: none; }
          div.faq div.content div.questions ul li.open a span.toggle.open {
            display: none; }
          div.faq div.content div.questions ul li.open a span.toggle.close {
            display: block; }
          div.faq div.content div.questions ul li p.answer {
            display: none;
            width: 100%;
            border: 1px solid #CCC;
            padding: 16px;
            margin: 0;
            font-size: 15px;
            line-height: 24px; }
            @media only screen and (max-width: 800px) {
              div.faq div.content div.questions ul li p.answer {
                font-size: 13px; } }

body.faq div.faq {
  background: #3b3b3b;
  margin: 0;
  padding: 0; }
  body.faq div.faq div.content {
    /*flex-direction: column !important;*/
    border-bottom: 1px solid #595959;
    padding: 48px 16px; }
    body.faq div.faq div.content h2 a:hover {
      cursor: default; }
    body.faq div.faq div.content div.questions ul li a {
      color: unset; }
      body.faq div.faq div.content div.questions ul li a:hover {
        background: #262626; }

/*# sourceMappingURL=style.css.map */
