
@import url('https://fonts.googleapis.com/css?family=Rajdhani:300,400,500,600,700');
@import url('https://fonts.googleapis.com/css?family=Poppins:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i');


* { box-sizing: border-box; }
a, button { transition: all .3s ease-in-out; }


html {
    scroll-behavior: smooth;
}

body {
    color: #666666;
    font-size: 14px;
    line-height: 1.80857;
    font-weight: normal;
    overflow-x: hidden;
    font-family: 'Sen', sans-serif;
}

a {
    color: #1f1f1f;
    text-decoration: none !important;
    outline: none !important;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    letter-spacing: 0;
    font-weight: normal;
    position: relative;
    padding: 0 0 10px 0;
    font-weight: normal;
    line-height: normal;
    color: #111111;
    margin: 0
}

h1 {
    font-size: 24px
}

h2 {
    font-size: 22px
}

h3 {
    font-size: 18px
}

h4 {
    font-size: 16px
}

h5 {
    font-size: 14px
}

h6 {
    font-size: 13px
}

*,
*::after,
*::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #212121;
    text-decoration: none!important;
    opacity: 1
}

button:focus {
    outline: none;
}

ul,
li,
ol {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

p {
    margin: 20px;
    font-weight: 300;
    font-size: 15px;
    line-height: 24px;
}

a {
    color: #222222;
    text-decoration: none;
    outline: none !important;
}

a,
.btn {
    text-decoration: none !important;
    outline: none !important;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

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

 :focus {
    outline: 0;
}

.paddind_bottom_0 {
    padding-bottom: 0 !important;
}

.btn-custom {
    margin-top: 20px;
    background-color: transparent !important;
    border: 2px solid #ddd;
    padding: 12px 40px;
    font-size: 16px;
}

.lead {
    font-size: 18px;
    line-height: 30px;
    color: #767676;
    margin: 0;
    padding: 0;
}

.form-control:focus {
    border-color: #ffffff !important;
    box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .25);
}

.navbar-form input {
    border: none !important;
}

.badge {
    font-weight: 500;
}

blockquote {
    margin: 20px 0 20px;
    padding: 30px;
}

button {
    border: 0;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.full {
    float: left;
    width: 100%;
}

.layout_padding {
    padding-top: 35px;
    padding-bottom: 0px;
}

.padding_0 {
    padding: 0px;
}


/* header section start */

.header_section {
    width: 100%;
    float: left;
    background-color: #f9b116;
    height: auto;
    background-size: 100%;
}

.bg-light {
    background-color: transparent !important;
}

.ml-auto,
.mx-auto {
    margin: 0 auto !important;
}

.navbar-expand-lg .navbar-nav .nav-link {
    padding: 3px 20px;
    font-size: 17px;
    color: #fefefd;
    border-radius: 5px;
    text-transform: uppercase;
}

.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover {
    color: #252525;
}

.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .show>.nav-link {
    color: #252525;
}

.navbar-brand {
    width: 24%;
}

.navbar {
    padding: 15px 0px;
}


/* header section end */


/* banner section start */

.banner_section {
    width: 100%;
    float: left;
    background-image: url(../images/banner-bg.png);
    height: auto;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-bottom: 100px;
}

.banner_taital {
    width: 100%;
    float: left;
    font-size: 70px;
    color: #ffffff;
    padding-top: 100px;
    font-weight: bold;
    line-height: 70px;
    text-transform: uppercase;
    text-align: center;
}

.banner_text {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #f8f8f8;
    margin: 0px;
    padding: 30px 0px;
    text-align: center;
}

.read_bt {
    width: 170px;
    margin: 0 auto;
    text-align: center;
}

.read_bt a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #ffffff;
    background-color: #f9b116;
    padding: 12px 0px;
    text-align: center;
    border-radius: 4px;
}

.read_bt a:hover {
    color: #252525;
    background-color: #ffffff;
}

#main_slider a.carousel-control-prev {
    position: absolute;
    left: 0px;
    top: 90%;
}

