html {
  font-size: 1.1em;
  padding: 0;
  margin: 0;
}

body {
	background: #002b49;
	font-family: 'HN', Arial, Helvetica, sans-serif;
	color: #1a1a1a;
	font-weight: 400;
	font-style: normal;
  font-size: 1.2em;
	line-height: 1.429;
	padding: 0;
	margin: 0;
  overflow-x: hidden;
}

::selection { background: #a8da6c; color: #244002; text-shadow: none; }
::-moz-selection { background: #a8da6c; color: #244002; text-shadow: none; }

#ldr {
	position: fixed;
	z-index: 1000000;
	top: 0;
	width: 100%;
	height: 100%;
	background: #fff;
}
  #ldr i {
    opacity: .95;
    display: inline-block;
    width: 100%;
    height: 100%;
    background-image: url('../svg/servistore-logo-symbol.svg');
  	background-position: center center;
  	background-size: 60px;
  	background-repeat: no-repeat;
    animation-name: ldr_anim;
    animation-delay: 0;
    animation-duration: 7s;
    animation-iteration-count: infinite;
  }
    @keyframes ldr_anim {
      from {
        opacity: 1;
        background-size: 60px;
      }
      to {
        background-size: 500px;
        opacity: .0;
      }
    }
.ldr_div {
  display: none;
  text-align: center;
  padding: 5px 0 0 0;
}
  .ldr_div svg {
    opacity: .3;
    display: inline-block;
    width: 40px;
    height: auto;
  }

dfn { font-style: normal; }

h1 {
  font-size: 2.8em;
	font-weight: 300;
	color: #000;
	line-height: 1.15em;
	padding: 0;
	margin: 0 0 20px 0;
	transition: all .2s;
	-webkit-transition: all .2s;
}
h2 {
	font-size: 2.5em;
	font-weight: 300;
	color: #000;
	line-height: 1.15em;
	padding: 0;
	margin: 0 0 20px 0;
	transition: all .2s;
	-webkit-transition: all .2s;
}
h3 {
	font-size: 1.7em;
	font-weight: 300;
	color: #000;
	line-height: 1.3em;
	padding: 0;
	margin: 0 0 25px 0;
	transition: all .2s;
	-webkit-transition: all .2s;
}
  h3 em {
    font-style: italic;
    border-bottom: 2px solid #77b82a;
  }

a {
	color: #1a1a1a;
	text-decoration: none;
  outline: none;
	transition: all .2s;
	-webkit-transition: all .2s;
}
a:hover, a:active {
	color: #000;
	text-decoration: none;
}

a img {
	border: 0px;
	text-decoration: none;
}

