/*
.phistory {
	padding-left: 0px
}
*/

.shk-countrow {
    display: flex;
    align-items: center;
    justify-content: center;
}

#stuffHelper div:last-child {
    margin-top: 5px !important;
}

.shk-del {
    width: 17px;
    height: 17px;
    display: inline-block;
    border: 1px solid black;
    border-radius: 3px;
    background-color: #f4f6f8;
    box-shadow: none;
    color: #546B77;
    border: 1px solid #e4eef3;
    position: relative;
    padding: 1px;
    box-sizing: border-box;
}

.shk-del:after {
    content: '';
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(/assets/templates/calc/img/icons8-close.svg);
    display: block;
    width: 100%;
    height: 100%;
}

.installer-map-ttl {
	display: block;
    position: absolute;
    color: #e3e7ec;
    width: 240px;
    font-size: 42px;
    text-align: center;
    left: 50%;
    margin-left: -120px;
    top: 240px;
    font-weight: bolder;
}

.faq_question > [data-block=item] {
    text-decoration: none !important;
    border-bottom: 1px dashed black;
}

.faq_question > [data-block=item]:hover {
    cursor: pointer !important;
	border-bottom-style: solid;
}

.shop-cart td {
    padding: 10px !important;
}

.main-table .cy a {
    text-decoration: none !important;
    color: white !important;
}


.main-table .cy a:hover {
    text-decoration: underline !important;
}

.nav-link.dropdown:hover {
	cursor: pointer;
}

.sidebar-container .logo {
	z-index: 2;
}

.post-box b, .post-box strong { font-family: 'Geometria Bold'; }

body:not(.recycle) .post-box p + ul, body:not(.recycle) .post-box p + ol {
	padding-top: 0px !important;
	padding-bottom: 30px !important;
}

.post-box h2 {
	margin-bottom: 25px;
}

body.reviews .header-box .breadcrumbs, body.reviews .header-box .breadcrumbs a {
	color: #11b8e3;
}

#stuffHelper {
    background: #f4f6f8 !important;
    box-shadow: none !important;
    color: #546B77 !important;
    border: 1px solid #d3d3d3 !important;
    padding: 10px !important;
    width: 114px !important;
}

#stuffCount {
    margin-bottom: 10px !important;
}

#stuffHelper .shk-but {
    background: #546B77 !important;
    box-shadow: none !important;
    color: white !important;
    box-shadow: inset 0px 0px 7px 1px rgba(0, 0, 0, 0.4) !important;
    border-radius: 3px !important;
    padding: 3px 10px !important;
}

@media (min-width: 800px) {
	#crumbs-mappage {
		display: none !important;
	}

	.root-footer-r2 .nav li:nth-child(5),
	.root-footer-r2 .nav li:nth-child(9),
	.root-footer-r2 .nav li:nth-child(13),
	.root-footer-r2 .nav li:nth-child(17) {
		break-before: column; /* Переносит элементы с номерами 5, 9, 13 и так далее на новую колонку */
	}
}