#main_slider a.carousel-control-next {
    position: absolute;
    right: 0px;
    top: 90%;
    background-color: #ffffff;
    color: #252525;
}

#main_slider .carousel-control-prev,
#main_slider .carousel-control-next {
    width: 50px;
    height: 50px;
    background: #f9b116;
    opacity: 1;
    font-size: 30px;
    color: #ffffff;
}

#main_slider .carousel-control-prev:hover,
#main_slider .carousel-control-next:hover,
#main_slider .carousel-control-prev:focus,
#main_slider .carousel-control-next:focus {
    background: #ffffff;
    color: #000;
}


/* banner section end */


/* service section start */

.service_section {
    width: 100%;
    float: left;
    padding-top: 90px;
}

.service_taital {
    width: 100%;
    float: left;
    font-size: 50px;
    color: #232222;
    font-weight: 800;
    text-align: center;
}

.service_taital::after {
    content: '';
    position: absolute;
    width: 50px;
    left: 0px;
    right: 0px;
    background-color: #f9b116;
    height: 10px;
    bottom: 0px;
    margin: 0 auto;
    border-radius: 20px;
}

.service_section_2 {
    width: 100%;
    float: left;
    padding-top: 30px;
}

.service_box {
    width: 100%;
    background-color: #f9b116;
    height: auto;
    padding: 40px 20px;
    border-radius: 10px;
    margin-top: 30px;
}

.service_box:hover {
    background-color: #161616;
    margin-top: 50px;
}

.service_box.active {
    background-color: #161616;
    margin-top: 50px;
}

.building_icon {
    width: 100%;
    text-align: center;
    padding: 0px 0px 20px 0px;
    min-height: 93px;
}

.residential_text {
    width: 80%;
    font-size: 26px;
    color: #fcfcfd;
    text-align: center;
    margin: 0 auto;
}

.service_text {
    width: 100%;
    font-size: 15px;
    color: #fcfcfd;
    text-align: center;
    margin: 0px;
}

.readmore_bt {
    width: 170px;
    margin: 0 auto;
    text-align: center;
    padding-top: 30px;
}

.readmore_bt a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #fcfcfd;
    background-color: #232222;
    text-align: center;
    padding: 12px 0px;
    border-radius: 5px;
    font-weight: bold;
    text-transform: uppercase;
}

.readmore_bt a:hover {
    color: #fcfcfd;
    background-color: #f9b116;
}

.readmore_bt.active a {
    color: #fcfcfd;
    background-color: #f9b116;
}


/* service section end */


/* about section start */

.about_section {
    width: 100%;
    float: left;
}

.about_taital {
    width: 100%;
    float: left;
    font-size: 50px;
    color: #232222;
    font-weight: 800;
    text-align: center;
    text-transform: uppercase;
}

.about_taital::after {
    content: '';
    position: absolute;
    width: 100px;
    left: 0px;
    background-color: #f9b116;
    height: 10px;
    bottom: 0px;
    right: 0px;
    margin: 0 auto;
    border-radius: 20px;
}

.about_section_2 {
    width: 100%;
    float: left;
    background-color: #ffffff;
    height: auto;
    background-size: 100%;
}

.about_taital_main {
    width: 100%;
    float: left;
}

.slightly_text {
    width: 100%;
    float: left;
    font-size: 30px;
    color: #232222;
    font-weight: bold;
    margin-top: 5px;
}

.lorem_text {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #232222;
    margin: 30px 0px 30px 0px;
}

.readmore_btn {
    width: 170px;
    float: left;
    padding-top: 30px;
}

.readmore_btn a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #fcfcfd;
    background-color: #f9b116;
    text-align: center;
    padding: 12px 0px;
    border-radius: 5px;
    font-weight: bold;
}

.readmore_btn a:hover {
    color: #ffffff;
    background-color: #232222;
}

.about_img img {
    width: 100%;
    float: left;
}


/* about section end */


/* testimonial section start */

.testimonial_section {
    width: 100%;
    float: left;
    padding-bottom: 65px;
}

.testimonial_taital {
    width: 100%;
    float: left;
    font-size: 50px;
    color: #111111;
    text-align: center;
    font-weight: bold;
}