.anc {
	display: block;
	content: " ";
	height: 95px;
	margin-top: -95px;
	visibility: hidden;
}
.clr {
	clear: both !important;
	display: block;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

.ss_blue {
  color: #225ea6;
}
.ss_blue_bg {
  background-color: #225ea6;
}

.block { display: block !important; }
.inline { display: inline-block; }
.center { text-align: center !important; }
.left { float: left; }
.right { float: right; }
.t_left { text-align: left !important; }
.t_right { text-align: right !important; }
.hidden { display: none !important; }
.uc { text-transform: uppercase; }
.w45 { width: 45% !important; }
.w46 { width: 46% !important; }
.w47 { width: 47% !important; }
.w48 { width: 48% !important; }
.w49 { width: 49% !important; }
.w50 { width: 50% !important; }
.w75 { width: 75% !important; }
.w100 { width: 100% !important; }

.high9 { margin: 0 0 90px 0 !important; }
.high8 { margin: 0 0 80px 0 !important; }
.high7 { margin: 0 0 70px 0 !important; }
.high6 { margin: 0 0 60px 0 !important; }
.high5 { margin: 0 0 50px 0 !important; }
.high4 { margin: 0 0 40px 0 !important; }
.high3 { margin: 0 0 35px 0 !important; }
.high2 { margin: 0 0 30px 0 !important; }
.high { margin: 0 0 25px 0 !important; }
.low6 { margin: 0 0 20px 0 !important; }
.low5 { margin: 0 0 15px 0 !important; }
.low4 { margin: 0 0 12px 0 !important; }
.low3 { margin: 0 0 10px 0 !important; }
.low2 { margin: 0 0 8px 0 !important; }
.low { margin: 0 0 5px 0 !important; }
.flat { margin: 0 !important; }

.small { font-size: .85em !important; }

.pointer { cursor: pointer !important; }
.default { cursor: default !important; }

.no_select {
	-webkit-user-select: none !important;
	-moz-user-select: none !important;
	-ms-user-select: none !important;
}

.opc_0 { opacity: 0; }
.opc_1 { opacity: 1; }

iframe {
  display: block;
  border: none;
  margin: 0;
}

.ldr {
	display: none;
}

input::-moz-focus-inner { border: 0; padding: 0; }

.input {
  font-family: 'HN', Arial, Helvetica, sans-serif;
  font-size: 1em;
	font-weight: 400;
  color: #000;
  border: 1px solid #bbb;
  box-sizing: border-box;
  padding: 9px 7px 8px;
}
  .input::placeholder {
    font-weight: 300;
    color: #999;
  }
  .input::-webkit-input-placeholder{
    font-weight: 300;
    color: #999;
  }
  .input::-moz-input-placeholder {
    font-weight: 300;
    color: #999;
  }
.input.textarea {
  width: 100%;
  height: 110px;
  padding: 8px 3px 0 10px;
  margin: 0;
}

input.checkbox {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  cursor: pointer;
  margin: 0 10px 0 0;
}
input.checkbox + label {
  display: inline-block;
  vertical-align: middle;
}

.btn {
  display: inline-block;
  vertical-align: middle;
  background-color: #225ea6;
  font-size: 1em;
  font-weight: bold;
  color: #fff;
  text-align: center;
  cursor: pointer;
  border: none;
  box-sizing: border-box;
  padding: 9px 18px 11px;
  transition: all .2s;
  -webkit-transition: all .2s;
}
  .btn span {
    display: inline-block;
    vertical-align: middle;
  }
  .btn svg {
    display: inline-block;
    vertical-align: middle;
    width: auto;
    height: 10px;
    color: #f5db00;
    fill: currentColor;
    margin: 1px 0 0 10px;
  }
.btn.btn_s {
  font-size: .9em !important;
  padding: 11px 14px 9px !important;
}
.btn:hover {
  background-color: #174c8c;
  color: #fff;
}
.btn.btn_green {
  background-color: #77b82a;
  color: #fff;
}
  .btn.btn_green:hover {
    background-color: #5e951c;
  }
.btn.btn_red {
  background-color: #e94e1b;
  color: #fff;
}
  .btn.btn_red:hover {
    background-color: #cc4519;
  }

.w {
	width: 100%;
  max-width: 1400px;
	box-sizing: border-box;
	margin: 0 auto;
}
.w_pd {
  width: 100%;
  box-sizing: border-box;
  padding: 0 20px;
}
  @media screen and (min-width: 1450px){
    header .w_pd {
      padding: 0;
    }
  }
.w.rel {
	position: relative;
}


header {
  position: fixed;
  z-index: 10000000000000000000000;
  width: 100%;
  background: rgba(255,255,255, 1);
  box-shadow: 0 5px 5px rgba(0,0,0, .05);
  box-sizing: border-box;
  padding: 10px 0 12px;
  transition: all .2s;
	-webkit-transition: all .2s;
}
@media screen and (min-width: 1000px){
  header.thin {
    padding: 4px 0 4px;
  }
}
  header a#logo {
    display: inline-block;
    vertical-align: middle;
    width: 220px;
    height: auto;
    box-sizing: border-box;
    padding: 0;
    margin: 0 20px 7px 0;
    transition: all .2s;
    -webkit-transition: all .2s;
  }
    header a#logo svg {
      width: 100%;
      height: auto;
      margin: 0 6px 0 0;
      transition: all .2s;
      -webkit-transition: all .2s;
    }
    header a#logo:hover svg {
      transform: scale(1.05);
    }
  @media screen and (min-width: 1000px){
    header.thin a#logo {
      width: 200px;
      margin-top: 4px;
      margin-bottom: -4px;
    }
  }

  header .nav_tgl {
    display: none;
  }
  header nav {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - (220px + 20px));
    text-align: right;
    box-sizing: border-box;
    padding: 7px 0 0 0;
    margin: 0;
  }
  @media screen and (min-width: 1000px){
    header nav {
      display: inline-block;
    }
    header.thin nav {
      padding-top: 6px;
    }
  }
    header nav ul {
      list-style: none;
      padding: 0;
      margin: 0;
    }
      header nav ul li {
        position: relative;
        display: inline-block;
        vertical-align: top;
        margin: 0 30px 0 0;
      }
      header nav ul li:last-child {
        margin-right: 0;
      }
        header nav ul li a {
          display: inline-block;
          font-size: .9em;
          font-weight: 300;
          color: #666;
        }
        @media screen and (min-width: 1000px){
          header.thin nav ul li a {
            font-size: 1em;
          }
        }
        header nav > ul > li:not(.c):hover > a {
          color: #000;
          padding-bottom: 10px;
          margin-top: -2px;
        }
        header nav > ul > li.c > a {
          font-weight: 500;
          color: #000;
          padding-bottom: 10px;
        }
          header nav ul li a span {
            display: inline-block;
            vertical-align: middle;
          }
          header nav ul li a svg {
            display: inline-block;
            vertical-align: middle;
            width: 10px;
            height: auto;
            fill: currentColor;
            color: #666;
            margin: 3px 0 0 10px;
            transition: all .2s;
            -webkit-transition: all .2s;
          }
          header nav ul li.c a svg,
          header nav ul li:hover a svg {
            color: #000;
          }

          header nav ul li ul {
            position: absolute;
            z-index: 100000000;
            top: 40px;
            left: -5px;
            display: none;
            width: 200px;
            background-color: #fff;
            text-align: left;
            box-shadow: 0 5px 10px 5px rgba(0,0,0, .05);
          }
          @media screen and (min-width: 1000px){
            header.thin nav ul li ul {
              top: 37px;
            }
            header nav ul li:hover ul {
              display: block;
            }
          }
            header nav ul li ul li {
              display: block;
              width: 100%;
              border-bottom: 1px solid rgba(0,0,0, .1);
            }
            header nav ul li ul li:last-child {
              border: none;
            }
              header nav ul li ul li a {
                display: block;
                width: 100%;
                font-size: .8em;
                box-sizing: border-box;
                padding: 12px 5px 10px 15px;
                color: #666;
              }
              header nav ul li ul li:not(.c):hover a {
                color: #000;
                padding-left: 18px;
              }
              header nav ul li ul li.c a {
                background-color: #225ea6;
                font-weight: 500;
                color: #fff;
              }

  header a.tp {
    display: inline-block;
    vertical-align: bottom;
    width: 130px;
    height: auto;
  }
    header a.tp img {
      display: block;
      width: 100%;
      height: auto;
    }

  header .actions {
    float: right;
    display: inline-block;
    text-align: right;
    margin: 10px 0 0 0;
  }
    header .actions a {
      display: inline-block;
      vertical-align: bottom;
      width: 32px;
      height: 32px;
      font-weight: bold;
      color: #225ea6;
      cursor: pointer;
      margin: 0 25px 0 0;
    }
    header .actions a.lang_switch {
      width: 45px;
    }
    header .actions a:hover {
      color: #000;
    }
    header .actions a:last-child {
      margin-right: 0;
    }
      header .actions a div {
       display: flex;
       align-items: center;
       justify-content: center;
       width: 100%;
       height: 100%;
       text-align: center;
      }
        header .actions a svg {
          width: 100%;
          height: auto;
          fill: currentColor;
          color: #225ea6;
          margin: 0;
          transition: all .2s;
          -webkit-transition: all .2s;
        }
        header .actions a:hover svg {
          color: #000;
        }


  header .search_nearest {
    float: right;
    display: inline-block;
    margin: 0 25px 0 0;
  }
    header .search_near_loc {
      width: 285px;
      background: none;
      font-family: 'HN', Arial, sans-serif;
      font-size: .9em;
      font-weight: 500;
      box-sizing: border-box;
      border: 2px solid #225ea6;
      padding: 11px 0px 10px 8px;
      margin: 0;
      transition: all .2s;
      -webkit-transition: all .2s;
    }
    header .search_near_loc::placeholder {
      font-weight: 300;
      color: #999;
    }
    header .search_near_loc::-webkit-input-placeholder{
      font-weight: 300;
      color: #999;
    }
    header .search_near_loc::-moz-input-placeholder {
      font-weight: 300;
      color: #999;
    }
    header .search_near_loc:focus {
      background-color: #fff;
    }
      header form#search_nearest ul {
        text-align: left;
        font-family: 'HN', Arial, sans-serif;
        font-size: .8em;
        border: 2px solid #000;
        border-radius: 3px;
        -webkit-border-radius: 0 0 3px 3px;
        box-shadow: 0 0 8px rgba(0,0,0, .2);
      }
      header form#search_nearest ul#ui-id-1 {
        top: 121px !important;
      }
        header form#search_nearest ul li {
          box-sizing: border-box;
          border: none;
        }
        header form#search_nearest ul li:hover {
          background-color: transparent;
          border: none;
        }
          header form#search_nearest ul li div {
            box-sizing: border-box;
            padding: 7px 6px !important;
          }
          header form#search_nearest ul li:hover div {
            background-color: #225ea6;
            color: #fff;
            padding: 7px 6px !important;
            border: none;
          }

