@media screen and (max-width: 1200px)
{
	.header
	{
	}

	.header .banner
	{
	}

	img
	{
		max-width: 100%;
		height: auto;
	}

	.container
	{
		width: auto;
		padding: 0px 10px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}

	.content
	{
		margin: 0px -10px;
		padding: 10px;
	}

	.footer
	{
		height: auto;
		padding: 10px;
	}

	.base
	{
		margin-bottom: 80px; /* avoid live chat thing */
	}

	.footer > div
	{
		float: none;
		display: block;
		position: static;
	}

	/* homepage */
	.home-info-banner
	{
		display: flex;
		align-items: center;
		height: auto;
	    padding: 78px 0;
	}

	.home-info-banner .container
	{
		margin: 0;
		margin-left: 40px;
	}

	.home-info-banner .info
	{
		float: none;
		width: 100%;
		margin-top: 0;
	}

	.home-info-banner .info > h1
	{
		margin: 0;
	    margin-bottom: 20px;
	}

	.home-info-banner .button
	{
    	line-height: 33px;
		margin: 0;
		padding: 5px;
	}

	.home-info-banner .demo
	{
		display: none;
	}

	.home .grid
	{
		float: none;
		width: 100%;
	}

	/* services page */

	.services-info-banner
	{
		height: auto;
	    padding: 60px 20px;
	}

	.services-info-banner .phones
	{
		height: auto;
		background-size: cover;
	}
	.services-info-banner .phones:after
	{
		content: '';
		display: block;
		position: relative;
		padding-top: 47%;
	}

	.services-features .features
	{
		float: none;
		overflow: hidden;
		width: 100%;
	}

	.demo
	{
		float: none;
	    margin: 0 auto;
	}

	/* contact */
	.contact-us .grid
	{
		float: none;
		width: 100%;
	}

	.contact-us .grid
	{
		text-align: center;
	}
	.contact-us .grid img
	{
		margin-left: 0;
	}

	.contact
	{
		text-align: left;
	}
}

@media screen and (max-width: 670px)
{
	.header .banner
	{
		height: auto;
	}

	.header .logo
	{
		position: relative;
		top: auto;
		margin-top: 20px;
    	margin-bottom: 80px;
	}

	.header .logo-text
	{
		float: none;
    	display: block;
		top: auto;
	}

	.header .logo-image
	{
		position: absolute;
		margin-top: 10px;
	}

	.base
	{
		margin-bottom: 0;
		text-align: center;
	}

	.base .container
	{
		padding: 20px;
	}

	/* home */
	.home-info-banner .container
	{
		margin: 0;
	}

	.home-info-banner .info > h1
	{
		font-size: 35px;
    	line-height: 45px;
	}

	/* services */

	.legal span.copyright,
	.legal span.avd
	{
		display: block;
		float: none;
		line-height: 24px;
	}

	.services-features .features > .grid:nth-of-type(odd)
	{
		width: 100%;
		float: none;
	}

	.services-features .features > .grid
	{
		float: none;
		width: 100%;
	}
}

@media (max-width: 599px) {
  .cart td {
    display: block;
    text-align: center;
    max-width: calc(100% - 20px);
    width: 200px; }
    .cart td.remove:before {
      content: "Remove: "; }

    .cart td.quantity, .cart td.price, .cart td.total {
      display: inline;
      padding: 0px; }

    .cart td.price:before {
      content: " x "; }

    .cart td.price:after {
      content: " = "; }

  .cart td.image a {
    display: inline-block; }

  .cart td.name {
    text-align: center; }
}