.testimonial_text {
    width: 100%;
    float: left;
    font-size: 16px;
    text-align: center;
    color: #232222;
    margin-left: 0px;
}

.testimonial_section_2 {
    width: 70%;
    margin: 0 auto;
    display: flex;
    padding-top: 40px;
    margin-bottom: 10px;
}

.testimonial_left {
    width: 30%;
    float: left;
}

.testimonial_right {
    width: 70%;
    float: left;
}

.client_img {
    width: 100%;
    float: left;
    position: relative;
    padding-top: 20px;
    padding-left: 20px;
}

.client_img::after {
    content: '';
    position: absolute;
    width: 180px;
    height: 214px;
    border: 2px solid #f9b116;
    left: 0px;
    top: 0px;
    z-index: -1;
}

.markro_text {
    width: 100%;
    float: left;
    font-size: 24px;
    color: #232222;
    font-weight: bold;
}

.many_text {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #2f2f2e;
    margin: 0px;
}

.quick_icon {
    width: 100%;
    float: left;
    padding-top: 20px;
}

#my_slider a.carousel-control-prev {
    position: absolute;
    left: 200px;
    top: 105%;
}

#my_slider a.carousel-control-next {
    position: absolute;
    right: inherit;
    top: 105%;
    left: 260px;
}

#my_slider .carousel-control-prev,
#my_slider .carousel-control-next {
    width: 50px;
    height: 50px;
    background: #f9b116;
    opacity: 1;
    font-size: 30px;
    color: #ffffff;
}

#my_slider .carousel-control-prev:hover,
#my_slider .carousel-control-next:hover,
#my_slider .carousel-control-prev:focus,
#my_slider .carousel-control-next:focus {
    background: #252525;
    color: #ffffff;
}


/* testimonial section end */


/* shop section start */

.shop_section {
    width: 100%;
    float: left;
    background-image: url(../images/shop-bg.png);
    height: auto;
    padding: 90px 0px;
    background-size: cover;
    margin-top: 90px;
}

.shop_taital {
    width: 100%;
    float: left;
    font-size: 40px;
    text-align: center;
    color: #f8f8f8;
}

.shop_text {
    width: 100%;
    float: left;
    font-size: 16px;
    text-align: center;
    color: #f8f8f8;
    margin: 0px 0px 40px 0px;
}

.btn_main {
    width: 33%;
    margin: 0 auto;
    text-align: center;
}

.quote_bt {
    width: 170px;
    float: left;
}

.quote_bt a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #ffffff;
    background-color: #f9b116;
    padding: 10px 0px;
    text-align: center;
    border-radius: 5px;
    text-transform: uppercase;
}

.quote_bt a:hover {
    color: #252525;
    background-color: #ffffff;
}

.call_bt {
    width: 170px;
    float: left;
    margin-left: 15px;
}

.call_bt a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #ffffff;
    background-color: #f9b116;
    padding: 10px 0px;
    text-align: center;
    border-radius: 5px;
    text-transform: uppercase;
}

.call_bt a:hover {
    color: #252525;
    background-color: #ffffff;
}

.call_bt.active a {
    background: #ffffff;
    color: #252525
}


/* shop section end */


/* contact section start */

.contact_section {
    width: 100%;
    float: left;
    background-image: url(../images/contact-bg.png);
    height: auto;
    background-size: 100%;
}

.contact_taital {
    width: 100%;
    float: left;
    color: #0b0b0b;
    font-weight: bold;
    font-size: 40px;
    padding-left: 100px;
}

.contact_section_2 {
    width: 100%;
    float: left;
}

.mail_section_1 {
    width: 100%;
    float: left;
    padding-left: 100px;
}

.mail_text {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #363636;
    border: 0px;
    border: 1px solid #003471;
    background-color: #ffffff !important;
    padding: 10px 15px 10px 15px;
    margin-top: 20px;
}

.massage-bt {
    color: #363636;
    width: 100%;
    height: 110px;
    font-size: 18px;
    border: 1px solid #003471 !important;
    background-color: #ffffff !important;
    padding: 40px 15px 10px 15px;
    margin-top: 20px;
}