#hero {
  width: 100%;
  background-color: #e3e3e3;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
  #hero .backdrop {
    /*
    backdrop-filter: blur(50px);
    -webkit-backdrop-filter: blur(50px);
    */
  }
    #hero .slider {
      width: 100%;
      height: inherit;
      background: #fff;
      box-sizing: border-box;
    }
      #hero .slide {
        width: 100%;
        height: 650px;
        background-position: top center;
        background-size: cover;
        background-repeat: no-repeat;
      }
      #hero.fclty .slide {
        height: 500px;
        background-position: center center;
      }
      #hero.fclty .slide .content {
        padding-top: 0 !important;
      }
        #hero .slider .w_pd {
          display: table;
          height: inherit;
          /*
          backdrop-filter: blur(3px);
          -webkit-backdrop-filter: blur(3px);
          */
        }
        #hero .slider .content {
          display: table-cell;
          vertical-align: middle;
          height: inherit;
          box-sizing: border-box;
          padding: 142px 0 0 30px;
        }
          #hero .slider .box {
            display: block;
            width: 100%;
            max-width: 425px;
          }
          #hero .slider .card {
            display: block;
            width: 100%;
            background-color: rgba(255,255,255, .9);
            box-sizing: border-box;
            padding: 20px;
          }
            #hero .slider .card h1 {
              font-size: 1.6em;
              font-weight: 500;
              color: #005cb9;
              line-height: 1.25em;
              padding: 0;
              margin: 0 0 10px;
            }
            #hero .slider .card h2 {
              font-size: 1em;
              font-weight: 300;
              color: #000;
              line-height: 1.5em;
              padding: 0;
              margin: 0;
            }
          #hero .slider a.action {
            display: block;
            width: 100%;
            font-size: 1.6em;
            font-weight: 500;
            padding: 3px 0 11px;
            margin: 10px 0 0 0;
          }

