.stext-block { margin: 2rem 0; padding: 2rem 2rem 2rem 11rem;  border: 3px solid; }
.stext-block.stext-call-us { background: url("../img/icons/vacancy-phone.png") 3% center no-repeat; }
.stext-block.stext-orange { border-color: #ffc844; }
.stext-block.stext-red {  border-color: #df0000; }
.stext-block.stext-important { background: url('../img/icons/important.png') 3% center no-repeat; }
.stext-block.stext-red { border-color: #e80000; } 
.stext-block.stext-sale { background: url('../img/icons/sale.png') 3% center no-repeat; }
.stext-block.stext-qustion { background: url('../img/icons/qustion.png') 3% center no-repeat; }



.about-teasers { display: block; display: flex; flex-flow: row wrap; justify-content: start !important; margin: 4rem 0; align-items: start; }
.about-teasers > * { display: inline-block; padding: 0; margin-bottom: 0; width: 19.8%; }
.about-teaser { min-width: 125px; text-align: center; display: flex; flex-direction: column;  justify-content: center; gap: 1rem; }
.about-teaser .image { display: flex; justify-content: center; }
.about-teaser .content { font-size: 1.6rem; }

.about-drivers { margin: 3rem 0; }
.about-driver { text-align: center; line-height: 1.2; }
.about-driver img { width: 100%; height: auto; }
.about-driver .image { margin-bottom: 1rem; }
.about-driver .name { font-size: 1.8rem; margin-bottom: 0.5rem; font-weight: 500; }
.about-driver .title { padding: 0 1rem; font-size: 1.6rem;  }

@keyframes blink {
	0% { opacity: 1 }
	60% { opacity: 1 }
	80% { opacity: 0.3 }
	10% { opacity: 1 }
}


.contacts-card { border: 1px solid #eee; margin-bottom: 4rem; font-size: 1.5rem; }
.contacts-card h3 { font-weight: bold; font-size: 1.7rem; margin-top: 3rem !important; margin-bottom: 1em; 
	display: flex; align-items: center; gap: 1rem; 
}
.contacts-card h3 .icon { width: 4.5rem; height: 4rem; background: var(--color-yellow); position: relative; display: inline-block; clip-path: polygon(0 0, 90% 0, 90% 40%, 100% 50%, 90% 60%, 90% 100%, 0 100%);}
.contacts-card h3 .icon i { position: absolute; left: 50%; top: 50%; width: 80%; height: 60%; transform: translate(-50%, -50%); margin-left: -2px; }

.contacts-card h2 { font-size: 2.5rem; line-height: 1.2; margin-bottom: 0rem; background: linear-gradient(to right, #fec84440, transparent 4rem), #f5f5f5; padding: 2rem; border-left: 5px solid var(--color-yellow); }
.contacts-card strong { font-weight: 600; }
.contacts-card .card-content { padding: 4rem; }
.contacts-card [itemprop="telephone"] { font-size: 2rem; text-decoration: none; }

.simplesearch-results-list { margin-bottom: 2rem; }
.simplesearch-result:not(:last-child) { margin-bottom: 2rem; padding-bottom: 2rem; border-bottom: 1px solid #c4c4c4; }
.simplesearch-result h3 { font-size: 2rem; margin-bottom: 1rem; }
.simplesearch-results { margin-bottom: 2rem; font-style: italic; opacity: 0.8; }



.review:not(:last-child) { margin-bottom: 2rem; }
.review { display: flex; align-items: center; gap: 4rem; }
.review img { max-height: 350px; max-width: 250px; border: 4px solid #c4c4c4; }
.review-info { display: inline-block; flex-grow: 1; font-size: 1.7rem;  }
.review-head { margin: 10px 0 20px; font-size: 2rem; font-weight: 500; }
.review-author { margin-top: 20px; color: #2f2f2f; font-style: italic; }


.ui-container { display: flex; gap: 2rem; align-content: center; margin: 4rem 0;  flex-wrap: wrap; }
.ui-container > * { flex-basis: 350px; flex-grow: 1; }
.ui-container.-small > * { flex-basis: 200px; }

.ui-brand-teaser { display: flex; align-items: center; gap: 1rem; text-decoration: none !important; color: black !important; }
.ui-brand-teaser .image { height: 60px; width: 80px; min-width: 80px;  display: flex; align-items: center; justify-content: center; margin-right: 1rem;}
.ui-brand-teaser .content {  font-size: 1.5rem; }
.ui-brand-teaser .image img { height: 100%; width: 100%; object-fit: contain; transition: all .3s; }

.ui-brand-teaser:hover { text-decoration: underline !important; }
.ui-brand-teaser:hover .image img { transform: scale(105%); }

.ui-teaser .title { font-weight: bold; }

.interesting { padding: 2rem 3rem; background: #f2f2f2; margin-bottom: 2rem; border-left: 5px solid #ffc844; }
.interesting h2 { margin-bottom: 2rem; border: none; padding:0; display: flex; align-items: center; }
.interesting h2::before { content: ''; display: inline-block; width: 5rem; height: 5rem; background: url(../i/icon-heading-interesting.png) center/contain no-repeat; margin-right: 1rem; }
.interesting .interesting-container { display: flex; flex-wrap: wrap; gap: 0 1rem; }
.interesting .interesting-item { }
.interesting .interesting-item a { color: #444; display: inline-block; text-decoration: underline; font-size: 1.4rem; padding: 1rem; transition: all .3s; cursor: pointer; border-radius: 0.5rem; }
.interesting .interesting-item a::before { content: ''; display: inline-block; width: 0.5rem; height: 0.5rem; border-radius: 50%; margin-right: 0.5rem; background: #ffc844; }
.interesting .interesting-item a:hover { text-decoration: none; background: #ffc844; color: black; }
.interesting .interesting-item a:hover::before { background: white; }



/* FAQ стили */
.faq { position: relative; margin: 4rem 0; }
.faq .questions-list { margin-bottom: 5rem;  }
.faq .questions-list.-limited { max-height: 30rem; mask: linear-gradient(white 90%, transparent); -webkit-mask: linear-gradient(white 90%, transparent); }
.faq .more-questions { position: absolute; left: 50%; bottom: -4rem; transform: translate(-50%, 0); margin-bottom: 0; }

.faq.-open .questions-list { max-height: none; mask: none; -webkit-mask: none; margin-bottom: 10rem; }
.faq.-open .more-questions { bottom: -7rem; }

.question.has-answer { margin-bottom: 2rem; }

.question .title { padding: 2rem; cursor: pointer; position: relative; padding-right: 5rem; font-size: 2rem; background: #f0f0f0; }
.question .title::after { content: ""; display: block; height: 100%; width: 5rem; background: #ffc844;  position: absolute; top: 0; right: 0; }
.question .title::before { content: "+"; color: white; display: block; position: absolute; right: 1.5%; transform: translateY(-50%); font-size: 2.5rem; z-index: 1; top: 50%; }
.question .title a { text-decoration: none; color: black; }

.question .answer { padding: 2rem; border: 1px solid #EDEDED; border-top: none; }
.question .answer { display: none; font-style: italic; font-size: 1.4rem; }

.question.-active .title {  background: #ffc844; }
.question.-active .title::before {  content: "-";  color: white; display: block; position: absolute; right: 1.7%; font-size: 4rem; transform: translateY(-50%); z-index: 1; top: 50%; }
.question.-active .answer { display: block; border: 3px solid #ffc844; }



.ui-teasers { display: flex; gap: 2rem; align-content: center; margin: 4rem 0;  flex-wrap: wrap; }
.ui-teasers > * { flex-basis: 200px; }
.ui-teasers.-wide > * { flex-basis: 400px; }
.ui-teaser { display: flex; align-items: center; gap: 1rem;   flex-grow: 1; }
.ui-teaser .content .title { margin-bottom: 1rem;  font-size: 1.7rem; }
.ui-teaser .content { padding: 0; font-size: 1.5rem; }
.ui-teaser .image { width: 9rem; height: 9rem; min-width: 9rem; display: flex; align-items: center; justify-content: center; margin-right: 2rem;}


.tech-gallery { margin-bottom: 4rem; }
.tech-gallery-bottom { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-top: 2rem; align-items: center; font-size: 15px; }
.tech-gallery-bottom .title { font-weight: bold; }
.tech-gallery-bottom a { padding: 0.5rem 1rem; background: #f0f0f0; display: inline-block; transition: all .3s; }
.tech-gallery-bottom a:hover { background: #ffc844; }
.tech-gallery-container { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap:1rem; }
.tech-gallery-container .image { padding-top: 60%; position: relative; transition: all .3s; border: 3px solid white; box-shadow: 0 0 5px 0 #0002; }
.tech-gallery-container .image:hover { transform: scale(102%); }
.tech-gallery-container .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }
.tech-gallery-top { margin-bottom: 1rem; background: #f5f5f5; display: inline-flex; gap: 1rem; align-items: center; border-left: 5px solid #ffc844; padding: 1rem; height: 3em; }
.tech-gallery-top h2 { margin-bottom: 0; font-size: 2rem;  display: flex; align-items: center; line-height: 1.2; }

.tech-gal { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); grid-gap: 2rem; margin-bottom: 2rem; }
.tech-gal > div a { position: relative; display: block; padding-top: 75%; }
.tech-gal > div a img { position: absolute; display: block; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }


.vacancy-item { position: relative; box-shadow: 0 3px 3px #aaa; font-size: 1.7rem; }
.vacancy-item:not(:last-child) { margin-bottom: 3rem; }
.vacancy-top { padding: 3rem; border-bottom: 1px solid #aaa; padding-left: 20rem; }

.vacancy-needs {  align-content: center; padding: 3rem; background: #fbfbfb; margin: 0 !important; }
.vacancy-needs ul { columns: 2; }
.vacancy-needs ul li { margin-bottom: 0.2em !important; }
.vacancy-needs h3 { margin-top: 2rem; }

.vacancy-item h2 { margin: 0; margin-bottom: 1rem !important; font-weight: 500; }
.vacancy-item .call { text-align: center; font-weight: bold;  padding: 2rem; }
.vacancy-item .vacancy-top {  background: var(--image) 2% center no-repeat, linear-gradient(to bottom, #fbfbfb, #fff); }

.vacancy-item-1 .vacancy-top { --image: url("../img/vacancy/vacancy_1.png"); }
.vacancy-item-2 .vacancy-top { --image: url("../img/vacancy/vacancy_2.png"); }
.vacancy-item-3 .vacancy-top { --image: url("../img/vacancy/vacancy_3.png"); }

.vacancy-form { border: none; box-shadow: 0 3px 3px #aaa; padding: 15px 40px; margin: 0; }
.vacancy-form .outer-input-block textarea { min-height: 120px; }
.vacancy-form .checkboxes { gap: 20px; align-content: center; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); grid-gap: 1rem; }
.vacancy-form .checkboxes > * { display: inline-block; padding: 0; margin-bottom: 0; border-left: 3px solid #ffc844; padding-left: 1rem;  }
.vacancy-form .checkbox { flex-basis: 200px;  display: flex; flex-flow: row nowrap; align-items: center;}
.vacancy-form .checkbox input { margin-right: 10px; }
.vacancy-form .outer-input-block-full { margin: 20px 0; width: 100%; }
.vacancy-form .order-form-bottom { min-height: 35px; }
.vacancy-form textarea { min-height: 13.5rem; }
.vacancy-form .form-buttons { margin-top: 3rem; }

.vacancy-form.form .jobs label { margin-bottom: 0 !important; font-size: 1.6rem; }


.seo-tags { padding: 3rem; background: #f2f2f2; margin-bottom: 2rem; border-left: 5px solid #ffc844; margin-top: 4rem; }
.seo-tags h2 { border: none !important; padding:0; display: flex; align-items: center; }
.seo-tags h2::before { content: ''; display: inline-block; width: 5rem; height: 5rem; background: url(../img/icons/icon-heading-tags.png) center/contain no-repeat; margin-right: 1rem; }
.seo-tags .tags-container { display: flex; flex-wrap: wrap; gap: 1rem; }
.seo-tags .tags-container > * {   }
.seo-tags .tags-container a { color: #444; display: inline-block; text-decoration: underline; font-size: 1.4rem; padding: 1rem; transition: all .3s; background: #ffffff; cursor: pointer; border-radius: 0.5rem; }
.seo-tags .tags-container a:hover { text-decoration: none; background: #ffc844; color: black; }

.red-square-block { display: flex; flex-flow: row wrap; justify-content: space-between; align-content: center;  margin: 4rem 0; }
.red-square-block > * { position: relative; padding-left: 2rem; }
.red-square-block > *:before { content: ''; display: block; width: 0.75rem; height: 0.75rem; background: var(--color-red); position: absolute;  left: 0; top: 0.5em; }


.price-teasers { display: block; display: flex; flex-flow: row wrap; justify-content: space-between; align-content: center; margin: 40px 0; }
.price-teasers div { min-width: 230px; padding-left: 30px; font-size: 1.5rem; font-weight: bold; display: flex; align-items: center; min-height: 9.5rem; }

.price-teasers div:first-child {
  background: url("../img/price_teaser1.jpg") left center no-repeat, linear-gradient(to right, #e2e2e2, #FFF);
  padding: 5px 15px 5px 100px;
}

.price-teasers div:nth-child(2) {
  background: url("../img/price_teaser2.jpg") left center no-repeat, linear-gradient(to right, #e2e2e2, #FFF);
  padding: 5px 15px 5px 101px;
}

.price-teasers div:nth-child(3) {
  background: url("../img/price_teaser3.jpg") left center no-repeat, linear-gradient(to right, #e2e2e2, #FFF);
  padding: 5px 15px 5px 103px;
}