.send_bt{
  width:170px;
  margin-top:20px;
}

/* Общий стиль “кнопки” — работает и для a, и для button */
.send_bt__btn{
  display:block;
  width:100%;
  background-color:#f9b116;
  color:#fefeff;
  text-align:center;
  padding:12px 0;
  font-size:16px;
  border-radius:4px;

  border:0;
  cursor:pointer;
  text-decoration:none;
  line-height:normal;
}

.send_bt__btn:hover{
  background-color:#252525;
  color:#fefeff;
}


.padding_right0 {
    padding-right: 0px;
}


/* contact section start */


/* footer section start */

.footer_section {
    width: 100%;
    float: left;
    background-color: #252525;
    height: auto;
    background-size: 100%;
    padding-bottom: 30px;
    background-repeat: no-repeat;
    margin-top: 90px;
    padding: 90px 0px;
}

.footer_section_2 {
    width: 100%;
    float: left;
    padding-top: 90px;
}

.useful_text {
    width: 100%;
    font-size: 24px;
    color: #ffffff;
    margin-bottom: 15px;
    font-weight: bold;
}

.footer_text {
    width: 68%;
    float: left;
    font-size: 16px;
    color: #f8f8f8;
    margin: 0px;
    padding-top: 10px;
}

.footer_menu {
    width: 100%;
    float: left;
}

.footer_menu ul {
    margin: 0px;
    padding: 0px;
}

.footer_menu li {
    font-size: 16px;
    color: #f8f8f8;
}

.footer_menu li a {
    color: #f8f8f8;
}

.footer_menu li a:hover {
    color: #f9b116;
}

.footer_menu li.active a {
    color: #f9b116;
}

.Enter_text {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #f8f8f8;
    background-color: transparent;
    padding: 8px 15px;
    margin-top: 10px;
    border: 1px solid #f8f8f8;
}

input.Enter_text::placeholder {
    color: #f8f8f8;
}

.subscribe_bt {
    width: 190px;
    float: left;
    margin-top: 20px;
}

.subscribe_bt a {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #f8f8f8;
    background-color: #f9b116;
    text-align: center;
    padding: 12px 0px;
    text-transform: uppercase;
    border-radius: 4px;
}

.subscribe_bt a:hover {
    color: #252525;
    background-color: #ffffff;
}

.padding_left_15 {
    padding-left: 15px;
}

.social_icon {
    width: 100%;
    float: left;
}

.social_icon ul {
    margin: 0px;
    padding: 0px;
}

.social_icon li {
    float: left;
}

.social_icon li a {
    float: left;
    padding: 20px 30px 0px 0px;
    color: #f8f8f8;
    font-size: 22px;
}

.social_icon li a:hover {
    color: #f9b116;
}


/* footer section end */


/* copyright section start */

.copyright_section {
    width: 100%;
    float: left;
    background-color: #252525;
    height: auto;
}

.copyright_text {
    width: 100%;
    color: #f8f8f8;
    text-align: center;
    font-size: 16px;
    margin: 20px 0px;
}

.copyright_text a {
    color: #f8f8f8;
}

.copyright_text a:hover {
    color: #f9b116;
}

.margin_top_90 {
    margin-top: 90px;
}


/* copyright section end */

.dropdown {
  position: relative;
}


.dropdown-item {
  padding: 10px 20px;
  color: #222;
  display: block;
  text-decoration: none;
  background-color: #fff;
}

.dropdown-item:hover {
  background-color: #f9b116;
  color: #fff;
}

.dropdown-toggle::after {
  margin-left: 0.5em;
  vertical-align: middle;
}


/* Success-block внутри контактов: выглядит как форма */

.pnm-success {
    width: 100%;
    float: left;
    padding-left: 100px;
}

/* Текст */
.pnm-success__title{
  font-size: 26px;
  font-weight: 800;
  margin: 0 0 10px;
  color:#000;
}

.pnm-success__text{
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 12px;
  color:#000;
}