main {
  display: block;
  background: #e3e3e3;
  box-sizing: border-box;
  padding: 170px 0 30px 0;
}
  main section {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 15px;
  }
    main section.cols {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 30px;
    }
    main section.img_text .section_card,
    main section.cols_2 .section_card {
      display: grid;
      grid-template-columns: 1fr 1fr;
      align-items: stretch;
      gap: 30px;
    }
    main section.cols_2 .section_card {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 60px;
    }
    main section.cols_3 .section_card {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 40px;
    }
      main section .section_card {
        width: 100%;
        background: #fff;
        box-sizing: border-box;
        padding: 30px;
      }
      main section.cols .section_card:not(.trnsp) {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 30px 0;
      }
      main section.cols .section_card.trnsp {
        background: none;
        padding: 0;
      }
      main section .section_card.np {
        padding: 0;
      }
        main section .section_card .image {
          display: grid;
          align-items: center;
          justify-items: center;
        }
        main section.dynamic .section_card .image {
          width: 100%;
        }
          main section .section_card .image img {
            display: block;
            width: 100%;
            height: auto;
          }

        main section .section_card .text {
          padding: 50px 50px;
        }
        main section.img_text .section_card .text {
          padding: 50px 50px;
        }
        main section.cols_2 .section_card .text,
        main section.cols_3 .section_card .text {
          padding: 10px;
        }

        main section .section_card .quicksearch,
        main section .section_card .gmaps,
        main section .section_card .matterport,
        main section .section_card .youtube {
          padding: 10px;
        }
    main section p,
    main.shop section p {
      font-size: 1em;
      font-weight: 300;
      line-height: 1.5em;
      padding: 0;
      margin: 0 0 20px;
    }
    main section ul,
    main section ol {
      font-size: 1em;
      font-weight: 300;
      line-height: 1.5em;
    }
      main section ul li:not(:last-child),
      main section ol li:not(:last-child) {
        margin-bottom: 10px;
      }
    main section b {
      font-weight: 600;
    }
    main section a {
      display: inline-block;
      font-weight: 500;
      color: #e94e1b;
    }
      main section a span,
      main section a def {
        display: inline-block;
        vertical-align: bottom;
      }
      main section a def.arw {
        margin: 0 0 2px 7px;
      }
        main section a def svg {
          transform: rotate(-90deg);
          width: 12px;
          height: auto;
          fill: currentColor;
          color: #e94e1b;
          margin: 0;
        }
        main section a:hover def svg {
          color: #000;
        }


    #quicksearch .input, #quicksearch .dropdown {
			background: rgba(255,255,255, .8);
			font-size: 1.2em;
			font-weight: 100;
			padding: 12px 10px;
			margin: 0 0 10px 0;
		}
    #quicksearch .btn {
      font-size: 1.1em;
      padding: 15px 0 13px;
    }
		#quicksearch #result {
			display: none;
			box-sizing: border-box;
			margin: 0 0 15px 0;
		}
      #quicksearch #result .btn {
        font-size: 1em;
        padding: 12px 18px 12px;
      }
		#quicksearch #restart {
			display: none;
			box-sizing: border-box;
		}
      #quicksearch #restart a {
        font-size: .9em;
        cursor: pointer;
      }

    .gmap {
    }

    .slideshow {
  		margin: 0;
  	}
  		.slideshow-desktop {
  			display: block;
  		}
  		.slideshow-mobile {
  			display: none;
  		}
  		.slideshow .slider {
        position: relative;
  			list-style: none;
        padding: 0;
        margin: 0;
  		}
        .slideshow .slider .slide {
          position: relative;
          height: inherit;
          padding: 0;
          margin: 0;
        }
          .slideshow .slider .slide a {
            display: block;
            height: inherit;
            padding: 0;
            margin: 0;
          }
          .slideshow .slider .slide .txt {
            position: absolute;
            top: 50%;
            left: 0;
            transform: translate(0, -50%);
            width: 100%;
            background-color: rgba(0,0,0, .55);
            text-align: center;
            box-sizing: border-box;
            padding: 15px 10px 13px;
          }
            .slideshow .slider .slide .txt h1 {
              font-size: 4rem;
              font-weight: 600;
              color: #fff;
              line-height: 3.3rem;
              text-transform: uppercase;
              padding: 0;
              margin: 0;
            }
            .slideshow .slider .slide .txt h2 {
              font-size: 1.4rem;
              font-weight: 400;
              color: #fff;
              text-transform: uppercase;
              padding: 0;
              margin: 4px 0 0 0;
            }
  			.slideshow .slider .city_quickpick {
  				position: absolute;
  				z-index: 1000;
  				display: inline-block;
  				top: calc(50% - 50px);
  				left: calc(50% - 160px);
  				width: 320px;
  				height: 100px;
  				background: #fff;
  				box-shadow: 0 0 30px rgba(0,0,0, .5);
  				border-radius: 3px;
  				-webkit-border-radius: 3px;
  				box-sizing: border-box;
  				padding: 10px 15px 0 15px;
  			}
  				.slideshow .slider .city_quickpick .title {
  					display: block;
  					font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  					font-size: 1.7em;
  					font-weight: 600;
  					color: #5a5a5a;
  					text-align: center;
  					margin: 0 0 6px;
  				}
  				.slideshow .slider .city_quickpick .inputs .input.dropdown {
  					display: inline-block;
  					vertical-align: middle;
  					width: calc(100% - (60px + 10px));
  					background-image: url('../img/icon-location-gr.png');
  					background-size: 15px;
  					background-position: 10px 9px;
  					background-repeat: no-repeat;
  					font-size: 1.2em;
  					box-sizing: border-box;
  					padding: 8px 5px 8px 30px;
  				}
  				.slideshow .slider .city_quickpick .inputs a.btn {
  					display: inline-block;
  					vertical-align: middle;
  					width: 60px;
  					background: #4182c2;
  					font-size: 1.5em;
  					font-weight: 500;
  					color: #fff;
  					text-transform: uppercase;
  					text-shadow: none;
  					padding-left: 0;
  					padding-right: 0;
  					margin: 0 0 0 10px;
  				}


    #faq .faq {
    	display: inline-block;
    	vertical-align: top;
    	width: 48%;
    	margin: 0 4% 25px 0;
    }
    #faq .faq:nth-child(2n){
    	margin-right: 0;
    }
    	#faq a.question {
    		font-size: 1.2em;
    		font-weight: 600;
        color: #225ea6;
        line-height: 1.5em;
    		cursor: pointer;
    	}
      #faq a.question:hover {
        color: #000;
      }
    		#faq a.question def {
    			display: inline-block;
    			vertical-align: top;
    			width: 30px;
          height: 30px;
          background: #225ea6;
          font-size: 1em;
          line-height: 24px;
          color: #fff;
          text-align: center;
          border-radius: 50%;
          -webkit-border-radius: 50%;
          padding: 0;
    			margin: 3px 15px 0 0;
    		}
    		#faq a.question span {
    			display: inline-block;
    			vertical-align: top;
    			width: calc(100% - 45px);
    		}
    	#faq .answer {
    		display: none;
    		line-height: 1.5em;
    		box-sizing: border-box;
    		padding: 5px 0 0 46px;
    	}