.qbox {
		width: auto;
		height: auto;
		background: linear-gradient(to right, #fff, #fff0);
		border-radius: 4px;
		position: relative;
		transform: translate(0);
		transform-style: preserve-3d;
		margin: 20px 0 0 -7px;
		padding: 5px 7px;
	padding: 0px !important;
}
.qshadow:before {
		content: "";
		position: absolute;
		inset: 0px;
		transform: translate3d(10px, 3px, -1px);
		background: conic-gradient(from 90deg at 40% -25%, #fff, #03cfff73, #17bde4, #17bde4, #17bde4, #17bde4, #17bde4, #17bde4);
		filter: blur(10px);
		border-radius: inherit;
	opacity: 0.8;
}

.phistorytimeline-step2020 .box2-c2-t1 {
	font-size: 40px !important;
}

.phistorytimeline-step2020 .box2-c2-t2 {
	font-size: 24px !important;
}

@media (min-width: 992px) {
	.sidebar-container .sidebar-block {
		display: flex;
		flex-direction: column;
	}
	
	.sidebar-container .nav {
		flex-grow: 1;
	}
	
	.sidebar-container .bottom {
		position: relative;
		margin-left: -24px;
		padding-top: 35px !important;
	}

	.sidebar-container .nav {
		top: 0px !important; 
		padding-top: 50px !important;
	}

	.contactSity {
		position: relative;
		top: 0;
		margin-bottom: 10px;
	}

	.contactSityList:hover .select-town-hidden {
		display: none !important;
	}
}

@media (min-width: 1200px) {
	.phistorytimeline .box2-item-head-h {
		font-size: 40px !important;
	}
}

@media (max-width: 1499px) {
	.phistory {
		padding-left: 50px !important;
		margin-left: 250px !important;
	}

	.phistorytimeline {
		margin-top: 50px !important;
	}

	.phistorytimeline-steps {
		width: calc(100% - 150px);
	}
}

@media (max-width: 1200px) {
	.mobheader-container .mobcontact {
		right: 90px;
	}
}

@media (max-width: 1199px) {
	.sidebar-container {
		transform: translateX(100%);
		transition: 0.15s;
		right: 0px;
	}

	.sidebar-container.is-open {
		transform: translateX(0%);
		transition: 0.15s;
	}

	.phistory {
		padding-left: 32px !important;
		padding-right: 32px !important;
		margin-left: 0px !important;
		margin-right: 0px !important;
	}

	.container-history {
		max-width: 100%;
	}
}

@media (max-width: 1100px) {
	.container-history {
		margin-left: 0px !important; 
		padding-left: 0px !important;
    	margin-right: 0px !important;
		padding-right: 0px !important;
	}
}

@media (max-width: 991px) {
    .mobheader-container .phones, .mobheader-container .mobcontact {
        left: auto;
        right: 100px;
        text-align: right;
    }

    .mobheader-container .phone {
        font-size: 19px;
    }

    .mobheader-container .phone:before {
        display: inline-block;
        margin-right: 20px;
        top: 1px;
        position: relative;
    }

    .header-box {
        padding-top: 50px;
        padding-left: 40px;
        padding-right: 40px;
    }

    .content-container .root-footer {
        padding: 40px 40px 40px 40px !important;
    }

    body .content {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }

    body.infolos.archive .items-box .item {
        padding: 0 0 50px 0;
    }

    .content h3 {
       /* margin-bottom: 10px;*/
    }

	.sidebar-container .nav {
		padding: 90px 0 0 0;
	}

	.sidebar-container .nav li a, .sidebar-container .nav li .atag, .sidebar-container .nav li span, .sidebar-container .nav li.search label {
		padding: 7px 15px 4px;
		display: block !important;
	}
}

@media (max-width: 799px) {
    body.inner .content-container {
        padding-top: 80px;
    }

    .header-box {
        padding-top: 40px;
    }

    body .content {
        padding-top: 30px !important;
        padding-bottom: 40px !important;
    }

    .payment .bg {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .payment .var {
        width: 33.33333333333%;
        margin: 0px;
    }

    body .creditform .creditcol .field-wrap .form-field {
        box-sizing: border-box !important;
        width: 100% !important;
    }
    
    .content img {
        max-width: 100% !important;
        height: auto;
    }

    .faqlist {
        margin: 10px 0 70px;
    }

	.map-switcher {
		display: none !important;
	}

	#reviewsmap {
		display: none !important;
	}

	.installer-map-ttl {
		display: none !important;
	}

    body.reviews .content-container {
        padding-top: 70px !important;
    }

    body.reviews.montages .content-container .item {
        height: auto;
    }

    body.reviews.montages .content-container .item .shadow_block {
        position: relative;
    }

    .review-popup-text .close {

    }
}

@media (max-width: 575px) {
	body.page-map .install .reviews-container.container {
		margin-top: 10px !important;
	}

	body.page-map h1 {
		font-size: 35px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	body.reviews .reviews-container .reviews-block {
	padding-left: 20px !important;
    	padding-right: 20px !important;
	}

	body.history-page .phistorytimeline-steps {
		width: 100% !important;
	}

	body.product .products-prices .model-box .price span {
		font-size: 14px;
	}

	body.product .products-prices .caisson .model-box.luck .price {
		top: 0px;
		left: 50%;
	}

	body.product .products-prices .caisson .model-box.luck .button {
		top: 0px;
		left: 50%;
	}

    .mobheader-container .phones .phone {
        font-size: 15px;
        margin-bottom: 7px;
    }

    .mobheader-container .phones .phone:last-child {
        margin-bottom: 0px;
    }

    .mobheader-container .phone:before {
        display: none;
    }

    .mobheader-container {
        height: 70px;
    }

    .mobheader-container .logo {
        top: 10px;
    }

    .mobheader-container .phones {
        top: 17px;
    }

    .mobheader-container .phones, .mobheader-container .mobcontact {
        right: 80px;
    }

    .mobheader-container .menu-in {
        height: 70px;
    }

    .mobheader-container .menu-in .line1 {
        top: 17px;
    }

    .mobheader-container .menu-in .line2 {
        top: 34px;
    }

    .mobheader-container .menu-in .line3 {
        top: 50px;
    }

    body.inner .content-container {
        padding-top: 70px;
    }

    .mobheader-container .logo {
        padding: 0 0 0 55px;
    }

    .mobheader-container .logo .euro {
        font-size: 25px;
    }

    .mobheader-container .logo .technology {
        font-size: 12px;
    }

    .mobheader-container .logo .icon {
        width: 45px;
        height: 45px;
        top: 2px;
        left: 0px;
    }

    .header-box .breadcrumbs {
        font-size: 18px !important;
        padding: 16px 0 0 0;
    }

    .header-box {
        padding-top: 20px;
        padding-left: 20px;
        padding-right: 20px;
    }

    body .content {
        padding-top: 20px !important;
        padding-bottom: 30px !important;
    }

    body .content {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    body.infolos.archive .items-box .item {
        padding: 0 0 40px 0;
    }

    /*Спорно*/
    body.infolos.archive .items-box .item img, #results .items-box .item img {
        float: none;
        display: block;
        width: 100%;
        margin-bottom: 15px !important;
		margin-left: 0px !important;
    }

    .content-container .root-footer {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .creditpage .banks img {
        margin: 0 25px 25px 0;
        max-height: 60px;
    }

    body.product .content .block-subtitle {
        font-size: 25px;
        line-height: 1.2;
    }

    body.inner .post-box ul, body.inner .post-box ol, body.inner ul.list {
        padding: 10px 0 30px 0;
    }

    body.infolos.single .content figure {
        margin-right: 0px;
        margin-bottom: 25px;
    }

    .s-feedback {
        padding-left: 10px;
        padding-right: 10px;
    }

    body.infolos.single .post-box blockquote, body.product .content blockquote {
        margin-right: 0px;
        margin-top: 15px;
        margin-bottom: 30px;
    }

    body.infolos.single .post-box blockquote p, body.product .content blockquote p {
        font-size: 15px;
    }

    .recycle .content .post-box blockquote ul li {
        padding: 0 0 0 40px!important;
        font-size: 15px;
    }

    .recycle .content .post-box .recyclesign {
        margin: 0 auto;
        display: block;
    }

    .expoatm td span {
        max-width: 140px;
        margin-left: auto;
        margin-right: auto;
        margin-top: -55px;
    }

    .recycle .content .post-box .recyclespotimg {
        margin: 0px;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }

    body.inner .content h1 {
        font-size: 35px;
    }

    .evideo {
        margin-bottom: 30px;
    }

    body.inner .post-box ul li {
        margin: 0 0 10px 0;
    }

    body.infolos.single .post-box ul li {
        padding: 0 0 0 25px;
    }

    .reviews-container .button-wrap .button {
        white-space: break-spaces;
    }

    body.infolos.single .post-box ol li {
        padding: 0 0 0 25px;
    }

    div.table {
        overflow-x: scroll;
        position: relative;
    }

    div.table:before {
        content: '(Листайте таблицу вправо-влево)';
        color: rgb(194, 194, 194);
        text-transform: lowercase;
        font-size: 14px;
        display: block;
    }

    .pricetable .cy b {
        white-space: nowrap;
    }

    .delivery {
        padding-left: 20px;
        padding-right: 20px;
    }

    .delivery .items {
        margin: 60px 0px;
    }

    .calc-container .calc-block {
        padding: 30px 20px 40px !important;
    }

    .calc-container .button-wrap .button {
        white-space: break-spaces;
    }

    .calc-container .block-title {
        padding-left: 0px;
        padding-right: 0px;
        font-size: 28px;
    }

    .calc-container form {
        padding: 35px 0 0 0;
    }

    .calc-container .field-wrap .step {
        width: 28px;
        height: 60px;
        box-sizing: border-box;
        padding: 15px 0 0 0;
    }

    .calc-container .field-wrap .form-field {
        margin: 0 0 0 28px;
        height: 57px;
        width: calc(100% - 28px) !important;
        padding: 0 20px 0 20px;
    }

    .calc-container form input:focus+label, .calc-container form input:not(:placeholder-shown)+label, .calc-container form textarea:focus+label, .calc-container form textarea:not(:placeholder-shown)+label {
        top: 8px;
    }

    .calc-container form .calc-label {
        font-size: 14px;
        left: 49px;
        top:23px;
        user-select: none !important;
    }

    .calc-container .field-wrap .wrapper .form-field, .calc-container .field-wrap .form-field.persons {
        padding-top: 15px;
        height: 59px;
        box-sizing: border-box;
    }

    .content-container .container.service .form-field{
        padding-top: 0px !important;
        width: calc(100% - 27px) !important;
    }

    .content-container .container.service .calc-block {
        margin-bottom: 35px;
    }

    .ui-slider {
        left: 120px;
        right: 120px;
    }

    .ui-slider .ui-slider-handle {
        background-position: center !important;
    }

    .calc-container .field-wrap.checkbox-wrap .label {
        padding: 18px 0 0 46px;
        font-size: 18px;
    }

    .calc-container .field-wrap.checkbox-wrap .checkboxes li {
        float: none !important;
        margin: 0px !important;
        margin-left: 17px !important;
    }

    .checkboxes .checkbox {
        font-size: 18px;
    }

    .calc-container form .checkboxes-error {
        right: auto;
        left: 47px;
        top: 0px;
    }

    .popup, .review-popup-text {
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .slider_war.quiz {
        margin-top: 0px;
        padding: 0px;
    }

    .goods .product {
        width: 100%;
        display: block;
        box-sizing: border-box !important;
    }

    .button-wrap.yellow .button.min.shk-but {
        background-position: center !important;
    }

    .reviews-container .button-wrap .button {
        line-height: 1.2;
    }

    hr {
        height: 40px;
    }

    ul.list li, body.inner .content ul.list li {
        font-size: 18px;
        margin: 0 0 15px 0;
    }

    body.inner .content h2 {
        font-size: 28px !important;
    }

    .offering-container.steps .block-subtitle {
        padding: 0 14% 50px;
    }

    .offering-container.steps .field-wrap .step {
        width: 60px;
        height: 60px;
        padding: initial;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .offering-container.steps .field-wrap.checkbox-wrap .label {
        padding: 6px 0 0px 45px;
    }

    .offering-container.steps .form .hint {
        margin: 0px 0px 30px 0;
        padding: 0 0 10px 80px;
    }

    .reviews .reviews-container .button-wrap {
        margin: 20px 0 30px;
    }

    .offering-container.steps .form {
        padding-bottom: 0px;
    }

    body.faqpage.infolos.single .content h1, #faqs > h3 {
        padding-left: 0px !important;
    }

    body.faqpage .faqlist .faq .q {
        padding-right: 0px !important;
    }

    .types-container .img-box {
        float: none;
    }

    body.inner .content .types-container .img-box .image {
        float: none;
        position: relative;
        display: block;
        margin: 0 auto;
        left: 0;
    }

    .description-box ul li{
        padding-left: 0px !important;
    }

    .types-container .slider-wrap .mob-rest, .types-container .slider-wrap_ .mob-rest {
        padding-top: 0px !important;
    }

    .types-container .description-box .wrapper {
        padding: 0 0px;
    }

    .types-container .title-box .button-wrap {
        left: 0;
        right: 0px;
        width: 100% !important;
    }

    .types-container .description-box .chars, .types-container .description-box .chars li {
        font-size: 18px !important;
    }

    body.product .products-prices .chars-box .title, body.product .products-prices .chars-box .measure {
        font-size: 15px;
    }

    body.product .products-prices .caisson .chars-box .digit {
        font-size: 16px;
    }

    .warantyimg img {
        margin: 0 !important;
        margin-bottom: 15px !important;
    }

    body.product .products-prices .model-box .button, body.product .products-prices .model-box .price {
        left: 50%;
    }

    body.product .products-prices .icons-box {
        display: flex;
        flex-wrap: wrap;
        padding-top: 30px;
    }

    body.product .products-prices .icons-box .icon {
        float: none;
        margin: 0;
        margin-bottom: 15px;
        width: 100%;
    }

    .delivery {
        padding-top: 50px;
    }

    body.infolos.single .content figure p img {
        left: 0;
    }

    .content h3 sup, .supdown {
        display: block;
    }

    .expoatm10 {
        display: block;
    }

    .expoatm td b {
        font-size: 28px;
    }

    .expoatm10 > td {
        display: block;
        margin-bottom: 10px;
    }

    .block-subtitle {
        font-size: 18px !important;
    }

    .maps .location:before {
        display: none !important;
    }

    .details table tr td {
        padding: 8px;
    }

    .locationtable td {
        font-size: 14px;
    }

    .details table {
        margin-left: -12px;
        margin-right: -12px;
    }

    .types-container .title-box .wrapper {
        padding: 35px 25px 30px;
    }

    .types-container .title-box .title {
        font-size: 25px;
    }

    .types-container .title-box .subtitle {
        font-size: 18px;
        line-height: 1.3;
    }

    .types-container .title-box .subtitle, .types-container .title-box .price span {
        /*padding-bottom: 0px;*/
    }

    .types-container .title-box .price .pricep b {
       /* font-size: 26px;*/
    }

    body.product .products-prices .icons-box .icon {
        font-size: 1rem;
    }

    body.product .products-prices .icons-box .icon b {
        margin: 0 10px 0 -25px;
    }

    body.product .products-prices .icons-box .icon {
        width: auto;
        margin-right: 30px;
    }

    body.product .products-prices .icons-box {
        padding-top: 0px;
    }

    body.product .products-prices .icons-box {
        margin-bottom: 15px;
    }

    body.product .products-prices .chars-box .productivity {
        width: auto;
    }

    .checkboxes .checkbox {
        font-size: 15px;
    }

    body.product .products-prices .model-box .price {
        position: relative;
        margin-bottom: 15px;
        top: 0px;
    }

    body.product .products-prices .model-box img {
        position: absolute;
        top: 0px;
    }

    body.product .products-prices .model-box {
        padding-top: 45%;
    }

    .whatis-container .whatis-block {
        padding: 50px 25px 40px;
    }

    .whatis-container h2 {
        font-size: 28px;
    }

    .products-container .items-box .item {
        margin: 0 0 30px 0;
    }

    .whatis-container .items-box .item .wrapper {
        padding: 95px 20px 43px;
    }

    .whatis-container .items-box .item .title {
        font-size: 20px;
        padding: 0 35px 25px;
    }

    .whatis-container .items-box .item .description {
        padding: 0 0px;
    }

    .benefits-container .benefits-block {
        padding: 40px 20px 30px;
    }

    h2 {
        font-size: 30px;
    }

    .benefits-container .items-box .item .title {
        font-size: 18px;
    }

    .benefits-container .block-subtitle {
        padding: 0 30px 30px;
    }

    .benefits-container .items-box .item .title {
        padding: 30px 30px 30px 110px;
        font-size: 18px;
    }

    .benefits-container .items-box .item .icon {
        left: 15px;
    }

    .benefits-container .items-box .item {
        margin: 0 0 25px 0 !important;
    }

    .types-container .types-block {
        padding: 40px 20px 30px;
    }

    .types-container h2 {
        padding: 0 0 40px 0;
    }

    .reviews-container .reviews-block {
        padding: 50px 20px 120px;
    }

    .reviews-container .item .title {
        font-size: 28px;
    }

    .reviews-container .item .adres {
        margin-top: 15px;
    }

    body.home .reviews-container .button-wrap, body.home .montages-container .button-wrap {
        width: 100%;
    }

    h2 {
        z-index: 2;
    	position: relative;
    }

	body.product .products-prices .model-box .model {
		transform: scale(0.7);
	}

	body.product .products-prices .model-box img {
		width: 210px;
	}

	.spacer-c3 {
		height: 50px;
	}

	body.inner .content ul.list li:before {
		width: 7px;
		height: 7px;
	}

	ul.list li:before, body.inner .content ul.list li:before {
		top: 9px;
		left: 3px;
	}

    .fancybox-nav.fancybox-next, .fancybox-nav.fancybox-prev {
        margin-top: 0px !important;
    }

    .popup-quickorder .header .man {
        width: 50px;
        height: 50px;
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        border-radius: 50%;
        border: 1px solid #f9f9f9;
        position: absolute !important;
        bottom: 15px;
        left: 27px;
    }

    .popup-quickorder .header {
        padding: 29px 20px 20px 30px;
    }

    .popup-quickorder .product-box {
        padding: 0 0 24px 0;
    }

    .popup-order-hint {
        margin-bottom: 22px;
        margin-top: -18px;
    }

    .popup .title-order {
        line-height: 1;
    }

    .popup .manname, .review-popup-text .manname {
        padding-top: 20px;
    }

    .popup-quickorder {
        height: auto !important;
    }

    .popup .close, .review-popup-text .close {
        right: 20px !important;
        top: 20px !important;
    }

    .popup .manname, .popup .job, .review-popup-text .manname, .review-popup-text .job {
        padding-left: 63px !important;
    }
}

@media (max-width: 560px) {
	.sidebar-container .bottom .phones {
		display: none !important;
	}

	body.infolos.single .post-box blockquote, body.product .content blockquote {
		background-image: none !important;
		padding-left: 15px !important;
	}
}

@media (max-width: 400px) {
	.mobheader-container .logo .icon {
		width: 30px;
		height: 30px;
		top: 7px;
		left: 0px;
	}

	.mobheader-container .logo {
		padding: 0 0 0 38px;
		top: 12px;
	}

	.mobheader-container .logo .euro {
		font-size: 20px;
	}

	.mobheader-container .phones .phone {
		font-size: 12px;
    	margin-bottom: 8px;
	}

	.mobheader-container .phones, .mobheader-container .mobcontact {
		top: 19px;
		right: 73px;
	}

	.sidebar-container {
		width: 100% !important;
	}

	body.inner .content h1 {
		font-size: 30px;
	}

	.block-subtitle {
		font-size: 16px;
	}
}

/*
@media (min-width: 1200px) and (max-height: 800px) {
	.sidebar-container .bottom {
		display: none !important;
	}
}
*/