.pnm-success__hint{
  font-size: 16px;
  margin: 0;
  color:#333;
}

.pnm-success__hint a{
  color:#000;
  font-weight:700;
  text-decoration:none;
}

.pnm-success__hint a:hover{
  text-decoration:underline;
}


.pnm-success__box{
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  white-space: normal;
}

/* Типографика */
.pnm-success__title{
  font-weight: 800;
  font-size: 34px;
  margin-bottom: 16px;
}

.pnm-success__text{
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 16px;
}

.pnm-success__hint{
  font-size: 16px;
  margin-top: 8px;
}


.equip-grid{ row-gap:30px; }



.menu-toggle{
  display:none;
  width:32px;
  height:24px;
  flex-direction:column;
  justify-content:space-between;
  background:none;
  border:0;
  cursor:pointer;
}
.menu-toggle span{
  display:block;
  height:3px;
  background:#222;
  border-radius:2px;
}

/* мобильная версия */
@media (max-width: 992px){
  .menu-toggle{ display:flex; }

  .nav-menu{
    display:none;
    width:100%;
    margin-top:15px;
  }
  .nav-menu.is-open{
    display:block;
  }
}

/* collapse без bootstrap.js */
@media (max-width: 992px){
  .navbar-collapse{ display: none; width: 100%; }
  .navbar-collapse.show{ display: block; }
}

@media (max-width: 992px){
  #navbarSupportedContent{
    padding-top: 12px;
  }
  #navbarSupportedContent .navbar-nav{
    gap: 10px;          /* если поддерживается */
  }
  #navbarSupportedContent .nav-link{
    padding: 10px 0;
  }
}


/* Стабильная подсветка для тача и клавиатуры */
#navbarSupportedContent .nav-link:active{
  opacity: .75;
}

#navbarSupportedContent .nav-link:focus,
#navbarSupportedContent .nav-link:focus-visible{
  outline: none;
  opacity: .75;
}

/* hover оставляем только для устройств с мышью */
@media (hover:hover) and (pointer:fine){
  #navbarSupportedContent .nav-link:hover{
    opacity: .75;
  }
}


@media (max-width: 992px){
  #navbarSupportedContent li > ul{ display:none; padding-left: 14px; }
  #navbarSupportedContent li.open > ul{ display:block; }
}


/* футер: контакты */
.footer-contacts .footer-link{
  color: #f5b300;           /* твой жёлтый акцент */
  text-decoration: none;
  font-weight: 500;
}

.footer-contacts .footer-link:hover,
.footer-contacts .footer-link:focus{
  color: #ffd24d;
  text-decoration: underline;
}

/* тач-устройства — без hover-магии */
@media (hover:none){
  .footer-contacts .footer-link:hover{
    color: #f5b300;
    text-decoration: none;
  }
}

.service_section_2 .service_text{
  height: 96px;      /* подгони под дизайн */
  overflow: hidden;
}


.tst-slider{ position: relative; margin-top: 20px; }
.tst-item{ display:none; }
.tst-item.active{ display:block; }

.tst-nav{
  position:absolute;
  top:50%;
  transform: translateY(-50%);
  width:44px;
  height:44px;
  border:0;
  border-radius:50%;
  background:#111;
  color:#fff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:.85;
}
.tst-nav:hover{ opacity:1; }
.tst-prev{ left:-10px; }
.tst-next{ right:-10px; }

.tst-role{
  margin: 4px 0 10px;
  font-size: 14px;
  opacity: .8;
}


.shop_taital__accent{
  color:#f9b116;
}

/* Breadcrumbs */
.breadcrumbs-bar{
  padding: 10px 0;
}

.breadcrumbs__list{
  list-style: none;
  margin: 0;
  padding: 0;
  padding-top: 20px;

  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;

  font-size: 14px;
  line-height: 1.4;
  opacity: .9;
}

.breadcrumbs__item{
  display: inline-flex;
  align-items: center;
}

/* separator between items */
.breadcrumbs__item + .breadcrumbs__item::before{
  content: "›";
  margin-right: 8px;
  opacity: .55;
}