#c_note {
	position: fixed;
	z-index: 100000;
	bottom: 20px;
	width: 100%;
}
	#c_note > div {
		position: relative;
		width: 1000px;
		max-width: 90%;
		background-color: rgba(255,255,255, .95);
		font-size: .8em;
		color: #333;
		box-sizing: border-box;
		box-shadow: 0 0 20px rgba(0,0,0, .2);
		border-radius: 5px;
		-webkit-border-radius: 5px;
    padding: 15px 25px;
		margin: 0 auto;
	}
    #c_note .text {
      display: inline-block;
      vertical-align: middle;
      width: calc(100% - (120px + 15px));
    }
    #c_note a {
      display: inline-block;
      vertical-align: middle;
      width: 120px;
      padding: 10px 0 9px;
      margin: 0 0 0 15px;
    }

footer {
  display: block;
  font-size: 1em;
  color: #fff;
  box-sizing: border-box;
  padding: 50px 15px;
}
  footer a { color: #fff; }
  footer a:hover { color: #ccc; }

  footer .grid {
    display: grid;
    grid-template-columns: 200px 300px 1fr;
    gap: 50px;
  }
  footer .col {
    box-sizing: border-box;
  }
    footer nav {
      margin: 0 0 30px;
    }
      footer nav ul {
        list-style: none;
        padding: 0;
        margin: 0;
      }
        footer nav ul li {
          display: block;
          margin: 0 0 12px;
        }
        footer nav ul li:last-child {
          margin: 0;
        }
          footer nav ul li a {
            display: block;
            font-size: 1em;
            font-weight: bold;
            color: #fff;
          }
          footer nav ul li a:hover {
            color: #ccc;
          }

    footer .locations {
    }
      footer .locations .loc_col {
        display: inline-block;
        vertical-align: top;
        width: 50%;
      }
        footer .locations span {
          display: block;
          font-weight: 600;
          margin: 0 0 10px;
        }
        footer .locations a {
          display: block;
          margin: 0 0 3px;
        }

    footer .phone {
      font-size: 2em;
      line-height: 1.2em;
    }
    footer .business_hours {
      font-size: .93em;
    }
    footer .temp_hours_summer {
      max-width: calc(100% - 30px);
      background: #fff;
      font-size: .75em;
      color: #333;
      border-radius: 3px;
      box-sizing: border-box;
      padding: 8px 10px;
      margin: 10px 0 0 0 !important;
    }

    footer .logo {
      margin: 0 0 30px;
    }
      footer .logo svg {
        width: 100%;
        max-width: 230px;
        height: auto;
        fill: currentColor;
        color: #fff;
        margin: 0;
        transition: all .2s;
        -webkit-transition: all .2s;
      }
    footer .address {
      margin: 25px 0 0 0;
    }

    footer .reviews {
      margin: 0 0 25px 0;
    }
      footer .reviews a {
        display: block;
      }
        footer .reviews img,
        footer .payment img {
          display: block;
          width: 100%;
          max-width: 300px;
          height: auto;
        }
        footer .payment img {
          max-width: 600px;
        }

#d, #l {
  display: none;
}




@media screen and (max-width: 1400px){
  footer {
    padding: 50px 25px;
  }
}



@media screen and (max-width: 1200px){
  header a#logo {
    margin: 0 20px 5px 0;
  }
  header nav {
    padding: 0;
  }
    header nav ul li {
      margin: 0 16px 0 0;
    }
      header nav ul li a {
        font-size: .8em;
      }
  header a.tp {
    width: 110px;
  }
  header .search_nearest {
    margin: -8px 25px 0 0;
  }
    header .search_near_loc {
      width: 250px;
      font-size: .8em;
      border: 2px solid #225ea6;
      padding: 11px 0px 10px 8px;
    }
      header form#search_nearest ul#ui-id-1 {
        top: 109px !important;
      }
  header .actions {
    margin: 0;
  }
    header .actions a {
      width: 28px;
      height: 28px;
      margin: 0 20px 0 0;
    }

  #hero .slider .content {
    padding: 128px 0 0 30px;
  }

  main {
    padding: 140px 0 30px 0;
  }

  footer .grid {
    display: grid;
    gap: 50px;
  }
    footer .locations .loc_col {
      display: block;
      width: 100%;
    }
}