.breadcrumbs__link{
  color: #666;
  text-decoration: none;
}

.breadcrumbs__link:hover{
  text-decoration: underline;
}

.breadcrumbs__current{
  color: #999;
}



.product-gallery { margin: 18px 0 22px; }

.product-gallery__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

/* главное фото */
.product-gallery__main{
  margin: 0;
  border: 1px solid #eee;
  border-radius: 16px;
  overflow: hidden;
  background: #fafafa;
}

.product-gallery__img{
  width: 100%;
  height: auto;
  display: block;
}

/* превью */
.product-gallery__thumbs{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.product-gallery__thumb{
  padding: 0;
  border: 1px solid #eee;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  cursor: pointer;
}

.product-gallery__thumb.is-active{
  outline: 2px solid #0d6efd;
  outline-offset: 2px;
}

.product-gallery__thumb-img{
  width: 100%;
  height: 92px;
  object-fit: cover;
  display: block;
}

/* десктоп: слева колонка превью, справа главное */
@media (min-width: 992px){
  .product-gallery__grid{
    grid-template-columns: 140px 1fr; /* превью-колонка + главное */
    gap: 16px;
    align-items: start;
    margin-left: auto;
    width: fit-content;
  }

  .product-gallery__thumbs{
    grid-template-columns: 1fr;
    gap: 12px;
    position: sticky;
    top: 92px; /* если у тебя шапка липкая — будет приятно */
  }

  .product-gallery__thumb-img{
    height: 128px; /* аккуратный кадр */
  }
}

.product-content{ margin-top: 10px; }

@media (min-width: 992px){
  .product-gallery__maincol{
    max-width: 550px;
    display: flex;
    justify-content: flex-end;
  }

  .product-gallery__main{
    padding: 4px; /* визуальный воздух */
  }
}


/* ===== Tablet gallery tuning ===== */
@media (min-width: 768px) and (max-width: 991.98px){
  /* превью в ряд, но крупнее */
  .product-gallery__thumbs{
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }

  .product-gallery__thumb-img{
    height: 188px; /* подстрой: 120–150 */
  }

  /* чтобы активная рамка не "съедала" картинку визуально */
  .product-gallery__thumb{
    border-radius: 16px;
  }
}


.product-hero{
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  align-items: start;
  margin-top: 12px;
}

@media (min-width: 992px){
  .product-hero{
    grid-template-columns: 340px 1fr; /* форма слева + галерея */
    gap: 24px;
  }
}

/* mini form */
.mini-form{
  border: 1px solid #eee;
  border-radius: 16px;
  padding: 13px;
  background: #fff;
}

.mini-form__title{
  margin: 0 0 3px;
  font-size: 18px;
  line-height: 1.2;
}

.mini-form__note{
  margin: 0 0 9px;
  font-size: 14px;
  opacity: .85;
}

.mini-form__field{
  display: block;
  margin-bottom: 7px;
}

.mini-form__label{
  display: block;
  font-size: 12px;
  opacity: .75;
  margin-bottom: 2px;
}

.mini-form__input,
.mini-form__textarea{
  width: 100%;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  padding: 8px 11px;
  font-size: 13px;
  outline: none;
}

.mini-form__btn{
  width: 100%;
  border: 0;
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 14px;
  cursor: pointer;
}

.mini-form__policy{
  margin: 6px 0 0;
  font-size: 11px;
  opacity: .7;
}

.mini-form__textarea{
  min-height: 78px; /* вместо “как получится” */
}


/* ===== mini-form: success (no global conflicts) ===== */
.leadmini-success{ margin: 0; }

.leadmini-success__box{
  padding: 16px;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
  background: #fffaf2;
  border: 1px solid #ffe0b2;
}

.leadmini-success__title{
  margin: 0 0 6px;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 700;
  color: #f5a000; /* близко к шапке */
}

.leadmini-success__text{
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.5;
}

.leadmini-success__text,
.leadmini-success__hint{
  opacity: .85;
}


.leadmini-success__hint{
  margin: 0;
  font-size: 14px;
  line-height: 1.4;
}

.leadmini-success__phone{
  display: inline-block;
  margin-top: 4px;
  font-weight: 700;
  text-decoration: none;
}

#lead-form-mini{
  scroll-margin-top: 120px;
}