@media screen and (max-width: 1000px){
  h3 {
  	font-size: 1.4em;
  	line-height: 1.3em;
  	margin: 0 0 25px 0;
  }
  header {
    box-shadow: 0 3px 8px rgba(0,0,0, .08);
    padding: 6px 0 0;
  }
    header a#logo {
      width: 180px;
      margin: 2px 0 0 0;
    }
      header a#logo svg {
        margin: 0;
      }
    header .nav_tgl {
      position: absolute;
      top: 12px;
      right: 17px;
      display: inline-block;
      width: 36px;
      height: 36px;
      background-image: url('../svg/menu.svg');
    	background-position: center center;
    	background-size: 80%;
    	background-repeat: no-repeat;
      cursor: pointer;
    }
    header nav {
      position: absolute;
      top: 57px;
      right: 0;
      display: none;
      width: 300px;
      height: auto;
      max-height: calc(100vh - 58px);
      background-color: #fff;
      box-shadow: 0 0 12px rgba(0,0,0, .2);
      text-align: left;
      padding: 0;
      overflow-y: scroll;
      overflow-x: hidden;
    }
    header nav::-webkit-scrollbar{
      display: none;
    }
      header nav ul li {
        display: block;
        border-bottom: 1px solid #ddd;
        margin: 0;
      }
      header nav ul li:last-child {
        border: none;
      }
        header nav ul li a,
        header nav > ul > li:not(.c):hover > a {
          display: block;
          font-size: .8em;
          font-weight: 300;
          box-sizing: border-box;
          padding: 7px 15px 11px;
          margin: 0;
        }
        header nav > ul > li:not(.c):hover > a {
          color: #000;
        }
        header nav > ul > li.c > a {
          background-color: #225ea6;
          color: #fff;
        }
        header nav ul li a span {
          width: calc(100% - (10px + (10px + 10px) + 10px + 2px));
        }
        header nav ul li a svg {
          display: inline-block;
          vertical-align: middle;
          width: 10px;
          height: auto;
          fill: currentColor;
          color: #666;
          border: 1px solid #ccc;
          border-radius: 3px;
          -webkit-border-radius: 3px;
          padding: 11px 8px 9px;
          margin: -2px 0 -2px 10px;
          transition: all .2s;
          -webkit-transition: all .2s;
        }
        header nav ul li a svg.open {
          transform: rotate(180deg);
        }
        header nav ul li.c a svg {
          color: #fff;
        }
          header nav ul li ul {
            position: static;
            display: none;
            width: 100%;
            background-color: #f1f1f1;
            box-shadow: none;
            padding: 0 15px;
            margin: 0 0 0 0;
          }
          header nav ul li ul.open {
            display: block;
          }
            header nav ul li ul li {
              border-bottom: 1px solid rgba(0,0,0, .1);
            }
            header nav ul li ul li:last-child {
              border: none;
            }
              header nav ul li ul li a {
                font-size: .7em;
                padding: 10px 5px 8px 10px;
                color: #666;
              }
              header nav ul li ul li:not(.c):hover a {
                color: #000;
                padding-left: 14px;
              }
              header nav ul li ul li.c a {
                background-color: transparent;
                font-weight: 500;
                color: #000;
              }

    header a.tp {
      width: 85px;
    }
    header .search_nearest {
      vertical-align: bottom;
      margin: -5px 0 8px;
    }
      header .search_near_loc {
        width: 250px;
        font-size: .7em;
        padding: 7px 0px 6px 8px;
      }
      header form#search_nearest ul#ui-id-1 {
        top: 46px !important;
      }

    header .actions {
      vertical-align: bottom;
      margin: 7px 52px 0 0;
    }
      header .actions a {
        width: 26px;
        height: 26px;
        margin: 0 18px 0 0;
      }
      header .actions a.lang_switch {
        width: 40px;
      }
      header .actions a:hover {
        color: #000;
      }
      header .actions a:last-child {
        margin-right: 0;
      }
        header .actions a div {
         display: flex;
         align-items: center;
         justify-content: center;
         width: 100%;
         height: 100%;
         text-align: center;
        }
          header .actions a svg {
            width: 100%;
            height: auto;
            fill: currentColor;
            color: #225ea6;
            margin: 0;
            transition: all .2s;
            -webkit-transition: all .2s;
          }
          header .actions a:hover svg {
            color: #000;
          }

  main {
    padding: 95px 0 30px 0;
  }
    #hero .slide {
      height: 550px;
    }
      #hero .slider .content {
        padding: 95px 0 0 10px;
      }
        #hero .slider .card h1 {
          font-size: 1.3em;
          line-height: 1.25em;
          margin: 0 0 10px;
        }
        #hero .slider .card h2 {
          font-size: .8em;
          font-weight: 400;
          line-height: 1.5em;
        }
      #hero .slider a.action {
        font-size: 1.1em;
        padding: 5px 0 10px;
      }

    main section.img_text .section_card,
    main section.cols,
    main section.cols_2 .section_card,
    main section.cols_3 .section_card {
      display: block;
      padding: 20px;
    }
      main section .section_card .text,
      main section.img_text .section_card .text {
        padding: 30px 0;
      }
      main section .section_card .img {
        height: 400px;
        background-position: center center;
        background-size: contain;
        background-repeat: no-repeat;
      }

      main section table {
        width: 100% !important;
        margin-right: 0 !important;
      }

  .slideshow .slider .slide .txt {
    padding: 15px 10px 13px;
  }
    .slideshow .slider .slide .txt h1 {
      font-size: 2.6rem;
      line-height: 2.2rem;
    }
    .slideshow .slider .slide .txt h2 {
      font-size: .9rem;
      margin: 4px 0 0 0;
    }


  #faq .faq {
    display: block;
    width: 100%;
    margin: 0 0 15px 0;
  }
    #faq a.question {
      font-size: 1.1em;
      line-height: 1.5em;
    }

  footer .grid {
    display: block;
  }
    footer .grid .col {
      display: inline-block;
      vertical-align: top;
      width: 50%;
    }
    footer .grid .col:first-child,
    footer .grid .col:nth-child(2) {
      margin-bottom: 50px;
    }
    footer .grid .col.lst {
      display: block;
      width: 100%;
    }
      footer .locations .loc_col {
        display: inline-block;
        vertical-align: top;
        width: 50%;
      }
      footer .reviews,
      footer .payment {
        width: 100%;
        margin: 0;
      }
      footer .reviews {
        margin-bottom: 20px;
      }
      footer .phone {
        font-size: 1.7em;
        line-height: 1.2em;
      }
      footer .business_hours {
        font-size: .84em;
      }
      footer .address {
        font-size: .9em;
      }
}