.news-grid{
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 991.98px){
  .news-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575.98px){
  .news-grid{ grid-template-columns: 1fr; }
}

.news-card{
  border: 1px solid #eee;
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
}
.news-card__link{ display: grid; grid-template-rows: auto 1fr; text-decoration: none; color: inherit; }
.news-card__media{ margin: 0; background: #f6f6f6; }
.news-card__img{ width: 100%; height: 200px; object-fit: cover; display: block; }
.news-card__img--placeholder{ height: 200px; }
.news-card__body{ padding: 14px 14px 16px; }
.news-card__date{ font-size: 12px; opacity: .7; }
.news-card__title{ margin: 6px 0 8px; font-size: 16px; line-height: 1.25; }
.news-card__text{ margin: 0; font-size: 14px; opacity: .85; }

.news-item__title{ margin: 0 0 8px; }
.news-item__meta{ font-size: 13px; opacity: .7; margin-bottom: 14px; }
.news-item__hero{ margin: 0 0 18px; }
.news-item__hero img{ width: 100%; border-radius: 16px; display: block; }
.news-item__content{ font-size: 16px; line-height: 1.7; }
.news-item__footer{ margin-top: 22px; }


/* ===== PNEVMOMASH: article decorations ===== */

/* Инфо-блок с вертикальной полосой */
.pm-note{
  margin: 18px 0;
  padding: 16px 18px;
  border-left: 5px solid #f2b705; /* янтарная полоса */
  background: #fff7e0;           /* мягкий фон */
  border-radius: 10px;
}
.pm-note__title{
  font-weight: 700;
  margin-bottom: 6px;
  color: #111;
}
.pm-note__text{
  margin: 0;
  color: #444;
}

/* Вариант "важно" (чуть строже) */
.pm-note--important{
  border-left-color: #ff7a00;
  background: #fff1e8;
}

/* Плитки/карточки (универсальный набор для статей) */
.pm-grid{
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 18px;
  margin: 18px 0;
}
.pm-card{
  grid-column: span 6;
  background: #ffffff;
  border: 1px solid #e9e9e9;
  border-radius: 12px;
  padding: 16px 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}
.pm-card__title{
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 700;
  color: #111;
}
.pm-card__text{
  margin: 0;
  color: #555;
}

/* “Почему выбирают” — список с галочками внутри карточек */
.pm-checklist{
  margin: 0;
  padding: 0;
  list-style: none;
}
.pm-checklist li{
  position: relative;
  padding-left: 26px;
  margin: 10px 0;
  color: #444;
}
.pm-checklist li::before{
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 700;
  color: #2b8a3e;
}

/* Медиа в статьях: центр/широкое/врезка */
.pm-figure{ margin: 16px 0; }
.pm-figure img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
}
.pm-figure figcaption{
  margin-top: 8px;
  font-size: 14px;
  opacity: .8;
}

/* Обтекание фото слева/справа (на больших экранах) */
.pm-float-left{ float: left; width: 42%; margin: 6px 18px 12px 0; }
.pm-float-right{ float: right; width: 42%; margin: 6px 0 12px 18px; }

/* Сброс обтекания */
.pm-clear::after{ content:""; display:block; clear:both; }

/* Адаптив */
@media (max-width: 991px){
  .pm-card{ grid-column: span 12; }
  .pm-float-left, .pm-float-right{
    float: none;
    width: 100%;
    margin: 14px 0;
  }
}

.pm-clear::after{
  content:"";
  display:block;
  clear:both;
}


.pm-note,
.pm-grid,
.pm-figure{
  clear: both;
}

/* Fix: чтобы текст обтекал pm-float-left/right (у вас lorem_text и slightly_text = float:left; width:100%) */
.about_section .pm-clear .slightly_text,
.about_section .pm-clear .lorem_text{
  float: none;
  width: auto;
  display: block;
}