@media screen and (max-width: 790px){
  header {
    padding: 8px 0 0;
  }
    header .w_pd {
      padding: 0 10px;
    }
    header a#logo {
      width: 168px;
      padding-bottom: 0 !important;
      margin: 1px 0 2px;
    }
    header .actions {
      margin: 1.5px 55px 0 0;
    }
      header .actions a {
        width: 24px;
        height: 24px;
        margin: 0 18px 0 0;
      }
      header .actions a.lang_switch {
        width: 40px;
        font-size: .9em;
      }
    header .nav_tgl {
      top: 9px;
      right: 10px;
    }
    header nav {
      top: 53px;
    }

    header a.tp {
      width: 75px;
    }
    header .search_nearest {
      margin: -5px 0 8px 0;
    }
      header .search_near_loc {
        width: 220px;
        font-size: .7em;
        padding: 7px 0 6px 8px;
        margin: 0;
      }
      header form#search_nearest ul#ui-id-1 {
        top: 42px !important;
      }



  #hero .slider .content {
    padding: 95px 0 0 10px;
  }

  main {
    padding: 95px 0 10px 0;
  }
    main section h3,
    main.start section h3,
    main.shop section h3 {
      font-size: 1.3em;
      line-height: 1.3em;
      margin: 0 0 25px 0;
    }
    main section p,
    main.start section p,
    main.shop section p,
    main section table {
      font-size: .8em;
      line-height: 1.6em;
    }

    main section.img_text .section_card,
    main section.cols,
    main section.cols_2 .section_card,
    main section.cols_3 .section_card {
      padding: 10px;
    }
    main section .section_card.trnsp + .section_card {
      padding: 25px 0 5px;
    }
      main section .section_card .text,
      main section.img_text .section_card .text {
        padding: 30px 10px 0;
      }
      main section .section_card .text:first-child {
        padding-top: 15px;
      }

      /* Start page: Text block below Steps module */
      main section .section_card.trnsp + .section_card .text {
        padding: 0 20px;
      }

      main section.cols_2 .section_card .text,
      main section.cols_3 .section_card .text {
        padding: 10px 10px 0;
      }
      main section .section_card .img {
        background-position: center center;
        background-size: cover;
      }

    #quicksearch {
      font-size: .8em;
    }
}



@media screen and (max-width: 625px){
  h3 {
  	font-size: 1.1em;
  	line-height: 1.3em;
  	margin: 0 0 20px 0;
  }

  #hero {
    padding-top: 60px;
  }
  #hero.fclty {
    padding-top: 0;
  }
  #hero.fclty .slide {
    height: 400px;
  }
    #hero .slide {
      height: 400px;
    }
      #hero .slider .content {
        padding: 35px 0 0 0;
      }
        #hero .slider .box {
          max-width: 75%;
        }
          #hero .slider .card h1 {
            font-size: .9em;
            margin: 0 0 10px;
          }
          #hero .slider .card h2 {
            font-size: .7em;
          }
        #hero .slider a.action {
          font-size: .8em;
          padding: 4px 0 7px;
        }

  .slideshow-desktop {
    display: none;
  }
  .slideshow-mobile {
    display: block;
  }
    .slideshow .slider .slide .txt {
      padding: 11px 10px 8px;
    }
      .slideshow .slider .slide .txt h1 {
        font-size: 2rem;
        line-height: 1.6rem;
      }
      .slideshow .slider .slide .txt h2 {
        font-size: .7rem;
        font-weight: 500;
        margin: 4px 0 0 0;
      }

  #faq a.question {
    font-size: .9em;
  }
    #faq a.question def {
      width: 26px;
      height: 26px;
      font-size: .9em;
      line-height: 23px;
      margin: 0 15px 0 0;
    }
    #faq a.question span {
      width: calc(100% - (26px + 15px));
    }
  #faq .answer {
    font-size: .8em;
    line-height: 1.5em;
    padding: 5px 0 0 41px;
  }

  footer .grid .col {
    display: block;
    width: 100%;
  }
    footer .grid .col.lst {
      margin-top: 50px;
    }
}





@media screen and (max-width: 580px){
}





@media screen and (max-width: 450px){
  header .actions {
    margin: 1.5px 50px 0 0;
  }
    header .actions a.lang_switch {
      display: none;
    }
    header .actions a {
      vertical-align: bottom !important;
      width: 22px;
      height: 22px;
      margin: 0 13px 0 0;
    }

  header form#search_nearest ul#ui-id-1 {
    top: 89px !important;
  }

  header .nav_tgl {
    top: 10px;
  }
  header nav {
    top: 49px;
    width: 250px;
  }

  #hero {
    padding-top: 60px;
  }
    #hero .slide {
      height: 360px;
    }
      #hero .slider .content {
        padding: 35px 0 0 0;
      }
        #hero .slider .card {
          padding: 12px;
        }
          #hero .slider .card h1 {
            font-size: .75em;
            margin: 0 0 10px;
          }
          #hero .slider .card h2 {
            font-size: .65em;
          }
}
