body{
font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}

.header.container-header{
  background:#f4f8ff;
  border-bottom:1px solid rgba(31,41,55,.08);
  box-shadow:none;
  background-image:none;
}

.container-header .navbar{
  min-height:84px;
}

.container-header .container-fluid{
  padding-left:24px;
  padding-right:24px;
}

.header-flex-advanced{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:20px;
  width:100%;
  max-width:1400px;
  margin:0 auto;
  padding:0 20px;
}

#mod-custom114{
  justify-self:start;
}

#mod-menu110{
  justify-self:center;
}

.hp-contacts{
  justify-self:end;
}

#mod-custom114,
#mod-menu110{
  width:auto !important;
}

.header-logo img,
.header-logo svg,
#mod-custom114 img{
  max-height:60px;
  width:auto;
  display:block;
}

#mod-menu110 .navbar-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  margin:0 !important;
  padding:0;
  white-space:nowrap;
}

#mod-menu110 .nav-link{
  font-weight:600 !important;
  font-size:14px;
  letter-spacing:.04em;
  color:#4b5563 !important;
  padding:10px 0 !important;
  border:0 !important;
  text-decoration:none !important;
  position:relative;
  display:inline-block;
  transition:color .15s ease;
}

#mod-menu110 .nav-link:hover{
  color:#111827 !important;
}

#mod-menu110 .nav-link::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  background:#3b6df6;
  border-radius:2px;
  opacity:0;
  transform:scaleX(.6);
  transition:opacity .15s ease,transform .15s ease;
}

#mod-menu110 .nav-link:hover::after,
#mod-menu110 .nav-link.active::after,
#mod-menu110 .nav-link[aria-current="page"]::after{
  opacity:.9;
  transform:scaleX(1);
}

#mod-menu110 li{
  position:relative;
}

#mod-menu110 .mod-menu__sub{
  position:absolute;
  top:calc(50% + 14px);
  left:0;
  min-width:280px;
  padding:14px 0;
  margin:0;
  background:#fff;
  border-radius:6px;
  list-style:none;
  box-shadow:0 10px 30px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06);
  opacity:0;
  transform:translateY(10px);
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
  z-index:9999;
}

#mod-menu110 li:hover > .mod-menu__sub{
  opacity:1;
  transform:translateY(0);
  visibility:visible;
  pointer-events:auto;
}

#mod-menu110 .mod-menu__sub a{
  display:block;
  padding:10px 18px;
  font-size:14px;
  font-weight:400;
  color:#111;
  white-space:normal;
  transition:background .2s ease,padding-left .2s ease;
}

#mod-menu110 .mod-menu__sub a:hover{
  background:#f5f5f5;
  padding-left:26px;
}

#mod-menu110 li:has(.mod-menu__sub) > a::before{
  content:"▾";
  font-size:12px;
}

.hp-contacts{
  display:flex;
  align-items:center;
  gap:14px;
  white-space:nowrap;
}

.hp-phone{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(31,41,55,.12);
  font-weight:700;
  color:#111827;
  text-decoration:none;
  box-shadow:0 6px 16px rgba(17,24,39,.06);
}

.hp-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 20px;
  border-radius:999px;
  font-weight:700;
  text-decoration:none;
  color:#fff;
  background:linear-gradient(135deg,#4f8cff,#3b6df6);
  box-shadow:0 10px 22px rgba(59,109,246,.28);
  transition:box-shadow .2s ease,filter .2s ease;
}

.hp-btn:hover{
  filter:brightness(1.02);
  box-shadow:0 14px 28px rgba(59,109,246,.36);
  color:#fff;
}

html{
  scrollbar-gutter:stable;
}

body{
  overflow-y:scroll;
}

@media (max-width: 992px){
.header-flex-advanced{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  padding-bottom:10px;
}

#mod-menu110 .navbar-nav{
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  white-space:normal;
}

.hp-contacts{
  justify-content:flex-start;
  flex-wrap:wrap;
}
}

.header-flex-advanced .hp-contacts{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  white-space:nowrap !important;
}

.header-flex-advanced .hp-contacts .hp-phone{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:52px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(17,24,39,.14) !important;
  font-weight:700 !important;
  font-size:16px !important;
  color:#111827 !important;
  text-decoration:none !important;
  box-shadow:0 10px 24px rgba(17,24,39,.06) !important;
}

.header-flex-advanced .hp-contacts .hp-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:52px !important;
  padding:0 26px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#5a97ff,#2f6df6) !important;
  color:#fff !important;
  font-weight:700 !important;
  font-size:16px !important;
  text-decoration:none !important;
  box-shadow:0 14px 30px rgba(47,109,246,.28) !important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease !important;
}

.header-flex-advanced .hp-contacts .hp-btn:hover{
  transform:translateY(-1px) !important;
  filter:brightness(1.02) !important;
  box-shadow:0 18px 36px rgba(47,109,246,.34) !important;
  color:#fff !important;
}

#mod-menu110 .navbar-nav{
  gap:34px !important;
}

#mod-menu110,
#mod-menu110 *{
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;
}

#mod-menu110 .nav-link{
  font-size:18px !important;
  font-weight:700 !important;
  color:#4b5563 !important;
  letter-spacing:0 !important;
  padding:10px 0 !important;
  text-transform:none !important;
}

#mod-menu110 .navbar-nav > li > a,
#mod-menu110 .navbar-nav > .nav-item > .nav-link,
#mod-menu110 .mod-menu > li > a,
#mod-menu110 a.nav-link{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif !important;
  font-size:18px !important;
  font-weight:700 !important;
  color:#4b5563 !important;
  padding:12px 0 !important;
  margin:0 !important;
  text-decoration:none !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  border:0 !important;
}

#mod-menu110 .navbar-nav,
#mod-menu110 .mod-menu{
  gap:34px !important;
}

#mod-menu110 .nav-link:hover,
#mod-menu110 a:hover{
  color:#111827 !important;
}

#mod-menu110 .nav-link.active,
#mod-menu110 .nav-link[aria-current="page"],
#mod-menu110 li.active > a{
  color:#111827 !important;
}

#mod-menu110 .nav-link,
#mod-menu110 a{
  position:relative !important;
  display:inline-block !important;
}

#mod-menu110 .nav-link::after,
#mod-menu110 a::after{
  content:"" !important;
  position:absolute !important;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  background:#3b6df6;
  border-radius:2px;
  opacity:0;
  transform:scaleX(.6);
  transition:opacity .15s ease,transform .15s ease;
}

#mod-menu110 .nav-link:hover::after,
#mod-menu110 .nav-link.active::after,
#mod-menu110 .nav-link[aria-current="page"]::after,
#mod-menu110 li.active > a::after{
  opacity:.9;
  transform:scaleX(1);
}

#mod-menu110 .mod-menu__sub a,
#mod-menu110 .dropdown-menu a{
  color:#111827 !important;
  font-weight:500 !important;
  font-size:14px !important;
  padding:0 !important;
}

#mod-menu110 .mod-menu__sub a:hover,
#mod-menu110 .dropdown-menu a:hover{
  background:#f5f5f5 !important;
}

#mod-menu110 a{
  color:#4b5563 !important;
}

ul#mod-menu110 > li{
  margin-left:20px;
}

ul#mod-menu110 > li:first-child{
  margin-left:0;
}

.header-flex-advanced .hp-contacts > a.hp-phone,
.header-flex-advanced .hp-contacts > a.hp-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  line-height:1 !important;
  height:clamp(34px,3.2vw,46px) !important;
  padding:0 clamp(10px,1.6vw,18px) !important;
  font-size:clamp(11px,1vw,14px) !important;
  border-radius:999px !important;
  white-space:nowrap !important;
}

@media (max-width: 992px){
.header-flex-advanced .hp-contacts{
  gap:8px !important;
}
}

#mod-menu110 .mod-menu__toggle-sub{
  display:none !important;
}

@media (min-width: 992px){
#mod-menu110 .mod-menu__toggle-sub{
  display:none !important;
}
}

#mod-menu110 li:has(.mod-menu__sub) > a::before{
  font-size:20px !important;
  line-height:1;
}

.main-navigation > ul{
  display:flex !important;
  justify-content:space-evenly !important;
}

ul#mod-menu110{
  display:flex !important;
  width:100% !important;
  justify-content:space-around !important;
}

.main-navigation{
  max-width:500px;
}

ul#mod-menu110 > li{
  flex:1 1 0 !important;
  text-align:center !important;
  margin:0 !important;
}

ul#mod-menu110 > li > a{
  display:block !important;
  width:100% !important;
}

#mod-menu110 > ul > li.is-open > ul,
#mod-menu110 > ul > li.is-open > .dropdown-menu{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
}

.main-navigation #mod-menu110-submenu0 ul.mod-menu__sub[aria-hidden="false"]{
  display:block !important;
}

.main-navigation #mod-menu110-submenu0 ul.mod-menu__sub{
  display:block !important;
  margin:0 !important;
  padding:0 0 0 12px !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0{
  columns:unset !important;
  column-count:unset !important;
  column-width:unset !important;
  display:grid !important;
  grid-template-columns:240px 240px 240px 240px !important;
  gap:12px 24px !important;
  align-items:start !important;
  padding:16px !important;
  margin:0 !important;
  list-style:none !important;
  justify-content:start !important;
  justify-items:start !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li{
  width:auto !important;
  max-width:none !important;
  justify-self:start !important;
  grid-column:auto !important;
  grid-row:auto !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(1){
  grid-column:1 !important;
  grid-row:1 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(2){
  grid-column:1 !important;
  grid-row:2 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(3){
  grid-column:1 !important;
  grid-row:3 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(4){
  grid-column:2 !important;
  grid-row:1 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(5){
  grid-column:2 !important;
  grid-row:2 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(6){
  grid-column:3 !important;
  grid-row:1 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(7){
  grid-column:3 !important;
  grid-row:2 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(8){
  grid-column:3 !important;
  grid-row:3 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(9){
  grid-column:4 !important;
  grid-row:1 !important;
}

.main-navigation ul#mod-menu110 > li.item-102 > ul#mod-menu110-submenu0 > li:nth-child(10){
  grid-column:4 !important;
  grid-row:2 !important;
}

#mod-menu110-submenu0 ul.mod-menu__sub{
  display:block !important;
  margin:6px 0 0 0 !important;
  padding:0 0 0 12px !important;
  list-style:none !important;
  position:static !important;
  transform:none !important;
  left:auto !important;
  top:auto !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}

#mod-menu110-submenu0 ul.mod-menu__sub[aria-hidden="true"]{
  display:block !important;
}

#mod-menu110-submenu0,
#mod-menu110-submenu11{
  position:absolute !important;
}

#mod-menu110-submenu0::before,
#mod-menu110-submenu11::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-14px;
  height:14px;
  background:transparent;
}

#mod-menu110-submenu0 > li > button.mod-menu__toggle-sub{
  display:none !important;
}

#mod-menu110-submenu0 > li{
  padding-right:0 !important;
}

#mod-menu110 .mod-menu__sub[aria-hidden="false"]{
  display:block !important;
}

#mod-menu110-submenu0 ul.mod-menu__sub a{
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  text-shadow:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}

#mod-menu110-submenu0,
#mod-menu110-submenu0 *{
  filter:none !important;
  mix-blend-mode:normal !important;
}

#mod-menu110-submenu0 ul.mod-menu__sub a{
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-stroke:0 transparent !important;
  -webkit-text-stroke-width:0 !important;
  -webkit-text-stroke-color:transparent !important;
  text-shadow:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}

#mod-menu110-submenu0 > li > ul.mod-menu__sub{
  all:revert !important;
  display:block !important;
  margin:6px 0 10px 0 !important;
  padding:0 0 0 12px !important;
  list-style:none !important;
}

#mod-menu110-submenu0 > li > ul.mod-menu__sub > li > a,
#mod-menu110-submenu0 > li > ul.mod-menu__sub > li > a:hover,
#mod-menu110-submenu0 > li > ul.mod-menu__sub > li > a:focus,
#mod-menu110-submenu0 > li > ul.mod-menu__sub > li > a:active,
#mod-menu110-submenu0 > li > ul.mod-menu__sub > li > a:visited{
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  background:transparent !important;
  -webkit-text-stroke:0 transparent !important;
  text-shadow:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}

#mod-menu110-submenu0 > li > button.mod-menu__toggle-sub{
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}

#mod-menu110-submenu0 > li > a::after,
#mod-menu110-submenu0 > li > a::before{
  content:none !important;
  display:none !important;
}

#mod-menu110-submenu0 > li > a{
  background-image:none !important;
}

#mod-menu110-submenu0 > li{
  display:grid !important;
  grid-template-columns:56px 1fr !important;
  grid-template-rows:auto auto !important;
  column-gap:14px !important;
  row-gap:6px !important;
  align-items:start !important;
}

#mod-menu110-submenu0 > li > ul.mod-menu__sub{
  grid-column:2 !important;
  grid-row:2 !important;
  margin:0 !important;
  padding-left:0 !important;
}

#mod-menu110-submenu0 > li > a:has(img){
  display:contents !important;
}

#mod-menu110-submenu0 > li > a:has(img) .image-title{
  grid-column:2 !important;
  grid-row:1 !important;
  display:inline-block !important;
}

#mod-menu110-submenu0 > li > a:has(img) img{
  grid-column:1 !important;
  grid-row:2 !important;
  width:48px !important;
  height:48px !important;
  object-fit:contain !important;
  margin-top:2px !important;
}

#mod-menu110-submenu0 > li > a,
#mod-menu110-submenu0 > li > a .image-title{
  font-size:16px !important;
  font-weight:600 !important;
  color:#111827 !important;
  text-decoration:none !important;
  line-height:1.25 !important;
}

#mod-menu110-submenu0 > li > a:hover,
#mod-menu110-submenu0 > li > a:hover .image-title{
  color:#1f2937 !important;
}

#mod-menu110-submenu0 > li > ul.mod-menu__sub > li > a{
  font-size:13px !important;
  font-weight:400 !important;
  color:#6b7280 !important;
  text-decoration:none !important;
  line-height:1.1 !important;
  padding:0 0 !important;
  display:inline-block !important;
  transition:color .15s ease,transform .15s ease !important;
}

#mod-menu110-submenu0 > li > ul.mod-menu__sub > li > a:hover{
  color:#111827 !important;
  transform:translateX(3px);
}

#mod-menu110-submenu0 > li > ul.mod-menu__sub > li.active > a,
#mod-menu110-submenu0 > li > ul.mod-menu__sub > li.current > a{
  color:#111827 !important;
  font-weight:500 !important;
}

#mod-menu110 a::after{
  display:none !important;
}

#mod-menu110-submenu0,
#mod-menu110-submenu0 *{
  text-align:left !important;
}

#mod-menu110-submenu0{
  text-align:left !important;
  justify-items:start !important;
  justify-content:start !important;
}

#mod-menu110-submenu0 > li{
  text-align:left !important;
  justify-items:start !important;
}

#mod-menu110-submenu0 > li > a,
#mod-menu110-submenu0 > li > a .image-title,
#mod-menu110-submenu0 > li > ul.mod-menu__sub,
#mod-menu110-submenu0 > li > ul.mod-menu__sub *{
  text-align:left !important;
}

#mod-menu110-submenu0 > li > ul.mod-menu__sub{
  padding-left:14px !important;
}

ul#mod-menu110 > li,
ul#mod-menu110 > li > a{
  text-align:left !important;
}

#mod-menu110-submenu11{
  text-align:left !important;
}

#mod-menu110-submenu11 > li{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  text-align:left !important;
}

#mod-menu110-submenu11 > li > a,
ul#mod-menu110-submenu11 > li.nav-item > a{
  display:block !important;
  padding:10px 18px !important;
  margin:0 !important;
  font-size:16px !important;
  font-weight:600 !important;
  line-height:1.25 !important;
  color:#111827 !important;
  text-decoration:none !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  text-align:left !important;
  transition:color .15s ease,transform .15s ease !important;
}

#mod-menu110-submenu11 > li > a:hover,
#mod-menu110-submenu11 > li > a:focus,
ul#mod-menu110-submenu11 > li.nav-item > a:hover,
ul#mod-menu110-submenu11 > li.nav-item > a:focus{
  background:transparent !important;
  box-shadow:none !important;
  text-decoration:none !important;
  color:#1f2937 !important;
  transform:translateX(3px) !important;
}

#mod-menu110-submenu11 > li:hover{
  background:transparent !important;
}

#mod-menu110-submenu11 a::before,
#mod-menu110-submenu11 a::after{
  content:none !important;
  display:none !important;
}

#mod-menu110-submenu11 > li{
  margin-bottom:4px !important;
}

ul#mod-menu110-submenu11 > li.nav-item + li.nav-item{
  margin-top:4px !important;
}

.main-navigation{
  max-width:600px !important;
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:flex !important;
  justify-content:center !important;
}

ul#mod-menu110{
  display:flex !important;
  justify-content:space-between !important;
  gap:0 !important;
  width:100% !important;
  max-width:1000px !important;
}

#mod-menu110-submenu0{
  border-left:1px solid rgba(17,24,39,.12) !important;
  border-top:1px solid rgba(17,24,39,.12) !important;
}

#mod-menu110-submenu0 > li{
  border-left:1px solid rgba(17,24,39,.12) !important;
  border-top:1px solid rgba(17,24,39,.12) !important;
  padding:12px 12px 10px 12px !important;
}

#mod-menu110-submenu0 > li > a{
  background:transparent !important;
  text-decoration:none !important;
}

mod-list li{
  padding:.1em 0;
}

@media (max-width: 639.98px){
.main-navigation{
  display:flex !important;
  justify-content:center !important;
}

.mobile-menu-toggle{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:44px !important;
  height:44px !important;
  padding:0 !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(17,24,39,.14) !important;
  box-shadow:0 10px 24px rgba(17,24,39,.06) !important;
  cursor:pointer !important;
}

.mobile-menu-toggle .burger{
  width:18px;
  height:12px;
  position:relative;
  display:inline-block;
}

.mobile-menu-toggle .burger::before,
  .mobile-menu-toggle .burger::after,
  .mobile-menu-toggle .burger span{
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:2px;
  background:#111827;
  border-radius:2px;
}

.mobile-menu-toggle .burger::before{
  top:0;
}

.mobile-menu-toggle .burger span{
  top:5px;
}

.mobile-menu-toggle .burger::after{
  bottom:0;
}

.mobile-menu-toggle[aria-expanded="true"] .burger{
  width:18px;
  height:18px;
}

.mobile-menu-toggle[aria-expanded="true"] .burger::before{
  top:8px;
  transform:rotate(45deg);
}

.mobile-menu-toggle[aria-expanded="true"] .burger::after{
  top:8px;
  bottom:auto;
  transform:rotate(-45deg);
}

.mobile-menu-toggle[aria-expanded="true"] .burger span{
  display:none;
}

.main-navigation ul#mod-menu110{
  display:none !important;
}

.main-navigation.is-mobile-open ul#mod-menu110{
  display:flex !important;
}

ul#mod-menu110{
  flex-direction:column !important;
  align-items:stretch !important;
  gap:6px !important;
  width:min(360px,100%) !important;
  margin:10px auto 0 auto !important;
  padding:8px 0 !important;
  position:relative !important;
}

ul#mod-menu110 li{
  position:relative !important;
  text-align:left !important;
}

ul#mod-menu110 > li > a{
  display:block !important;
  width:100% !important;
  padding:12px 14px !important;
  text-decoration:none !important;
}

#mod-menu110 li:not(.parent) > button.mod-menu__toggle-sub{
  display:none !important;
}

#mod-menu110 li.parent > button.mod-menu__toggle-sub{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:40px !important;
  height:40px !important;
  position:absolute !important;
  right:8px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  border-radius:10px !important;
  background:transparent !important;
  border:1px solid rgba(17,24,39,.12) !important;
  cursor:pointer !important;
  z-index:10 !important;
}

#mod-menu110 button.mod-menu__toggle-sub .icon-chevron-down{
  display:none !important;
}

#mod-menu110 li.parent > button.mod-menu__toggle-sub::before{
  content:"+" !important;
  font-size:22px !important;
  line-height:1 !important;
  color:#111827 !important;
  transform:translateY(-1px);
}

#mod-menu110 li.parent > button.mod-menu__toggle-sub[aria-expanded="true"]::before{
  content:"×" !important;
  font-size:26px !important;
  transform:translateY(-2px);
}

#mod-menu110 li.parent > a{
  padding-right:56px !important;
}

#mod-menu110 .mod-menu__sub{
  position:absolute !important;
  left:100% !important;
  top:0 !important;
  min-width:240px !important;
  max-width:min(300px,calc(100vw - 60px)) !important;
  margin:0 !important;
  padding:10px !important;
  background:#fff !important;
  border-radius:12px !important;
  box-shadow:0 10px 30px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06) !important;
  display:none !important;
  z-index:20 !important;
}

#mod-menu110 .mod-menu__sub[aria-hidden="false"]{
  display:block !important;
}

#mod-menu110 .mod-menu__sub a{
  display:block !important;
  padding:10px 12px !important;
  text-decoration:none !important;
  background:transparent !important;
}
}

.mobile-menu-toggle{
  display:none;
}

@media (max-width: 997.98px){
.mobile-menu-toggle{
  display:inline-flex !important;
}
}

@media (min-width: 998px){
.mobile-menu-toggle{
  display:none !important;
}
}

@media (max-width: 997.98px){
#mod-menu110 li:hover > .mod-menu__sub{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

.main-navigation ul#mod-menu110{
  display:none !important;
}

.main-navigation.is-mobile-open ul#mod-menu110{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  width:min(420px,100%) !important;
  margin:10px auto 0 auto !important;
  padding:8px 0 !important;
}

#mod-menu110 li{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  position:relative !important;
  text-align:left !important;
}

#mod-menu110 li > a{
  flex:0 1 auto !important;
  padding:12px 14px !important;
  text-decoration:none !important;
}

#mod-menu110 li:not(.parent) > button.mod-menu__toggle-sub{
  display:none !important;
}

#mod-menu110 li.parent > button.mod-menu__toggle-sub{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:34px !important;
  height:34px !important;
  margin-left:8px !important;
  position:static !important;
  transform:none !important;
  border-radius:8px !important;
  background:transparent !important;
  border:1px solid rgba(17,24,39,.12) !important;
  cursor:pointer !important;
}

#mod-menu110 button.mod-menu__toggle-sub .icon-chevron-down{
  display:none !important;
}

#mod-menu110 li.parent > button.mod-menu__toggle-sub::before{
  content:"+" !important;
  font-size:20px !important;
  line-height:1 !important;
  color:#111827 !important;
  transform:translateY(-1px);
}

#mod-menu110 li.parent > button.mod-menu__toggle-sub[aria-expanded="true"]::before{
  content:"×" !important;
  font-size:22px !important;
  transform:translateY(-1px);
}

#mod-menu110 .mod-menu__sub{
  position:static !important;
  left:auto !important;
  top:auto !important;
  width:100% !important;
  margin:6px 0 10px 0 !important;
  padding:6px 10px !important;
  background:rgba(17,24,39,.03) !important;
  border-radius:12px !important;
  box-shadow:none !important;
  display:none !important;
}

#mod-menu110 .mod-menu__sub[aria-hidden="false"]{
  display:block !important;
}

#mod-menu110 .mod-menu__sub{
  padding-left:14px !important;
}

#mod-menu110 .mod-menu__sub .mod-menu__sub{
  padding-left:18px !important;
}
}

@media (max-width: 997.98px){
#mod-menu110 .mod-menu__sub[aria-hidden="false"]{
  display:block !important;
}
}

@media (max-width: 700px){
#mod-menu110 .mod-menu__sub a{
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-stroke:0 transparent !important;
  text-shadow:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  text-decoration:none !important;
}

#mod-menu110 .mod-menu__sub,
  #mod-menu110 .mod-menu__sub *{
  filter:none !important;
  mix-blend-mode:normal !important;
}
}

html.js-burger-active .main-navigation > .mobile-menu-toggle{
  display:inline-flex !important;
}

html.js-burger-active #mod-menu110 ul.mod-menu__sub,
html.js-burger-active #mod-menu110 ul.mod-menu__sub *{
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  text-shadow:none !important;
}

html.js-burger-active #mod-menu110 ul.mod-menu__sub a,
html.js-burger-active #mod-menu110 ul.mod-menu__sub a:visited{
  color:#000 !important;
  opacity:1 !important;
}

html.js-burger-active #mod-menu110 ul.mod-menu__sub a::before,
html.js-burger-active #mod-menu110 ul.mod-menu__sub a::after,
html.js-burger-active #mod-menu110 ul.mod-menu__sub li::before,
html.js-burger-active #mod-menu110 ul.mod-menu__sub li::after{
  display:none !important;
  content:none !important;
}

@media (max-width: 700px){
html.js-burger-active #mod-menu110 a img{
  margin-right:10px !important;
  flex:0 0 auto !important;
}

html.js-burger-active #mod-menu110 a .mod-menu__image,
  html.js-burger-active #mod-menu110 a .menu-image,
  html.js-burger-active #mod-menu110 a .image-title{
  margin-right:10px !important;
}

html.js-burger-active #mod-menu110 > li{
  margin:0 !important;
}

html.js-burger-active #mod-menu110 > li > a{
  padding-top:10px !important;
  padding-bottom:10px !important;
  line-height:1.25 !important;
}

html.js-burger-active #mod-menu110 ul.mod-menu__sub > li.parent,
  html.js-burger-active #mod-menu110 ul.mod-menu__sub > li.deeper.parent{
  position:relative !important;
  padding-right:52px !important;
}

html.js-burger-active #mod-menu110 ul.mod-menu__sub > li.parent > button.mod-menu__toggle-sub,
  html.js-burger-active #mod-menu110 ul.mod-menu__sub > li.deeper.parent > button.mod-menu__toggle-sub{
  position:absolute !important;
  right:8px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:40px !important;
  height:40px !important;
  padding:0 !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

html.js-burger-active #mod-menu110 > li.parent > button.mod-menu__toggle-sub,
  html.js-burger-active #mod-menu110 > li.deeper.parent > button.mod-menu__toggle-sub{
  position:static !important;
  right:auto !important;
  top:auto !important;
  transform:none !important;
}
}

@media (min-width: 701px) and (max-width: 998px){
.main-navigation{
  display:block !important;
}

#mod-menu110{
  display:block !important;
}

.main-navigation .container,
  .main-navigation .wrap,
  .main-navigation .inner{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
}

@media (min-width: 701px) and (max-width: 998px){
.site-header .navbar-toggler{
  display:none !important;
}

.site-header .navbar-collapse{
  display:flex !important;
  flex-basis:auto !important;
}

.site-header .navbar-nav{
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center;
  gap:.75rem;
}

.site-header .navbar-nav .nav-item,
  .site-header .navbar-nav .nav-link{
  white-space:nowrap;
}

.site-header .navbar{
  flex-wrap:nowrap;
}
}

.site-footer{
  background:#f6f7fb;
  color:#111827;
  padding:48px 0 24px;
  border-top:1px solid #e5e7eb;
      background-color: var(--cassiopeia-color-primary);
    background-image: linear-gradient(135deg, var(--cassiopeia-color-primary) 0%, var(--cassiopeia-color-hover) 100%);
}

.footer__container{
  width:min(1200px,calc(100% - 32px));
  margin-inline:auto;
}

.site-footer a{
  color:#111827;
  text-decoration:none;
}

.site-footer a:hover{
  color:#000;
  text-decoration:underline;
}

.footer__top{
  display:grid;
  grid-template-columns:1.4fr .8fr;
  gap:24px;
  padding-bottom:28px;
  border-bottom:1px solid #e5e7eb;
  margin-bottom:22px;
}

.footer__logo{
  display:inline-flex;
  font-weight:800;
  font-size:18px;
  letter-spacing:.2px;
}

.footer__text{
  margin:10px 0 0;
  max-width:60ch;
  line-height:1.55;
  color:#4b5563;
}

.footer__contacts-title{
  font-weight:600;
  margin-bottom:10px;
  font-size:28px;
}
.footer__contacts .footer__meta {
    font-size:23px;
}
.footer__meta{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:8px;
}

.footer__meta a{
  color:#374151;
}

.footer__meta a:hover{
  color:#000;
}

.footer__nav{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:18px;
  align-items:start;
}

.footer__col{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:14px 14px 10px;
  box-shadow:0 6px 18px rgba(17,24,39,.06);
}

.footer__title{
  list-style:none;
  cursor:pointer;
  font-weight:650;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  user-select:none;
}

.footer__title::-webkit-details-marker{
  display:none;
}

.footer__title > a{
  color:#111827;
}

.footer__title > a:hover{
  color:#000;
}

.footer__title::after{
display:none;
}

details[open] > .footer__title::after{
  transform:rotate(-135deg);
}

.footer__list{
  list-style:none;
  padding:10px 0 0;
  margin:0;
  display:grid;
  gap:8px;
}

.footer__list a{
  color:#374151;
}

.footer__list a:hover{
  color:#000;
}

.footer__links{
  padding-top:12px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 18px;
}

.footer__group-title{
  font-weight:600;
  margin-bottom:6px;
}

.footer__group-title a{
  color:#111827;
}

.footer__group-title a:hover{
  color:#000;
}

.footer__group ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:7px;
  padding-left:12px;
  border-left:2px solid #eef2f7;
}

.footer__group a{
  display:inline-block;
  line-height:1.35;
  color:#4b5563;
}

.footer__group a:hover{
  color:#000;
}

.footer__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:12px;
  padding:10px 12px;
  border-radius:10px;
  background:#0b5bd3;
  border:1px solid #0b5bd3;
  font-weight:600;
  color:#fff !important;
  text-decoration:none !important;
}

.footer__cta:hover{
  background:#094fb8;
  border-color:#094fb8;
}

.footer__bottom{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid #e5e7eb;
  display:flex;
  gap:12px;
  justify-content:space-between;
  flex-wrap:wrap;
  color:#6b7280;
  font-size:14px;
}

.footer__policy a{
  color:#6b7280;
}

.footer__policy a:hover{
  color:#000;
}

@media (max-width: 980px){
.footer__top{
  grid-template-columns:1fr;
}

.footer__nav{
  grid-template-columns:1fr;
}

.footer__links{
  grid-template-columns:1fr;
}
}

@media (max-width: 560px){
.site-footer{
  padding:34px 0 18px;
}
.av-rekv__row {grid-template-columns: 300px 1fr!important;}
.footer__col{
  padding:12px;
}

.avm-tribune__media img,{
  max-height:300px;
}

.avm-hero__panel, .avm-hero__content{
  min-height:260px !important;
}
}

.site-footer a{
  transition:color .2s ease,transform .2s ease;
}

.site-footer a:hover{
  color:#000;
  transform:translateX(3px);
  text-decoration:none;
}

.footer__title > a{
  transition:color .2s ease,transform .2s ease;
  display:inline-block;
}

.site-footer .footer__title > a:hover,
.site-footer .footer__group-title > a:hover,
.site-footer .footer__list a:hover{
  color:#000 !important;
  transform:none !important;
  text-decoration:none !important;
}

.site-footer .footer__group ul li a{
  display:inline-block;
  transition:color .2s ease,transform .2s ease;
}

.site-footer .footer__group ul li a:hover{
  color:#000 !important;
  transform:translateX(3px);
  text-decoration:none !important;
}

.feedback-opd{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:13px;
  line-height:1.35;
  color:rgba(255,255,255,.68);
}

.feedback-opd input{
  margin-top:3px;
  flex:0 0 auto;
}

.feedback-opd a{
  color:rgba(74,163,255,.92);
  text-decoration:underline;
  text-underline-offset:2px;
}

.feedback-success{
  font-weight:800;
  font-size:16px;
}

.avstage-404{
  position:relative;
  min-height:100vh;
  background:#070b12;
  color:rgba(255,255,255,.92);
  display:grid;
  place-items:center;
  padding:40px 16px;
  overflow:hidden;
  font-family:inherit;
}

.avstage-404__bg{
  position:absolute;
  inset:0;
  background:radial-gradient(900px 500px at 20% 10%,rgba(74,163,255,.20),transparent 60%),radial-gradient(800px 450px at 80% 30%,rgba(255,255,255,.06),transparent 65%),radial-gradient(600px 300px at 50% 90%,rgba(74,163,255,.10),transparent 60%);
  filter:blur(0px);
  opacity:1;
  z-index:0;
}

.avstage-404__content{
  position:relative;
  z-index:1;
  width:min(760px,100%);
  text-align:center;
  padding:40px 26px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  backdrop-filter:blur(10px);
  box-shadow:0 20px 70px rgba(0,0,0,.6);
}

.avstage-404__logo{
  max-width:220px;
  width:100%;
  height:auto;
  margin-bottom:18px;
  opacity:.9;
}

.avstage-404__code{
  font-size:clamp(80px,14vw,160px);
  font-weight:900;
  letter-spacing:6px;
  line-height:1;
  background:linear-gradient(135deg,#4aa3ff,#ffffff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 10px 40px rgba(74,163,255,.25);
  margin-bottom:10px;
}

.avstage-404__title{
  font-size:26px;
  font-weight:800;
  margin-bottom:10px;
}

.avstage-404__text{
  font-size:15px;
  line-height:1.55;
  color:rgba(255,255,255,.72);
  margin-bottom:22px;
}

.avstage-404__actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:18px;
}

.avstage-404__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:14px;
  font-weight:800;
  text-decoration:none;
  transition:.2s ease;
  min-width:160px;
}

.avstage-404__btn--primary{
  background:linear-gradient(135deg,#4aa3ff,#7bc0ff);
  color:#071018;
  box-shadow:0 10px 30px rgba(74,163,255,.25);
}

.avstage-404__btn--primary:hover{
  filter:brightness(1.06);
  transform:translateY(-1px);
}

.avstage-404__btn--ghost{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.9);
}

.avstage-404__btn--ghost:hover{
  background:rgba(255,255,255,.10);
  transform:translateY(-1px);
}

.avstage-404__hint{
  font-size:13px;
  line-height:1.4;
  color:rgba(255,255,255,.55);
}

.av-hero, .av-hero *{
  box-sizing:border-box;
}

.av-hero{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

.av-hero__wrap{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:24px 16px;
}

.av-hero__grid{
  width:100%;
  display:grid;
  grid-template-columns:1.05fr 1fr;
  align-items:stretch;
  gap:18px;
  border-radius:22px;
  overflow:hidden;
  background:radial-gradient(900px 420px at 12% 20%,rgba(42,126,255,.10),transparent 60%),linear-gradient(180deg,#f6f7f9,#ffffff);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 14px 30px rgba(16,24,40,.08);
}

.av-hero__content{
  padding:clamp(20px,3vw,44px);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.av-hero__title{
  margin:0 0 18px 0;
  font-weight:800;
  letter-spacing:-0.02em;
  line-height:1.08;
  font-size:clamp(26px,3.2vw,48px);
  color:#27323c;
}

.av-hero__subtitle{
  margin:0 0 26px 0;
  font-size:clamp(14px,1.2vw,18px);
  line-height:1.55;
  color:rgba(39,50,60,.72);
  max-width:42ch;
}

.av-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.av-hero__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 22px;
  border-radius:12px;
  background:#f28c1b;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  font-size:15px;
  line-height:1;
  border:1px solid rgba(0,0,0,.06);
  box-shadow:0 10px 20px rgba(242,140,27,.25);
  cursor:pointer;
  user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;
}

.av-hero__btn:hover{
  filter:brightness(.98);
  box-shadow:0 12px 22px rgba(242,140,27,.30);
}

.av-hero__btn:active{
  transform:translateY(1px);
}

.av-hero__btn:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

.av-hero__media{
  position:relative;
  width:100%;
  height:100%;
  min-height:360px;
  background:#eef2f7;
  overflow:hidden;
}

.av-hero__media::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient( 90deg,rgba(255,255,255,.65),rgba(255,255,255,0) 60% );
  pointer-events:none;
}

.av-hero__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  -webkit-transform:translateZ(0);
  transform:translateZ(0);
}

@media (max-width: 900px){
.av-hero__grid{
  grid-template-columns:1fr;
}

.av-hero__media{
  min-height:260px;
}

.av-hero__media::before{
  background:linear-gradient( 180deg,rgba(255,255,255,.65),rgba(255,255,255,0) 60% );
}
}

@media (max-width: 480px){
.av-hero__wrap{
  padding:18px 12px;
}

.av-hero__btn{
  width:100%;
}
}

@media (prefers-reduced-motion: reduce){
.av-hero__btn{
  transition:none;
}

.av-hero__btn:active{
  transform:none;
}
}

.avstage-module.avstage-equip{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:#1f2a36;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

.avstage-equip__inner{
  max-width:1100px;
  margin:0 auto;
  padding:26px;
  background:linear-gradient(180deg,#f5f8fc,#ffffff);
  border:1px solid rgba(31,42,54,.12);
  border-radius:20px;
  box-shadow:0 12px 28px rgba(16,24,40,0.08);
}

.avstage-equip__title{
  margin:0 0 12px 0;
  font-size:clamp(22px,2.4vw,36px);
  font-weight:750;
  letter-spacing:-0.02em;
  line-height:1.15;
}

.avstage-equip__text{
  margin:0 0 14px 0;
  font-size:16px;
  line-height:1.6;
  color:rgba(31,42,54,.78);
  max-width:70ch;
}

.avstage-equip__list{
  margin:0 0 18px 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.avstage-equip__list li{
  position:relative;
  padding-left:24px;
  font-size:15px;
  line-height:1.5;
  color:rgba(31,42,54,.78);
}

.avstage-equip__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.55em;
  width:10px;
  height:10px;
  border-radius:50%;
  background:rgba(47,124,246,.16);
  border:2px solid rgba(47,124,246,.45);
}

.avstage-equip__actions{
  margin-bottom:18px;
}

.avstage-equip__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  min-height:44px;
  border-radius:999px;
  background:rgba(47,124,246,.12);
  border:1px solid rgba(47,124,246,.25);
  text-decoration:none;
  font-weight:700;
  font-size:14px;
  color:#1f63d2;
  transition:background 0.2s ease,border-color 0.2s ease;
  -webkit-tap-highlight-color:transparent;
}

.avstage-equip__btn:hover{
  background:rgba(47,124,246,.18);
  border-color:rgba(47,124,246,.40);
}

.avstage-equip__btn:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

.avstage-equip__image{
  width:100%;
  margin-top:10px;
}

.avstage-equip__image img{
  width:100%;
  height:auto;
  aspect-ratio:16 / 9;
  object-fit:cover;
  border-radius:18px;
  border:1px solid rgba(31,42,54,.10);
  background:#eef2f7;
  display:block;
}

@media (max-width: 600px){
.avstage-equip__inner{
  padding:18px;
}
}

@media (prefers-reduced-motion: reduce){
.avstage-equip__btn{
  transition:none;
}
}

.avm-hero{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  color:#27323c;
}

.avm-hero__container{
  max-width:1200px;
  margin:0 auto;
  padding:24px 16px;
}

.avm-hero__panel{
  position:relative;
  width:100%;
  min-height:560px;
  border-radius:22px;
  overflow:hidden;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:right center;
  background-color:#eef2f7;
}

@media (max-width: 900px){
.avm-hero__panel{
  min-height:460px;
  background-position:center;
}

.avm-hero__content{
  min-height:460px;
  max-width:100%;
  padding:22px;
}

.avm-hero__panel::before{
  background:linear-gradient( 180deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.78) 42%,rgba(255,255,255,0) 72% );
}
}

@media (max-width: 520px){
.avm-hero__container{
  padding:18px 12px;
}

.avm-hero__btn.feedback-open-text{
  width:100%;
}
}

.avm-equip, .avm-equip *{
  box-sizing:border-box;
}

.avm-equip{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  color:#27323c;
}

.avm-equip__outer{
  width:100%;
  padding:40px 0;
  background:radial-gradient(1200px 520px at 15% 10%,rgba(47,124,246,.08),transparent 60%),linear-gradient(180deg,#f6f8fc,#ffffff);
}

.avm-equip__container{
  max-width:1200px;
  margin:0 auto;
  padding:24px 16px;
}

.avm-equip__panel{
  border-radius:22px;
  overflow:hidden;
  background:radial-gradient(900px 420px at 12% 18%,rgba(47,124,246,.08),transparent 62%),linear-gradient(180deg,#f6f8fc,#ffffff);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 14px 30px rgba(16,24,40,0.08);
  padding:clamp(20px,3vw,40px);
  text-align:center;
}

.avm-equip__title{
  margin:0 0 12px;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
  color:#27323c;
}

.avm-equip__actions{
  margin-bottom:20px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
}

.avm-equip__btn.feedback-open-text:active{
  transform:translateY(0);
  filter:brightness(.98);
}

.avm-equip__image{
  width:100%;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(39,50,60,.10);
  background:#eef2f7;
}

.avm-equip__image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

@media (max-width: 900px){
.avm-equip__image{
  height:320px;
}
}

@media (max-width: 520px){
.avm-equip__container{
  padding:0 12px;
}

.avm-equip__outer{
  padding:32px 0;
}

.avm-equip__panel{
  padding:18px;
}

.avm-equip__btn.feedback-open-text{
  width:100%;
}

.avm-equip__image{
  height:240px;
}
}

@media (prefers-reduced-motion: reduce){
.avm-equip__btn.feedback-open-text{
  transition:none;
}

.avm-equip__btn.feedback-open-text:hover{
  transform:none;
}
}

.avm-scene, .avm-scene *{
  box-sizing:border-box;
}

.avm-scene{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  color:#27323c;
}

.avm-scene__container{
  max-width:1200px;
  margin:0 auto;
  padding:24px 16px;
}

.avm-scene__panel{
  border-radius:22px;
  background:radial-gradient(900px 420px at 12% 18%,rgba(47,124,246,.08),transparent 62%),linear-gradient(180deg,#f6f8fc,#ffffff);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 14px 30px rgba(16,24,40,0.08);
  padding:clamp(20px,3vw,40px);
}

.avm-scene__title{
  margin:0 0 18px;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-scene__grid{
  display:grid;
  grid-template-columns:1.25fr 1fr;
  gap:16px;
  align-items:stretch;
}

.avm-scene__right{
  display:grid;
  grid-template-rows:1fr 1fr;
  gap:16px;
}

.avm-scene__tile{
  position:relative;
  display:grid;
  grid-template-rows:1fr auto;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(39,50,60,.10);
  opacity:.90;
  box-shadow:0 6px 14px rgba(16,24,40,0.05);
  transform:translateZ(0);
  -webkit-tap-highlight-color:transparent;
  transition:opacity .18s ease,box-shadow .18s ease,transform .18s ease,border-color .18s ease;
}

.avm-scene__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
  box-shadow:0 0 0 1px rgba(47,109,255,.25),0 0 0 6px rgba(47,109,255,.10);
}

.avm-scene__media{
  position:relative;
  width:100%;
  height:100%;
  background:#eef2f7;
}

.avm-scene__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  filter:none!important;

}

.avm-scene__media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:transparent !important;
  transition:background .18s ease;
}

.avm-scene__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:650;
  font-size:15px;
  color:rgba(39,50,60,.70);
  background:linear-gradient(180deg,rgba(255,255,255,.92),#ffffff);
  transition:color .18s ease;
}

.avm-scene__tile:hover{
  opacity:1;
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 22px 44px rgba(16,24,40,0.16),0 10px 18px rgba(47,109,255,.10);
}

.avm-scene__tile:hover::before{
  opacity:1;
}

.avm-scene__tile:hover .avm-scene__media img{
  filter:brightness(1) saturate(1) contrast(1);
}

.avm-scene__tile:hover .avm-scene__media::after{
  background:rgba(0,0,0,0);
}

.avm-scene__tile:hover .avm-scene__caption{
  color:rgba(39,50,60,.92);
}

.avm-scene__tile:active{
  transform:translateY(-2px);
}

.avm-scene__tile:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

.avm-scene__grid > .avm-scene__tile{
  min-height:560px;
}

.avm-scene__tile--half{
  min-height:272px;
}

@media (max-width: 980px){
.avm-scene__grid{
  grid-template-columns:1fr;
}

.avm-scene__grid > .avm-scene__tile{
  min-height:460px;
}

.avm-scene__tile--half{
  min-height:250px;
}
}

@media (max-width: 520px){
.avm-scene__container{
  padding:18px 12px;
}

.avm-scene__panel{
  padding:18px;
}

.avm-scene__grid > .avm-scene__tile{
  min-height:320px;
}

.avm-scene__tile--half{
  min-height:220px;
}
}

@media (prefers-reduced-motion: reduce){
.avm-scene__tile,
  .avm-scene__tile::before,
  .avm-scene__media img,
  .avm-scene__media::after,
  .avm-scene__caption{
  transition:none;
}

.avm-scene__tile:hover{
  transform:none;
}
}

.avm-podium, .avm-podium *{
  box-sizing:border-box;
}

.avm-podium{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  color:#27323c;
}

.avm-podium__outer{
  width:100%;
  padding:40px 0;
  background:radial-gradient(1200px 520px at 15% 10%,rgba(47,124,246,.08),transparent 60%),linear-gradient(180deg,#f6f8fc,#ffffff);
}

.avm-podium__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-podium__panel{
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
}

.avm-podium__title{
  margin:0 0 18px;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-podium__title a{
  color:#27323c;
  text-decoration:none;
  transition:color .15s ease;
}

.avm-podium__title a:hover{
  color:rgba(47,109,255,1);
}

.avm-podium__grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:16px;
  align-items:stretch;
}

.avm-podium__col{
  display:grid;
  grid-template-rows:1fr 1fr;
  gap:16px;
}

.avm-podium__tile{
  position:relative;
  display:grid;
  grid-template-rows:1fr auto;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(39,50,60,.10);
  opacity:.90;
  box-shadow:0 6px 14px rgba(16,24,40,0.05);
  transform:translateZ(0);
  -webkit-tap-highlight-color:transparent;
  transition:opacity .18s ease,box-shadow .18s ease,transform .18s ease,border-color .18s ease;
}

.avm-podium__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
  box-shadow:0 0 0 1px rgba(47,109,255,.25),0 0 0 6px rgba(47,109,255,.10);
}

.avm-podium__media{
  position:relative;
  width:100%;
  height:100%;
  background:#eef2f7;
}

.avm-podium__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  filter:none;
  transition:filter .18s ease;
}

.avm-podium__media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:transparent !important;

}

.avm-podium__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:650;
  font-size:15px;
  color:rgba(39,50,60,.70);
  background:linear-gradient(180deg,rgba(255,255,255,.92),#ffffff);
  transition:color .18s ease;
}

.avm-podium__tile:hover{
  opacity:1;
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 22px 44px rgba(16,24,40,0.16),0 10px 18px rgba(47,109,255,.10);
}

.avm-podium__tile:hover::before{
  opacity:1;
}

.avm-podium__tile:hover .avm-podium__media img{
  filter:brightness(1) saturate(1) contrast(1);
}

.avm-podium__tile:hover .avm-podium__media::after{
  background:rgba(0,0,0,0);
}

.avm-podium__tile:hover .avm-podium__caption{
  color:rgba(39,50,60,.92);
}

.avm-podium__tile:active{
  transform:translateY(-2px);
}

.avm-podium__tile:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

.avm-podium__grid > .avm-podium__tile{
  min-height:520px;
}

.avm-podium__tile--half{
  min-height:252px;
}

@media (max-width: 980px){
.avm-podium__grid{
  grid-template-columns:1fr;
}

.avm-podium__grid > .avm-podium__tile{
  min-height:420px;
}

.avm-podium__tile--half{
  min-height:240px;
}

.avm-podium__outer{
  padding:32px 0;
}
}

@media (max-width: 520px){
.avm-podium__container{
  padding:0 12px;
}

.avm-podium__grid > .avm-podium__tile{
  min-height:320px;
}

.avm-podium__tile--half{
  min-height:220px;
}
}

@media (prefers-reduced-motion: reduce){
.avm-podium__tile,
  .avm-podium__tile::before,
  .avm-podium__media img,
  .avm-podium__media::after,
  .avm-podium__caption,
  .avm-podium__title a{
  transition:none;
}

.avm-podium__tile:hover{
  transform:none;
}
}

.avm-equip{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  color:#27323c;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:40px 0;
  background:radial-gradient(1200px 520px at 15% 10%,rgba(47,124,246,.08),transparent 60%),linear-gradient(180deg,#f6f8fc,#ffffff)!important;
}

.avm-equip__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-equip__panel{
  padding:clamp(20px,3vw,40px);
  text-align:center;
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
}

.avm-equip__title{
  margin:0 0 12px;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-equip__text{
  margin:0 auto 16px;
  max-width:62ch;
  font-size:16px;
  line-height:1.6;
  color:rgba(39,50,60,.72);
}

.avm-equip__actions{
  margin-bottom:22px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
}

.avm-equip__btn.feedback-open-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  min-height:46px;
  padding:12px 22px;
  border-radius:999px;
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#fff;
  text-decoration:none;
  font-weight:700;
  font-size:15px;
  line-height:1;
  border:1px solid rgba(47,109,255,.35);
  box-shadow:0 10px 22px rgba(47,109,255,0.30);
  user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-equip__btn.feedback-open-text:hover{
  color:#fff;
  filter:brightness(1.03);
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(47,109,255,0.36);
}

.avm-equip__btn.feedback-open-text:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-equip__btn.feedback-open-text:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

@media (max-width: 900px){
.avm-equip{
  padding:32px 0;
}
}

@media (max-width: 520px){
.avm-equip__panel{
  padding:18px 0;
}
}

.avm-tribune, .avm-tribune *{
  box-sizing:border-box;
}

.avm-tribune{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-tribune__outer{
  width:100%;
  padding:40px 0;
  background:radial-gradient(1200px 520px at 15% 10%,rgba(47,124,246,.08),transparent 60%),linear-gradient(180deg,#f6f8fc,#ffffff);
}

.avm-tribune__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-tribune__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-tribune__title a{
  color:#27323c;
  text-decoration:none;
  transition:color .15s ease;
}

.avm-tribune__title a:hover{
  color:rgba(47,109,255,1);
}

.avm-tribune__grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:16px;
}

.avm-tribune__col{
  display:grid;
  grid-template-rows:1fr 1fr;
  gap:16px;
}

.avm-tribune__tile{
  position:relative;
  display:grid;
  grid-template-rows:1fr auto;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background:#ffffff;
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 6px 14px rgba(16,24,40,0.05);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.avm-tribune__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  box-shadow:0 0 0 1px rgba(47,109,255,.25),0 0 0 6px rgba(47,109,255,.10);
  transition:opacity .18s ease;
}

.avm-tribune__media{
  width:100%;
  height:100%;
}

.avm-tribune__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

.avm-tribune__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:650;
  font-size:15px;
  color:rgba(39,50,60,.86);
  background:linear-gradient(180deg,rgba(255,255,255,.92),#ffffff);
}

.avm-tribune__tile:hover{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 22px 44px rgba(16,24,40,0.16),0 10px 18px rgba(47,109,255,0.10);
}

.avm-tribune__tile:hover::before{
  opacity:1;
}

.avm-tribune__grid > .avm-tribune__tile{
  min-height:520px;
}

.avm-tribune__tile--half{
  min-height:252px;
}

.avm-tribune__cta{
  margin-top:22px;
  display:flex;
  justify-content:center;
}

.avm-tribune__btn.feedback-open-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 26px;
  border-radius:999px;
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  text-decoration:none;
  font-weight:750;
  font-size:15px;
  line-height:1;
  border:1px solid rgba(47,109,255,.35);
  box-shadow:0 12px 26px rgba(47,109,255,0.32);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-tribune__btn.feedback-open-text:hover{
  color:#ffffff;
  filter:brightness(1.03);
  transform:translateY(-2px);
  box-shadow:0 16px 32px rgba(47,109,255,0.38);
}

@media (max-width: 980px){
.avm-tribune__grid{
  grid-template-columns:1fr;
}

.avm-tribune__grid > .avm-tribune__tile{
  min-height:420px;
}

.avm-tribune__tile--half{
  min-height:240px;
}

.avm-tribune__outer{
  padding:32px 0;
}
}

@media (max-width: 520px){
.avm-tribune__container{
  padding:0 12px;
}

.avm-tribune__grid > .avm-tribune__tile{
  min-height:320px;
}

.avm-tribune__tile--half{
  min-height:220px;
}

.avm-tribune__btn.feedback-open-text{
  width:100%;
}
}

.avm-truss, .avm-truss *{
  box-sizing:border-box;
}

.avm-truss{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-truss__outer{
  width:100%;
  padding:44px 0;
  background:radial-gradient(1200px 520px at 18% 8%,rgba(47,124,246,.10),transparent 62%),linear-gradient(180deg,#eef2f9 0%,#ffffff 70%);
}

.avm-truss__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-truss__panel{
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
}

.avm-truss__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-truss__title a{
  color:#27323c;
  text-decoration:none;
  transition:color .15s ease;
}

.avm-truss__title a:hover{
  color:rgba(47,109,255,1);
}

.avm-truss__grid{
  display:grid;
  grid-template-columns:2fr 2fr 1fr;
  gap:16px;
  align-items:stretch;
}

.avm-truss__tile{
  position:relative;
  display:grid;
  grid-template-rows:1fr auto;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08),inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.avm-truss__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  box-shadow:0 0 0 1px rgba(47,109,255,.25),0 0 0 7px rgba(47,109,255,.12);
  transition:opacity .18s ease;
}

.avm-truss__media{
  width:100%;
  height:100%;
}

.avm-truss__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

.avm-truss__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:450;
  font-size:15px;
  color:rgba(39,50,60,.88);
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,1));
}



.avm-truss__tile:hover::before{
  opacity:1;
}

.avm-truss__grid > .avm-truss__tile{
  min-height:520px;
}

.avm-truss__tile--narrow{
  min-height:520px;
}

@media (max-width: 980px){
.avm-truss__grid{
  grid-template-columns:1fr;
}

.avm-truss__grid > .avm-truss__tile{
  min-height:420px;
}

.avm-truss__outer{
  padding:34px 0;
}
}

@media (max-width: 520px){
.avm-truss__container{
  padding:0 12px;
}

.avm-truss__grid > .avm-truss__tile{
  min-height:320px;
}
}

.feedback-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.65);
  backdrop-filter:blur(6px);
  opacity:0;
  visibility:hidden;
  transition:.2s ease;
  z-index:9999;
  display:grid;
  place-items:center;
  padding:18px;
}

.feedback-overlay.active{
  opacity:1;
  visibility:visible;
}

html.feedback-noscroll{
  overflow:hidden;
}

.feedback-modal{
  width:min(560px,100%);
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:radial-gradient(1200px 600px at 20% -10%,rgba(74,163,255,.20),transparent 60%),radial-gradient(900px 500px at 110% 10%,rgba(255,255,255,.08),transparent 60%),rgba(255,255,255,.06);
  box-shadow:0 18px 60px rgba(0,0,0,.55);
  color:rgba(255,255,255,.92);
  padding:22px 20px;
  position:relative;
}

.feedback-close{
  position:absolute;
  top:10px;
  right:10px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.25);
  color:rgba(255,255,255,.92);
  border-radius:12px;
  padding:8px 10px;
  cursor:pointer;
  font-size:18px;
  line-height:1;
}

.feedback-close:hover{
  background:rgba(0,0,0,.35);
}

.feedback-head{
  margin-bottom:14px;
}

.feedback-title{
  font-size:22px;
  line-height:1.15;
  font-weight:800;
}

.feedback-subtitle{
  margin-top:8px;
  font-size:14px;
  line-height:1.45;
  color:rgba(255,255,255,.68);
}

.feedback-form{
  display:grid;
  gap:12px;
}

.feedback-form input,
.feedback-form textarea{
  width:100%;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.25);
  color:rgba(255,255,255,.92);
  padding:12px 12px;
  outline:none;
}

.feedback-form textarea{
  resize:vertical;
  min-height:110px;
}

.feedback-form input:focus,
.feedback-form textarea:focus{
  border-color:rgba(74,163,255,.55);
  box-shadow:0 0 0 4px rgba(74,163,255,.18);
}

.feedback-opd{
  margin-top:2px;
}

.feedback-opd__label{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.18);
  cursor:pointer;
  transition:.2s ease;
  width:100%;
  margin-bottom:20px;
}

.feedback-opd__label:hover{
  border-color:rgba(74,163,255,.30);
  background:rgba(0,0,0,.25);
}

.feedback-opd__checkbox{
  width:18px !important;
  height:18px;
  margin:2px 0 0 0;
  flex:0 0 18px;
  accent-color:#4aa3ff;
}

.feedback-opd__text{
  font-size:13px;
  line-height:1.35;
  color:rgba(255,255,255,.70);
}

.feedback-opd__text a{
  color:rgba(74,163,255,.95);
  text-decoration:underline;
  text-underline-offset:2px;
}

.feedback-opd__text a:hover{
  filter:brightness(1.15);
}

.feedback-form button{
  appearance:none;
  border:0;
  border-radius:12px;
  padding:12px 14px;
  font-weight:800;
  cursor:pointer;
  background:linear-gradient(135deg,#4aa3ff,#7bc0ff);
  color:#fff;
}

.feedback-form button:hover{
  filter:brightness(1.05);
}

.feedback-success{
  text-align:center;
  padding:6px 0;
}

.feedback-success__icon{
  font-size:34px;
  margin-bottom:10px;
}

.feedback-success__title{
  font-size:20px;
  font-weight:900;
  margin-bottom:10px;
  color:rgba(255,255,255,.95);
}

.feedback-success__text{
  font-size:14px;
  line-height:1.5;
  color:rgba(255,255,255,.72);
  margin-bottom:16px;
}

.feedback-success__btn{
  appearance:none;
  border:0;
  border-radius:12px;
  padding:12px 16px;
  font-weight:800;
  cursor:pointer;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.92);
}

.feedback-success__btn:hover{
  background:rgba(255,255,255,.12);
}

.avm-screenform{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-screenform__outer{
  width:100%;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding:60px 0;
  background:radial-gradient(1200px 620px at 15% 15%,rgba(47,124,246,.18),transparent 62%),radial-gradient(900px 520px at 85% 65%,rgba(47,124,246,.12),transparent 70%),linear-gradient(180deg,#e7eefb 0%,#ffffff 75%);
}

.avm-screenform__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
  width:100%;
}

.avm-screenform__grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:22px;
  align-items:center;
}

.avm-screenform__info{
  padding:10px 6px;
}

.avm-screenform__title{
  margin:0 0 14px 0;
  font-size:clamp(26px,2.6vw,44px);
  font-weight:650;
  letter-spacing:-0.018em;
  line-height:1.12;
}

.avm-screenform__text{
  margin:0 0 18px 0;
  font-size:16px;
  line-height:1.65;
  color:rgba(39,50,60,.74);
  max-width:70ch;
}

.avm-screenform__list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
  max-width:520px;
}

.avm-screenform__list li{
  position:relative;
  padding-left:30px;
  font-size:15px;
  line-height:1.55;
  color:rgba(39,50,60,.82);
}

.avm-screenform__list li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:22px;
  height:22px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  background:rgba(47,109,255,.12);
  color:rgba(47,109,255,1);
  font-weight:800;
  font-size:13px;
}

.avm-screenform__trust{
  margin-top:18px;
  font-size:13px;
  color:rgba(39,50,60,.62);
}

.avm-screenform__formbox{
  border-radius:24px;
  padding:26px 26px 22px 26px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84));
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 30px 80px rgba(16,24,40,0.16),inset 0 1px 0 rgba(255,255,255,.55);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.avm-screenform__formtitle{
  font-size:18px;
  font-weight:750;
  letter-spacing:-0.01em;
  margin-bottom:6px;
}

.avm-screenform__formsubtitle{
  font-size:13px;
  line-height:1.5;
  margin-bottom:14px;
  color:rgba(39,50,60,.70);
}

.avm-screenform__form{
  display:grid;
  gap:12px;
}

.avm-screenform__form input,
.avm-screenform__form textarea{
  border-radius:14px;
  border:1px solid rgba(39,50,60,.12);
  background:rgba(255,255,255,.95);
  padding:12px 14px;
  font-size:15px;
  line-height:1.2;
  color:#27323c;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.avm-screenform__form textarea{
  min-height:110px;
  resize:vertical;
  line-height:1.5;
}

.avm-screenform__form input::placeholder,
.avm-screenform__form textarea::placeholder{
  color:rgba(39,50,60,.52);
}

.avm-screenform__form input:focus,
.avm-screenform__form textarea:focus{
  outline:none;
  border-color:rgba(47,109,255,.45);
  background:rgba(255,255,255,1);
  box-shadow:0 0 0 4px rgba(47,109,255,.12);
}

.avm-screenform__opd{
  padding:10px 12px;
  border-radius:14px;
  background:rgba(47,124,246,.06);
  border:1px solid rgba(47,124,246,.12);
}

.avm-screenform__opdlabel{
  display:flex;
  gap:10px;
  align-items:flex-start;
  cursor:pointer;
  user-select:none;
}

.avm-screenform__checkbox{
  margin-top:3px;
  width:18px;
  height:18px;
  accent-color:#2f6dff;
}

.avm-screenform__opdtext{
  font-size:13px;
  line-height:1.45;
  color:rgba(39,50,60,.70);
}

.avm-screenform__opdtext a{
  color:rgba(47,109,255,1);
  text-decoration:none;
  border-bottom:1px solid rgba(47,109,255,.25);
}

.avm-screenform__opdtext a:hover{
  border-bottom-color:rgba(47,109,255,.55);
}

.avm-screenform__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:12px 22px;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.35);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  font-size:15px;
  font-weight:800;
  line-height:1;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(47,109,255,0.34),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-screenform__btn:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(47,109,255,0.42),0 14px 26px rgba(16,24,40,0.14);
}

.avm-screenform__btn:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-screenform__btn:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

@media (max-width: 980px){
.avm-screenform__grid{
  grid-template-columns:1fr;
}

.avm-screenform__outer{
  padding:40px 0;
  min-height:auto;
}

.avm-screenform__info{
  text-align:center;
}

.avm-screenform__list{
  margin:0 auto;
}
}

@media (max-width: 520px){
.avm-screenform__container{
  padding:0 12px;
}

.avm-screenform__formbox{
  padding:20px;
}
}

@media (prefers-reduced-motion: reduce){
.avm-screenform__btn{
  transition:none;
}

.avm-screenform__btn:hover{
  transform:none;
}
}

.avm-screenform__success{
  text-align:center;
  padding:12px 6px;
}

.avm-screenform__successicon{
  font-size:42px;
  line-height:1;
  margin-bottom:10px;
}

.avm-screenform__successtitle{
  font-size:20px;
  font-weight:750;
  letter-spacing:-0.012em;
  margin-bottom:10px;
  color:#27323c;
}

.avm-screenform__successtext{
  font-size:14px;
  line-height:1.55;
  color:rgba(39,50,60,.72);
  margin:0 auto 18px auto;
  max-width:60ch;
}

.avm-screenform__successbtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 26px;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.35);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  text-decoration:none;
  font-size:15px;
  font-weight:800;
  line-height:1;
  box-shadow:0 14px 30px rgba(47,109,255,0.34),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-screenform__successbtn:hover{
  color:#ffffff;
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(47,109,255,0.42),0 14px 26px rgba(16,24,40,0.14);
}

.avm-screenform__successbtn:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-inlineform, .avm-inlineform *{
  box-sizing:border-box;
}

.avm-inlineform{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-inlineform__outer{
  width:100%;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding:60px 0;
  background:radial-gradient(1200px 620px at 15% 15%,rgba(47,124,246,.18),transparent 62%),radial-gradient(900px 520px at 85% 65%,rgba(47,124,246,.12),transparent 70%),linear-gradient(180deg,#e7eefb 0%,#ffffff 75%);
}

.avm-inlineform__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
  width:100%;
}

.avm-inlineform__panel{
  max-width:680px;
  margin:0 auto;
  border-radius:26px;
  padding:clamp(22px,3vw,44px);
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84));
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 30px 80px rgba(16,24,40,0.16),inset 0 1px 0 rgba(255,255,255,.55);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  text-align:center;
}

.avm-inlineform__title{
  margin:0 0 14px 0;
  font-size:clamp(24px,2.4vw,38px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.12;
}

.avm-inlineform__text{
  margin:0 auto 22px auto;
  max-width:70ch;
  font-size:16px;
  line-height:1.65;
  color:rgba(39,50,60,.72);
}

.avm-inlineform__form{
  display:grid;
  gap:12px;
  margin-top:8px;
}

.avm-inlineform__form input,
.avm-inlineform__form textarea{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(39,50,60,.12);
  background:rgba(255,255,255,.95);
  padding:12px 14px;
  font-size:15px;
  line-height:1.2;
  color:#27323c;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.avm-inlineform__form textarea{
  min-height:120px;
  resize:vertical;
  line-height:1.5;
}

.avm-inlineform__form input::placeholder,
.avm-inlineform__form textarea::placeholder{
  color:rgba(39,50,60,.52);
}

.avm-inlineform__form input:focus,
.avm-inlineform__form textarea:focus{
  outline:none;
  border-color:rgba(47,109,255,.45);
  background:rgba(255,255,255,1);
  box-shadow:0 0 0 4px rgba(47,109,255,.12);
}

.avm-inlineform__opd{
  padding:10px 12px;
  border-radius:14px;
  background:rgba(47,124,246,.06);
  border:1px solid rgba(47,124,246,.12);
  text-align:left;
}

.avm-inlineform__opdlabel{
  display:flex;
  gap:10px;
  align-items:flex-start;
  cursor:pointer;
  user-select:none;
}

.avm-inlineform__checkbox{
  margin-top:3px;
  width:18px;
  height:18px;
  accent-color:#2f6dff;
}

.avm-inlineform__opdtext{
  font-size:13px;
  line-height:1.45;
  color:rgba(39,50,60,.70);
}

.avm-inlineform__opdtext a{
  color:rgba(47,109,255,1);
  text-decoration:none;
  border-bottom:1px solid rgba(47,109,255,.25);
}

.avm-inlineform__opdtext a:hover{
  border-bottom-color:rgba(47,109,255,.55);
}

.avm-inlineform__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:12px 22px;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.35);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  font-size:15px;
  font-weight:800;
  line-height:1;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(47,109,255,0.34),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-inlineform__btn:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(47,109,255,0.42),0 14px 26px rgba(16,24,40,0.14);
}

.avm-inlineform__btn:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-inlineform__success{
  padding:10px 0;
}

.avm-inlineform__successicon{
  font-size:46px;
  line-height:1;
  margin-bottom:10px;
}

.avm-inlineform__successtitle{
  font-size:20px;
  font-weight:750;
  letter-spacing:-0.012em;
  margin-bottom:10px;
}

.avm-inlineform__successtext{
  font-size:14px;
  line-height:1.55;
  color:rgba(39,50,60,.72);
  margin:0 auto 18px auto;
  max-width:60ch;
}

.avm-inlineform__successbtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 26px;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.35);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  text-decoration:none;
  font-size:15px;
  font-weight:800;
  line-height:1;
  box-shadow:0 14px 30px rgba(47,109,255,0.34),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-inlineform__successbtn:hover{
  color:#ffffff;
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(47,109,255,0.42),0 14px 26px rgba(16,24,40,0.14);
}

@media (max-width: 980px){
.avm-inlineform__outer{
  min-height:auto;
  padding:44px 0;
}
}

@media (max-width: 520px){
.avm-inlineform__container{
  padding:0 12px;
}

.avm-inlineform__panel{
  padding:20px;
}
}

.avm-screenform__outer{
  padding:60px 0;
}

.avm-screenform__grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:24px;
  align-items:start;
}

@media (max-width: 980px){
.avm-screenform__grid{
  grid-template-columns:1fr;
}
}

.avm-inline-feedback-wrap,
.avm-inline-feedback-wrap *{
  box-sizing:border-box;
}

.avm-inline-feedback-wrap{
  width:100%;
  padding:60px 0;
  background:radial-gradient(1200px 520px at 15% 25%,rgba(47,124,246,.18),transparent 65%),radial-gradient(1000px 500px at 80% 70%,rgba(47,124,246,.12),transparent 70%),linear-gradient(180deg,#eaf1ff 0%,#ffffff 80%);
}

.avm-inline-feedback{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-inline-feedback .feedback-head,
.avm-inline-feedback .feedback-form{
  width:100%;
}

.avm-inline-feedback{
  display:block;
}

.avm-inline-feedback .feedback-title{
  font-size:clamp(20px,1.7vw,28px);
  line-height:1.15;
  font-weight:550;
  letter-spacing:-0.012em;
  color:#1f2a37;
}

.avm-inline-feedback .feedback-subtitle{
  margin-top:10px;
  font-size:14px;
  line-height:1.6;
  font-weight:400;
  color:rgba(31,42,55,.72);
}

.avm-inline-feedback .feedback-head,
.avm-inline-feedback .feedback-form{
  background:rgba(255,255,255,.88);
  border:1px solid rgba(47,109,255,.14);
  border-radius:22px;
  padding:clamp(18px,2.2vw,28px);
  box-shadow:0 30px 80px rgba(16,24,40,0.10),inset 0 1px 0 rgba(255,255,255,.70);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.avm-inline-feedback .feedback-head{
  border-bottom-left-radius:0;
  border-bottom-right-radius:0;
  border-bottom:none;
  margin:0;
}

.avm-inline-feedback .feedback-form{
  border-top-left-radius:0;
  border-top-right-radius:0;
  margin:0;
}

.avm-inline-feedback .feedback-form{
  display:grid;
  gap:12px;
}

.avm-inline-feedback .feedback-form input,
.avm-inline-feedback .feedback-form textarea{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(47,109,255,.26);
  background:rgba(245,250,255,0.95);
  padding:12px 14px;
  font-size:15px;
  line-height:1.2;
  font-weight:400;
  color:#1f2a37;
  box-shadow:0 8px 18px rgba(16,24,40,0.05),inset 0 1px 0 rgba(255,255,255,.75);
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.avm-inline-feedback .feedback-form textarea{
  min-height:120px;
  resize:vertical;
  line-height:1.5;
}

.avm-inline-feedback .feedback-form input::placeholder,
.avm-inline-feedback .feedback-form textarea::placeholder{
  color:rgba(31,42,55,.55);
}

.avm-inline-feedback .feedback-form input:focus,
.avm-inline-feedback .feedback-form textarea:focus{
  outline:none;
  border-color:rgba(47,109,255,.70);
  background:rgba(255,255,255,0.98);
  box-shadow:0 0 0 5px rgba(47,109,255,.14),0 14px 30px rgba(47,109,255,.12),inset 0 1px 0 rgba(255,255,255,.75);
}

.avm-inline-feedback .feedback-opd{
  width:100%;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(47,109,255,.06);
  border:1px solid rgba(47,109,255,.18);
}

.avm-inline-feedback .feedback-opd__label{
  display:flex;
  gap:10px;
  align-items:flex-start;
  cursor:pointer;
  user-select:none;
  margin:0;
}

.avm-inline-feedback .feedback-opd__checkbox{
  margin-top:3px;
  width:18px;
  height:18px;
  accent-color:#2f6dff;
}

.avm-inline-feedback .feedback-opd__text{
  font-size:13px;
  line-height:1.45;
  font-weight:400;
  color:rgba(31,42,55,.72);
}

.avm-inline-feedback .feedback-opd__text a{
  color:rgba(47,109,255,1);
  text-decoration:none;
  border-bottom:1px solid rgba(47,109,255,.28);
}

.avm-inline-feedback .feedback-opd__text a:hover{
  border-bottom-color:rgba(47,109,255,.58);
}

.avm-inline-feedback .feedback-form button[type="submit"]{
  width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:12px 22px;
  border-radius:999px;
  cursor:pointer;
  border:1px solid rgba(47,109,255,.45);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  font-size:15px;
  font-weight:750;
  line-height:1;
  box-shadow:0 18px 40px rgba(47,109,255,0.30),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-inline-feedback .feedback-form button[type="submit"]:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 22px 50px rgba(47,109,255,0.38),0 14px 26px rgba(16,24,40,0.14);
}

.avm-inline-feedback .feedback-form button[type="submit"]:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-inline-feedback .feedback-form button[type="submit"]:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

@media (max-width: 720px){
.avm-inline-feedback-wrap{
  padding:44px 0;
}

.avm-inline-feedback{
  padding:0 12px;
}
}

@media (prefers-reduced-motion: reduce){
.avm-inline-feedback .feedback-form input,
  .avm-inline-feedback .feedback-form textarea,
  .avm-inline-feedback .feedback-form button[type="submit"]{
  transition:none;
}

.avm-inline-feedback .feedback-form button[type="submit"]:hover{
  transform:none;
}
}

.avm-screenform,
.avm-screenform *{
  box-sizing:border-box;
}

.avm-screenform__outer{
  width:100%;
  padding:70px 0;
  background:radial-gradient(1200px 520px at 15% 25%,rgba(47,124,246,.18),transparent 65%),radial-gradient(1000px 500px at 80% 70%,rgba(47,124,246,.12),transparent 70%),linear-gradient(180deg,#eaf1ff 0%,#ffffff 82%);
}

.avm-screenform__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-screenform__grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:26px;
  align-items:start;
}

.avm-screenform__title{
  margin:0 0 14px 0;
  font-size:clamp(22px,2.1vw,34px);
  line-height:1.12;
  font-weight:560;
  letter-spacing:-0.012em;
  color:#1f2a37;
}

.avm-screenform__text{
  margin:0 0 16px 0;
  font-size:15px;
  line-height:1.65;
  color:rgba(31,42,55,.74);
}

.avm-screenform__list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.avm-screenform__list li{
  position:relative;
  padding-left:22px;
  font-size:14px;
  line-height:1.55;
  color:rgba(31,42,55,.72);
}

.avm-screenform__list li:before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(47,109,255,1);
  box-shadow:0 0 0 4px rgba(47,109,255,.14);
}

.avm-screenform__formbox{
  border-radius:22px;
  padding:clamp(18px,2.1vw,26px);
  background:rgba(255,255,255,.88);
  border:1px solid rgba(47,109,255,.14);
  box-shadow:0 30px 80px rgba(16,24,40,0.10),inset 0 1px 0 rgba(255,255,255,.70);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.avm-screenform .feedback-title{
  font-size:18px;
  font-weight:560;
  letter-spacing:-0.01em;
  color:#1f2a37;
}

.avm-screenform .feedback-subtitle{
  margin-top:8px;
  font-size:13px;
  line-height:1.6;
  font-weight:400;
  color:rgba(31,42,55,.72);
}

.avm-screenform .feedback-form{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.avm-screenform .feedback-form input,
.avm-screenform .feedback-form textarea{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(47,109,255,.26);
  background:rgba(245,250,255,0.95);
  padding:12px 14px;
  font-size:15px;
  line-height:1.2;
  font-weight:400;
  color:#1f2a37;
  box-shadow:0 8px 18px rgba(16,24,40,0.05),inset 0 1px 0 rgba(255,255,255,.75);
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.avm-screenform .feedback-form textarea{
  min-height:120px;
  resize:vertical;
  line-height:1.5;
}

.avm-screenform .feedback-form input::placeholder,
.avm-screenform .feedback-form textarea::placeholder{
  color:rgba(31,42,55,.55);
}

.avm-screenform .feedback-form input:focus,
.avm-screenform .feedback-form textarea:focus{
  outline:none;
  border-color:rgba(47,109,255,.75);
  background:rgba(255,255,255,0.98);
  box-shadow:0 0 0 5px rgba(47,109,255,.14),0 14px 30px rgba(47,109,255,.12),inset 0 1px 0 rgba(255,255,255,.75);
}

.avm-screenform .feedback-opd{
  width:100%;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(47,109,255,.06);
  border:1px solid rgba(47,109,255,.18);
}

.avm-screenform .feedback-opd__label{
  display:flex;
  gap:10px;
  align-items:flex-start;
  cursor:pointer;
  user-select:none;
  margin:0;
}

.avm-screenform .feedback-opd__checkbox{
  margin-top:3px;
  width:18px;
  height:18px;
  accent-color:#2f6dff;
}

.avm-screenform .feedback-opd__text{
  font-size:13px;
  line-height:1.45;
  font-weight:400;
  color:rgba(31,42,55,.72);
}

.avm-screenform .feedback-opd__text a{
  color:rgba(47,109,255,1);
  text-decoration:none;
  border-bottom:1px solid rgba(47,109,255,.28);
}

.avm-screenform .feedback-opd__text a:hover{
  border-bottom-color:rgba(47,109,255,.58);
}

.avm-screenform .feedback-form button[type="submit"]{
  width:100%;
  min-height:52px;
  padding:12px 22px;
  border-radius:999px;
  cursor:pointer;
  border:1px solid rgba(47,109,255,.45);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  font-size:15px;
  font-weight:760;
  line-height:1;
  box-shadow:0 18px 40px rgba(47,109,255,0.30),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-screenform .feedback-form button[type="submit"]:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 22px 50px rgba(47,109,255,0.38),0 14px 26px rgba(16,24,40,0.14);
}

.avm-screenform .feedback-form button[type="submit"]:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

@media (max-width: 980px){
.avm-screenform__grid{
  grid-template-columns:1fr;
  gap:18px;
}

.avm-screenform__outer{
  padding:50px 0;
}
}

.avm-screenform .feedback-opd{
  background:rgba(47,109,255,.08) !important;
  border:1px solid rgba(47,109,255,.22) !important;
  color:rgba(31,42,55,.78) !important;
}

.avm-screenform .feedback-opd__label{
  color:rgba(31,42,55,.78) !important;
  background:none;
}

.avm-screenform .feedback-opd__text a{
  color:rgba(47,109,255,1) !important;
  border-bottom:1px solid rgba(47,109,255,.35) !important;
  text-decoration:none !important;
}

.avm-screenform .feedback-opd__text a:hover{
  border-bottom-color:rgba(47,109,255,.65) !important;
}

.avm-screenform .feedback-opd__checkbox{
  accent-color:#2f6dff !important;
}

#mod-custom118 .avm-hero {
  position: relative;
  border-radius: 0 !important;

  width: 100vw;
  min-height: 100vh;          /* вместо height */
  margin-left: calc(50% - 50vw);

  overflow: clip;             /* вместо hidden (не режет скролл) */
  /* если clip не поддержится в старом браузере — можно оставить hidden */

  background-image: url("banners/banner.avif");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
html, body {
  overflow-x: hidden;
  overflow-y: auto;
}


.avm-hero__bg{
  position:absolute;
  inset:0;
  z-index:0;
}

.avm-hero__bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.avm-hero__container{
  position:relative;
  z-index:2;
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-hero__panel{
  border-radius:0 !important;
  background:transparent;
}

.avm-hero, .avm-hero *{
  box-sizing:border-box;
}

.avm-hero{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  color:#27323c;
  width:100%;
  padding: 0;
}

.avm-hero__container{
  max-width:2000px;
  margin:0 auto;
  padding:0 16px;
}

.avm-hero{
  width:100%;
  background-repeat:no-repeat;
  background-position:center;
  background-size:100%;
}

.avm-hero__panel.stretch-bg{
  background-size:100% auto;
}

.avm-hero__panel::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient( 90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.86) 35%,rgba(255,255,255,.55) 52%,rgba(255,255,255,0) 70% );
}

.avm-hero__panel::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient( 900px 420px at 12% 18%,rgba(47,124,246,.10),transparent 62% );
}

.avm-hero__content{
  position:relative;
  z-index:2;
  min-height:560px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(22px,3.2vw,54px);
  max-width:580px;
}

.avm-hero__title{
  margin:0 0 18px 0;
  font-weight:500;
  letter-spacing:-0.018em;
  line-height:1.10;
  font-size:clamp(28px,3.2vw,54px);
  color:#27323c;
}

.avm-hero__subtitle{
  margin:0 0 26px 0;
  font-size:clamp(14px,1.2vw,18px);
  line-height:1.55;
  color:rgba(39,50,60,.70);
}

.avm-hero__btn.feedback-open-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  min-height:46px;
  padding:12px 22px;
  border-radius:999px;
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  text-decoration:none;
  font-weight:700;
  font-size:15px;
  line-height:1;
  border:1px solid rgba(47,109,255,.35);
  box-shadow:0 10px 22px rgba(47,109,255,0.30);
  user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-hero__btn.feedback-open-text:hover{
  color:#ffffff;
  filter:brightness(1.03);
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(47,109,255,0.36);
}

.avm-hero__btn.feedback-open-text:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-hero__btn.feedback-open-text:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

@media (max-width: 900px){
.avm-hero__panel{
  min-height:460px;
}

.avm-hero__content{
  min-height:460px;
  max-width:100%;
  padding:22px;
}

.avm-hero__panel::before{
  background:linear-gradient( 180deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.78) 42%,rgba(255,255,255,0) 72% );
}
}

@media (max-width: 520px){
.avm-hero{
  padding:20px 0;
}

.avm-hero__btn.feedback-open-text{
  width:100%;
}
}

@media (prefers-reduced-motion: reduce){
.avm-hero__btn.feedback-open-text{
  transition:none;
}

.avm-hero__btn.feedback-open-text:hover{
  transform:none;
}
}

.avm-mechanic{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-mechanic__outer{
  width:100%;
  padding:44px 0;
  background:radial-gradient(1200px 520px at 18% 8%,rgba(47,124,246,.10),transparent 62%),linear-gradient(180deg,#eef2f9 0%,#ffffff 70%);
}

.avm-mechanic__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-mechanic__panel{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
}

.avm-mechanic__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-mechanic__title a{
  color:#27323c;
  text-decoration:none;
  transition:color .15s ease;
}

.avm-mechanic__title a:hover{
  color:rgba(47,109,255,1);
}

.avm-mechanic__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  align-items:stretch;
}

.avm-mechanic__tile{
  position:relative;
  display:grid;
  grid-template-rows:1fr auto;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08),inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.avm-mechanic__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  box-shadow:0 0 0 1px rgba(47,109,255,.25),0 0 0 7px rgba(47,109,255,.12);
  transition:opacity .18s ease;
}

.avm-mechanic__tile:hover{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 26px 54px rgba(16,24,40,0.18),0 12px 22px rgba(47,109,255,0.10),inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-mechanic__tile:hover::before{
  opacity:1;
}

.avm-mechanic__media{
  width:100%;
  height:100%;
  background:#eef2f7;
}

.avm-mechanic__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

.avm-mechanic__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:650;
  font-size:15px;
  color:rgba(39,50,60,.88);
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,1));
}

.avm-mechanic__cta{
  margin-top:18px;
  text-align:center;
}

.avm-mechanic__btn{
  display:inline-block;
}

@media (max-width: 980px){
.avm-mechanic__grid{
  grid-template-columns:1fr;
}

.avm-mechanic__outer{
  padding:34px 0;
}
}

@media (max-width: 520px){
.avm-mechanic__container{
  padding:0 12px;
}
}

.avm-design .avm-truss__outer{
  padding:70px 0;
  background:radial-gradient(1200px 520px at 15% 10%,rgba(74,163,255,.22),transparent 60%),radial-gradient(1000px 520px at 85% 70%,rgba(47,109,255,.18),transparent 62%),linear-gradient(180deg,#0c1b33 0%,#0f2545 45%,#ffffff 120%);
}

.avm-design .avm-truss__title{
  margin-bottom:28px;
}

.avm-design .avm-truss__title a{
  color:rgba(255,255,255,.95);
}

.avm-design .avm-truss__title a:hover{
  color:#ffffff;
}

.avm-design .avm-truss__grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.avm-design .avm-truss__grid > .avm-truss__tile{
  min-height:560px;
}

.avm-design .avm-truss__caption{
  padding:22px 20px;
}

.avm-design__caption{
  text-align:center;
}

.avm-design__subtitle{
  font-weight:600;
  font-size:19px;
  margin-bottom:10px;
  color:rgba(39,50,60,.92);
}

@media (max-width: 980px){
.avm-podium__grid--2x2{
  grid-template-columns:1fr!important;
}
}

.avm-design__text{
  font-weight:500;
  font-size:13.8px;
  line-height:1.65;
  color:rgba(39,50,60,.74);
  max-width:36ch;
  margin:0 auto;
}

.avm-design__popup{
  position:fixed;
  right:22px;
  bottom:22px;
  width:min(440px,calc(100% - 44px));
  z-index:9998;
  border-radius:18px;
  padding:18px 18px 16px 18px;
  background:radial-gradient(800px 420px at 20% 10%,rgba(74,163,255,.22),transparent 60%),rgba(15,25,40,.90);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 60px rgba(0,0,0,.45);
  color:rgba(255,255,255,.92);
  transform:translateY(16px);
  opacity:0;
  visibility:hidden;
  transition:.22s ease;
}

.avm-design__popup.is-open{
  transform:translateY(0);
  opacity:1;
  visibility:visible;
}

.avm-design__popupTitle{
  font-weight:900;
  font-size:17px;
  margin-bottom:8px;
  text-align:center;
}

.avm-design__popupText{
  font-size:13px;
  line-height:1.5;
  color:rgba(255,255,255,.72);
  margin-bottom:14px;
  text-align:center;
}

.avm-design__popupActions{
  display:flex;
  justify-content:center;
}

.avm-design__popupClose{
  position:absolute;
  top:10px;
  right:10px;
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.25);
  color:rgba(255,255,255,.92);
  cursor:pointer;
  font-size:18px;
  line-height:1;
}

.avm-design__popupClose:hover{
  background:rgba(0,0,0,.35);
}

@media (max-width: 980px){
.avm-design .avm-truss__grid{
  grid-template-columns:1fr;
}

.avm-design .avm-truss__grid > .avm-truss__tile{
  min-height:480px;
}

.avm-design .avm-truss__outer{
  padding:55px 0;
}
}

.avm-geo__grid{
  display:grid;
  grid-template-columns:1fr 4fr;
  gap:18px;
  align-items:center;
}

.avm-geo__info .avm-truss__title{
  text-align:left;
  margin:0;
}

.avm-geo__image img{
  width:100%;
  height:auto;
  display:block;
  border-radius:18px;
}

@media (max-width: 980px){
.avm-geo__grid{
  grid-template-columns:1fr;
}

.avm-geo__info .avm-truss__title{
  text-align:center;
  margin-bottom:12px;
}
}

.avm-production .avm-truss__grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

@media (max-width: 980px){
.avm-production .avm-truss__grid{
  grid-template-columns:1fr;
}
}

.av-contacts{
  --bg:#0b1020;
  --surface:rgba(255,255,255,0.06);
  --surface2:rgba(255,255,255,0.1);
  --text:#eaf0ff;
  --muted:rgba(234,240,255,0.75);
  --line:rgba(234,240,255,0.14);
  --brand:#2e5bff;
  --brand2:#5aa0ff;
  padding:70px 0;
  background:radial-gradient(1200px 600px at 20% 0%,rgba(46,91,255,0.25),transparent 55%),radial-gradient(900px 500px at 90% 30%,rgba(90,160,255,0.18),transparent 60%),var(--bg);
  color:var(--text);
}

.av-contacts__container{
  width:min(1200px,92%);
  margin:0 auto;
}

.av-contacts__header{
  margin-bottom:34px;
}

.av-contacts__title{
  font-size:clamp(28px,3vw,44px);
  font-weight:700;
  letter-spacing:-0.02em;
  margin:0 0 10px;
}

.av-contacts__subtitle{
  max-width:720px;
  font-size:16px;
  line-height:1.6;
  margin:0;
  color:var(--muted);
}

.av-contacts__grid{
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:22px;
  align-items:stretch;
}

.av-contacts__info{
  display:grid;
  gap:16px;
}

.av-contacts__card{
  background:linear-gradient(180deg,var(--surface2),var(--surface));
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px 18px;
  backdrop-filter:blur(12px);
  box-shadow:0 10px 30px rgba(0,0,0,0.25);
}

.av-contacts__cardTitle{
  font-size:18px;
  margin:0 0 12px;
  font-weight:700;
  letter-spacing:-0.01em;
}

.av-contacts__row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:baseline;
  margin:8px 0;
}

.av-contacts__label{
  color:var(--muted);
  font-size:14px;
  min-width:120px;
}

.av-contacts__text{
  margin:0;
  font-size:15px;
  line-height:1.6;
  color:var(--text);
}

.av-contacts__link{
  color:var(--text);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px dashed rgba(234,240,255,0.35);
  transition:0.2s ease;
}

.av-contacts__link:hover{
  color:var(--brand2);
  border-bottom-color:rgba(90,160,255,0.7);
}

.av-contacts__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-top:12px;
  padding:10px 14px;
  font-size:14px;
  font-weight:700;
  text-decoration:none;
  color:var(--text);
  background:rgba(46,91,255,0.16);
  border:1px solid rgba(46,91,255,0.35);
  border-radius:14px;
  transition:0.2s ease;
}

.av-contacts__btn:hover{
  background:rgba(46,91,255,0.28);
  border-color:rgba(90,160,255,0.65);
  transform:translateY(-1px);
}

.av-contacts__mapWrap{
  border-radius:18px;
  overflow:hidden;
  border:1px solid var(--line);
  background:rgba(0,0,0,0.25);
  min-height:420px;
  box-shadow:0 12px 32px rgba(0,0,0,0.28);
}

.av-contacts__mapWrap img{
  width:100%;
  height:100%;
}

.av-contacts__map{
  width:100%;
  height:100%;
  min-height:420px;
  border:0;
  display:block;
  filter:saturate(1.05) contrast(1.02);
}

@media (max-width: 980px){
.av-contacts__grid{
  grid-template-columns:1fr;
}

.av-contacts__mapWrap{
  min-height:360px;
}

.av-contacts__map{
  min-height:360px;
}
}

@media (max-width: 520px){
.av-contacts{
  padding:55px 0;
}

.av-contacts__card{
  padding:16px;
  border-radius:16px;
}

.av-contacts__label{
  min-width:unset;
}
}

.avm-podium__grid--2x2{
  grid-template-columns:1fr 1fr;
}

.avm-podium__media{
  display:flex;
  align-items:center;
  justify-content:center;
}

.avm-podium__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.avm-geo__text{
  margin:10px 0 0 0;
  max-width:46ch;
  font-size:15px;
  line-height:1.65;
  color:rgba(39,50,60,.72);
  letter-spacing:-0.01em;
}

@media (max-width: 980px){
.avm-geo__text{
  max-width:62ch;
  margin-top:12px;
}
}

@media (max-width: 520px){
.avm-geo__text{
  font-size:14px;
  line-height:1.7;
}
}

.mod-breadcrumbs.breadcrumb .breadcrumb-item + .breadcrumb-item::before{
  content:"→";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:100%;
  line-height:1;
  margin:0 8px;
  padding:0;
  color:rgba(39,50,60,0.35);
  font-weight:700;
  float:none !important;
}

.mod-breadcrumbs__divider{
  display:none !important;
}

.mod-breadcrumbs.breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}

.mod-breadcrumbs.breadcrumb .breadcrumb-item{
  display:flex;
  align-items:center;
}

.mod-breadcrumbs.breadcrumb .breadcrumb-item + .breadcrumb-item::before{
  content:"→";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  margin:0 8px;
  float:none !important;
}

.mod-breadcrumbs__wrapper{
  width:min(1200px,92%);
  margin:10px auto 0px auto;
}

.mod-breadcrumbs.breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:10px 14px !important;
  margin:0;
  border-radius:16px;
  background:linear-gradient( 180deg,rgba(255,255,255,0.9),rgba(255,255,255,0.65) );
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:14px;
  line-height:1.4;
}

.mod-breadcrumbs.breadcrumb .breadcrumb-item + .breadcrumb-item::before{
  content:"→";
  color:rgba(39,50,60,0.35);
  font-weight:700;
  padding:0 20px 0 0;
   font-size: 28px; 
}

.mod-breadcrumbs__divider{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:12px;
  background:rgba(46,91,255,0.08);
  border:1px solid rgba(46,91,255,0.16);
  color:rgba(46,91,255,0.9);
}

.mod-breadcrumbs__item a{
  text-decoration:none;
  font-weight:600;
  color:rgba(39,50,60,0.82);
  padding:6px 10px;
  border-radius:12px;
  transition:0.2s ease;
}

.mod-breadcrumbs__item a:hover{
  color:rgba(46,91,255,0.95);
  background:rgba(46,91,255,0.08);
  border:1px solid rgba(46,91,255,0.18);
}

.mod-breadcrumbs__item.active span{
  display:inline-block;
  padding:6px 12px;
  border-radius:12px;
  font-weight:600;
  color:rgba(39,50,60,0.92);
  background:rgba(0,0,0,0.04);
  border:1px solid rgba(39,50,60,0.10);
}

.mod-breadcrumbs.breadcrumb.px-3.py-2{
  padding:10px 14px !important;
}

@media (max-width: 980px){
.mod-breadcrumbs__wrapper{
  width:92%;
  margin-top:14px;
}

.mod-breadcrumbs.breadcrumb{
  border-radius:14px;
  padding:10px 12px !important;
  font-size:13px;
}

.mod-breadcrumbs__divider{
  width:30px;
  height:30px;
  border-radius:12px;
}

.mod-breadcrumbs__item a{
  padding:5px 9px;
}

.mod-breadcrumbs__item.active span{
  padding:5px 10px;
}
}
/* Firefox */
html{
  scrollbar-width: thin;
  scrollbar-color: rgba(46, 91, 255, 0.55) rgba(0,0,0,0.08);
}

/* Chrome / Edge / Safari */
::-webkit-scrollbar{
  width: 7px;
}

::-webkit-scrollbar-track{
  background: rgba(0,0,0,0.06);
}

::-webkit-scrollbar-thumb{
  background: rgba(46, 91, 255, 0.45);
  border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover{
  background: rgba(46, 91, 255, 0.70);
}
html, body{ overflow-x: clip; }
html, body{
  height: auto !important;
  overflow-y: auto !important;
}

body{
  overflow-x: hidden;
}
/* === FIXED MENU / HEADER === */
/* Страхуемся: у Cassiopeia шапка может быть в разных обёртках */
.container-header,
header.header,
.site-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9998;
  background: #fff;
}

/* чтобы контент не залезал под фиксированную шапку */
body {
  padding-top: var(--av-header-offset, 90px);
}
/* === На мобильных отключаем fixed, чтобы меню открывалось нормально === */
@media (max-width: 991.98px) {
  .container-header,
  header.header,
  .site-header {
    position: static !important;
  }

  body {
    padding-top: 0 !important;
  }
}
.error_site  .container-header .grid-child .navbar-brand .brand-logo img {width:20%;}


  .av-contacts{padding:32px 0}
  .av-contacts__container{max-width:1200px;margin:0 auto;padding:0 16px}
  .av-contacts__header{margin-bottom:18px}
  .av-contacts__title{margin:0 0 8px}
  .av-contacts__subtitle{margin:0;opacity:.85}
  .av-contacts__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
  .av-contacts__card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:16px;margin-bottom:12px}
  .av-contacts__cardTitle{margin:0 0 10px;font-size:18px}
  .av-contacts__row{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}
  .av-contacts__label{opacity:.7;min-width:90px}
  .av-contacts__link{font-weight:600}
  .av-contacts__btn{display:inline-flex;align-items:center;justify-content:center;margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.12);text-decoration:none;font-weight:600}
  .av-contacts__btn--pdf{width:100%}

  .av-contacts__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
  .av-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:12px;text-decoration:none;font-weight:700;border:1px solid rgba(0,0,0,.12)}
  .av-btn--wa{background:#231a30;color:#fff;border-color:transparent}
  .av-btn--tg{background:#229ED9;color:#fff;border-color:transparent}
  .av-btn--vk{background:#0077FF;color:#fff;border-color:transparent}

  .av-contacts__mapWrap{border-radius:16px;overflow:hidden;border:1px solid rgba(0,0,0,.08);background:#fff;min-height:260px}
  .av-contacts__mapWrap img{width:100%;height:auto;display:block}

  .av-acc{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;
    background:transparent;border:none;padding:0;font-weight:800;font-size:16px;cursor:pointer}
  .av-acc__icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;
    border-radius:10px;border:1px solid rgba(0,0,0,.12)}
  .av-acc__panel{margin-top:12px}
  .av-rekv{margin:0}
  .av-rekv__row{display:grid;grid-template-columns:560px 1fr;gap:12px;padding:8px 0;border-top:1px solid rgba(0,0,0,.06)}
  .av-rekv__row:first-child{border-top:none}
  .av-rekv dt{opacity:.7}
  .av-rekv dd{margin:0;font-weight:600}

  @media (max-width: 991.98px){
    .av-contacts__grid{grid-template-columns:1fr}
  }
  
  .av-contacts {
  background: #0b1020; /* тёмный фон секции */
  color: #ffffff;
  padding: 48px 0;
}

.av-contacts__subtitle {
  color: rgba(255,255,255,0.75);
}

.av-contacts__card {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  color: #fff;
  backdrop-filter: blur(8px);
}

.av-contacts__label {
  color: rgba(255,255,255,0.65);
}

.av-contacts__text {
  color: rgba(255,255,255,0.85);
}

.av-contacts__link {
  color: #ffffff;
}

.av-contacts__link:hover {
  color: #4ea8ff;
}

.av-contacts__btn {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  color: #fff;
}

.av-contacts__btn:hover, .av-btn:hover {
  background: rgba(255,255,255,0.14);
  color:white;
  
}

.av-rekv__row {
  border-top: 1px solid rgba(255,255,255,0.08);
}

.av-rekv dt {
  color: rgba(255,255,255,0.65);
}

.av-rekv dd {
  color: rgba(255,255,255,0.95);
}

.av-acc__icon {
  border: 1px solid rgba(255,255,255,0.18);
}
.av-acc {
  color: #fff !important;
}

.av-acc span {
  color: #fff !important;
}

.av-acc__icon {
  color: #fff !important;
}
.av-contacts__mapWrap {
  min-height: 340px;
}

.av-contacts__mapWrap iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}
.av-contacts__actions .av-btn:hover, av-contacts__btn:hover {color:white1impotant;}
#mod-custom133 . {
  background-image: url("scenes/mainbanner.avif");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.avm-hero--scenes .avm-hero__list {
  margin: 18px 0 28px;
  padding: 0;
  list-style: none;
  font-size: 18px;
  line-height: 1.4;
  color: #fff;
}

.avm-hero--scenes .avm-hero__list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 10px;
}

.avm-hero--scenes .avm-hero__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fff;
  opacity: 0.9;
}
/* HERO: scenes - full height + no inherited old background */
.avm-hero--scenes,
.avm-hero--scenes .avm-hero__container,
.avm-hero--scenes .avm-hero__panel {
  min-height: 100vh;
}

.avm-hero--scenes .avm-hero__container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* hard reset any old background (incl. stretch-bg + pseudo elements) */
.avm-hero--scenes .avm-hero__panel.stretch-bg,
.avm-hero--scenes .stretch-bg {
  background: none !important;
  background-image: none !important;
}

.avm-hero--scenes .avm-hero__panel::before,
.avm-hero--scenes .avm-hero__panel::after,
.avm-hero--scenes .stretch-bg::before,
.avm-hero--scenes .stretch-bg::after {
  content: none !important;
  background: none !important;
  background-image: none !important;
}

.avm-hero--scenes .avm-hero__panel {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}

/* image covers full hero */
.avm-hero--scenes .avm-hero__media {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.avm-hero--scenes .avm-hero__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* overlay for readability */
.avm-hero--scenes .avm-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: rgba(0, 0, 0, 0.45);
}

/* content over image */
.avm-hero--scenes .avm-hero__content {
  position: relative;
  z-index: 3;
  max-width: 720px;
  color: #fff;
}

/* bullets */
.avm-hero--scenes .avm-hero__list {
  margin: 18px 0 28px;
  padding: 0;
  list-style: none;
  font-size: 18px;
  line-height: 1.4;
  color: #fff;
}

.avm-hero--scenes .avm-hero__list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 10px;
}

.avm-hero--scenes .avm-hero__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fff;
  opacity: 0.9;
}

/* responsive tweaks */
@media (max-width: 768px) {
  .avm-hero--scenes .avm-hero__content {
    max-width: 100%;
    padding: 40px 0;
  }
  .avm-hero--scenes .avm-hero__list {
    font-size: 16px;
  }
}
.avm-scenes-adv {
  padding: 70px 0;
  background: #0b1b3a;
}

.avm-scenes-adv__container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px;
}

.avm-scenes-adv__title {
  margin: 0 0 35px;
  font-size: 42px;
  font-weight: 600;
  color: #fff;
      text-align: center;
}

.avm-scenes-adv__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
}

.avm-scenes-adv__item {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.avm-scenes-adv__media img {
  width: 100%;
  height: auto;
  display: block;
}

.avm-scenes-adv__content {
  padding: 22px 22px 26px;
}

.avm-scenes-adv__subtitle {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.25;
  color: #111;
  margin-bottom: 10px;
}

.avm-scenes-adv__text {
  font-size: 16px;
  line-height: 1.55;
  color: #555;
}

/* adaptive */
@media (max-width: 992px) {
  .avm-scenes-adv__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .avm-scenes-adv__title {
    font-size: 34px;
  }
}

@media (max-width: 640px) {
  .avm-scenes-adv__grid {
    grid-template-columns: 1fr;
  }

  .avm-scenes-adv__title {
    font-size: 28px;
  }

  .avm-scenes-adv__subtitle {
    font-size: 20px;
  }
}
/* LEFT / RIGHT proportions */
.avm-shero__left {
  flex: 0 0 30%;
}

.avm-shero__right {
  flex: 0 0 70%;
  display: flex;
  justify-content: flex-end;
}

/* image without shadow */
.avm-shero__img {
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 14px;
  display: block;

  box-shadow: none; /* убрали тень */
}
.avm-shero__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  height: 48px;
  padding: 0 28px;

  border-radius: 20px;
  background: #1f5bff;
  border: 1px solid #1f5bff;

  color: #fff;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;

  transition: 0.2s ease;
}

.avm-shero__btn:hover {
  background: #1748d6;
  border-color: #1748d6;
  color: #fff;
}
.avm-shero {
  padding: 0;
  background: #fff;
}

.avm-shero__container {
  max-width: 1420px;
  margin: 0 auto;
  padding: 0 20px 20px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
}

/* LEFT */
.avm-shero__left {
  flex: 0 0 30%;
}

.avm-shero__title {
  font-size: 40px;
  line-height: 1.1;
  font-weight: 600;
  color: #111;
  margin: 0 0 22px;
}

.avm-shero__list {
  margin: 0 0 30px;
  padding: 0;
  list-style: none;

  font-size: 18px;
  line-height: 1.5;
  color: #444;
}

.avm-shero__list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 12px;
}

.avm-shero__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;

  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e30613; /* фирменный красный */
}

/* BUTTON */

.avm-shero__list li::before {
  background: #111;
}


.avm-shero__img {
  width: 100%;
  height: auto;
  border-radius: 18px;
  display: block;
}

/* ADAPTIVE */
@media (max-width: 992px) {
  .avm-shero__container {
    flex-direction: column;
    gap: 35px;
  }

  .avm-shero__left,
  .avm-shero__right {
    flex: 0 0 auto;
    width: 100%;
  }

  .avm-shero__right {
    justify-content: center;
  }

  .avm-shero__title {
    font-size: 34px;
  }

  .avm-shero__img {
    max-width: 100%;
  }
}

@media (max-width: 576px) {
  .avm-shero {
    padding: 40px 0;
  }

  .avm-shero__title {
    font-size: 28px;
  }

  .avm-shero__list {
    font-size: 16px;
  }

  .avm-shero__btn {
    width: 100%;
  }
}
/* Модуль: Сценические конструкции в наличии (в стиле avm-mechanic) */
.avm-scenes-instock .avm-scenes__grid{
  display: grid;
  grid-template-columns: 1fr 1fr; /* 2 одинаковые колонки */
  gap: 24px;
  margin-top: 16px;
}

/* Левая колонка: 4 строки */
.avm-scenes__list{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.avm-scenes__row{
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
  color: inherit;
}

.avm-scenes__thumb{
  flex: 0 0 200px;
  width: 200px;
  height: 200px;
  border-radius: 12px; /* под общий стиль скруглений */
  overflow: hidden;
  background: #f3f3f3;
}

.avm-scenes__thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.avm-scenes__text{
  font-size: 25px;
  line-height: 1.25;
}

/* Правая колонка: картинка во всю ширину колонки */
.avm-scenes__hero{
  display: block;
  border-radius: 12px;
  overflow: hidden;
  background: #f3f3f3;
  text-decoration: none;
}

.avm-scenes__hero img{
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: cover;
  display: block;
}

/* Адаптив */
@media (max-width: 980px){
  .avm-scenes-instock .avm-scenes__grid{
    grid-template-columns: 1fr;
  }
  .avm-scenes__thumb{
    flex-basis: 160px;
    width: 160px;
    height: 160px;
  }
}
.avm-srb {
  padding: 70px 0;
  background: #fff;
}

.avm-srb__container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px;
}

.avm-srb__title {
  margin: 0 0 18px;
  font-size: 36px;
  line-height: 1.2;
  font-weight: 600;
  color: #111;
}

.avm-srb__text {
  max-width: 980px;
  font-size: 17px;
  line-height: 1.6;
  color: #4a4a4a;
  margin-bottom: 22px;
}

/* преимущества */
.avm-srb__advantages {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 30px;
}

.avm-srb__adv {
  padding: 12px 16px;
  border-radius: 10px;
  background: #f7f7f7;
  border: 1px solid #e6e6e6;

  font-size: 15px;
  font-weight: 500;
  color: #222;

  transition: 0.2s ease;
}

.avm-srb__adv:hover {
  background: #efefef;
  border-color: #d9d9d9;
}

/* картинка */
.avm-srb__img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 14px;
}

/* adaptive */
@media (max-width: 640px) {
  .avm-srb__title {
    font-size: 28px;
  }

  .avm-srb__text {
    font-size: 16px;
  }

  .avm-srb__adv {
    width: 100%;
    text-align: center;
  }
}
/* ===== SRB (one-column) — inherits avm-truss vibe, scoped only to this module ===== */
.avm-truss.avm-srb .avm-truss__title{
  text-align:center;            /* как у truss */
  margin:0 0 18px 0;
}

.avm-truss.avm-srb .avm-srb__card{
  position:relative;
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-srb .avm-srb__card::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  box-shadow:0 0 0 1px rgba(47,109,255,.25), 0 0 0 7px rgba(47,109,255,.12);
  transition:opacity .18s ease;
}

.avm-truss.avm-srb .avm-srb__card:hover,
.scenes_stacionar:hover{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 26px 54px rgba(16,24,40,0.18), 0 12px 22px rgba(47,109,255,0.10), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-srb .avm-srb__card:hover::before{
  opacity:1;
}

/* text block – centered, same palette as avm-truss */
.avm-truss.avm-srb .avm-srb__text{
  padding:18px 20px 12px;
  text-align:center;
  font-size:16px;
  line-height:1.6;
  color:rgba(39,50,60,.88);
  max-width:980px;
  margin:0 auto;
}

/* badges – not 3 columns, just nice chips */
.avm-truss.avm-srb .avm-srb__badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  padding:0 20px 16px;
}

.avm-truss.avm-srb .avm-srb__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
}

/* image full width inside card */
.avm-truss.avm-srb .avm-srb__media img{
  width:100%;
  height:auto;
  display:block;
  object-fit:cover; /* если нужно без обрезки — убери эту строку */
}

/* spacing tweaks on small screens */
@media (max-width: 520px){
  .avm-truss.avm-srb .avm-srb__text{
    padding:16px 14px 10px;
    font-size:15px;
  }
  .avm-truss.avm-srb .avm-srb__badges{
    padding:0 14px 14px;
  }
}
/* badges like previous module */
.avm-truss.avm-ssc .avm-ssc__badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  padding:0 20px 16px;
}

.avm-truss.avm-ssc .avm-ssc__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* mobile */
@media (max-width: 520px){
  .avm-truss.avm-ssc .avm-ssc__badges{
    padding:0 14px 14px;
  }
  .avm-truss.avm-ssc .avm-ssc__badge{
    width:100%;
  }
}
/* FORCE: убираем подчеркивание у всей кликабельной карточки и внутри неё */
.avm-truss.avm-ssc a.avm-ssc__card,
.avm-truss.avm-ssc a.avm-ssc__card:link,
.avm-truss.avm-ssc a.avm-ssc__card:visited,
.avm-truss.avm-ssc a.avm-ssc__card:hover,
.avm-truss.avm-ssc a.avm-ssc__card:active {
  text-decoration: none !important;
  color: inherit !important;
}

.avm-truss.avm-ssc a.avm-ssc__card * {
  text-decoration: none !important;
}

/* если у тебя глобально задано underline на h2 a — снимем в этом модуле */
.avm-truss.avm-ssc .avm-truss__title,
.avm-truss.avm-ssc .avm-truss__title a {
  text-decoration: none !important;
  color: inherit !important;
}
/* FORCE styles for image only inside stationary module */
.avm-truss.avm-ssc .avm-ssc__media {
  width: 100% !important;
  overflow: hidden !important;
  border-radius:25px !important; /* низ карточки */
}

.avm-truss.avm-ssc .avm-ssc__media img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}
/* ===== SRB module: full block is link ===== */
.avm-truss.avm-srb .avm-srb__link,
.avm-truss.avm-srb .avm-srb__link *{
  text-decoration:none !important;
  color:inherit !important;
}

.avm-truss.avm-srb .avm-srb__link{
  display:block;
}

/* card with text */
.avm-truss.avm-srb .avm-srb__card{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-srb .avm-srb__title{
  margin:0;
  padding:18px 20px 10px;
}

.avm-truss.avm-srb .avm-srb__text{
  padding:0 20px 12px;
  text-align:center;
  font-size:16px;
  line-height:1.6;
  color:rgba(39,50,60,.88);
  max-width:980px;
  margin:0 auto;
}

/* badges */
.avm-truss.avm-srb .avm-srb__badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  padding:0 20px 18px;
}

.avm-truss.avm-srb .avm-srb__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* image separate */
.avm-truss.avm-srb .avm-srb__media{
  margin-top:16px;
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-srb .avm-srb__media img{
  width:100%;
  height:auto;
  display:block;
}

/* hover effect like avm-truss__tile */
.avm-truss.avm-srb .avm-srb__card,
.avm-truss.avm-srb .avm-srb__media{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-srb .avm-srb__link:hover .avm-srb__card,
.avm-truss.avm-srb .avm-srb__link:hover .avm-srb__media{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 26px 54px rgba(16,24,40,0.18), 0 12px 22px rgba(47,109,255,0.10), inset 0 1px 0 rgba(255,255,255,.55);
}

/* mobile */
@media (max-width: 520px){
  .avm-truss.avm-srb .avm-srb__text{
    padding:0 14px 10px;
    font-size:15px;
  }
  .avm-truss.avm-srb .avm-srb__badges{
    padding:0 14px 16px;
  }
  .avm-truss.avm-srb .avm-srb__badge{
    width:100%;
  }
}
/* full module link */
.avm-truss.avm-srb .avm-srb__link,
.avm-truss.avm-srb .avm-srb__link *{
  text-decoration:none !important;
  color:inherit !important;
}

.avm-truss.avm-srb .avm-srb__link{
  display:block;
}

/* text block WITHOUT shadows/radius */
.avm-truss.avm-srb .avm-srb__card{
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
  overflow:visible;
}

/* title */
.avm-truss.avm-srb .avm-srb__title{
  margin:0 0 12px 0;
  padding:0;
}

/* text */
.avm-truss.avm-srb .avm-srb__text{
  max-width:980px;
  margin:0 auto 14px auto;
  text-align:center;
  font-size:16px;
  line-height:1.6;
  color:rgba(39,50,60,.88);
}

/* badges */
.avm-truss.avm-srb .avm-srb__badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:0 0 18px 0;
  padding:0;
}

.avm-truss.avm-srb .avm-srb__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* image block ONLY gets radius/shadow/hover */
.avm-truss.avm-srb .avm-srb__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-srb .avm-srb__media img{
  width:100%;
  height:auto;
  display:block;
}

/* hover only for image */
.avm-truss.avm-srb .avm-srb__link:hover .avm-srb__media{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 26px 54px rgba(16,24,40,0.18), 0 12px 22px rgba(47,109,255,0.10), inset 0 1px 0 rgba(255,255,255,.55);
}

/* mobile */
@media (max-width: 520px){
  .avm-truss.avm-srb .avm-srb__text{
    font-size:15px;
  }

  .avm-truss.avm-srb .avm-srb__badge{
    width:100%;
  }
}
/* link reset - no hover effects on text */
.avm-truss.avm-srb .avm-srb__link,
.avm-truss.avm-srb .avm-srb__link:link,
.avm-truss.avm-srb .avm-srb__link:visited,
.avm-truss.avm-srb .avm-srb__link:hover,
.avm-truss.avm-srb .avm-srb__link:active {
  text-decoration: none !important;
  color: inherit !important;
}

.avm-truss.avm-srb .avm-srb__link * {
  text-decoration: none !important;
  color: inherit !important;
}

/* no hover effects on title/text/badges */
.avm-truss.avm-srb .avm-srb__title,
.avm-truss.avm-srb .avm-srb__text,
.avm-truss.avm-srb .avm-srb__badges,
.avm-truss.avm-srb .avm-srb__badge {
  transition: none !important;
}

/* ONLY image hover */
.avm-truss.avm-srb .avm-srb__media {
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-srb .avm-srb__link:hover .avm-srb__media {
  transform: translateY(-4px);
  border-color: rgba(47,109,255,.22);
  box-shadow: 0 26px 54px rgba(16,24,40,0.18),
              0 12px 22px rgba(47,109,255,0.10),
              inset 0 1px 0 rgba(255,255,255,.55);
}
/* ===== FORCE: текст внутри кликабельного SRB не меняется при hover ===== */

/* 1) Ссылка как контейнер: никаких underline/цветов */
.avm-truss.avm-srb a.avm-srb__link,
.avm-truss.avm-srb a.avm-srb__link:link,
.avm-truss.avm-srb a.avm-srb__link:visited,
.avm-truss.avm-srb a.avm-srb__link:hover,
.avm-truss.avm-srb a.avm-srb__link:active {
  text-decoration: none !important;
  color: inherit !important;
}

/* 2) Запрещаем подчеркивание/изменение цвета всем вложенным */
.avm-truss.avm-srb a.avm-srb__link * ,
.avm-truss.avm-srb a.avm-srb__link *:hover {
  text-decoration: none !important;
}

/* 3) ЖЁСТКО фиксируем цвета текста (и на hover тоже) */
.avm-truss.avm-srb .avm-srb__title,
.avm-truss.avm-srb .avm-srb__text,
.avm-truss.avm-srb .avm-srb__badge {
  color: rgba(39,50,60,.88) !important;
}

.avm-truss.avm-srb a.avm-srb__link:hover .avm-srb__title,
.avm-truss.avm-srb a.avm-srb__link:hover .avm-srb__text,
.avm-truss.avm-srb a.avm-srb__link:hover .avm-srb__badge {
  color: rgba(39,50,60,.88) !important;
}

/* если заголовок у тебя наследует другой цвет — зафиксируем отдельно */
.avm-truss.avm-srb .avm-srb__title {
  color: #27323c !important;
}
.avm-truss.avm-srb a.avm-srb__link:hover .avm-srb__title {
  color: #27323c !important;
}

/* 4) Убираем любые transition у текста/бейджей, чтобы не было “эффектов” */
.avm-truss.avm-srb .avm-srb__title,
.avm-truss.avm-srb .avm-srb__text,
.avm-truss.avm-srb .avm-srb__badges,
.avm-truss.avm-srb .avm-srb__badge {
  transition: none !important;
}
/* ===== SRB links reset ===== */
.avm-truss.avm-srb a.avm-srb__textLink,
.avm-truss.avm-srb a.avm-srb__imgLink {
  display: block;
  text-decoration: none !important;
  color: inherit !important;
}

/* text block must not change on hover */
.avm-truss.avm-srb a.avm-srb__textLink:hover * {
  color: inherit !important;
  text-decoration: none !important;
}

/* title */
.avm-truss.avm-srb .avm-srb__title {
  margin: 0 0 12px 0;
  padding: 0;
}

/* text */
.avm-truss.avm-srb .avm-srb__text {
  max-width: 980px;
  margin: 0 auto 14px auto;
  text-align: center;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(39,50,60,.88);
}

/* badges */
.avm-truss.avm-srb .avm-srb__badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 0 0 18px 0;
  padding: 0;
}

.avm-truss.avm-srb .avm-srb__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 10px 14px;
  border-radius: 999px;

  background: rgba(255,255,255,.92);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);

  font-size: 14px;
  font-weight: 650;
  color: rgba(39,50,60,.88);
  text-align: center;
}

/* image block */
.avm-truss.avm-srb .avm-srb__media {
  border-radius: 18px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-srb .avm-srb__media img {
  width: 100%;
  height: auto;
  display: block;
}

/* hover ONLY on image link */
.avm-truss.avm-srb a.avm-srb__imgLink:hover .avm-srb__media {
  transform: translateY(-4px);
  border-color: rgba(47,109,255,.22);
  box-shadow: 0 26px 54px rgba(16,24,40,0.18),
              0 12px 22px rgba(47,109,255,0.10),
              inset 0 1px 0 rgba(255,255,255,.55);
}

/* mobile */
@media (max-width: 520px) {
  .avm-truss.avm-srb .avm-srb__text {
    font-size: 15px;
  }

  .avm-truss.avm-srb .avm-srb__badge {
    width: 100%;
  }
}
/* ===== RAK module (same pattern as SRB) ===== */
.avm-truss.avm-rak a.avm-rak__textLink,
.avm-truss.avm-rak a.avm-rak__imgLink{
  display:block;
  text-decoration:none !important;
  color:inherit !important;
}

.avm-truss.avm-rak a.avm-rak__textLink:hover *{
  color:inherit !important;
  text-decoration:none !important;
}

.avm-truss.avm-rak .avm-rak__title{
  margin:0 0 12px 0;
  padding:0;
}

/* badges */
.avm-truss.avm-rak .avm-rak__badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:0 0 18px 0;
  padding:0;
}

.avm-truss.avm-rak .avm-rak__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* image block (shadow+radius) */
.avm-truss.avm-rak .avm-rak__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-rak .avm-rak__media img{
  width:100%;
  height:auto;
  display:block;
}

/* hover ONLY on image */
.avm-truss.avm-rak a.avm-rak__imgLink:hover .avm-rak__media{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 26px 54px rgba(16,24,40,0.18),
             0 12px 22px rgba(47,109,255,0.10),
             inset 0 1px 0 rgba(255,255,255,.55);
}

@media (max-width: 520px){
  .avm-truss.avm-rak .avm-rak__badge{
    width:100%;
  }
}
/* ===== NST module (same pattern) ===== */
.avm-truss.avm-nst a.avm-nst__textLink,
.avm-truss.avm-nst a.avm-nst__imgLink{
  display:block;
  text-decoration:none !important;
  color:inherit !important;
}

.avm-truss.avm-nst a.avm-nst__textLink:hover *{
  color:inherit !important;
  text-decoration:none !important;
}

.avm-truss.avm-nst .avm-nst__title{
  margin:0 0 12px 0;
  padding:0;
}

/* badges */
.avm-truss.avm-nst .avm-nst__badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:0 0 18px 0;
  padding:0;
}

.avm-truss.avm-nst .avm-nst__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* image */
.avm-truss.avm-nst .avm-nst__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-nst .avm-nst__media img{
  width:100%;
  height:auto;
  display:block;
}

/* hover ONLY on image */
.avm-truss.avm-nst a.avm-nst__imgLink:hover .avm-nst__media{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 26px 54px rgba(16,24,40,0.18),
             0 12px 22px rgba(47,109,255,0.10),
             inset 0 1px 0 rgba(255,255,255,.55);
}

@media (max-width: 520px){
  .avm-truss.avm-nst .avm-nst__badge{
    width:100%;
  }
}
.avm-scenes-info {
  padding: 60px 0;
}

.avm-scenes-info__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.avm-scenes-info__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
}

.avm-scenes-info__title {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 20px;
  line-height: 1.2;
}

.avm-scenes-info__text p {
  margin-bottom: 15px;
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}

.avm-scenes-info__text ul {
  margin: 0 0 20px 20px;
  padding: 0;
}

.avm-scenes-info__text ul li {
  margin-bottom: 8px;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
}

.avm-scenes-info__btn {
  display: inline-block;
  margin-top: 20px;
  padding: 14px 28px;
  background: #000;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  border-radius: 8px;
  transition: 0.3s;
}

.avm-scenes-info__btn:hover {
  background: #444;
}

.avm-scenes-info__media img {
  width: 100%;
  height: auto;
  border-radius: 14px;
  display: block;
  object-fit: cover;
}

/* адаптив */
@media (max-width: 900px) {
  .avm-scenes-info__grid {
    grid-template-columns: 1fr;
  }

  .avm-scenes-info__title {
    font-size: 26px;
  }
}
/* NEW MODULE: tender (2 columns) - based on existing styles */
.avm-scenes-tender .avm-scenes-adv__container{
  /* контейнер уже задан в avm-scenes-adv__container, тут ничего не меняем */
}

.avm-scenes-tender__wrap{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px; /* как в adv grid */
  align-items: center;
}

/* left: reuse adv card look */
.avm-scenes-tender__left{
  border-radius: 14px;
}

/* title inside card: keep same typographic base as adv subtitle, но чуть крупнее */
.avm-scenes-tender__title{
  font-size: 28px;
  line-height: 1.2;
  margin-bottom: 14px;
}

/* list inside text */
.avm-scenes-tender__list{
  margin: 10px 0 16px 20px;
  padding: 0;
}

.avm-scenes-tender__list li{
  margin-bottom: 8px;
}

/* button: use existing .avm-shero__btn, only spacing */
.avm-scenes-tender__btn{
  margin-top: 18px;
}

/* right image: keep same rounding style as hero img */
.avm-scenes-tender__right{
  display: flex;
  justify-content: flex-end;
}

.avm-scenes-tender__img{
  max-width: 100%;
}

/* adaptive */
@media (max-width: 992px){
  .avm-scenes-tender__wrap{
    grid-template-columns: 1fr;
  }

  .avm-scenes-tender__right{
    justify-content: center;
  }

  .avm-scenes-tender__title{
    font-size: 24px;
  }
}

@media (max-width: 576px){
  .avm-scenes-tender__btn{
    width: 100%; /* как у вас в avm-shero на мобилке */
  }
}
/* FULL WIDTH MODULE */
.avm-scenes-tender-full{
  padding: 0; /* убираем стандартные отступы секции */
}

/* общий грид на всю ширину */
.avm-scenes-tender-full__wrap{
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  min-height: 520px;
}

/* LEFT SIDE */
.avm-scenes-tender-full__left{
  padding: 70px 0; /* как у avm-scenes-adv */
  display: flex;
  align-items: center;
}

/* card inside */
.avm-scenes-tender-full__card{
  width: 100%;
}

/* title a bit bigger */
.avm-scenes-tender-full__title{
  font-size: 28px;
  line-height: 1.2;
  margin-bottom: 14px;
}

.avm-scenes-tender-full__list{
  margin: 10px 0 16px 20px;
  padding: 0;
}

.avm-scenes-tender-full__list li{
  margin-bottom: 8px;
}

.avm-scenes-tender-full__btn{
  margin-top: 18px;
}

/* RIGHT SIDE IMAGE FULL */
.avm-scenes-tender-full__right{
  position: relative;
  overflow: hidden;
}

.avm-scenes-tender-full__right img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* adaptive */
@media (max-width: 992px){
  .avm-scenes-tender-full__wrap{
    grid-template-columns: 1fr;
  }

  .avm-scenes-tender-full__right{
    height: 340px;
  }

  .avm-scenes-tender-full__title{
    font-size: 24px;
  }
}

@media (max-width: 576px){
  .avm-scenes-tender-full__left{
    padding: 50px 0;
  }

  .avm-scenes-tender-full__btn{
    width: 100%;
  }
}
.avm-scenes-tender-full__points{
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.avm-scenes-tender-full__point{
  background: #f3f3f3;
  color: #111;
  font-size: 15px;
  font-weight: 500;
  padding: 10px 14px;
  border-radius: 10px;
  line-height: 1.2;
}
.avm-scenes-tender-full__wrap{
  display: grid;
  grid-template-columns: 40% 10% 50%;
  width: 100%;
  min-height: 520px;
}
@media (max-width: 992px){
  .avm-scenes-tender-full__wrap{
    grid-template-columns: 1fr;
  }

  .avm-scenes-tender-full__gap{
    display: none;
  }

  .avm-scenes-tender-full__right{
    height: 340px;
  }
}
.avm-scenes-tender-full__left{
  padding: 70px 0;
  display: flex;
  align-items: center;     /* по вертикали */
  justify-content: center; /* по горизонтали */
}
.avm-scenes-tender-full__card{
  width: 100%;
  max-width: 560px;
}
/* reverse version: image left, text right */
.avm-scenes-tender-full__left--img{
  position: relative;
  overflow: hidden;
  padding: 0;
}

.avm-scenes-tender-full__left--img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.avm-scenes-tender-full__right--text{
  padding: 70px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* title inside text */
.avm-scenes-tender-full__points-title{
  margin-top: 18px;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 600;
  color: #111;
}

/* checklist */
.avm-scenes-tender-full__checklist{
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.avm-scenes-tender-full__check{
  font-size: 16px;
  line-height: 1.5;
  color: #555;
}

/* adaptive */
@media (max-width: 992px){
  .avm-scenes-tender-full__right--text{
    padding: 50px 0;
  }

  .avm-scenes-tender-full__left--img{
    height: 340px;
  }
}
.avm-scenes-tender-full__wrap{
  display: grid;
  grid-template-columns: 50% 10% 40%;
  width: 100%;
  min-height: 600px; /* высота модуля */
}

.avm-scenes-tender-full__left--img{
  width: 100%;
  height: 100%;
  padding: 0;
  overflow: hidden;
}

.avm-scenes-tender-full__left--img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avm-scenes-tender-full__wrap{
  display: grid;
  grid-template-columns: 40% 10% 50%;
  width: 100%;
  min-height: 600px; /* общая высота секции */
}

/* RIGHT IMAGE FULL HEIGHT */
.avm-scenes-tender-full__right{
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.avm-scenes-tender-full__right img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avm-scenes-tender-full__left{
  padding: 70px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
/* image columns without padding */
.avm-scenes-tender-full__right,
.avm-scenes-tender-full__left--img{
  padding: 0 !important;
  margin: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* stretch images */
.avm-scenes-tender-full__right img,
.avm-scenes-tender-full__left--img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avm-scenes-tender-full__wrap{
  display: grid;
  grid-template-columns: 40% 10% 50%;
  width: 100%;
  height: 650px; /* фиксируем высоту блока */
}

.avm-scenes-tender-full__left,
.avm-scenes-tender-full__gap,
.avm-scenes-tender-full__right{
  height: 100%;
}

/* правая колонка с картинкой */
.avm-scenes-tender-full__right{
  padding: 0 !important;
  overflow: hidden;
}

.avm-scenes-tender-full__right img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avm-scenes-tender-full__left--img{
  padding: 0 !important;
  overflow: hidden;
  height: 100%;
}

.avm-scenes-tender-full__left--img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (max-width: 992px){
  .avm-scenes-tender-full__wrap{
    grid-template-columns: 1fr;
    height: auto;
  }

  .avm-scenes-tender-full__right,
  .avm-scenes-tender-full__left--img{
    height: 340px;
  }

  .avm-scenes-tender-full__gap{
    display: none;
  }
}
/* 1) Грид должен растягивать элементы по высоте */
.avm-scenes-tender-full__wrap{
  display: grid;
  align-items: stretch;          /* важно */
  grid-template-columns: 40% 10% 50%;
  width: 100%;
  height: 650px;                 /* или clamp ниже */
}

/* 2) Общая растяжка детей */
.avm-scenes-tender-full__wrap > *{
  height: 100%;
  min-height: 0;                 /* важно для grid */
}

/* 3) ПЕРЕОПРЕДЕЛЯЕМ базовый left для КАРТИНКИ (убираем flex/padding/центрирование) */
.avm-scenes-tender-full__left--img{
  padding: 0 !important;
  display: block !important;     /* вместо flex */
  align-items: initial !important;
  justify-content: initial !important;
  overflow: hidden;
  height: 100%;
  width: 100%;
}

/* 4) Картинка занимает всю колонку */
.avm-scenes-tender-full__left--img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 5) Аналогично для правой колонки с картинкой (если она у тебя там тоже есть) */
.avm-scenes-tender-full__right{
  padding: 0 !important;
  overflow: hidden;
  height: 100%;
  width: 100%;
}

.avm-scenes-tender-full__right img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avm-scenes-tender-full__wrap{
  display: grid;
  grid-template-columns: 40% 60%;
  width: 100%;
  height: 800px;
  align-items: stretch;
}
.avm-scenes-tender-full--reverse .avm-scenes-tender-full__wrap{
  grid-template-columns: 60% 40%;
}
.avm-scenes-tender-full__right,
.avm-scenes-tender-full__left--img{
  padding: 0 !important;
  margin: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

.avm-scenes-tender-full__right img,
.avm-scenes-tender-full__left--img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* ===== FANERA module (same avm-truss visual style) ===== */

.avm-truss.avm-fanera .avm-fanera__title{
  margin:0 0 14px 0;
  text-align:center;
}

/* текст как у заголовка по визуальной важности */
.avm-truss.avm-fanera .avm-fanera__text{
  max-width:980px;
  margin:0 auto 18px auto;
  text-align:center;

  font-size:18px;
  line-height:1.65;
  font-weight:550;
  color:rgba(39,50,60,.88);
}

.avm-truss.avm-fanera .avm-fanera__text p{
  margin:0 0 14px 0;
}

.avm-truss.avm-fanera .avm-fanera__text p:last-child{
  margin-bottom:0;
}

/* image block with shadow + radius (like previous) */
.avm-truss.avm-fanera .avm-fanera__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-fanera .avm-fanera__media img{
  width:100%;
  height:auto;
  display:block;
}

/* adaptive */
@media (max-width: 520px){
  .avm-truss.avm-fanera .avm-fanera__text{
    font-size:16px;
    font-weight:500;
  }
}
#mod-custom133 .avm-shero .avm-shero__container .avm-shero__right img {text-align:left; }
/* ===== FANERA тезисы в стиле avm-truss ===== */

.avm-truss.avm-fanera .avm-fanera__title{
  margin:0 0 14px 0;
  text-align:center;
}

.avm-truss.avm-fanera .avm-fanera__text{
  max-width:980px;
  margin:0 auto 14px auto;
  text-align:center;

  font-size:18px;
  line-height:1.65;
  font-weight:550;
  color:rgba(39,50,60,.88);
}

.avm-truss.avm-fanera .avm-fanera__text p{
  margin:0;
}

/* badges like other modules */
.avm-truss.avm-fanera .avm-fanera__badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:0 0 18px 0;
  padding:0;
}

.avm-truss.avm-fanera .avm-fanera__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* image block */
.avm-truss.avm-fanera .avm-fanera__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-fanera .avm-fanera__media img{
  width:100%;
  height:auto;
  display:block;
}

/* adaptive */
@media (max-width: 520px){
  .avm-truss.avm-fanera .avm-fanera__text{
    font-size:16px;
    font-weight:500;
  }

  .avm-truss.avm-fanera .avm-fanera__badge{
    width:100%;
  }
}
.avm-truss.avm-fanera .avm-fanera__badges{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin:0 0 18px 0;
  padding:0;
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}
.avm-truss.avm-fanera .avm-fanera__badge{
  width:100%;
}
@media (max-width: 520px){
  .avm-truss.avm-fanera .avm-fanera__badges{
    grid-template-columns:1fr;
  }
}
/* ===== Engineering 2-col module (scoped, doesn't affect others) ===== */
.avm-truss.avm-eng .avm-eng__grid{
  display:grid;
  grid-template-columns: 5fr 7fr; /* гармонично: картинка чуть уже текста */
  gap:18px;
  align-items:stretch;
}

/* left image card like avm-truss tiles */
.avm-truss.avm-eng .avm-eng__media{
  height:100%;
  min-height:420px;

  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-eng .avm-eng__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

/* right content in same "glass" card */
.avm-truss.avm-eng .avm-eng__right{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  padding:18px 18px 20px;
}

.avm-truss.avm-eng .avm-eng__title{
  margin:0 0 12px 0;
  font-size:clamp(18px,1.45vw,22px);
  line-height:1.35;
  font-weight:650;
  letter-spacing:-0.012em;
  color:#27323c;
}

.avm-truss.avm-eng .avm-eng__lead{
  margin:0 0 10px 0;
  font-weight:650;
  color:rgba(39,50,60,.88);
}

/* checklist with blue checks (site accent) */
.avm-truss.avm-eng .avm-eng__list{
  margin:0 0 12px 0;
  padding:0;
  list-style:none;
  color:rgba(39,50,60,.88);
  line-height:1.55;
}

.avm-truss.avm-eng .avm-eng__list li{
  position:relative;
  padding-left:26px;
  margin:8px 0;
}

.avm-truss.avm-eng .avm-eng__list li::before{
  content:"✔";
  position:absolute;
  left:0;
  top:0;
  color:rgba(47,109,255,1);
  font-weight:800;
}

/* final text */
.avm-truss.avm-eng .avm-eng__text{
  margin:0;
  color:rgba(39,50,60,.88);
  line-height:1.6;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-eng .avm-eng__grid{
    grid-template-columns:1fr;
  }
  .avm-truss.avm-eng .avm-eng__media{
    min-height:320px;
  }
}
@media (max-width: 992px){
  .avm-scenes-tender-full__wrap{
    grid-template-columns: 1fr !important;
    height: auto !important;
  }

  /* картинка отдельным блоком */
  .avm-scenes-tender-full__right,
  .avm-scenes-tender-full__left--img{
    height: 320px;
  }

  .avm-scenes-tender-full__left{
    padding: 50px 0;
  }

  .avm-scenes-tender-full__card{
    max-width: 100%;
  }
}
.avm-scenes-tender-full__right img, .avm-scenes-tender-full__left--img img {min-height: 347px;}

@media (max-width: 576px){
  .avm-scenes-tender-full__right,
  .avm-scenes-tender-full__left--img{
    height: 360px;
  }
.avm-scenes-tender-full__right img, .avm-scenes-tender-full__left--img img {min-height: 347px;}

  .avm-scenes-tender-full__left{
    padding: 40px 0;
  }

  .avm-scenes-tender-full__btn{
    width: 100%;
  }
}

@media (max-width: 992px){
  /* только для модуля сборно-разборных (где картинка справа) */
  .avm-scenes-tender-full:not(.avm-scenes-tender-full--reverse) .avm-scenes-tender-full__right{
    order: -1;
  }
  .avm-scenes-tender-full:not(.avm-scenes-tender-full--reverse) .avm-scenes-tender-full__left{
    order: 0;
  }
}

@media (max-width: 992px){
  .avm-scenes-tender-full__wrap{
    grid-template-columns: 1fr !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .avm-scenes-tender-full__right,
  .avm-scenes-tender-full__left--img{
    height: 320px;
  }
}

@media (max-width: 576px){
  .avm-scenes-tender-full__right,
  .avm-scenes-tender-full__left--img{
    height: 260px;
  }
}
.avm-scenes-tender-full__right,
.avm-scenes-tender-full__left--img{
  padding: 0 !important;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.avm-scenes-tender-full__right img,
.avm-scenes-tender-full__left--img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avm-scenes-tender-full__wrap{
  display: grid;
  width: 100%;
  /* вместо height */
  height: auto;
  min-height: clamp(520px, 60vh, 760px);
  align-items: stretch;
}

/* чтобы колонки тянулись по высоте строки */
.avm-scenes-tender-full__wrap > *{
  height: 100%;
  min-height: 0;
}


.scene-quiz__wrap{
  max-width:1100px;margin:0 auto;padding:16px 0;
  text-align:center;
}
.scene-quiz__title{margin:0 0 10px;font-size:26px;}
.scene-quiz__question{font-size:18px;margin:0 0 14px;}

.scene-quiz__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  justify-items:center;
}
@media (max-width: 980px){ .scene-quiz__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 520px){ .scene-quiz__grid{ grid-template-columns:1fr; } }

.scene-quiz__card{
  width:100%;max-width:260px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:14px;
  background:#fff;
  padding:14px 12px;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.scene-quiz__card:hover{
  transform: translateY(-1px);
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  border-color: rgba(0,0,0,.18);
}

.scene-quiz__code{font-weight:800;opacity:.7;font-size:12px;margin-bottom:6px;}
.scene-quiz__label{font-weight:800;font-size:15px;}

.scene-quiz__controls{display:flex;gap:10px;justify-content:center;margin-top:12px;flex-wrap:wrap;}
.scene-quiz__btn{
  border-radius:12px;
  border:1px solid rgba(0,0,0,.14);
  background:#fff;
  padding:10px 14px;
  font-weight:800;
  cursor:pointer;
}
.scene-quiz__btn--ghost{opacity:.9;}
.scene-quiz__wrap{
  max-width:1100px;
  margin:0 auto;
  padding:60px 0; /* было 16px */
  text-align:center;
}
#sceneQuiz .scene-quiz__wrap{
  padding: 110px 0; /* было 60px — стало заметно выше */
}
/* ========= Premium advantages block (AVStage) ========= */

.avm-prem{
  position: relative;
  width: 100%;
  min-height: 80vh;
  display: flex;
  align-items: center;
  overflow: hidden;
}

/* Background image */
.avm-prem__bg{
  position: absolute;
  inset: 0;
  background: url("scenes/mobile/prem.avif") center/cover no-repeat;
  transform: scale(1.02);
}

/* Light overlay so content stays readable */
.avm-prem::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;

  background:
    radial-gradient(900px 420px at 18% 18%, rgba(35,160,255,.10), rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,.72));
}

/* Container */
.avm-prem__container{
  position: relative;
  z-index: 2;
  width: min(1200px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(22px, 3.5vw, 54px) 0;
}

/* Title FULL WIDTH + GLASS */
.avm-prem__title{
  margin: 0 0 22px;
  text-align: center;
  width: 100%;
  max-width: 100%;

  font-size: clamp(26px, 2.6vw, 38px);
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #0B1220;

  padding: 14px 18px;
  border-radius: 22px;

  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(15,23,42,0.10);

  /* blur effect */
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* Grid: 2 columns / 3 rows */
.avm-prem__grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 22px;
  align-items: stretch;
}

/* Cards */
.avm-prem__item{
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 18px;
  align-items: center;

  padding: 24px 24px;
  border-radius: 22px;

  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(15,23,42,0.10);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* PNG icons */
.avm-prem__icon{
  width: 120px;
  height: 120px;
  object-fit: contain;
  display: block;
}

/* Text */
.avm-prem__subtitle{
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #0B1220;
}

.avm-prem__text{
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(11,18,32,0.82);
}

/* Responsive */
@media (max-width: 980px){
  .avm-prem{
    min-height: auto;
    padding: 28px 0;
  }

  .avm-prem__grid{
    grid-template-columns: 1fr;
  }

  .avm-prem__item{
    grid-template-columns: 120px 1fr;
  }

  .avm-prem__icon{
    width: 104px;
    height: 104px;
  }
}

@media (max-width: 520px){
  .avm-prem__container{
    width: min(1200px, calc(100% - 28px));
  }

  .avm-prem__item{
    grid-template-columns: 96px 1fr;
    padding: 18px;
  }

  .avm-prem__icon{
    width: 84px;
    height: 84px;
  }

  .avm-prem__subtitle{
    font-size: 17px;
  }
}
/* ===== REALIZ module (based on previous avm-truss style) ===== */
.avm-truss.avm-realiz .avm-realiz__title{
  margin:0 0 14px 0;
  text-align:center;
}

/* тезисы — как у fanera: 2 в строке на десктопе */
.avm-truss.avm-realiz .avm-realiz__badges{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin:0 auto 18px auto;
  padding:0;
  max-width:980px;
}

.avm-truss.avm-realiz .avm-realiz__badge{
  width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:12px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* чтобы 3-й тезис красиво занимал всю строку */
.avm-truss.avm-realiz .avm-realiz__badge:nth-child(3){
  grid-column:1 / -1;
}

/* картинка во всю ширину блока + тень/радиус как у модулей */
.avm-truss.avm-realiz .avm-realiz__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-realiz .avm-realiz__media img{
  width:100%;
  height:auto;
  display:block;
}

/* adaptive */
@media (max-width: 520px){
  .avm-truss.avm-realiz .avm-realiz__badges{
    grid-template-columns:1fr;
  }
  .avm-truss.avm-realiz .avm-realiz__badge:nth-child(3){
    grid-column:auto;
  }
}
/* ===== PODBOR module fullwidth 2 columns ===== */
.avm-truss.avm-podbor{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-podbor__outer{
  width:100%;
  padding:54px 0;

  background:radial-gradient(1200px 520px at 18% 8%,rgba(47,124,246,.10),transparent 62%),
             linear-gradient(180deg,#eef2f9 0%,#ffffff 70%);
}

.avm-podbor__wrap{
  width:100%;
  display:grid;
  grid-template-columns: 40% 60%;
  min-height:520px;
}

/* left */
.avm-podbor__left{
  padding:38px 34px;

  display:flex;
  flex-direction:column;
  justify-content:center;
}

.avm-podbor__title{
  margin:0 0 18px 0;
  font-size:clamp(22px,1.8vw,32px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.18;
}

.avm-podbor__title a{
  color:#27323c;
  text-decoration:none;
  transition:color .15s ease;
}

.avm-podbor__title a:hover{
  color:rgba(47,109,255,1);
}

/* badges */
.avm-podbor__badges{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}
.avm-podbor__badge{
  width:100%;
}
.avm-podbor__badge{
  width:100%;
}
@media (max-width: 520px){
  .avm-podbor__badges{
    grid-template-columns:1fr;
  }
}
.avm-podbor__title{
  text-align:center;
}


.avm-podbor__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* right image */
.avm-podbor__right{
        border-radius: 18px;
  overflow:hidden;
  box-shadow:0 10px 22px rgba(16,24,40,0.06), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-podbor__right img{
  width:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

/* responsive */
@media (max-width: 980px){
  .avm-podbor__wrap{
    grid-template-columns:1fr;
    min-height:auto;
  }

  .avm-podbor__left{
    border-right:none;
    padding:28px 18px;
  }


}

@media (max-width: 520px){
  .avm-podbor__badge{
    width:100%;
  }
}
/* ===== KOMPLEKT module full width table ===== */
.avm-truss.avm-kompl{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-kompl__outer{
  width:100%;
  padding:54px 0;

  background:radial-gradient(1200px 520px at 18% 8%,rgba(47,124,246,.10),transparent 62%),
             linear-gradient(180deg,#eef2f9 0%,#ffffff 70%);
}

.avm-truss.avm-kompl .avm-kompl__title{
  margin:0 0 26px 0;
  text-align:center;
}

.avm-kompl__table{
  display:flex;
  flex-direction:column;
  gap:14px;
}

/* row card */
.avm-kompl__row{
  display:grid;
  grid-template-columns: 220px 1fr;
  gap:18px;
  align-items:center;

  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

/* image */
.avm-kompl__img{
  height:160px;
  width:100%;
  overflow:hidden;
}

.avm-kompl__img img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

/* content */
.avm-kompl__content{
  padding:16px 18px 16px 0;
}

.avm-kompl__h{
  margin:0 0 8px 0;
  font-size:18px;
  font-weight:650;
  letter-spacing:-0.01em;
  color:#27323c;
}

.avm-kompl__text{
  margin:0;
  font-size:15px;
  line-height:1.55;
  color:rgba(39,50,60,.88);
}

/* responsive */
@media (max-width: 980px){
  .avm-kompl__row{
    grid-template-columns: 180px 1fr;
  }
  .avm-kompl__img{
    height:140px;
  }
}

@media (max-width: 640px){
  .avm-kompl__row{
    grid-template-columns:1fr;
  }

  .avm-kompl__img{
    height:200px;
  }

  .avm-kompl__content{
    padding:14px 14px 18px;
    text-align:center;
  }
}
/* ===== ARKA module (scoped) ===== */
.avm-truss.avm-arka .avm-arka__grid{
  display:grid;
  grid-template-columns: 5fr 7fr; /* гармонично: фото чуть уже текста */
  gap:16px;
  align-items:stretch;
}

/* LEFT: stack images */
.avm-truss.avm-arka .avm-arka__left{
  display:flex;
  flex-direction:column;
  gap:16px;
}

/* image cards in avm-truss style */
.avm-truss.avm-arka .avm-arka__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-arka .avm-arka__media img{
  width:100%;
  height:auto;
  display:block;
}

/* RIGHT: glass card */
.avm-truss.avm-arka .avm-arka__right{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  padding:18px 18px 20px;
}

.avm-truss.avm-arka .avm-arka__lead{
  font-weight:650;
  color:#27323c;
  line-height:1.4;
  margin:0 0 12px 0;
}

/* specs */
.avm-truss.avm-arka .avm-arka__spec{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.avm-truss.avm-arka .avm-arka__row{
  display:grid;
  grid-template-columns: 260px 1fr;
  gap:12px;
  align-items:start;
  padding:10px 12px;

  border-radius:14px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}

.avm-truss.avm-arka .avm-arka__k{
  font-weight:650;
  color:rgba(39,50,60,.88);
  letter-spacing:-0.01em;
}

.avm-truss.avm-arka .avm-arka__v{
  color:rgba(39,50,60,.88);
  line-height:1.5;
}

/* bottom note */
.avm-truss.avm-arka .avm-arka__note{
  margin-top:12px;
  color:rgba(39,50,60,.88);
  line-height:1.55;
  font-weight:550;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-arka .avm-arka__grid{
    grid-template-columns:1fr;
  }
  .avm-truss.avm-arka .avm-arka__row{
    grid-template-columns:1fr;
  }
}
/* ===== KONEK module (text left, images right) ===== */
.avm-truss.avm-konek .avm-konek__grid{
  display:grid;
  grid-template-columns: 7fr 5fr; /* текст шире, фото уже */
  gap:16px;
  align-items:stretch;
}

/* LEFT text card */
.avm-truss.avm-konek .avm-konek__left{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  padding:18px 18px 20px;
}

.avm-truss.avm-konek .avm-konek__lead{
  font-weight:650;
  color:#27323c;
  line-height:1.4;
  margin:0 0 12px 0;
}

/* spec rows */
.avm-truss.avm-konek .avm-konek__spec{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.avm-truss.avm-konek .avm-konek__row{
  display:grid;
  grid-template-columns: 280px 1fr;
  gap:12px;
  align-items:start;

  padding:10px 12px;
  border-radius:14px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}

.avm-truss.avm-konek .avm-konek__k{
  font-weight:650;
  color:rgba(39,50,60,.88);
  letter-spacing:-0.01em;
}

.avm-truss.avm-konek .avm-konek__v{
  color:rgba(39,50,60,.88);
  line-height:1.5;
}

/* note */
.avm-truss.avm-konek .avm-konek__note{
  margin-top:12px;
  color:rgba(39,50,60,.88);
  line-height:1.55;
  font-weight:550;
}

/* RIGHT images stack */
.avm-truss.avm-konek .avm-konek__right{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.avm-truss.avm-konek .avm-konek__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-konek .avm-konek__media img{
  width:100%;
  height:auto;
  display:block;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-konek .avm-konek__grid{
    grid-template-columns:1fr;
  }

  .avm-truss.avm-konek .avm-konek__row{
    grid-template-columns:1fr;
  }
}
/* ===== ODNOSKAT module (images left, text right) ===== */
.avm-truss.avm-odn .avm-odn__grid{
  display:grid;
  grid-template-columns: 5fr 7fr;
  gap:16px;
  align-items:stretch;
}

/* LEFT images */
.avm-truss.avm-odn .avm-odn__left{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.avm-truss.avm-odn .avm-odn__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-odn .avm-odn__media img{
  width:100%;
  height:auto;
  display:block;
}

/* RIGHT text card */
.avm-truss.avm-odn .avm-odn__right{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  padding:18px 18px 20px;
}

.avm-truss.avm-odn .avm-odn__lead{
  font-weight:650;
  color:#27323c;
  line-height:1.4;
  margin:0 0 12px 0;
}

.avm-truss.avm-odn .avm-odn__spec{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.avm-truss.avm-odn .avm-odn__row{
  display:grid;
  grid-template-columns: 280px 1fr;
  gap:12px;
  align-items:start;

  padding:10px 12px;
  border-radius:14px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}

.avm-truss.avm-odn .avm-odn__k{
  font-weight:650;
  color:rgba(39,50,60,.88);
  letter-spacing:-0.01em;
}

.avm-truss.avm-odn .avm-odn__v{
  color:rgba(39,50,60,.88);
  line-height:1.5;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-odn .avm-odn__grid{
    grid-template-columns:1fr;
  }

  .avm-truss.avm-odn .avm-odn__row{
    grid-template-columns:1fr;
  }
}
/* ===== STEEL module (text left, 3 images right) ===== */
.avm-truss.avm-sksteel .avm-sksteel__grid{
  display:grid;
  grid-template-columns: 7fr 5fr;
  gap:16px;
  align-items:stretch;
}

/* LEFT text card */
.avm-truss.avm-sksteel .avm-sksteel__left{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  padding:18px 18px 20px;
}

.avm-truss.avm-sksteel .avm-sksteel__lead{
  font-weight:650;
  color:#27323c;
  line-height:1.4;
  margin:0 0 12px 0;
}

.avm-truss.avm-sksteel .avm-sksteel__spec{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.avm-truss.avm-sksteel .avm-sksteel__row{
  display:grid;
  grid-template-columns: 260px 1fr;
  gap:12px;
  align-items:start;

  padding:10px 12px;
  border-radius:14px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}

.avm-truss.avm-sksteel .avm-sksteel__k{
  font-weight:650;
  color:rgba(39,50,60,.88);
  letter-spacing:-0.01em;
}

.avm-truss.avm-sksteel .avm-sksteel__v{
  color:rgba(39,50,60,.88);
  line-height:1.5;
}

/* RIGHT images stack */
.avm-truss.avm-sksteel .avm-sksteel__right{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.avm-truss.avm-sksteel .avm-sksteel__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-sksteel .avm-sksteel__media img{
  width:100%;
  height:auto;
  display:block;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-sksteel .avm-sksteel__grid{
    grid-template-columns:1fr;
  }

  .avm-truss.avm-sksteel .avm-sksteel__row{
    grid-template-columns:1fr;
  }
}
/* ===== MONTAZ module (3 columns, full block link) ===== */
.avm-truss.avm-montaz a.avm-montaz__link,
.avm-truss.avm-montaz a.avm-montaz__link:link,
.avm-truss.avm-montaz a.avm-montaz__link:visited,
.avm-truss.avm-montaz a.avm-montaz__link:hover,
.avm-truss.avm-montaz a.avm-montaz__link:active{
  display:block;
  text-decoration:none !important;
  color:inherit !important;
}

/* title */
.avm-truss.avm-montaz .avm-montaz__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(18px,1.4vw,22px);
  font-weight:650;
  letter-spacing:-0.012em;
  color:#27323c;
}

/* grid */
.avm-truss.avm-montaz .avm-montaz__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  align-items:stretch;
}

/* card */
.avm-truss.avm-montaz .avm-montaz__item{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

/* image */
.avm-truss.avm-montaz .avm-montaz__media{
  width:100%;
  height:210px;
  overflow:hidden;
}

.avm-truss.avm-montaz .avm-montaz__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

/* content */
.avm-truss.avm-montaz .avm-montaz__content{
  padding:14px 14px 16px;
  text-align:center;
}

.avm-truss.avm-montaz .avm-montaz__h{
  margin:0 0 10px 0;
  font-size:16px;
  font-weight:650;
  letter-spacing:-0.01em;
  color:#27323c;
  line-height:1.3;
}

.avm-truss.avm-montaz .avm-montaz__text{
  font-size:14px;
  line-height:1.55;
  color:rgba(39,50,60,.88);
}

/* hover effect ONLY for images (not for text) */
.avm-truss.avm-montaz .avm-montaz__item{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-montaz a.avm-montaz__link:hover .avm-montaz__item{
  transform:none;
}

.avm-truss.avm-montaz a.avm-montaz__link:hover .avm-montaz__media{
  filter:none;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-montaz .avm-montaz__grid{
    grid-template-columns:1fr;
  }

  .avm-truss.avm-montaz .avm-montaz__media{
    height:240px;
  }
}
/* ===== MONTAZ fullwidth + 70vh ===== */
.avm-truss.avm-montaz .avm-truss__outer{
  padding:40px 0;
}

.avm-truss.avm-montaz .avm-truss__container{
  max-width:1600px; /* почти во всю ширину */
  padding:0 22px;
}

.avm-truss.avm-montaz .avm-truss__panel{
  min-height:70vh; /* 70% высоты экрана */
  display:flex;
  flex-direction:column;
  justify-content:center;
}

/* grid stretches */
.avm-truss.avm-montaz .avm-montaz__grid{
  flex:1;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  align-items:stretch;
}

/* cards stretch full height */
.avm-truss.avm-montaz .avm-montaz__item{
  height:100%;
  display:flex;
  flex-direction:column;
}

/* image takes most height */
.avm-truss.avm-montaz .avm-montaz__media{
  flex:1;
  min-height:240px;
  height:auto;
}

.avm-truss.avm-montaz .avm-montaz__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* content fixed bottom */
.avm-truss.avm-montaz .avm-montaz__content{
  padding:16px 16px 18px;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-montaz .avm-truss__panel{
    min-height:auto;
  }

  .avm-truss.avm-montaz .avm-montaz__grid{
    grid-template-columns:1fr;
  }

  .avm-truss.avm-montaz .avm-montaz__media{
    min-height:220px;
  }
}
/* ===== MONTAZ module updated layout ===== */
.avm-truss.avm-montaz a.avm-montaz__link,
.avm-truss.avm-montaz a.avm-montaz__link:link,
.avm-truss.avm-montaz a.avm-montaz__link:visited,
.avm-truss.avm-montaz a.avm-montaz__link:hover,
.avm-truss.avm-montaz a.avm-montaz__link:active{
  display:block;
  text-decoration:none !important;
  color:inherit !important;
}

/* title */
.avm-truss.avm-montaz .avm-montaz__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.012em;
  color:#27323c;
}

/* grid */
.avm-truss.avm-montaz .avm-montaz__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  align-items:stretch;
}

/* card */
.avm-truss.avm-montaz .avm-montaz__item{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  padding:16px;
  display:flex;
  flex-direction:column;
}

/* column title */
.avm-truss.avm-montaz .avm-montaz__h{
  margin:0 0 12px 0;
  font-size:22px;
  font-weight:650;
  letter-spacing:-0.01em;
  color:#27323c;
  line-height:1.25;
  text-align:center;
}

/* image fixed height (same for all) */
.avm-truss.avm-montaz .avm-montaz__media{
  width:100%;
  height:220px; /* одинаковая высота */
  border-radius:16px;
  overflow:hidden;
  margin:0 0 12px 0;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
}

.avm-truss.avm-montaz .avm-montaz__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

/* text */
.avm-truss.avm-montaz .avm-montaz__text{
  font-size:14px;
  line-height:1.55;
  color:rgba(39,50,60,.88);
  text-align:center;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-montaz .avm-montaz__grid{
    grid-template-columns:1fr;
  }

  .avm-truss.avm-montaz .avm-montaz__media{
    height:240px;
  }
}
/* Контейнер кнопок */
.av-contacts__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
}

/* Базовый стиль всех кнопок */
.av-contacts__actions .av-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 14px 22px !important;
  border-radius: 14px !important;

  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;

  border: 2px solid #fff !important;
  outline: none !important;

  text-decoration: none !important;
  color: #fff !important;

  transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease !important;
}

/* Важно: убрать влияние любых глобальных hover-стилей ссылок */
.av-contacts__actions .av-btn:link,
.av-contacts__actions .av-btn:visited,
.av-contacts__actions .av-btn:hover,
.av-contacts__actions .av-btn:active,
.av-contacts__actions .av-btn:focus {
  color: #fff !important;
  text-decoration: none !important;
}

/* Hover: только эффект, без изменения текста */
.av-contacts__actions .av-btn:hover {
  transform: translateY(-2px) !important;
  filter: brightness(1.08) !important;
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.28) !important;
}

/* Active */
.av-contacts__actions .av-btn:active {
  transform: translateY(0px) scale(0.98) !important;
  filter: brightness(0.95) !important;
}

/* Focus */
.av-contacts__actions .av-btn:focus-visible {
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.35), 0 12px 26px rgba(0, 0, 0, 0.28) !important;
}

/* Цвета кнопок */
.av-contacts__actions .av-btn--wa {
  background: #231a30 !important; /* MAX */
}

.av-contacts__actions .av-btn--tg {
  background: #229ed9 !important;
}

.av-contacts__actions .av-btn--vk {
  background: #0077ff !important;
}
/* базовый фон как был */
.avm-prem__bg {
    position: absolute;
    inset: 0;
    background: url(scenes/mobile/prem.avif) center / cover no-repeat;
    transform: scale(1.02);
}

/* фон только для стационарной сцены */
.avm-prem--stationary .avm-prem__bg {
    background: url(scenes/stationary/prem.avif) center / cover no-repeat;
}

/* чтобы h6 не менял стиль блока */
.avm-prem__subtitle {
    margin: 0;
    padding: 0;

    line-height: inherit;
}
/* MOBILE: заголовок -> картинки -> текст */
@media (max-width: 767px) {
  /* ARKA */
  .avm-arka__grid {
    display: grid;
    grid-template-columns: 1fr;
  }
  .avm-arka__left  { order: 1; } /* картинки */
  .avm-arka__right { order: 2; } /* текст */

  /* KONEK */
  .avm-konek__grid {
    display: grid;
    grid-template-columns: 1fr;
  }
  .avm-konek__right { order: 1; } /* картинки */
  .avm-konek__left  { order: 2; } /* текст */

  /* ODN */
  .avm-odn__grid {
    display: grid;
    grid-template-columns: 1fr;
  }
  .avm-odn__left  { order: 1; } /* картинки */
  .avm-odn__right { order: 2; } /* текст */

  /* STEEL */
  .avm-sksteel__grid {
    display: grid;
    grid-template-columns: 1fr;
  }
  .avm-sksteel__right { order: 1; } /* картинки */
  .avm-sksteel__left  { order: 2; } /* текст */
}
/* Фон только для страницы сцен-ракушек */
.avm-prem--rakushka .avm-prem__bg {
    background: url(scenes/rakushka/prem.avif) center / cover no-repeat;
}
.avm-roof .avm-kompl__row {
  align-items: stretch;
}

.avm-roof .avm-kompl__img {
  flex: 0 0 280px;   /* ширина блока картинки */
  max-width: 280px;
  height: 220px;     /* высота блока картинки */
  overflow: hidden;
  border-radius: 12px; /* если нужно красиво */
}

.avm-roof .avm-kompl__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avm-roof .avm-kompl__row {
  align-items: stretch;
}

.avm-roof .avm-kompl__img {
  flex: 0 0 364px;   /* было 280px → +30% */
  max-width: 364px;
  height: 286px;     /* было 220px → +30% */
  overflow: hidden;
  border-radius: 12px;
}

.avm-roof .avm-kompl__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* Увеличиваем именно строки в модуле кровли */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__table .avm-kompl__row{
  min-height: 320px !important;     /* высота строки */
  padding: 28px 32px !important;    /* больше воздуха */
  gap: 32px !important;
  align-items: stretch !important;
}

/* Увеличиваем блок картинки внутри этих строк */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__table .avm-kompl__row .avm-kompl__img{
  flex: 0 0 360px !important;
  max-width: 360px !important;
  height: 270px !important;
  overflow: hidden;
  border-radius: 14px;
}

/* Картинка во всю площадь блока */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__table .avm-kompl__row .avm-kompl__img img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: block;
}
section.avm-truss.avm-kompl.avm-roof .avm-kompl__img img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;   /* вместо cover */
  object-position: center;
  display: block;
}


/* ТОЛЬКО для модуля кровли */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__table .avm-kompl__row{
  /* если у тебя grid — расширяем первую колонку */
  grid-template-columns: 520px 1fr !important;

  /* если у тебя flex — тоже принудительно задаём */
  display: flex !important;
  align-items: stretch !important;
  gap: 32px !important;
}

/* делаем блок с картинкой шире */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__table .avm-kompl__row > .avm-kompl__img{
  flex: 0 0 520px !important;     /* ширина колонки с картинкой */
  max-width: 520px !important;
  width: 520px !important;

  height: 360px !important;       /* чтобы сама картинка была крупнее */
  overflow: hidden !important;
  border-radius: 14px;
}

/* контент пусть занимает остаток */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__table .avm-kompl__row > .avm-kompl__content{
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* картинка внутри — на всю площадь */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__table .avm-kompl__row > .avm-kompl__img img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}
/* Заголовок секции */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__title {
  font-size: 42px !important;
  line-height: 1.15 !important;
}

/* Заголовки внутри карточек (Профлист / Мягкая черепица / Поликарбонат) */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__h {
  font-size: 26px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}
/* ====== DESKTOP / BASE ====== */
section.avm-truss.avm-kompl.avm-roof .avm-kompl__row{
  display: flex;
  align-items: stretch;
  gap: 32px;
  padding: 28px 32px;
}

section.avm-truss.avm-kompl.avm-roof .avm-kompl__img{
  flex: 0 0 520px;
  max-width: 520px;
  height: 360px;
  overflow: hidden;
  border-radius: 14px;
}

section.avm-truss.avm-kompl.avm-roof .avm-kompl__img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

section.avm-truss.avm-kompl.avm-roof .avm-kompl__title{
  font-size: 42px;
  line-height: 1.15;
}

section.avm-truss.avm-kompl.avm-roof .avm-kompl__h{
  font-size: 26px;
  line-height: 1.2;
  font-weight: 700;
}

section.avm-truss.avm-kompl.avm-roof .avm-kompl__text{
  font-size: 16px;
  line-height: 1.6;
}


/* ====== TABLET ====== */
@media (max-width: 1024px){
  section.avm-truss.avm-kompl.avm-roof .avm-kompl__img{
    flex: 0 0 380px;
    max-width: 380px;
    height: 280px;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__title{
    font-size: 34px;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__h{
    font-size: 22px;
  }
}


/* ====== MOBILE ====== */
@media (max-width: 768px){
  section.avm-truss.avm-kompl.avm-roof .avm-kompl__row{
    flex-direction: column;
    padding: 18px 18px;
    gap: 16px;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__img{
    width: 100%;
    max-width: 100%;
    flex: none;
    height: 220px;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__title{
    font-size: 26px;
    line-height: 1.2;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__h{
    font-size: 20px;
    line-height: 1.2;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__text{
    font-size: 15px;
    line-height: 1.55;
  }
}
/* ====== TABLET (делаем сразу колонку: картинка сверху, текст снизу) ====== */
@media (max-width: 900px){
  section.avm-truss.avm-kompl.avm-roof .avm-kompl__row{
    flex-direction: column !important;
    padding: 20px 20px !important;
    gap: 16px !important;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__img{
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    height: 260px !important;
  }

  section.avm-truss.avm-kompl.avm-roof .avm-kompl__content{
    width: 100% !important;
  }
}
/* Только для модуля "Выбор покрытия сцены" */
section.avm-truss.avm-kompl.avm-pokr .avm-kompl__row{
  display: flex;
  align-items: stretch;
  gap: 28px;
  padding: 24px 28px;
  flex-direction: row-reverse; /* ТЕКСТ слева, КАРТИНКА справа */
}

section.avm-truss.avm-kompl.avm-pokr .avm-kompl__img{
  flex: 0 0 460px;
  max-width: 460px;
  height: 320px;
  overflow: hidden;
  border-radius: 14px;
}

section.avm-truss.avm-kompl.avm-pokr .avm-kompl__img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

section.avm-truss.avm-kompl.avm-pokr .avm-kompl__h{
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
}

section.avm-truss.avm-kompl.avm-pokr .avm-kompl__text{
  font-size: 16px;
  line-height: 1.6;
}

/* Адаптив: сначала картинка, затем текст */
@media (max-width: 900px){
  section.avm-truss.avm-kompl.avm-pokr .avm-kompl__row{
    flex-direction: column !important; /* DOM: img -> content, значит на мобиле будет картинка, потом текст */
    padding: 18px 18px !important;
    gap: 16px !important;
  }

  section.avm-truss.avm-kompl.avm-pokr .avm-kompl__img{
    width: 100%;
    max-width: 100%;
    flex: none;
    height: 240px;
  }

  section.avm-truss.avm-kompl.avm-pokr .avm-kompl__h{
    font-size: 20px;
  }

  section.avm-truss.avm-kompl.avm-pokr .avm-kompl__text{
    font-size: 15px;
    line-height: 1.55;
  }
}

/* ===== FIX: 570–900px (картинки 1000x800 не режем) ===== */
@media (min-width: 570px) and (max-width: 900px){
  /* Только для модуля "Выбор покрытия сцены" */
  section.avm-truss.avm-kompl.avm-pokr .avm-kompl__row{
    flex-direction: column !important;
  }

  /* Убираем фиксированную высоту, задаём пропорцию 5:4 */
  section.avm-truss.avm-kompl.avm-pokr .avm-kompl__img{
    height: auto !important;            /* было 240px -> резало */
    aspect-ratio: 5 / 4;               /* 1000x800 */
    width: 100% !important;
    max-width: 100% !important;
    background: #f3f3f3;               /* чтобы "поля" выглядели аккуратно */
  }

  /* Картинка вписывается без обрезки */
  section.avm-truss.avm-kompl.avm-pokr .avm-kompl__img img{
    width: 100% !important;
    height: 100% !important;           /* работаем вместе с aspect-ratio */
    object-fit: contain !important;    /* ключевое: НЕ cover */
    object-position: center !important;
    display: block;
  }
}
.avm-prem {
  position: relative;
  overflow: hidden;
}

.avm-prem__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.avm-prem__container {
  position: relative;
  z-index: 2;
}

/* Подложка для подиумов */
.avm-prem--podiums .avm-prem__bg {
  background: url("../images/podiums/mainbanner.avif") center / cover no-repeat;
  opacity: 0.15;
}
/* =========================================================
   AVM Portfolio for Joomla 6 + Cassiopeia
   Works with: Category Blog (Articles)
   Put into: /media/templates/site/cassiopeia/css/user.css
   ========================================================= */

/* ---- tokens (можно менять) ---- */
:root{
  --avm-ink:#1f2a37;
  --avm-ink-2:rgba(31,42,55,.74);
  --avm-ink-3:rgba(31,42,55,.62);

  --avm-accent:rgba(47,109,255,1);
  --avm-accent-12:rgba(47,109,255,.12);
  --avm-accent-14:rgba(47,109,255,.14);
  --avm-accent-18:rgba(47,109,255,.18);

  --avm-card-bg:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84));
  --avm-card-border:1px solid rgba(39,50,60,.10);
  --avm-card-shadow:0 30px 80px rgba(16,24,40,0.10),inset 0 1px 0 rgba(255,255,255,.70);

  --avm-radius-1:18px;
  --avm-radius-2:22px;
  --avm-radius-3:26px;

  --avm-gap:18px;
}

/* ---- page background (только если на странице есть блог категории) ---- */
.blog,
.com-content-category-blog,
.com-content-category-blog__blog{
  position:relative;
}

.com-content-category-blog,
.com-content-category-blog__blog{
  padding-top:18px;
  padding-bottom:40px;
}

.com-content-category-blog::before,
.com-content-category-blog__blog::before{
  content:"";
  position:absolute;
  inset:-30px -12px auto -12px;
  height:520px;
  pointer-events:none;

  z-index:0;
}

/* чтобы контент был над подложкой */
.com-content-category-blog > *,
.com-content-category-blog__blog > *{
  position:relative;
  z-index:1;
}

/* ---- category header as "hero" ---- */
.com-content-category-blog__header,
.category-desc,
.page-header{
  border-radius:var(--avm-radius-3);
  padding:clamp(16px,2.2vw,28px);
  background:rgba(255,255,255,.78);
  border:1px solid rgba(47,109,255,.14);
  box-shadow:0 20px 60px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.70);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.com-content-category-blog__header h1,
.page-header h1{
  margin:0 0 10px 0;
  font-size:clamp(22px,2.1vw,34px);
  line-height:1.12;
  font-weight:650;
  letter-spacing:-0.012em;
  color:var(--avm-ink);
}

.category-desc,
.com-content-category-blog__header p{
  margin:0;
  color:var(--avm-ink-2);
  font-size:15px;
  line-height:1.65;
  max-width:80ch;
}

/* ---- portfolio grid tuning ---- */
.blog-items{
  margin-top:var(--avm-gap);
  gap:var(--avm-gap);
}

/* Cassiopeia/Bootstrap: items are often in .row + .col-*; keep spacing nice */
.blog-items .row,
.blog-items.row{
  row-gap:var(--avm-gap);
}

.blog-items .item{
  margin-bottom:0;
}

/* ---- card base ---- */
.blog-items .item .item-content,
.blog-items .item .blog-item,
.blog-items .item{
  border-radius:var(--avm-radius-2);
}

/* target the actual visible block */
.blog-items .item-content{
  overflow:hidden;
  background:var(--avm-card-bg);
  border:var(--avm-card-border);
  box-shadow:var(--avm-card-shadow);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;
}

/* link should not break radius */
.blog-items .item-content a{
  text-decoration:none;
}

/* ---- image cover ---- */
.blog-items .item-image,
.blog-items .item-image a{
  display:none;
  position:relative;
}

.blog-items .item-image img{
  width:100%;
  height:260px;
  object-fit:cover;
  display:block;
  transform:scale(1.01);
  transition:transform .25s ease, filter .25s ease;
}

/* overlay + shine */
.blog-items .item-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.00) 20%, rgba(0,0,0,.18) 100%);
  opacity:.85;
  pointer-events:none;
}

.blog-items .item-image::before{
  content:"";
  position:absolute;
  inset:-40% -60%;
  background:radial-gradient(closest-side, rgba(255,255,255,.22), transparent 60%);
  transform:translate3d(-15%, -10%, 0);
  opacity:.0;
  pointer-events:none;
  transition:opacity .25s ease, transform .25s ease;
}

/* ---- body spacing ---- */
.blog-items .item-content .page-header,
.blog-items .item-content .item-title,
.blog-items .item-content .item-body{
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
}

.blog-items .item-content{
  padding:0;
}

.blog-items .item-content .item-body{
  padding:16px 16px 16px 16px;
}

.blog-items .item-content h2,
.blog-items .item-content .item-title{
  margin:0 0 8px 0;
  font-size:18px;
  line-height:1.22;
  font-weight:650;
  letter-spacing:-0.01em;
  color:var(--avm-ink);
}

.blog-items .item-content h2 a{
  color:var(--avm-ink);
}

.blog-items .item-content p{
  margin:0;
  color:var(--avm-ink-2);
  font-size:14px;
  line-height:1.6;
}

/* ---- meta as pills ---- */
.blog-items .item-content .article-info{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(31,42,55,.10);
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  color:var(--avm-ink-3);
  font-size:12px;
}

/* each meta item */
.blog-items .item-content .article-info dd,
.blog-items .item-content .article-info .published,
.blog-items .item-content .article-info .category-name,
.blog-items .item-content .article-info .createdby,
.blog-items .item-content .article-info .hits{
  margin:0;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(47,109,255,.06);
  border:1px solid rgba(47,109,255,.12);
  color:rgba(31,42,55,.72);
}

/* ---- hover effects ---- */
.blog-items .item-content:hover{

  border-color:rgba(47,109,255,.18);
  box-shadow:0 38px 90px rgba(16,24,40,0.14), inset 0 1px 0 rgba(255,255,255,.72);
}

.blog-items .item-content:hover .item-image img{
  transform:scale(1.06);
  filter:saturate(1.05) contrast(1.02);
}

.blog-items .item-content:hover .item-image::before{
  opacity:1;
  transform:translate3d(5%, 10%, 0);
}

/* ---- clickable arrow micro-element (works if title is link) ---- */
.blog-items .item-content h2 a{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.blog-items .item-content h2 a::after{
  content:"→";
  display:inline-grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:var(--avm-accent-12);
  color:var(--avm-accent);
  font-weight:800;
  font-size:14px;
  transform:translateX(0);
  transition:transform .18s ease, background .18s ease;
}

.blog-items .item-content:hover h2 a::after{
  transform:translateX(4px);
  background:rgba(47,109,255,.16);
}

/* ---- article page (single project) ---- */
.com-content-article .page-header{
  margin-bottom:16px;
}

.com-content-article .page-header h1{
  font-size:clamp(22px,2.0vw,40px);
  font-weight:500;
  letter-spacing:-0.015em;
}
.avm-blogside {margin-bottom:20px}
.com-content-article .item-image img{
  border-radius:var(--avm-radius-3);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 26px 70px rgba(16,24,40,0.14);
  display:block;
  width:100%;
  height:auto;
}

.com-content-article .com-content-article__body{
  margin-top:16px;
  border-radius:var(--avm-radius-3);
  padding:clamp(16px,2.2vw,28px);
  background:rgba(255,255,255,.78);

}

.com-content-article .com-content-article__body p{
  color:var(--avm-ink-2);
  line-height:1.75;
  font-size:16px;
}

/* ---- gallery images inside article (когда вставляешь <img class="img-fluid rounded-4"> ) ---- */
.com-content-article img.rounded-4{
  border-radius:18px !important;
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 16px 40px rgba(16,24,40,0.10);
}

/* ---- buttons (Cassiopeia uses .btn) ---- */
.btn, .button, button, input[type="submit"]{
  border-radius:999px !important;
}

.btn-primary{
  border:1px solid rgba(47,109,255,.45) !important;
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%) !important;
  box-shadow:0 14px 30px rgba(47,109,255,0.24),0 10px 20px rgba(16,24,40,0.10);
  transition:transform .15s ease, filter .15s ease, box-shadow .15s ease;
}

.btn-primary:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(47,109,255,0.32),0 14px 26px rgba(16,24,40,0.12);
}

/* ---- responsive ---- */
@media (max-width: 980px){
  .blog-items .item-image img{ height:240px; }
}

@media (max-width: 720px){
  .blog-items .item-image img{ height:220px; }
  .com-content-category-blog__header,
  .category-desc,
  .page-header{
    border-radius:22px;
  }
}

@media (max-width: 520px){
  .blog-items{ margin-top:14px; }
  .blog-items .item-content .item-body{ padding:14px; }
  .blog-items .item-image img{ height:200px; }
}

/* ---- reduced motion ---- */
@media (prefers-reduced-motion: reduce){
  .blog-items .item-content,
  .blog-items .item-image img,
  .blog-items .item-image::before,
  .btn-primary{
    transition:none !important;
  }
  .blog-items .item-content:hover{ transform:none; }
}
/* =========================================================
   AVM Case (Portfolio Article) – CSS
   For Joomla 6 + Cassiopeia (Bootstrap 5)
   Paste into: /media/templates/site/cassiopeia/css/user.css
   Works with HTML block from previous message (.avm-case...)
   ========================================================= */

/* --- base reset for component --- */
.avm-case, .avm-case *{ box-sizing:border-box; }
.avm-case{ color:#27323c; font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; }

/* --- tokens --- */
.avm-case{
  --ink:#1f2a37;
  --ink-2:rgba(31,42,55,.74);
  --ink-3:rgba(31,42,55,.62);
  --line:rgba(39,50,60,.10);

  --accent:rgba(47,109,255,1);
  --accent-06:rgba(47,109,255,.06);
  --accent-12:rgba(47,109,255,.12);
  --accent-14:rgba(47,109,255,.14);
  --accent-18:rgba(47,109,255,.18);
  --accent-35:rgba(47,109,255,.35);
  --accent-45:rgba(47,109,255,.45);

  --card-bg:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84));
  --card-border:1px solid rgba(39,50,60,.10);
  --card-shadow:0 30px 80px rgba(16,24,40,0.12), inset 0 1px 0 rgba(255,255,255,.65);

  --r-1:16px;
  --r-2:22px;
  --r-3:26px;

  --gap:18px;
}

/* --- subtle background aura (inside article) --- */
.avm-case{
  position:relative;
  padding:10px 0 26px 0;
}

.avm-case::before{
  content:"";
  position:absolute;
  inset:-30px -12px auto -12px;
  height:560px;
  pointer-events:none;

  z-index:0;
}

.avm-case > *{ position:relative; z-index:1; }

/* =========================================================
   HERO
   ========================================================= */
.avm-case__hero{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:22px;
  align-items:stretch;
  margin-bottom:var(--gap);
}

.avm-case__cover{
  margin:0;
  border-radius:var(--r-3);
  overflow:hidden;
  border:var(--card-border);
  box-shadow:0 26px 70px rgba(16,24,40,0.14);
  background:#fff;
  position:relative;
}

.avm-case__cover img{
  width:100%;
  height:100%;
  min-height:340px;
  object-fit:cover;
  display:block;
  transform:scale(1.01);
}

.avm-case__cover::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.00) 30%, rgba(0,0,0,.22) 100%);
  pointer-events:none;
}

.avm-case__covercap{
  position:absolute;
  left:16px;
  right:16px;
  bottom:14px;
  color:#fff;
  font-size:13px;
  line-height:1.45;
  opacity:.92;
  text-shadow:0 10px 24px rgba(0,0,0,.35);
}

.avm-case__head{
  border-radius:var(--r-3);
  padding:clamp(18px,2.2vw,28px);
  background:rgba(255,255,255,.86);
  border:1px solid rgba(47,109,255,.14);
  box-shadow:0 30px 80px rgba(16,24,40,0.10), inset 0 1px 0 rgba(255,255,255,.72);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.avm-case__badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:12px;
}

.avm-case__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.65);
  border:1px solid rgba(31,42,55,.12);
  color:rgba(31,42,55,.78);
  font-size:12px;
  font-weight:650;
  letter-spacing:-0.01em;
}

.avm-case__badge--accent{
  background:var(--accent-06);
  border:1px solid rgba(47,109,255,.16);
  color:rgba(47,109,255,1);
}

.avm-case__title{
  margin:0 0 10px 0;
  font-size:clamp(22px,2.2vw,38px);
  line-height:1.12;
  font-weight:720;
  letter-spacing:-0.015em;
  color:var(--ink);
}

.avm-case__subtitle{
  margin:0 0 14px 0;
  max-width:72ch;
  font-size:15px;
  line-height:1.7;
  color:var(--ink-2);
}

/* meta grid */
.avm-case__meta{
  margin-top:6px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:10px;
}

.avm-case__metaitem{
  border-radius:16px;
  padding:10px 12px;
  background:rgba(47,109,255,.05);
  border:1px solid rgba(47,109,255,.12);
}

.avm-case__metalabel{
  font-size:11px;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:rgba(31,42,55,.55);
  margin-bottom:4px;
}

.avm-case__metavalue{
  font-size:14px;
  font-weight:650;
  color:rgba(31,42,55,.86);
  line-height:1.25;
}

.avm-case__cta{
  margin-top:16px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

/* make outline button match theme */
.avm-case .btn{
  border-radius:999px !important;
  font-weight:750;
  letter-spacing:-0.01em;
  padding:12px 18px;
  min-height:48px;
}

.avm-case .btn-primary{
  border:1px solid var(--accent-45) !important;
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%) !important;
  box-shadow:0 16px 36px rgba(47,109,255,0.26),0 10px 20px rgba(16,24,40,0.10);
  transition:transform .15s ease, filter .15s ease, box-shadow .15s ease;
}

.avm-case .btn-primary:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 20px 46px rgba(47,109,255,0.34),0 14px 26px rgba(16,24,40,0.12);
}

.avm-case .btn-outline-primary{
  border:1px solid rgba(47,109,255,.35) !important;
  color:rgba(47,109,255,1) !important;
  background:rgba(255,255,255,.62) !important;
  box-shadow:0 10px 22px rgba(16,24,40,0.06);
}

.avm-case .btn-outline-primary:hover{
  background:rgba(47,109,255,.08) !important;
}

/* =========================================================
   GRID
   ========================================================= */
.avm-case__grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:var(--gap);
  align-items:start;
  margin-top:var(--gap);
}

.avm-case__card{
  border-radius:var(--r-3);
  padding:clamp(16px,2.0vw,26px);
  background:var(--card-bg);
  border:var(--card-border);
  box-shadow:var(--card-shadow);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.avm-case__h2{
  margin:0 0 12px 0;
  font-size:18px;
  font-weight:720;
  letter-spacing:-0.01em;
  color:var(--ink);
}

.avm-case__h2--center{
  text-align:center;
}

.avm-case__p{
  margin:0 0 14px 0;
  font-size:15px;
  line-height:1.75;
  color:var(--ink-2);
}

.avm-case__p--small{
  font-size:14px;
  color:rgba(31,42,55,.70);
}

/* nice checklist */
.avm-case__list{
  margin:0 0 14px 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.avm-case__list li{
  position:relative;
  padding-left:28px;
  font-size:14px;
  line-height:1.6;
  color:rgba(31,42,55,.72);
}

.avm-case__list li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  width:22px;
  height:22px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  background:var(--accent-12);
  color:var(--accent);
  font-weight:850;
  font-size:13px;
}

/* side column */
.avm-case__side{
  display:grid;
  gap:var(--gap);
}

/* KPIs */
.avm-case__kpi{
  display:grid;
  gap:10px;
}

.avm-case__kpiitem{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:10px 12px;
  border-radius:18px;
  background:rgba(47,109,255,.06);
  border:1px solid rgba(47,109,255,.12);
}

.avm-case__kpinum{
  width:28px;
  height:28px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  background:rgba(47,109,255,.12);
  color:rgba(47,109,255,1);
  font-weight:900;
  flex:0 0 auto;
}

.avm-case__kpitext{
  font-size:14px;
  line-height:1.55;
  color:rgba(31,42,55,.74);
  margin-top:2px;
}

/* specs */
.avm-case__spec{
  margin:0;
  display:grid;
  gap:10px;
}

.avm-case__specrow{
  display:grid;
  grid-template-columns: 1fr 1.1fr;
  gap:10px;
  padding:10px 12px;
  border-radius:18px;
  background:rgba(255,255,255,.65);
  border:1px solid rgba(31,42,55,.10);
}

.avm-case__specrow dt{
  margin:0;
  font-size:13px;
  color:rgba(31,42,55,.60);
}

.avm-case__specrow dd{
  margin:0;
  font-size:13px;
  font-weight:650;
  color:rgba(31,42,55,.86);
  text-align:right;
}

/* CTA card */
.avm-case__ctabtns{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:12px;
}

.avm-case__note{
  margin:12px 0 0 0;
  font-size:12px;
  line-height:1.5;
  color:rgba(31,42,55,.55);
}

/* =========================================================
   GALLERY
   ========================================================= */
.avm-case__gallery{
  margin-top:var(--gap);
  border-radius:var(--r-3);
  padding:clamp(16px,2.0vw,26px);
  background:rgba(255,255,255,.70);
  border:1px solid rgba(47,109,255,.12);
  box-shadow:0 26px 70px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.72);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.avm-case__gallery img{
  border-radius:18px !important;
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 16px 40px rgba(16,24,40,0.10);
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 980px){
  .avm-case__hero{ grid-template-columns:1fr; }
  .avm-case__cover img{ min-height:260px; }
  .avm-case__grid{ grid-template-columns:1fr; }
  .avm-case__meta{ grid-template-columns:1fr 1fr; }
}

@media (max-width: 520px){
  .avm-case{ --gap:14px; }
  .avm-case__meta{ grid-template-columns:1fr; }
  .avm-case__specrow{ grid-template-columns:1fr; }
  .avm-case__specrow dd{ text-align:left; }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */
@media (prefers-reduced-motion: reduce){
  .avm-case .btn-primary{ transition:none; }
  .avm-case .btn-primary:hover{ transform:none; }
}
/* Скрываем кнопку "Заказать сцену" на полной версии */
.avm-order-btn{
  display:none;
}

/* На мобилке показываем и центруем текст */
@media (max-width: 980px){
  .avm-order-btn{
    display:flex;
    width:100%;
    margin-top:18px;
    justify-content:center;
  }

  .avm-order-btn.feedback-open-text{
    width:100%;
    justify-content:center; /* текст по центру */
    text-align:center;
  }
}
.avm-prodmod, .avm-prodmod *{ box-sizing:border-box; }
.avm-prodmod{ font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; color:#27323c; }

/* h5 в корпоративном стиле (по визуалу как ваши заголовки, но семантика h5) */
.avm-prodmod__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(16px,1.5vw,22px);
  font-weight:750;
  letter-spacing:-0.012em;
  line-height:1.15;
  color:#1f2a37;
}

/* 2 колонки как плитки avm-truss */
.avm-prodmod__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  align-items:stretch;
}

/* плитка: повторяем характер avm-truss__tile */
.avm-prodmod__tile{
  position:relative;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-prodmod__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  box-shadow:0 0 0 1px rgba(47,109,255,.25), 0 0 0 7px rgba(47,109,255,.12);
  transition:opacity .18s ease;
}



.avm-prodmod__tile:hover::before{ opacity:1; }

.avm-prodmod__media{
  width:100%;
  /* фиксируем пропорцию, чтобы плитки были ровные */
  aspect-ratio: 3 / 2;
  background:#eef2f7;
}

.avm-prodmod__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

/* адаптив */
@media (max-width: 980px){
  .avm-prodmod__grid{ grid-template-columns:1fr; }
}
/* ===== Transform: centered header ===== */
.avm-truss--transform .avm-truss__head{
  text-align:center;
  margin-bottom:18px;
}

.avm-truss--transform .avm-truss__title{
  margin:0 0 10px 0;
}

.avm-truss--transform .avm-truss__lead{
  margin:0 auto;
  font-size:16px;
  line-height:1.65;
  color:rgba(39,50,60,.74);
  max-width:80ch;
}

/* ===== 2x2 grid ===== */
.avm-truss--transform .avm-truss__grid--forms{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:16px;
}

/* card */
.avm-truss--transform .avm-truss__tile--form{
  min-height:0 !important;        /* перебиваем ваши 520px */
  border-radius:22px;
  overflow:hidden;               /* ничего не выступает */
  border:1px solid rgba(39,50,60,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84));
  box-shadow:0 18px 44px rgba(16,24,40,0.12),inset 0 1px 0 rgba(255,255,255,.55);
  transform:translateZ(0);
}


/* ===== IMPORTANT: make media RECTANGULAR 2:1 and prevent cropping =====
   Your global CSS sets .avm-truss__media and img to height:100% + object-fit:cover.
   We override it INSIDE this module. */
.avm-truss--transform .avm-truss__tile--form .avm-truss__media{
  width:100% !important;
  height:auto !important;
  aspect-ratio:2 / 1;            /* прямоугольник 1300:650 */
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.65);
}

/* override global img rule */
.avm-truss--transform .avm-truss__tile--form .avm-truss__media img{
  width:100% !important;
  height:100% !important;
  display:block;
  object-fit:contain !important; /* НЕ режем */
  object-position:center !important;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss--transform .avm-truss__grid--forms{
    grid-template-columns:1fr;
  }
}
.avm-truss.avm-anysurface{
  padding: 0;
}

.avm-truss.avm-anysurface .avm-anysurface__container{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* h7-like title (since HTML doesn't have real <h7>) */
.avm-truss.avm-anysurface h7.avm-anysurface__title{
  display: block;
  margin: 0 0 12px 0;
  text-align: center;

  font-size: 20px;
  line-height: 1.25;
  font-weight: 800;
  color: #27323c;
  letter-spacing: .2px;
}

/* text */
.avm-truss.avm-anysurface .avm-anysurface__text{
  max-width: 980px;
  margin: 0 auto 18px auto;
  text-align: center;

  font-size: 16px;
  line-height: 1.6;
  color: rgba(39,50,60,.88);
}

/* image */
.avm-truss.avm-anysurface .avm-anysurface__media{
  border-radius: 18px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-anysurface .avm-anysurface__media img{
  width: 100%;
  height: auto;
  display: block;
}

/* mobile */
@media (max-width: 520px){
  .avm-truss.avm-anysurface h7.avm-anysurface__title{
    font-size: 18px;
  }
  .avm-truss.avm-anysurface .avm-anysurface__text{
    font-size: 15px;
  }
}
/* === AVM FAQ (в стилистике твоих форм) === */
.avm-faq,
.avm-faq *{ box-sizing:border-box; }

.avm-faq{
  width:100%;
  padding:60px 0;
  background:
    radial-gradient(1200px 520px at 15% 25%, rgba(47,124,246,.18), transparent 65%),
    radial-gradient(1000px 500px at 80% 70%, rgba(47,124,246,.12), transparent 70%),
    linear-gradient(180deg,#eaf1ff 0%,#ffffff 82%);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-faq__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-faq__head{
  max-width:860px;
  margin:0 auto 14px auto;
  text-align:left;
}

.avm-faq__title{
  margin:0;
  display:flex;
  align-items:center;
  gap:10px;
  font-size:clamp(18px,1.7vw,24px);
  line-height:1.15;
  font-weight:700;
  letter-spacing:-0.012em;
  color:#1f2a37;
}

.avm-faq__badge{
  display:none;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(47,109,255,1);
  background:rgba(47,109,255,.10);
  border:1px solid rgba(47,109,255,.20);
}

.avm-faq__subtitle{
  margin:10px 0 0 0;
  font-size:14px;
  line-height:1.65;
  color:rgba(31,42,55,.72);
}

.avm-faq__card{
  background:rgba(255,255,255,.88);
  border:1px solid rgba(47,109,255,.14);
  border-radius:22px;
  padding:clamp(14px,2.0vw,22px);
  box-shadow:0 30px 80px rgba(16,24,40,0.10), inset 0 1px 0 rgba(255,255,255,.70);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.avm-faq__list{ display:grid; gap:10px; }

.avm-faq__item{
  border-radius:16px;
  border:1px solid rgba(47,109,255,.16);
  background:rgba(245,250,255,0.80);
  box-shadow:0 10px 22px rgba(16,24,40,0.05), inset 0 1px 0 rgba(255,255,255,.75);
  overflow:hidden;
}

.avm-faq__q{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 14px;
  border:none;
  background:transparent;
  cursor:pointer;
  text-align:left;
  color:#1f2a37;
}

.avm-faq__q:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
  border-radius:14px;
}

.avm-faq__qtext{
  font-size:18px;
  line-height:1.3;
  font-weight:500;
}

.avm-faq__icon{
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.22);
  background:rgba(255,255,255,.70);
  box-shadow:0 8px 18px rgba(16,24,40,0.05), inset 0 1px 0 rgba(255,255,255,.75);
  position:relative;
  transition:transform .15s ease, filter .15s ease;
}

.avm-faq__icon:before{
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:10px;
  height:10px;
  border-right:2px solid rgba(47,109,255,1);
  border-bottom:2px solid rgba(47,109,255,1);
  transform:rotate(45deg);
  top:-1px;
  left:0;
  right:0;
  bottom:0;
}

.avm-faq__a{
  padding:0 14px 14px 14px;
}

.avm-faq__atext{
  padding:10px 12px;
  border-radius:14px;
  background:rgba(47,124,246,.06);
  border:1px solid rgba(47,124,246,.12);
  color:rgba(31,42,55,.78);
  font-size:14px;
  line-height:1.65;
}

.avm-faq__atext p{ margin:0 0 10px 0; }
.avm-faq__atext p:last-child{ margin-bottom:0; }

.avm-faq__atext ul{
  margin:10px 0 10px 18px;
  padding:0;
}
.avm-faq__atext li{ margin:6px 0; }

.avm-faq__item[data-open="true"] .avm-faq__icon{
  transform:rotate(180deg);
  filter:brightness(1.02);
}

@media (max-width: 720px){
  .avm-faq{ padding:44px 0; }
  .avm-faq__container{ padding:0 12px; }
}

@media (prefers-reduced-motion: reduce){
  .avm-faq__icon{ transition:none; }
}
/* Заголовок по центру + крупнее */
.avm-faq__head{
  max-width:900px;
  margin:0 auto 22px auto;
  text-align:center;
}

.avm-faq__title{
  margin:0;
  justify-content:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:500;
  line-height:1.12;
}

.avm-faq__subtitle{
  margin:12px auto 0 auto;
  max-width:70ch;
  font-size:15px;
  line-height:1.65;
}


/* Отступы между вопросами */
.avm-faq__list{
  display:grid;
  gap:14px;
}


/* Убираем "круги" и делаем кнопку вопроса крупнее */
.avm-faq__q{
  padding:18px 18px;
}




/* Убираем круглый контейнер вокруг стрелки */
.avm-faq__icon{
  width:18px;
  height:18px;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  position:relative;
  transform:rotate(0deg);
  transition:transform .18s ease;
}


/* Рисуем стрелку */
.avm-faq__icon:before{
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:10px;
  height:10px;
  border-right:3px solid rgba(47,109,255,1);
  border-bottom:3px solid rgba(47,109,255,1);
  transform:rotate(45deg);
}


/* При открытии поворачиваем */
.avm-faq__item[data-open="true"] .avm-faq__icon{
  transform:rotate(180deg);
}
/* Hover для вопроса */
.avm-faq__item{
  transition:box-shadow .15s ease, border-color .15s ease, transform .15s ease, background .15s ease;
}

.avm-faq__item:hover{
  border-color:rgba(47,109,255,.26);
  box-shadow:0 18px 40px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.80);
  transform:translateY(-1px);
}

/* Акцентная линия слева + подсветка при открытии */
.avm-faq__item{
  position:relative;
}

.avm-faq__item:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:4px;
  border-radius:999px;
  background:rgba(47,109,255,0);
  transition:background .15s ease;
}

.avm-faq__item[data-open="true"]{
  border-color:rgba(47,109,255,.34);
  background:rgba(245,250,255,0.92);
  box-shadow:0 24px 60px rgba(47,109,255,0.14), 0 18px 40px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.85);
  transform:none;
}

.avm-faq__item[data-open="true"]:before{
  background:rgba(47,109,255,1);
  box-shadow:0 0 0 4px rgba(47,109,255,.12);
}

/* Чуть сильнее подсветка у кнопки вопроса при открытии */
.avm-faq__item[data-open="true"] .avm-faq__q{
  background:linear-gradient(180deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,0) 100%);
}

/* Текст ответа — аккуратнее и "читабельнее" */
.avm-faq__a{
  padding:0 18px 18px 18px;
}

.avm-faq__atext{
  border-color:rgba(47,124,246,.16);
  background:rgba(47,124,246,.05);
}

/* Небольшая анимация появления (без height-трюков, просто fade/slide) */
.avm-faq__a[hidden]{
  display:block !important;
  max-height:0;
  opacity:0;
  overflow:hidden;
  transform:translateY(-4px);
  transition:opacity .18s ease, transform .18s ease, max-height .18s ease;
}

.avm-faq__item[data-open="true"] .avm-faq__a{
  max-height:900px;
  opacity:1;
  transform:translateY(0);
}
.avm-faq{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
/* Родитель — якорь для псевдоэлемента */
.avm-mechanic.avm-scenes-instock{
  position:relative;
  overflow:visible;
}

/* Фон на всю ширину экрана */
.avm-mechanic.avm-scenes-instock::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:100vw;

  /* сюда перенеси свой bg (градиент/затемнение) */
  background: radial-gradient(1200px 520px at 15% 25%, rgba(47,124,246,.18), transparent 65%),
              radial-gradient(1000px 500px at 80% 70%, rgba(47,124,246,.12), transparent 70%),
              linear-gradient(180deg,#eaf1ff 0%,#ffffff 82%);

  z-index:0;
}

/* Контент поверх фона */
.avm-mechanic.avm-scenes-instock .avm-mechanic__outer,
.avm-mechanic.avm-scenes-instock .avm-mechanic__container,
.avm-mechanic.avm-scenes-instock .avm-mechanic__panel{
  position:relative;
  z-index:1;
}
/* Секция во всю ширину экрана */
.avm-mechanic.avm-scenes-instock{
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;
}

#mod-custom152.mod-custom.custom{
  width:100%;
  max-width:none !important;
  padding-left:0 !important;
  padding-right:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  overflow:visible !important;
}
#mod-custom154.mod-custom.custom{
  width:100%;
  max-width:none !important;
  padding-left:0 !important;
  padding-right:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  overflow:visible !important;
}
/* overlay всегда поверх всего, независимо от того, где он в DOM */
.feedback-overlay{
  position:fixed !important;
  inset:0 !important;              /* top/right/bottom/left = 0 */
  width:100vw !important;
  height:100vh !important;
  margin:0 !important;
  padding:24px 16px !important;    /* чтобы модалка не прилипала к краям на мобилке */
  z-index:999999 !important;

  /* если затемнение делается через background — оставь/добавь */
  background:rgba(16,24,40,.55);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);

  display:none;                    /* как у тебя реализовано — показывай классом .active */
}

/* показываем */
.feedback-overlay.active{ display:flex; }

/* центрирование модалки */
.feedback-overlay{
  align-items:center;
  justify-content:center;
}

/* на всякий случай — чтобы родительские контейнеры не обрезали */
.feedback-overlay{
  transform:none !important;
}

/* запрет скролла при открытой модалке */
html.feedback-noscroll,
html.feedback-noscroll body{
  overflow:hidden !important;
}
/* full-bleed для секции, даже если она внутри контейнера/карточки */
.avm-screenform{
  position:relative;
  left:50%;
  right:50%;
  width:100vw;
  margin-left:-50vw;
  margin-right:-50vw;
}

/* чтобы не было "лишних" внутренних отступов от card-body */
.avm-screenform{
  padding-left:0 !important;
  padding-right:0 !important;
}
/* 1) Сам container-component на всю ширину */
.grid-child.container-component{
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 2) Cassiopeia/Bootstrap контейнеры внутри компонента тоже убираем */
.grid-child.container-component .container,
.grid-child.container-component .container-fluid{
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 3) На всякий случай: оболочки статьи Joomla */
.grid-child.container-component main,
.grid-child.container-component .com-content-article,
.grid-child.container-component .com-content-article.item-page{
  width: 100% !important;
  max-width: none !important;
}
#mod-custom180 .avm-screenform__formbox, 
#mod-custom185 .avm-screenform__formbox,
#mod-custom186 .avm-screenform__formbox,
#mod-custom191 .avm-screenform__formbox

{border-radius:0;} 


.avm-kompl {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
/* Только страница steel-podiums */
body.itemid-XXX .avm-kompl,
body.itemid-XXX .site-footer {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* чтобы не появлялся горизонтальный скролл */
body.itemid-XXX {
  overflow-x: hidden;
}
.avm-equip{
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
/* FULL-WIDTH именно для секции avm-equip (устойчиво в flex/grid) */
.com-content-article__body section.avm-equip,
.com-content-article section.avm-equip,
section.avm-equip{
  width: 100vw !important;
  max-width: 100vw !important;
  flex: 0 0 100vw !important;   /* если родитель flex */
  justify-self: stretch !important; /* если родитель grid */
  align-self: stretch !important;

  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}
/* banner внутри main — делаем снова full-width */
.container-component main .container-banner.full-width{
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
}
.container-bottom-b{ margin-bottom: 0 !important; padding-bottom: 0 !important; }
/* 1) Убираем любые зазоры между последним блоком и футером */
body.itemid-194 .site-grid{
  row-gap: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* 2) Полное "обнуление" линии у блока перед футером (bottom-b) */
body.itemid-194 .container-bottom-b,
body.itemid-194 .container-bottom-b *{
  border-bottom: 0 !important;
  box-shadow: none !important;
}



.card {border:none!important;}
.p28-table {
  max-width: 1100px;
  margin: 24px auto;
  padding: 0 12px;
  font-family: Arial, Helvetica, sans-serif;
}

.p28 {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid #6f6f6f;
}

.p28 th,
.p28 td {
  border: 1px solid #6f6f6f;
  padding: 6px 8px;
  text-align: center;
  vertical-align: middle;
  font-size: 14px;
}

.p28__title {
  background: #222;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  padding: 10px 8px;
  letter-spacing: 0.2px;
}

.p28 thead th {
  font-weight: 600;
}

.p28__units th {
  background: #d9d9d9;
  font-weight: 700;
}

.p28__units2 th {
  background: #d9d9d9;
  font-weight: 700;
}

.p28 tbody tr:nth-child(even) {
  background: #efefef;
}

.p28__icon,
.p28__icons {
  display: flex;
  justify-content: center;
  margin-top: 6px;
}

.p28__icons {
  gap: 10px;
  flex-wrap: wrap;
}

.p28 svg {
  width: 120px;
  height: auto;
  color: #333;
}

.p28__icon svg {
  width: 140px;
}

.p28__note {
  font-size: 12px;
  color: #444;
  margin-top: 8px;
}
.avm-equip .p28-table {
  max-width: 1100px;
  margin: 18px auto 0;
  overflow-x: auto;
}

.avm-equip .p28 {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid #6f6f6f;
  font-family: Arial, Helvetica, sans-serif;
}

.avm-equip .p28 th,
.avm-equip .p28 td {
  border: 1px solid #6f6f6f;
  padding: 6px 8px;
  text-align: center;
  vertical-align: middle;
  font-size: 14px;
}

.avm-equip .p28__title {
  background: #222;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  padding: 10px 8px;
  letter-spacing: 0.2px;
}

.avm-equip .p28 thead th {
  font-weight: 700;
}

.avm-equip .p28__units th,
.avm-equip .p28__units2 th {
  background: #d9d9d9;
  font-weight: 700;
}

.avm-equip .p28 tbody tr:nth-child(even) {
  background: #efefef;
}

.avm-equip .p28__icon,
.avm-equip .p28__icons {
  display: flex;
  justify-content: center;
  margin-top: 6px;
}

.avm-equip .p28__icons {
  gap: 10px;
  flex-wrap: wrap;
}

.avm-equip .p28 svg {
  width: 120px;
  height: auto;
  color: #333;
}

.avm-equip .p28__icon svg {
  width: 140px;
}

/* адаптация под мобилку */
@media (max-width: 900px) {
  .avm-equip .p28 th,
  .avm-equip .p28 td {
    font-size: 13px;
    padding: 5px 6px;
  }

  .avm-equip .p28__title {
    font-size: 14px;
  }

  .avm-equip .p28 svg {
    width: 95px;
  }

  .avm-equip .p28__icon svg {
    width: 110px;
  }
}

.tbl-wrap{max-width:1100px;margin:24px auto;padding:0 12px;font-family:Arial,Helvetica,sans-serif}
    table{width:100%;border-collapse:collapse;table-layout:fixed}
    th,td{border:1px solid #6f6f6f;padding:6px 8px;text-align:center;vertical-align:middle}
    thead th{font-weight:600}
    .title{background:#222;color:#fff;font-size:16px;letter-spacing:.2px;padding:10px 8px}
    .group{background:#f5f5f5}
    .units{background:#d9d9d9;font-weight:600}
    tbody tr:nth-child(even){background:#efefef}
    .icon{display:flex;justify-content:center;margin-top:6px}
    .narrow{width:80px}
    .w100{width:100px}
    .w120{width:120px}
    .w140{width:140px}
    .note{font-size:12px;color:#444;margin-top:8px}
    svg{max-width:140px;height:auto}
    /* фикс SVG иконки, чтобы не "съезжали" */
.avm-equip .p28__icon svg {
  width: 140px !important;
  height: 55px !important;
  flex: 0 0 140px;
  display: block;
}

.avm-equip .p28__icons svg {
  width: 110px !important;
  height: 55px !important;
  flex: 0 0 110px;
  display: block;
}

/* выравнивание контейнеров */
.avm-equip .p28__icon,
.avm-equip .p28__icons {
  align-items: center;
}

/* если в Safari/Chrome иногда режет по высоте */
.avm-equip .p28__icon svg,
.avm-equip .p28__icons svg {
  overflow: visible;
}
/* ===== MODULE: Применение алюминиевых ферм ===== */
.avm-truss.avm-fermuse {
  padding: 70px 0;
  background: #fff;
}

.avm-truss.avm-fermuse .avm-truss__container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px;
}

.avm-truss.avm-fermuse .avm-fermuse__title {
  margin: 0 0 16px;
  font-size: 34px;
  line-height: 1.2;
  font-weight: 650;
  text-align: center;
  color: #111;
}

.avm-truss.avm-fermuse .avm-fermuse__text {
  max-width: 980px;
  margin: 0 auto 28px auto;
  text-align: center;

  font-size: 16px;
  line-height: 1.6;
  color: rgba(39,50,60,.88);
}

/* grid 2 columns */
.avm-truss.avm-fermuse .avm-fermuse__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

/* item card */
.avm-truss.avm-fermuse .avm-fermuse__item {
  display: block;
  text-decoration: none !important;
  color: inherit !important;

  border-radius: 18px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

/* hover */

/* image */
.avm-truss.avm-fermuse .avm-fermuse__img img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

/* caption */
.avm-truss.avm-fermuse .avm-fermuse__caption {
  padding: 16px 16px;
  text-align: center;

  font-size: 18px;
  font-weight: 650;
  line-height: 1.35;

  color: rgba(39,50,60,.92);
}


/* ensure no underline anywhere */
.avm-truss.avm-fermuse .avm-fermuse__item *,
.avm-truss.avm-fermuse .avm-fermuse__item:hover * {
  text-decoration: none !important;
  color: inherit !important;
}

/* adaptive */
@media (max-width: 860px) {
  .avm-truss.avm-fermuse .avm-fermuse__grid {
    grid-template-columns: 1fr;
  }

  .avm-truss.avm-fermuse .avm-fermuse__img img {
    height: auto;
  }
}

@media (max-width: 520px) {
  .avm-truss.avm-fermuse .avm-fermuse__title {
    font-size: 26px;
  }

  .avm-truss.avm-fermuse .avm-fermuse__text {
    font-size: 15px;
  }
  .avm-truss.avm-fermuse .avm-fermuse__caption {
    font-size: 16px;
  }
}
/* ===== MODULE: Типы алюминиевых ферм ===== */
.avm-truss.avm-fermtypes {
  padding: 55px 0;
  background: #fff;
}

.avm-truss.avm-fermtypes .avm-truss__container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px;
}

.avm-truss.avm-fermtypes .avm-fermtypes__title {
  margin: 0 0 22px;
  font-size: 26px;
  line-height: 1.2;
  font-weight: 650;
  text-align: center;
  color: #111;
}

/* grid: 5 in row */
.avm-truss.avm-fermtypes .avm-fermtypes__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
}

/* item */
.avm-truss.avm-fermtypes .avm-fermtypes__item {
  border-radius: 18px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}


/* image no crop */
.avm-truss.avm-fermtypes .avm-fermtypes__img img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

/* caption */
.avm-truss.avm-fermtypes .avm-fermtypes__caption {
  padding: 14px 10px;
  text-align: center;

  font-size: 17px;
  font-weight: 650;
  line-height: 1.25;

  color: rgba(39,50,60,.92);
}

/* adaptive */
@media (max-width: 1100px) {
  .avm-truss.avm-fermtypes .avm-fermtypes__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .avm-truss.avm-fermtypes .avm-fermtypes__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .avm-truss.avm-fermtypes .avm-fermtypes__grid {
    grid-template-columns: 1fr;
  }

  .avm-truss.avm-fermtypes .avm-fermtypes__title {
    font-size: 22px;
  }

  .avm-truss.avm-fermtypes .avm-fermtypes__caption {
    font-size: 16px;
  }
}
/* ===== MODULE: avm-connect (NO CROP) ===== */

/* Вся строка — ссылка/карточка */
.avm-truss.avm-connect a.avm-connect__link,
.avm-truss.avm-connect a.avm-connect__link:link,
.avm-truss.avm-connect a.avm-connect__link:visited,
.avm-truss.avm-connect a.avm-connect__link:hover,
.avm-truss.avm-connect a.avm-connect__link:active{
  display:flex;
  gap:22px;

  text-decoration:none !important;
  color:inherit !important;

  border-radius:22px;
  overflow:hidden; /* можно оставить для скругления карточки */
  background: rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.avm-truss.avm-connect a.avm-connect__link:hover{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 26px 54px rgba(16,24,40,0.18),
             0 12px 22px rgba(47,109,255,0.10),
             inset 0 1px 0 rgba(255,255,255,.55);
}

/* Убираем underline/синий везде внутри */
.avm-truss.avm-connect a.avm-connect__link *{
  text-decoration:none !important;
  color:inherit !important;
}

/* ==== САМОЕ ВАЖНОЕ: медиа блок (перебиваем любые глобальные фикс-высоты) ==== */
.avm-truss.avm-connect .avm-connect__media{
  flex:0 0 45%;
  padding:18px;                 /* отступы от края */
  background:#f6f6f6;

  /* перебить возможные глобальные правила */
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;  /* если где-то стояло hidden и резало */
  display:block !important;
}

/* Картинка: только ширина 100%, высота авто, НИКАКОГО cover */
.avm-truss.avm-connect img.avm-connect__mediaImg{
  width:100% !important;
  height:auto !important;

  max-width:100% !important;
  max-height:none !important;
  min-height:0 !important;

  object-fit:unset !important;  /* на всякий случай убьём cover/contain из глобалки */
  object-position:center !important;

  display:block !important;
}

/* Правая колонка */
.avm-truss.avm-connect .avm-kompl__content{
  flex:0 0 55%;
  padding:22px 22px 18px;
}

.avm-truss.avm-connect .avm-kompl__h{
  margin:0 0 12px;
  font-size:22px;
  font-weight:700;
  color:#111 !important;
}

.avm-truss.avm-connect .avm-kompl__text{
  font-size:16px;
  line-height:1.65;
  color:rgba(39,50,60,.88);
}

.avm-truss.avm-connect .avm-kompl__text ul{
  margin:10px 0 0;
  padding-left:18px;
}

/* Адаптив */
@media (max-width: 980px){
  .avm-truss.avm-connect a.avm-connect__link{
    flex-direction:column;
    gap:0;
  }

  .avm-truss.avm-connect .avm-connect__media{
    flex:0 0 auto;
    width:100%;
    padding:14px;
  }

  .avm-truss.avm-connect .avm-kompl__content{
    flex:0 0 auto;
    width:100%;
    padding:18px 16px 16px;
  }
}


@media (max-width: 901px) {
  #mod-custom204 {
    display: none !important;
  }
}
/* =======================
  CONNECT: images shrink, keep ratio, NO CROP, NO CLIP
======================= */

/* карточка должна жить по высоте картинки */
.avm-connect .avm-arka__media.avm-connect__media{
  height: auto !important;
  overflow: visible !important;   /* ничего не режем */
}

/* картинка — нормальная, не absolute, без трансформаций */
.avm-connect .avm-arka__media.avm-connect__media img{
  display: block !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
  margin: 0 !important;

  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
}

/* чтобы grid/flex не растягивали блоки и не ломали расчёт высоты */
.avm-connect .avm-arka__left,
.avm-connect .avm-arka__right{
  align-self: start;
  min-width: 0;
}
.avm-connect__subtitle{
  text-align: center;
  margin: 50px 0 18px;
}
.avm-srb__imgBlock--w50 {
  width: 50%;
}
.avm-srb__imgBlock--w50 {
  width: 50%;
}

.avm-srb__media--double {
  display: flex;
  gap: 12px;
}

.avm-srb__media--double img {
  width: 50%;
  height: auto;
  display: block;
  object-fit: cover;
}
.avm-srb__imgBlock--w50 {
  width: 50%;
}

.avm-srb__media--double {
  display: flex;
  gap: 12px;
  width: 100%;
}

.avm-srb__media--double .avm-srb__mediaItem {
  flex: 1;
}

.avm-srb__media--double img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.avm-srb--connect .avm-srb__imgBlock--w50 {
  width: 50%;
}

.avm-srb--connect .avm-srb__gallery--2 {
  display: flex;
  gap: 14px;
  width: 100%;
  justify-content: center;
  align-items: center;
}

.avm-srb--connect .avm-srb__galleryItem {
  flex: 1;
  overflow: hidden;
  border-radius: 14px;
}

.avm-srb--connect .avm-srb__galleryItem img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  aspect-ratio: 4 / 3;
}
.avm-srb--connect .avm-srb__galleryItem img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}
/* КАТАЛОГ-МОДУЛИ (каждая глава — отдельная секция) */
.avm-katalogmod, .avm-katalogmod *{ box-sizing:border-box; }

.avm-katalogmod{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

/* одинаковый “фон-блок” как в avm-tribune/avm-truss */
.avm-katalogmod__outer{
  width:100%;
  padding:44px 0;
  background:radial-gradient(1200px 520px at 18% 8%,rgba(47,124,246,.10),transparent 62%),
             linear-gradient(180deg,#eef2f9 0%,#ffffff 70%);
}

.avm-katalogmod__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

/* заголовок */
.avm-katalogmod__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-katalogmod__title a{
  color:#27323c;
  text-decoration:none;
  transition:color .15s ease;
}

.avm-katalogmod__title a:hover{
  color:rgba(47,109,255,1);
}

/* сетка карточек: 2/3 в одну строку, 4 => 2x2 */
.avm-katalogmod__items{
  display:grid;
  gap:16px;
  align-items:stretch;
}

.avm-katalogmod__items--2{ grid-template-columns:repeat(2,1fr); }
.avm-katalogmod__items--3{ grid-template-columns:repeat(3,1fr); }
.avm-katalogmod__items--4{ grid-template-columns:repeat(2,1fr); }

/* карточка (как avm-tribune/avm-podium) */
.avm-katalogmod__tile{
  position:relative;
  display:grid;
  grid-template-rows:1fr auto;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 6px 14px rgba(16,24,40,0.05);
  transform:translateZ(0);
  -webkit-tap-highlight-color:transparent;
  opacity:.86;
  transition:opacity .18s ease,box-shadow .18s ease,transform .18s ease,border-color .18s ease;
}

.avm-katalogmod__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
  box-shadow:0 0 0 1px rgba(47,109,255,.25),0 0 0 6px rgba(47,109,255,.10);
}

.avm-katalogmod__media{
  position:relative;
  width:100%;
  height:100%;
  background:#eef2f7;
}

.avm-katalogmod__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:filter .18s ease;
}

.avm-katalogmod__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:650;
  font-size:15px;
  color:rgba(39,50,60,.70);
  background:linear-gradient(180deg,rgba(255,255,255,.92),#ffffff);
  transition:color .18s ease;
}

.avm-katalogmod__tile:hover{
  opacity:1;
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:0 22px 44px rgba(16,24,40,0.16),0 10px 18px rgba(47,109,255,.10);
}

.avm-katalogmod__tile:hover::before{ opacity:1; }
.avm-katalogmod__tile:hover .avm-katalogmod__caption{ color:rgba(39,50,60,.92); }
.avm-katalogmod__tile:active{ transform:translateY(-2px); }

.avm-katalogmod__tile:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

/* высота карточек */
.avm-katalogmod__tile{ min-height:260px; }

/* адаптив */
@media (max-width: 980px){
  .avm-katalogmod__outer{ padding:32px 0; }
  .avm-katalogmod__items--3{ grid-template-columns:repeat(2,1fr); }
  .avm-katalogmod__tile{ min-height:240px; }
}

@media (max-width: 520px){
  .avm-katalogmod__container{ padding:0 12px; }
  .avm-katalogmod__items--2,
  .avm-katalogmod__items--3,
  .avm-katalogmod__items--4{ grid-template-columns:1fr; }
  .avm-katalogmod__tile{ min-height:220px; }
}

/* reduce motion */
@media (prefers-reduced-motion: reduce){
  .avm-katalogmod__tile,
  .avm-katalogmod__tile::before,
  .avm-katalogmod__media img,
  .avm-katalogmod__caption,
  .avm-katalogmod__title a{
    transition:none;
  }
  .avm-katalogmod__tile:hover{ transform:none; }
}
/* ДОБАВКА: описание под заголовком */
.avm-katalogmod__desc{
  margin:0 auto 18px;
  max-width:72ch;
  text-align:center;
  font-size:16px;
  line-height:1.6;
  color:rgba(39,50,60,.72);
}
@media (max-width: 520px){
  .avm-katalogmod__desc{
    font-size:15px;
    margin-bottom:16px;
  }
}
.av-contacts__header .av-contacts__subtitle,
.av-contacts__info .av-contacts__text
{
    color:#e4e4e4!important;
}
@media (min-width: 1024px) {
  .avm-shero--tribune .avm-shero__title {
    margin-top: 90px;
  }
}
/* ===========================
   TRIBUNES: FIX IMAGE BLOCK SIZE
   applies ONLY to tribune blocks
=========================== */

.avm-tribune--no-roof .avm-tribune__grid,
.avm-tribune--mono-roof .avm-tribune__grid,
.avm-tribune--arch-roof .avm-tribune__grid {
  align-items: flex-start;
}

.avm-tribune--no-roof .avm-tribune__left,
.avm-tribune--mono-roof .avm-tribune__left,
.avm-tribune--arch-roof .avm-tribune__left {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-self: flex-start;
}

.avm-tribune--no-roof .avm-tribune__media,
.avm-tribune--mono-roof .avm-tribune__media,
.avm-tribune--arch-roof .avm-tribune__media {
  width: 100%;
  max-width: 520px; /* можно менять */
  height: auto;
  display: block;
}

.avm-tribune--no-roof .avm-tribune__media img,
.avm-tribune--mono-roof .avm-tribune__media img,
.avm-tribune--arch-roof .avm-tribune__media img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 16px;
}
/* =======================
  FIX TRIBUNE IMAGES (NEW MODULES ONLY)
======================= */

.avm-tribune--telescopic .avm-tribune__grid,
.avm-tribune--sbor-no-roof .avm-tribune__grid,
.avm-tribune--sbor-mono-roof .avm-tribune__grid{
  align-items: flex-start;
}

.avm-tribune--telescopic .avm-tribune__left,
.avm-tribune--sbor-no-roof .avm-tribune__left,
.avm-tribune--sbor-mono-roof .avm-tribune__left{
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-self: flex-start;
}

.avm-tribune--telescopic .avm-tribune__media,
.avm-tribune--sbor-no-roof .avm-tribune__media,
.avm-tribune--sbor-mono-roof .avm-tribune__media{
  width: 100%;
  max-width: 520px; /* можно менять */
  height: auto;
  display: block;
}

.avm-tribune--telescopic .avm-tribune__media img,
.avm-tribune--sbor-no-roof .avm-tribune__media img,
.avm-tribune--sbor-mono-roof .avm-tribune__media img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 16px;
}
.avm-kompl--kresla .avm-kompl__row{
  display: flex;
  align-items: flex-start;
  gap: 30px;
}

.avm-kompl--kresla .avm-kompl__img{
  padding-left: 30px;
  flex: 0 0 300px;
}

.avm-kompl--kresla .avm-kompl__img img{
  width: 300px;
  height: auto;
  display: block;
  object-fit: contain;
}

.avm-kompl--kresla .avm-kompl__content{
  flex: 1 1 auto;
}
.trib-prem__bg {
    background:url(scenes/mobile/trib.avif) center / cover no-repeat!important;
}
.avm-trib__mobile {
    background:url(scenes/mobile/trib_mobile.avif) center / cover no-repeat!important;
}
.avm-prem__tribstac{
    background:url(scenes/mobile/trib_stac.avif) center / cover no-repeat!important;
}
.avm-kompl--use .avm-kompl__img img {
  width: 400px;
  height: auto;
  object-fit: contain;
  display: block;
  image-rendering: auto;
}
/* ===== Только мобильная версия ===== */
@media (max-width: 768px){

  .avm-kompl--kresla .avm-kompl__row{
    display: flex !important;
    flex-direction: column !important;
    width: 100%;
    max-width: 100%;
  }

  .avm-kompl--kresla .avm-kompl__img{
    width: 100%;
    height: auto !important;
  }

  .avm-kompl--kresla .avm-kompl__img img{
    width: 100%;
    height: auto !important;
    object-fit: contain !important; /* НЕ обрезает */
    display: block;
  }

  .avm-kompl--kresla .avm-kompl__content{
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 14px 14px 16px;
  }

  .avm-kompl--kresla .avm-kompl__text{
    word-break: break-word;
    overflow-wrap: break-word;
  }

}
.avm-srb--hor .avm-srb__media img {
  width: 60%!important;
  height: auto;
  display: block;
  margin: 0 auto;
}
/* =======================
  PODIUM DIRIJOR - FIX MEDIA SIZE
  only for .avm-podium--dirijor
======================= */

.avm-podium--dirijor .avm-podium__grid{
  align-items: flex-start;
}

.avm-podium--dirijor .avm-podium__left{
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-self: flex-start;
}

.avm-podium--dirijor .avm-podium__media{
  width: fit-content;
  max-width: 520px; /* можешь поменять */
  height: auto;
  display: block;
}

.avm-podium--dirijor .avm-podium__media img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain; /* чтобы не резало */
  border-radius: 16px;
}
/* =======================
  CHORUS STAC - MEDIA FIT TO IMAGE
  only for .avm-tribune--chorus-stac
======================= */

.avm-tribune--chorus-stac .avm-tribune__grid{
  align-items: flex-start;
}

.avm-tribune--chorus-stac .avm-tribune__left{
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-self: flex-start;

  /* важно: колонка под ширину контента */
  width: fit-content;
}

.avm-tribune--chorus-stac .avm-tribune__media{
  width: fit-content;
  height: auto;
  display: block;
}

.avm-tribune--chorus-stac .avm-tribune__media img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain; /* не режем */
  border-radius: 16px;
}
/* =======================
  CHORUS EURO - MEDIA FIT TO IMAGE
  only for .avm-tribune--chorus-euro
======================= */

.avm-tribune--chorus-euro .avm-tribune__grid{
  align-items: flex-start;
}

.avm-tribune--chorus-euro .avm-tribune__left{
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-self: flex-start;

  width: fit-content;
}

.avm-tribune--chorus-euro .avm-tribune__media{
  width: fit-content;
  max-width: 520px; /* можешь увеличить/уменьшить */
  height: auto;
  display: block;
}

.avm-tribune--chorus-euro .avm-tribune__media img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain; /* важно: не режет */
  border-radius: 16px;
}

.portfolio-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 992px) {
  .portfolio-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px) {
  .portfolio-grid { grid-template-columns: 1fr; }
}

.portfolio-item {
  height: 100%;
}

.portfolio-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.portfolio-image img {
  width: 100%;
  height: auto;
  display: block;
}

.portfolio-title {
  margin: 0.75rem 0 0;
  font-size: 1.05rem;
  line-height: 1.2;
}
/* Фикс: картинки материалов не плавают, всегда по центру */
.com-content-article figure.item-image,
.com-content-article .item-image,
.com-content-article .pull-left,
.com-content-article .pull-right,
.com-content-article .float-start,
.com-content-article .float-end {
  float: none !important;
  margin: 0 auto 16px !important;
  text-align: center;
  max-width: 100%;
}

.com-content-article figure.item-image img,
.com-content-article .item-image img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}
/* Полностью убрать системное изображение Joomla в материале */
.com-content-article .item-image,
.com-content-article figure.item-image {
  display: none !important;
}
/* Сетка портфолио: 3 колонки */
#portfolio-grid.portfolio-grid {
    display: grid !important;
    gap: var(--avm-gap, 18px);
    grid-template-columns: repeat(3, minmax(0, 1fr));

}
#portfolio-grid.portfolio-grid {
    display: grid !important;
    gap: var(--avm-gap, 18px);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 60px !important;
}
@media (max-width: 992px){
  #portfolio-grid.portfolio-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px){
  #portfolio-grid.portfolio-grid{ grid-template-columns: 1fr; }
}

/* Плитка */
.portfolio-item{ height:100%; }
.portfolio-link{ display:block; text-decoration:none; color:inherit; }
.portfolio-image img{border-radius: 21px; width:100%; height:260px; object-fit:cover; display:block; }
.portfolio-title{ margin:12px 0 0; font-size:18px; line-height:1.22; font-weight:500; }
/* Кнопка "Показать ещё" по центру + отступы */
.portfolio-actions{
  display:flex;
  justify-content:center;
  margin-top:32px;
  margin-bottom:32px;
  
}
.com-content-category-blog::before,
.com-content-category-blog__blog::before{
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  max-width: 100vw;
}
.avm-portfolio-intro__text,
.avm-portfolio-intro__list{
  max-width: 100% !important;
  width: 100% !important;
}

/* Доп. отступы для блока портфолио */
.portfolio-wrap{
  padding-bottom:24px;
}
.avm-portfolio-intro__note{
  max-width: 100% !important;
}

/* Отступы между карточками (если нужно усилить) */
.portfolio-grid{
  gap:24px;
}
#portfolio-load-more{
  padding:14px 26px;
  font-weight:700;
  min-width:220px;
}
.com-content-category-blog__header.category-desc{
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}
.com-content-category-blog__header.category-desc,
.category-desc{
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom:60px;
}
/* MODULE STYLES: avm-shtanket (border-radius = 21px, заголовки крупнее, главный заголовок по центру) */
.avm-shtanket,
.avm-shtanket *{
  box-sizing:border-box;
}

.avm-shtanket{
  width:100%;
  padding:70px 0;
}

.avm-shtanket__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-shtanket__title{
  margin:0 0 12px 0;
  text-align:center;
  font-size:clamp(26px,2.4vw,40px);
  line-height:1.12;
  font-weight:560;
  letter-spacing:-0.012em;
  color:#1f2a37;
}

.avm-shtanket__text{
  margin:0 auto 24px auto;
  text-align:center;
  font-size:15px;
  line-height:1.65;
  color:rgba(31,42,55,.74);
  max-width:900px;
}

.avm-shtanket__blocktitle{
  margin:28px 0 14px;
  font-size:20px;
  font-weight:560;
  letter-spacing:-0.01em;
  color:#1f2a37;
}

.avm-shtanket__grid{
  display:grid;
  gap:14px;
}

.avm-shtanket__grid--2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.avm-shtanket__grid--4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

@media (max-width: 980px){
  .avm-shtanket__grid--4{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 640px){
  .avm-shtanket__grid--2{
    grid-template-columns:1fr;
  }
  .avm-shtanket__grid--4{
    grid-template-columns:1fr;
  }
}

.avm-shtanket__card{
  width:100%;
  text-align:left;
  padding:0;
  border:none;
  cursor:pointer;
  border-radius:21px!important;
  overflow:hidden;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(47,109,255,.14);
  box-shadow:0 20px 60px rgba(16,24,40,0.08),inset 0 1px 0 rgba(255,255,255,.70);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.avm-shtanket__card:hover{
  transform:translateY(-2px);
  box-shadow:0 26px 70px rgba(16,24,40,0.10),inset 0 1px 0 rgba(255,255,255,.70);
}

.avm-shtanket__card.is-active{
  border-color:rgba(47,109,255,.55);
  box-shadow:0 0 0 5px rgba(47,109,255,.12),0 26px 70px rgba(16,24,40,0.10),inset 0 1px 0 rgba(255,255,255,.70);
}

.avm-shtanket__thumb{
  width:100%;
  height:150px;
  background:rgba(47,109,255,.06);
  overflow:hidden;
}

.avm-shtanket__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.avm-shtanket__cardbody{
  padding:14px 14px 16px;
  display:grid;
  gap:8px;
}

.avm-shtanket__cardtitle{
  font-size:16px;
  font-weight:560;
  letter-spacing:-0.01em;
  color:#1f2a37;
}

.avm-shtanket__carddesc{
  font-size:13px;
  line-height:1.5;
  color:rgba(31,42,55,.72);
}

.avm-shtanket__layout{
  margin-top:16px;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:18px;
  align-items:start;
}

@media (max-width: 980px){
  .avm-shtanket__layout{
    grid-template-columns:1fr;
  }
}

.avm-shtanket__kit{
  border-radius:21px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(47,109,255,.14);
  box-shadow:0 30px 80px rgba(16,24,40,0.10),inset 0 1px 0 rgba(255,255,255,.70);
  overflow:hidden;
}

.avm-shtanket__kitrow{
  width:100%;
  display:flex;
  gap:12px;
  align-items:center;
  padding:12px 14px;
  border:none;
  background:transparent;
  cursor:pointer;
  border-bottom:1px solid rgba(47,109,255,.10);
  text-align:left;
  transition:background .15s ease;
}

.avm-shtanket__kitrow:last-child{
  border-bottom:none;
}

.avm-shtanket__kitrow:hover{
  background:rgba(47,109,255,.06);
}

.avm-shtanket__kitrow.is-selected{
  background:rgba(47,109,255,.10);
}

.avm-shtanket__kitmini{
  width:56px;
  height:56px;
  border-radius:14px;
  overflow:hidden;
  flex:0 0 auto;
  background:rgba(47,109,255,.06);
  border:1px solid rgba(47,109,255,.14);
}

.avm-shtanket__kitmini img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.avm-shtanket__kittext{
  flex:1;
  display:grid;
  gap:4px;
  min-width:0;
}

.avm-shtanket__kitname{
  font-size:15px;
  font-weight:560;
  color:#1f2a37;
}

.avm-shtanket__kitnote{
  font-size:12px;
  line-height:1.45;
  color:rgba(31,42,55,.70);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.avm-shtanket__kitcheck{
  width:34px;
  height:34px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:760;
  color:rgba(47,109,255,1);
  border:1px solid rgba(47,109,255,.25);
  background:rgba(47,109,255,.06);
  flex:0 0 auto;
}

.avm-shtanket__panel{
  position:sticky;
  top:18px;
  border-radius:21px;
  overflow:hidden;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(47,109,255,.14);
  box-shadow:0 30px 80px rgba(16,24,40,0.10),inset 0 1px 0 rgba(255,255,255,.70);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

@media (max-width: 980px){
  .avm-shtanket__panel{
    position:relative;
    top:auto;
  }
}

.avm-shtanket__panelimg{
  width:100%;
  height:260px;
  background:rgba(47,109,255,.06);
}

.avm-shtanket__panelimg img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.avm-shtanket__panelbody{
  padding:16px;
  display:grid;
  gap:10px;
}

.avm-shtanket__paneltitle{
  margin:0;
  font-size:18px;
  font-weight:560;
  letter-spacing:-0.01em;
  color:#1f2a37;
}

.avm-shtanket__paneldesc{
  margin:0;
  font-size:13px;
  line-height:1.6;
  color:rgba(31,42,55,.72);
}

.avm-shtanket__tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.avm-shtanket__tag{
  font-size:12px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.18);
  background:rgba(47,109,255,.06);
  color:rgba(31,42,55,.78);
}

.avm-shtanket__btn{
  width:100%;
  min-height:52px;
  padding:12px 22px;
  border-radius:999px;
  cursor:pointer;
  border:1px solid rgba(47,109,255,.45);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  font-size:15px;
  font-weight:760;
  line-height:1;
  box-shadow:0 18px 40px rgba(47,109,255,0.30),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-shtanket__btn:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 22px 50px rgba(47,109,255,0.38),0 14px 26px rgba(16,24,40,0.14);
}

.avm-shtanket__btn:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-shtanket__btn:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}
/* FIX: не обрезать картинки */
.avm-shtanket__thumb img,
.avm-shtanket__kitmini img,
.avm-shtanket__panelimg img{
  object-fit:contain !important;
  background:rgba(255,255,255,0.85);
}

/* чтобы картинка не "прилипала" к краям */
.avm-shtanket__thumb,
.avm-shtanket__kitmini,
.avm-shtanket__panelimg{
  padding:10px;
}

/* важно: иначе padding ломает размеры */
.avm-shtanket__thumb img{
  width:100%;
  height:100%;
  display:block;
}

.avm-shtanket__kitmini img{
  width:100%;
  height:100%;
  display:block;
}

.avm-shtanket__panelimg img{
  width:100%;
  height:100%;
  display:block;
}
/* КАРТИНКИ НЕ ОБРЕЗАЮТСЯ И БЛОК РАСТЁТ ПО ИЗОБРАЖЕНИЮ */
.avm-shtanket__thumb,
.avm-shtanket__panelimg{
  height:auto !important;
  padding:0 !important;
  background:transparent !important;
}

.avm-shtanket__thumb img,
.avm-shtanket__panelimg img{
  width:100% !important;
  height:auto !important;
  display:block;
  object-fit:unset !important;
}

/* миниатюры в комплекте тоже без обрезки */
.avm-shtanket__kitmini{
  height:auto !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
}

.avm-shtanket__kitmini img{
  width:56px !important;
  height:auto !important;
  display:block;
}
/* === AVM SHTANKET: картинка слева от текста + видна сразу === */

/* Карточки (Способ подъёма / Варианты лебёдок / Варианты управления) делаем горизонтальными */
.avm-shtanket__card{
  display:flex;
  align-items:stretch;
}

/* Превью слева: фиксируем ширину и aspect-ratio, чтобы не схлопывалось */
.avm-shtanket__thumb{
  flex:0 0 180px;            /* ширина превью */
  width:180px;
  height:auto !important;
  aspect-ratio: 4 / 3;       /* гарантирует высоту */
  padding:0 !important;
  background:rgba(255,255,255,.88);
}

/* Картинка занимает весь блок превью, без обрезки */
.avm-shtanket__thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block;
}

/* Текст справа */
.avm-shtanket__cardbody{
  flex:1 1 auto;
  padding:14px 14px 16px;
}

/* На мобилке можно вернуть вертикально, если нужно */
@media (max-width: 640px){
  .avm-shtanket__card{
    flex-direction:column;
  }
  .avm-shtanket__thumb{
    width:100%;
    flex-basis:auto;
    aspect-ratio: 16 / 9;
  }
}

/* Список комплекта: миниатюра слева от текста всегда видна */
.avm-shtanket__kitrow{
  display:flex;
  align-items:center;
}

.avm-shtanket__kitmini{
  flex:0 0 64px;
  width:64px;
  height:auto !important;
  aspect-ratio: 1 / 1;       /* чтобы не схлопывалось */
  padding:0 !important;
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(47,109,255,.14) !important;
  overflow:hidden;
}

.avm-shtanket__kitmini img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block;
}
/* AVM Shtanket Configurator (CSS ONLY)
   Добавляйте в конец ваших стилей. Ваши стили выше НЕ трогаю. */

.avm-shtanket,
.avm-shtanket *{
  box-sizing:border-box;
}

.avm-shtanket{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#1f2a37;
}

.avm-shtanket__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-shtanket__title{
  margin:0 0 10px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  line-height:1.12;
  font-weight:560;
  letter-spacing:-0.012em;
  color:#1f2a37;
}

.avm-shtanket__text{
  margin:0 auto 18px auto;
  max-width:920px;
  text-align:center;
  font-size:15px;
  line-height:1.65;
  color:rgba(31,42,55,.74);
}

.avm-shtanket__blocktitle{
  margin:22px 0 12px 0;
  font-size:23px;
  line-height:1.2;
  font-weight:560;
  letter-spacing:-0.01em;
  color:#1f2a37;
}
/* ====== 2) Варианты лебёдок + 3) Варианты управления:
          2 строки, картинка больше, текст под картинкой ====== */

/* Сетка: 2 колонки => при 4 элементах будет 2 строки */
#winchTypesSection .avm-shtanket__grid--4,
#controlsSection .avm-shtanket__grid--4{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:14px !important;
}

/* Карточки делаем вертикальными */
#winchTypesSection .avm-shtanket__card,
#controlsSection .avm-shtanket__card{
  flex-direction:column !important;
  gap:10px !important;
  padding:12px !important;
}

/* Картинка крупнее */
#winchTypesSection .avm-shtanket__thumb,
#controlsSection .avm-shtanket__thumb{
  width:100% !important;
  flex:0 0 auto !important;
  aspect-ratio: 16 / 9 !important;  /* крупная широкая картинка */
  border-radius:16px !important;
}

/* Картинку не режем */
#winchTypesSection .avm-shtanket__thumb img,
#controlsSection .avm-shtanket__thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block;
}

/* Текст под картинкой */
#winchTypesSection .avm-shtanket__cardbody,
#controlsSection .avm-shtanket__cardbody{
  padding:0 4px 2px !important;
}

/* Заголовок/описание чуть крупнее и ровнее */
#winchTypesSection .avm-shtanket__cardtitle,
#controlsSection .avm-shtanket__cardtitle{
  font-size:16px !important;
  font-weight:650 !important;
}

#winchTypesSection .avm-shtanket__carddesc,
#controlsSection .avm-shtanket__carddesc{
  font-size:13px !important;
  line-height:1.5 !important;
  margin-top:6px !important;
}

/* На мобилке оставим 1 колонку */
@media (max-width: 640px){
  #winchTypesSection .avm-shtanket__grid--4,
  #controlsSection .avm-shtanket__grid--4{
    grid-template-columns:1fr !important;
  }
  #winchTypesSection .avm-shtanket__thumb,
  #controlsSection .avm-shtanket__thumb{
    aspect-ratio: 16 / 10 !important;
  }
}


.avm-shtanket__grid{
  display:grid;
  gap:12px;
}

.avm-shtanket__grid--2{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.avm-shtanket__grid--4{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

/* Карточки: картинка слева, текст справа */
.avm-shtanket__card{
  width:100%;
  display:flex;
  align-items:stretch;
  gap:14px;
  text-align:left;
  cursor:pointer;
  border-radius:21px;
  border:1px solid rgba(47,109,255,.14);
  background:rgba(255,255,255,.88);
  box-shadow:0 18px 50px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.70);
  padding:12px;
}

.avm-shtanket__thumb{
  flex:0 0 160px;
  width:160px;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:16px;
  border:1px solid rgba(47,109,255,.12);
  background:rgba(245,250,255,0.95);
}

.avm-shtanket__thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain; /* не обрезать */
}

.avm-shtanket__cardbody{
  flex:1 1 auto;
  min-width:0;
  padding:2px 2px;
}

.avm-shtanket__cardtitle{
  font-size:20px;
  font-weight:500;
  line-height:1.25;
  color:#1f2a37;
}

.avm-shtanket__carddesc{
  margin-top:6px;
  font-size:13px;
  line-height:1.45;
  color:rgba(31,42,55,.72);
}

/* Active state (если JS добавляет .is-active) */
.avm-shtanket__card.is-active{
  border-color:rgba(47,109,255,.38);
  box-shadow:0 0 0 4px rgba(47,109,255,.12), 0 18px 50px rgba(16,24,40,0.08);
}

/* Layout: список + панель */
.avm-shtanket__layout{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:18px;
  align-items:start;
}

/* Список комплекта */
.avm-shtanket__kit{
  display:grid;
  gap:10px;
}

.avm-shtanket__kitrow{
  width:100%;
  display:flex;
  align-items:center;
  gap:12px;
  text-align:left;
  cursor:pointer;
  border-radius:21px;
  border:1px solid rgba(47,109,255,.14);
  background:rgba(255,255,255,.88);
  box-shadow:0 18px 50px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.70);
  padding:10px 12px;
}

.avm-shtanket__kitmini{
  flex:0 0 56px;
  width:56px;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(47,109,255,.12);
  background:rgba(245,250,255,0.95);
}

.avm-shtanket__kitmini img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain; /* не обрезать */
}

.avm-shtanket__kittext{
  flex:1 1 auto;
  min-width:0;
}

.avm-shtanket__kitname{
  font-size:14px;
  font-weight:620;
  line-height:1.25;
  color:#1f2a37;
}

.avm-shtanket__kitnote{
  margin-top:4px;
  font-size:12px;
  line-height:1.45;
  color:rgba(31,42,55,.68);
}

.avm-shtanket__kitcheck{
  flex:0 0 auto;
  min-width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.22);
  background:rgba(47,109,255,.06);
  color:#2f6dff;
  font-weight:800;
}

/* Selected state (если JS добавляет .is-selected) */
.avm-shtanket__kitrow.is-selected{
  border-color:rgba(47,109,255,.38);
  box-shadow:0 0 0 4px rgba(47,109,255,.12), 0 18px 50px rgba(16,24,40,0.08);
}

/* Правая панель */
.avm-shtanket__panel{
  border-radius:21px;
  border:1px solid rgba(47,109,255,.14);
  background:rgba(255,255,255,.88);
  box-shadow:0 30px 80px rgba(16,24,40,0.10), inset 0 1px 0 rgba(255,255,255,.70);
  overflow:hidden;
}

.avm-shtanket__panelimg{
  width:100%;
  background:rgba(245,250,255,0.95);
  border-bottom:1px solid rgba(47,109,255,.12);
}

.avm-shtanket__panelimg img{
  width:100%;
  height:auto;         /* блок по высоте изображения */
  display:block;
  object-fit:unset;    /* не нужно, раз height:auto */
}

.avm-shtanket__panelbody{
  padding:16px 16px 18px 16px;
}

.avm-shtanket__paneltitle{
  margin:0;
  font-size:18px;
  font-weight:620;
  letter-spacing:-0.01em;
  color:#1f2a37;
}

.avm-shtanket__paneldesc{
  margin:8px 0 12px 0;
  font-size:13px;
  line-height:1.6;
  color:rgba(31,42,55,.72);
}

/* Tags */
.avm-shtanket__tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 14px 0;
}

.avm-shtanket__tag{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(47,109,255,.20);
  background:rgba(47,109,255,.08);
  color:rgba(31,42,55,.78);
  font-size:12px;
  line-height:1;
}

/* Кнопка (под общий стиль) */
.avm-shtanket__btn{
  width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:12px 22px;
  border-radius:999px;
  cursor:pointer;
  border:1px solid rgba(47,109,255,.45);
  background:linear-gradient(180deg,#4f8bff 0%,#2f6dff 100%);
  color:#ffffff;
  font-size:15px;
  font-weight:760;
  line-height:1;
  box-shadow:0 18px 40px rgba(47,109,255,0.30),0 10px 20px rgba(16,24,40,0.12);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.avm-shtanket__btn:hover{
  filter:brightness(1.04);
  transform:translateY(-2px);
  box-shadow:0 22px 50px rgba(47,109,255,0.38),0 14px 26px rgba(16,24,40,0.14);
}

.avm-shtanket__btn:active{
  transform:translateY(0);
  filter:brightness(0.98);
}

.avm-shtanket__btn:focus-visible{
  outline:3px solid rgba(47,124,246,.35);
  outline-offset:3px;
}

@media (max-width: 980px){
  .avm-shtanket__layout{
    grid-template-columns:1fr;
  }
  .avm-shtanket__grid--4{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px){
  .avm-shtanket__grid--2{
    grid-template-columns:1fr;
  }
  .avm-shtanket__card{
    flex-direction:column;
  }
  .avm-shtanket__thumb{
    width:100%;
    flex-basis:auto;
    aspect-ratio:16/9;
  }
}

@media (prefers-reduced-motion: reduce){
  .avm-shtanket__btn{
    transition:none;
  }
  .avm-shtanket__btn:hover{
    transform:none;
  }
}
/* ====== Варианты лебёдок: 2 строки (2×2) ====== */
#winchTypesSection .avm-shtanket__grid--4{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:14px !important;
}

#winchTypesSection .avm-shtanket__card{
  flex-direction:column !important;
  gap:10px !important;
  padding:12px !important;
}

#winchTypesSection .avm-shtanket__thumb{
  width:100% !important;
  flex:0 0 auto !important;
  aspect-ratio:16 / 9 !important;
  border-radius:16px !important;
}

#winchTypesSection .avm-shtanket__thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block;
}

#winchTypesSection .avm-shtanket__cardbody{
  padding:0 4px 2px !important;
}

/* ====== Варианты управления: 1 строка (4 в ряд) ====== */
#controlsSection .avm-shtanket__grid--4{
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:14px !important;
}

#controlsSection .avm-shtanket__card{
  flex-direction:column !important;
  gap:10px !important;
  padding:12px !important;
}

#controlsSection .avm-shtanket__thumb{
  width:100% !important;
  flex:0 0 auto !important;
  aspect-ratio:16 / 10 !important;
  border-radius:16px !important;
}

#controlsSection .avm-shtanket__thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block;
}

#controlsSection .avm-shtanket__cardbody{
  padding:0 4px 2px !important;
}

/* Общие улучшения текста */
#winchTypesSection .avm-shtanket__cardtitle,
#controlsSection .avm-shtanket__cardtitle{
  font-size:20px !important;
  font-weight:500 !important;
}

#winchTypesSection .avm-shtanket__carddesc,
#controlsSection .avm-shtanket__carddesc{
  font-size:13px !important;
  line-height:1.5 !important;
  margin-top:6px !important;
}

/* Мобилка */
@media (max-width: 980px){
  #controlsSection .avm-shtanket__grid--4{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px){
  #winchTypesSection .avm-shtanket__grid--4,
  #controlsSection .avm-shtanket__grid--4{
    grid-template-columns:1fr !important;
  }
}
@media (max-width: 768px) {
  .avm-hero__panel {
    border-radius: 0 !important;
    background: rgba(255, 255, 255, 0.85); /* светлый и читаемый */
  }
}
body, .wrapper, .page, .layout, .site, .main {
  overflow-y: visible !important;
  height: auto !important;
}
/* ===== avm-kompl SOLUTIONS (use existing styles, only patch layout) ===== */
.avm-kompl--solutions .avm-kompl__lead{
  max-width: 980px;
  margin: 0 auto 22px;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(39,50,60,.88);
  text-align: center;
}

/* подпункты и списки (в стиле существующей типографики) */
.avm-kompl--solutions .avm-kompl__sub{
  margin: 12px 0 8px;
  font-size: 15px;
  font-weight: 650;
  letter-spacing: -0.01em;
  color: #27323c;
}

.avm-kompl--solutions .avm-kompl__list{
  margin: 0;
  padding-left: 18px;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(39,50,60,.88);
}

.avm-kompl--solutions .avm-kompl__list li + li{
  margin-top: 6px;
}

.avm-kompl--solutions .avm-kompl__text--mt{
  margin-top: 12px;
}

/* === ВАЖНО: 50/50 на десктопе, но сохраняем ваши карточки/тени/радиусы === */
.avm-kompl--solutions .avm-kompl__row{
  grid-template-columns: 1fr 1fr; /* было 220px 1fr */
  align-items: stretch;          /* чтобы картинка тянулась по высоте */
}

/* делаем картинку высотой карточки, чтобы реально занимала 50% "экрана" карточки */
.avm-kompl--solutions .avm-kompl__img{
  height: auto;   /* перекрываем 160px */
  min-height: 240px;
}

.avm-kompl--solutions .avm-kompl__img img{
  height: 100%;
}

/* чуть комфортнее паддинги под длинный текст (в вашем стиле) */
.avm-kompl--solutions .avm-kompl__content{
  padding: 18px 18px 18px 0; /* почти как было, но ровнее */
}

/* responsive: сохраняем вашу логику, но под 50/50 */
@media (max-width: 980px){
  .avm-kompl--solutions .avm-kompl__row{
    grid-template-columns: 1fr; /* чтобы не было тесно на планшете */
  }

  .avm-kompl--solutions .avm-kompl__img{
    min-height: 220px;
    height: 220px; /* фиксируем как у вас в мобиле — аккуратнее */
  }

  .avm-kompl--solutions .avm-kompl__content{
    padding: 14px 14px 18px;
    text-align: left; /* можно center, если хотите как в старом 640px */
  }

  .avm-kompl--solutions .avm-kompl__lead{
    text-align: left;
    margin: 0 0 18px;
  }
}

@media (max-width: 640px){
  .avm-kompl--solutions .avm-kompl__content{
    text-align: center; /* повторяем ваш стиль на мобиле */
  }

  .avm-kompl--solutions .avm-kompl__lead{
    text-align: center;
  }

  .avm-kompl--solutions .avm-kompl__img{
    height: 200px; /* как у вас */
    min-height: 200px;
  }
}
/* ===== SOLUTIONS: чередование картинка слева/справа ===== */
@media (min-width: 981px){

  /* базово уже 50/50 */
  .avm-kompl--solutions .avm-kompl__row{
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }

  /* чётные карточки — картинка справа */
  .avm-kompl--solutions .avm-kompl__row:nth-child(even) .avm-kompl__img{
    order: 2;
  }

  .avm-kompl--solutions .avm-kompl__row:nth-child(even) .avm-kompl__content{
    order: 1;
    padding: 18px 0 18px 18px; /* зеркалим отступ */
  }

  /* нечётные — стандартная логика */
  .avm-kompl--solutions .avm-kompl__row:nth-child(odd) .avm-kompl__content{
    padding: 18px 18px 18px 0;
  }
}
/* ===== BRANDS module (in avm-kompl style) ===== */
.avm-truss.avm-brands .avm-brands__lead{
  max-width: 980px;
  margin: 0 auto 18px;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(39,50,60,.88);
  text-align: center;
}

/* one-row logos */
.avm-truss.avm-brands .avm-brands__row{
  display: flex;
  align-items: stretch;
  gap: 12px;
  overflow-x: auto;
  padding: 6px 2px 10px;

  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

/* hide scrollbar (optional, safe) */
.avm-truss.avm-brands .avm-brands__row::-webkit-scrollbar{ height: 8px; }
.avm-truss.avm-brands .avm-brands__row::-webkit-scrollbar-track{ background: transparent; }
.avm-truss.avm-brands .avm-brands__row::-webkit-scrollbar-thumb{
  background: rgba(39,50,60,.18);
  border-radius: 999px;
}

.avm-truss.avm-brands .avm-brands__item{
  flex: 0 0 auto;
  width: 160px;
  height: 86px;

  display: grid;
  place-items: center;

  border-radius: 18px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  scroll-snap-align: start;
}

.avm-truss.avm-brands .avm-brands__item img{
  width: 78%;
  height: 78%;
  object-fit: contain;
  display: block;
  filter: saturate(1.02);
  opacity: .95;
}

/* desktop: try fit 7 in one row */
@media (min-width: 1100px){
  .avm-truss.avm-brands .avm-brands__row{
    overflow: hidden; /* no scroll if fits */
    justify-content: space-between;
  }

  .avm-truss.avm-brands .avm-brands__item{
    width: calc((100% - 12px * 6) / 7); /* ровно 7 в строку */
    min-width: 120px;
  }
}

@media (max-width: 640px){
  .avm-truss.avm-brands .avm-brands__lead{
    text-align: center;
    margin-bottom: 14px;
  }

  .avm-truss.avm-brands .avm-brands__item{
    width: 150px;
    height: 82px;
  }
}
/* ===== BRANDS: force 2-row grid for 7 logos (4+3) ===== */
.avm-truss.avm-kompl.avm-brands .avm-brands__row{
  display: grid !important;
  grid-template-rows: repeat(2, 1fr) !important;
  grid-auto-flow: column !important;     /* заполнение по колонкам => 4+3 */
  grid-auto-columns: 1fr !important;
  gap: 18px !important;

  overflow: visible !important;          /* убираем горизонтальный скролл */
  padding: 0 !important;
}

.avm-truss.avm-kompl.avm-brands .avm-brands__item{
  width: auto !important;                /* на случай старого фикс. width */
  height: 140px !important;              /* крупнее */
  display: grid !important;
  place-items: center !important;

  border-radius: 20px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08),
              inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-kompl.avm-brands .avm-brands__item img{
  width: 72% !important;
  height: 72% !important;
  object-fit: contain !important;
  display: block;
  opacity: .95;
}

/* адаптив */
@media (max-width: 980px){
  .avm-truss.avm-kompl.avm-brands .avm-brands__row{
    grid-auto-columns: 260px !important; /* крупные карточки в скролле */
    overflow-x: auto !important;
    padding: 4px 2px 10px !important;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
  }
  .avm-truss.avm-kompl.avm-brands .avm-brands__item{
    scroll-snap-align: start;
  }
}

@media (max-width: 640px){
  .avm-truss.avm-kompl.avm-brands .avm-brands__row{
    grid-template-rows: none !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    grid-template-columns: 1fr !important;
    overflow: visible !important;
    padding: 0 !important;
  }
  .avm-truss.avm-kompl.avm-brands .avm-brands__item{
    height: 120px !important;
  }
}/* ===== BRANDS: квадратные карточки + логотип без обрезки + низ по центру ===== */
.avm-truss.avm-kompl.avm-brands .avm-brands__row{
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 18px !important;
  overflow: visible !important;
  padding: 0 !important;
}

/* карточки СТРОГО квадратные */
.avm-truss.avm-kompl.avm-brands .avm-brands__item{
  aspect-ratio: 1 / 1 !important;   /* квадрат */
  height: auto !important;          /* убираем фикс высоту */
  width: auto !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 20px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08),
              inset 0 1px 0 rgba(255,255,255,.55);
}

/* логотип НЕ режем */
.avm-truss.avm-kompl.avm-brands .avm-brands__item img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  padding: 18px !important;         /* воздух */
  display: block !important;
}

/* 7 логотипов: низ (3) — по центру (в колонки 2-4) */
.avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(5){ grid-column: 2 !important; }
.avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(6){ grid-column: 3 !important; }
.avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(7){ grid-column: 4 !important; }

/* адаптив */
@media (max-width: 1100px){
  .avm-truss.avm-kompl.avm-brands .avm-brands__row{
    grid-template-columns: repeat(3, 1fr) !important;
  }
  /* на 3 колонках ручная раскладка не нужна */
  .avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(5),
  .avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(6),
  .avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(7){
    grid-column: auto !important;
  }
}

@media (max-width: 768px){
  .avm-truss.avm-kompl.avm-brands .avm-brands__row{
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .avm-truss.avm-kompl.avm-brands .avm-brands__item img{
    padding: 14px !important;
  }
}

@media (max-width: 480px){
  .avm-truss.avm-kompl.avm-brands .avm-brands__row{
    grid-template-columns: 1fr !important;
  }
}
/* ===== BRANDS: центрируем ТОЛЬКО вторую строку (7 логотипов) ===== */
.avm-truss.avm-kompl.avm-brands .avm-brands__row{
  justify-content: center;   /* центрируем строки grid */
}

/* если используется grid с 4 колонками */
@media (min-width: 1100px){
  .avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(5){
    grid-column: 2;
  }
  .avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(6){
    grid-column: 3;
  }
  .avm-truss.avm-kompl.avm-brands .avm-brands__item:nth-child(7){
    grid-column: 4;
  }
}
/* Список блоков */
.avm-zvuk__list{
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Карточка */
.avm-zvuk__item{
  display: flex;
  gap: 30px;
  padding: 30px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.06);
  align-items: flex-start;
}

/* Картинка 30% */
.avm-zvuk__img{
  flex: 0 0 30%;
}

.avm-zvuk__img img{
  width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
}

/* Текст 70% */
.avm-zvuk__content{
  flex: 1;
}

.avm-zvuk__content h3{
  margin-top: 0;
  margin-bottom: 12px;
}

.avm-zvuk__content p,
.avm-zvuk__content ul{
  margin-bottom: 12px;
}

.avm-zvuk__seo{
  font-size: 14px;
  opacity: .6;
}

/* Адаптив */
@media (max-width: 900px){
  .avm-zvuk__item{
    flex-direction: column;
  }

  .avm-zvuk__img{
    flex: none;
    width: 100%;
  }
}
/* Центрируем h3 только в горизонтальном модуле (акустика) */
.avm-srb--hor .avm-srb__subtitle{
  display: block;
  width: 100%;
  text-align: center;
}

  /* 2 колонки */
  .avm-zvuk-about__grid{
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 32px;
    align-items: start;
    margin-top: 18px;
  }

  .avm-zvuk-about__left img{
    width: 100%;
    height: auto;
    display: block;
    border-radius: 16px;
    object-fit: cover;
  }

  /* Пункты справа */
  .avm-zvuk-about__point{
    display: grid;
    grid-template-columns: 70px 1fr; /* цифра отдельно, текст правее */
    gap: 18px;
    align-items: start;
    margin-bottom: 18px;
  }

  /* Блок с цифрой: фон-изображение */
  .avm-zvuk-about__num{
    width: 70px;               /* не более 200px */
    max-width: 70px;
    aspect-ratio: 1 / 1;
    background: url("scenes/kolonka.png") center/contain no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .avm-zvuk-about__num span{
    color: #fff;                /* белые цифры */
    font-weight: 500;
    font-size: 32px;
    line-height: 1;
    text-shadow: 0 2px 14px rgba(0,0,0,.45);
  }

  .avm-zvuk-about__text h3{
    margin: 0 0 8px 0;
  }

  .avm-zvuk-about__text p{
    margin: 0;
  }

  .avm-zvuk-about__footer{
    margin-top: 10px;
  }

  /* Адаптив */
  @media (max-width: 900px){
    .avm-zvuk-about__grid{
      grid-template-columns: 1fr;
    }
    .avm-zvuk-about__point{
      grid-template-columns: 140px 1fr;
    }
    .avm-zvuk-about__num{
      width: 140px;
      max-width: 140px;
    }
    .avm-zvuk-about__num span{
      font-size: 52px;
    }
  }

  @media (max-width: 520px){
    .avm-zvuk-about__point{
      grid-template-columns: 1fr;
    }
    .avm-zvuk-about__num{
      width: 140px;
      max-width: 140px;
    }
  }
  
  /* =========================================================
   NEW STEP CARDS (curtain road / soffit truss / shtanket type)
   Layout: image on top, title under, text under title
   ========================================================= */

/* если где-то grid уже задан — оставляем, но на всякий случай */
.avm-shtanket__grid--2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

@media (max-width: 720px) {
  .avm-shtanket__grid--2 {
    grid-template-columns: 1fr;
  }
}

/* карточка-кнопка */
.avm-shtanket__card {
  display: flex;
  flex-direction: column; /* ключевое: сверху вниз */
  align-items: stretch;
  text-align: left;

  width: 100%;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 14px;
  background: #fff;
  padding: 0;
  overflow: hidden;
  cursor: pointer;

  transition: transform 0.12s ease, border-color 0.12s ease, box-shadow 0.12s ease;
}

.avm-shtanket__card:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
  border-color: rgba(0, 0, 0, 0.18);
}

.avm-shtanket__card:focus-visible {
  outline: 2px solid rgba(0, 0, 0, 0.35);
  outline-offset: 2px;
}

/* активная карточка */
.avm-shtanket__card.is-active {
  border-color: rgba(0, 0, 0, 0.35);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
}

/* верхняя картинка */
.avm-shtanket__thumb {
  width: 100%;
  aspect-ratio: 16 / 9;   /* аккуратная высота, можно менять */
  background: #f3f4f6;
  overflow: hidden;
}

.avm-shtanket__thumb img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;      /* чтобы красиво обрезалось */
}

/* блок текста под картинкой */
.avm-shtanket__cardbody {
  display: flex;
  flex-direction: column;
  gap: 8px;

  padding: 14px 14px 16px;
}

.avm-shtanket__cardtitle {
  font-size: 16px;
  line-height: 1.25;
  font-weight: 700;
  margin: 0;
}

.avm-shtanket__carddesc {
  font-size: 13.5px;
  line-height: 1.35;
  opacity: 0.85;
  margin: 0;

  /* чтобы длинные описания не разъезжали карточки слишком сильно */
  display: -webkit-box;
  -webkit-line-clamp: 4;       /* показываем до 4 строк */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* если хочешь вообще без обрезки — раскомментируй:
.avm-shtanket__carddesc {
  display: block;
  -webkit-line-clamp: initial;
  overflow: visible;
}
*/
/* =========================================================
   БОЛЬШЕ ОТСТУП МЕЖДУ КАРТОЧКАМИ
   ========================================================= */

.avm-shtanket__grid--2 {
  gap: 28px; /* было 16px — теперь больше воздуха */
}

/* если где-то используется grid--4 */
.avm-shtanket__grid--4 {
  gap: 24px;
}

/* =========================================================
   БОЛЬШЕ ОТСТУП МЕЖДУ СЕКЦИЯМИ (шагами)
   ========================================================= */

#curtainRoadSection,
#soffitTrussSection,
#shtanketTypeSection,
#winchTypesSection,
#controlsSection {
  margin-top: 70px; /* увеличенный вертикальный отступ */
}

/* заголовки шагов */
.avm-shtanket__blocktitle {
  margin-bottom: 22px; /* больше расстояния до карточек */
}
/* 5 вариантов лебёдок: 3 в первом ряду, 2 во втором по центру */
.avm-shtanket__grid--winch5 {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 24px;
}

/* первые 3 */
.avm-shtanket__grid--winch5 .avm-shtanket__card {
  grid-column: span 2; /* 6/2 = 3 карточки в ряд */
}

/* нижний ряд: 2 карточки по центру */
.avm-shtanket__grid--winch5 .avm-shtanket__card.is-row2 {
  grid-column: span 2;
}

/* 4-я карточка: стартуем со 2-й колонки (центровка пары) */
.avm-shtanket__grid--winch5 .avm-shtanket__card.is-row2:nth-of-type(4) {
  grid-column: 2 / span 2;
}

/* адаптив */
@media (max-width: 920px) {
  .avm-shtanket__grid--winch5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .avm-shtanket__grid--winch5 .avm-shtanket__card,
  .avm-shtanket__grid--winch5 .avm-shtanket__card.is-row2,
  .avm-shtanket__grid--winch5 .avm-shtanket__card.is-row2:nth-of-type(4) {
    grid-column: auto / span 1;
  }
}

@media (max-width: 520px) {
  .avm-shtanket__grid--winch5 {
    grid-template-columns: 1fr;
  }
  .avm-shtanket__grid--winch5 .avm-shtanket__card {
    grid-column: auto;
  }
}
/* =========================================================
   WINCH TYPES: 5 карточек (3 сверху, 2 снизу по центру)
   ========================================================= */

/* перебиваем любые .avm-shtanket__grid--4 и т.п. */
#winchTypesGrid.avm-shtanket__grid--winch5 {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch;
}

/* Все карточки по 2 колонки => 3 в ряд */
#winchTypesGrid.avm-shtanket__grid--winch5 > .avm-shtanket__card {
  grid-column: span 2;
}

/* 4-я и 5-я карточки — второй ряд */
#winchTypesGrid.avm-shtanket__grid--winch5 > .avm-shtanket__card.is-row2 {
  grid-column: span 2;
}

/* 4-я карточка (первая во 2-м ряду) стартует со 2-й колонки => пара по центру */
#winchTypesGrid.avm-shtanket__grid--winch5 > .avm-shtanket__card.is-row2:nth-child(4) {
  grid-column: 2 / span 2;
}

/* Адаптив: на планшете 2 в ряд */
@media (max-width: 920px) {
  #winchTypesGrid.avm-shtanket__grid--winch5 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #winchTypesGrid.avm-shtanket__grid--winch5 > .avm-shtanket__card,
  #winchTypesGrid.avm-shtanket__grid--winch5 > .avm-shtanket__card.is-row2,
  #winchTypesGrid.avm-shtanket__grid--winch5 > .avm-shtanket__card.is-row2:nth-child(4) {
    grid-column: auto / span 1 !important;
  }
}

/* Мобилка: по 1 */
@media (max-width: 520px) {
  #winchTypesGrid.avm-shtanket__grid--winch5 {
    grid-template-columns: 1fr !important;
  }
}
/* =========================================================
   3 дороги занавеса в одну строку
   ========================================================= */

#curtainRoadGrid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px;
}

/* планшет */
@media (max-width: 1024px) {
  #curtainRoadGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* мобилка */
@media (max-width: 640px) {
  #curtainRoadGrid {
    grid-template-columns: 1fr !important;
  }
}
/* =========================================================
   5) Софитная ферма + 6) Штанкет — картинка на всю ширину карточки
   (жёсткое перебивание любых прошлых правил)
   ========================================================= */

/* контейнер картинки занимает всю ширину */
#soffitTrussGrid .avm-shtanket__thumb,
#shtanketTypeGrid .avm-shtanket__thumb {
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: auto !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* сама картинка реально тянется по ширине */
#soffitTrussGrid .avm-shtanket__thumb img,
#shtanketTypeGrid .avm-shtanket__thumb img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  object-fit: contain !important; /* без обрезки */
  margin: 0 !important;
}

/* на всякий случай убираем ограничения карточки */
#soffitTrussGrid .avm-shtanket__card,
#shtanketTypeGrid .avm-shtanket__card {
  padding: 0 !important;
  overflow: hidden;
}

/* текстовый блок под картинкой */
#soffitTrussGrid .avm-shtanket__cardbody,
#shtanketTypeGrid .avm-shtanket__cardbody {
  padding: 16px 18px 20px !important;
}
/* =========================================================
   5) Софитная ферма + 6) Штанкет — БЕЗ ОБРЕЗКИ (contain)
   ========================================================= */

#soffitTrussGrid .avm-shtanket__thumb,
#shtanketTypeGrid .avm-shtanket__thumb {
  width: 100% !important;
  height: auto !important;          /* убираем фикс-высоту */
  aspect-ratio: auto !important;    /* убираем принудительные пропорции */
  overflow: visible !important;     /* чтобы точно не резало */
  background: transparent !important;
}

#soffitTrussGrid .avm-shtanket__thumb img,
#shtanketTypeGrid .avm-shtanket__thumb img {
  display: block !important;
  width: 100% !important;           /* во всю ширину */
  height: auto !important;          /* высота по пропорциям */
  object-fit: contain !important;   /* ключ: НЕ обрезать */
  object-position: center !important;
}

/* если где-то у карточки overflow hidden и оно режет — оставим hidden только на радиусах,
   но thumb будет visible и не пострадает */
#soffitTrussGrid .avm-shtanket__card,
#shtanketTypeGrid .avm-shtanket__card {
  overflow: hidden; /* ок для скругления */
}
/* Общий заголовок секций */
.avm-mechanic__title,
.avm-truss__title {
  font-weight: 550;
}

/* Подзаголовки внутри пунктов */
.avm-zvuk-about__text h3,
.avm-design__subtitle {
  font-weight: 550;
}
/* ===== Верхняя механика — индивидуальные стили ===== */

.avm-kompl--mechanics .avm-kompl__row {
  display: flex;
  align-items: stretch;
  gap: 40px;
}

/* Колонка с изображением */
.avm-kompl--mechanics .avm-kompl__img {
  flex: 0 0 320px; /* можно изменить ширину */
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Картинка без обрезки */
.avm-kompl--mechanics .avm-kompl__img img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain; /* ключевое — не обрезается */
}

/* Текст по центру высоты */
.avm-kompl--mechanics .avm-kompl__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* ===== Адаптив ===== */

@media (max-width: 992px) {
  .avm-kompl--mechanics .avm-kompl__row {
    gap: 25px;
  }

  .avm-kompl--mechanics .avm-kompl__img {
    flex: 0 0 240px;
  }
}

@media (max-width: 768px) {
  .avm-kompl--mechanics .avm-kompl__row {
    flex-direction: column;
  }

  .avm-kompl--mechanics .avm-kompl__img {
    flex: none;
    margin-bottom: 20px;
  }

  .avm-kompl--mechanics .avm-kompl__content {
    text-align: center;
  }
}
@media (max-width: 576px) {
  .avm-brands__row {
    display: flex;
    flex-wrap: wrap;
  }

  .avm-brands__item {
    width: 50%;
  }
}
@media (max-width: 576px) {
  .avm-brands__row{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .avm-brands__item{
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .avm-brands__item img{
    max-width: 100%;
    height: auto;
    display: block;
  }
}
@media (max-width: 576px) {
  .avm-truss.avm-kompl.avm-brands .avm-brands__row{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  .avm-truss.avm-kompl.avm-brands .avm-brands__item{
    box-sizing: border-box !important;
    flex: 0 0 calc(50% - 6px) !important; /* 2 в строке */
    max-width: calc(50% - 6px) !important;
    width: calc(50% - 6px) !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
.avm-srb { padding:10px 0;
}
.avm-prem__bg {
    background: none;
    transform: scale(1.02);
}
  .avm-truss.avm-kompl.avm-brands .avm-brands__item img{
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }
}
.avm-prem--light .avm-prem__bg, .avm-prem--theatre .avm-prem__bg {background-image:none}

/* === AVM: Profile Spotlights module === */
.avm-prof{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-prof__outer{
  width:100%;
  padding:44px 0;
  background:radial-gradient(1200px 520px at 18% 8%,rgba(47,124,246,.10),transparent 62%),
             linear-gradient(180deg,#eef2f9 0%,#ffffff 70%);
}

.avm-prof__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.avm-prof__panel{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
}

.avm-prof__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.avm-prof__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  align-items:stretch;
}

.avm-prof__card{
  position:relative;
  display:grid;
  grid-template-rows:1fr auto;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08),inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.avm-prof__card::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  box-shadow:0 0 0 1px rgba(47,109,255,.25),0 0 0 7px rgba(47,109,255,.12);
  transition:opacity .18s ease;
}



.avm-prof__card:hover::before{
  opacity:1;
}

.avm-prof__media{
  width:100%;
  height:100%;
  background:#eef2f7;
}

.avm-prof__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

.avm-prof__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:650;
  font-size:15px;
  color:rgba(39,50,60,.88);
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,1));
}

.avm-prof__text{
  margin:18px auto 0;
  max-width:920px;
  font-size:15px;
  line-height:1.7;
  color:rgba(39,50,60,.74);
}

@media (max-width: 980px){
  .avm-prof__grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width: 520px){
  .avm-prof__container{
    padding:0 12px;
  }
  .avm-prof__grid{
    grid-template-columns:1fr;
  }
}
/* === Theatre light module (clean version) === */

.prof-spot{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.prof-spot__container{
  max-width:1200px;
  margin:0 auto;
  padding:50px 16px;
}

.prof-spot__title{
  margin:0 0 24px 0;
  text-align:center;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.prof-spot__gallery{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  margin-bottom:24px;
}

.prof-spot__item{
  display:flex;
  align-items:center;
  justify-content:center;
}

.prof-spot__item img{
  width:100%;
  height:auto;
  max-height:420px;
  object-fit:contain; /* главное — НЕ обрезает */
  display:block;
}

.prof-spot__text{
  max-width:900px;
  margin:0 auto;
  font-size:15px;
  line-height:1.7;
  color:rgba(39,50,60,.75);
}

.prof-spot__text p{
  margin:0;
}

.prof-spot__text p + p{
  margin-top:14px;
}

@media (max-width: 980px){
  .prof-spot__gallery{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width: 520px){
  .prof-spot__container{
    padding:40px 12px;
  }

  .prof-spot__gallery{
    grid-template-columns:1fr;
  }
}
/* ===== Theatre light modules (единый стиль) ===== */

.prof-spot{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
  padding:60px 0;
  background:linear-gradient(180deg,#f7f9fc 0%, #ffffff 100%);
}

.prof-spot__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.prof-spot__title{
  margin:0 0 28px 0;
  text-align:center;
  font-size:clamp(24px,2.4vw,36px);
  font-weight:600;
  letter-spacing:-0.015em;
}

.prof-spot__gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  margin-bottom:28px;
}

.prof-spot__item{
  height:260px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border-radius:16px;
  background:#ffffff;
  border:1px solid rgba(39,50,60,.12);
  box-shadow:0 12px 28px rgba(16,24,40,.08);
}

.prof-spot__item img{
  max-width:100%;
  max-height:100%;
  object-fit:contain; /* НЕ обрезает */
  display:block;
}

.prof-spot__text{
  max-width:920px;
  margin:0 auto;
  font-size:15px;
  line-height:1.75;
  color:rgba(39,50,60,.75);
}

.prof-spot__text p{
  margin:0;
}

.prof-spot__text p + p{
  margin-top:14px;
}

/* ===== Адаптив ===== */

@media (max-width: 980px){
  .prof-spot__gallery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .prof-spot__item{
    height:240px;
  }
}

@media (max-width: 520px){
  .prof-spot{
    padding:45px 0;
  }
  .prof-spot__container{
    padding:0 12px;
  }
  .prof-spot__gallery{
    grid-template-columns:1fr;
  }
}
/* ===== Fullscreen sections (desktop only) ===== */

@media (min-width: 1024px){

  .prof-spot{
    min-height:100vh;              /* во весь экран */
    display:flex;
    align-items:center;            /* вертикальное центрирование */
  }

  .prof-spot__container{
    width:100%;
  }

  /* Чтобы галерея и текст красиво распределялись */
  .prof-spot__gallery{
    margin-bottom:32px;
  }

  /* Немного увеличим карточки на большом экране */
  .prof-spot__item{
    height:300px;
  }

}
/* ===== Theatre light intro (SEO) ===== */

.theatre-light-intro{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
  padding:60px 0;
  background:linear-gradient(180deg,#eef2f9 0%, #ffffff 75%);
}

.theatre-light-intro__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.theatre-light-intro__title{
  margin:0 0 18px 0;
  text-align:center;
  font-size:clamp(24px,2.4vw,38px);
  font-weight:650;
  letter-spacing:-0.015em;
  line-height:1.15;
}

.theatre-light-intro__text{
  max-width:980px;
  margin:0 auto;
  font-size:15px;
  line-height:1.75;
  color:rgba(39,50,60,.76);
}

.theatre-light-intro__text p{
  margin:0;
}

.theatre-light-intro__text p + p{
  margin-top:14px;
}

@media (max-width: 520px){
  .theatre-light-intro{
    padding:44px 0;
  }
  .theatre-light-intro__container{
    padding:0 12px;
  }
}
/* ===== Fullscreen hero with background image and readable overlay ===== */

.hero-light{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  color:#ffffff;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

/* фон картинкой через CSS */
.hero-light::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:url("scenes/zvuk.avif");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  transform:scale(1.02);
  z-index:0;
}

/* затемнение + лёгкий градиент, чтобы текст читался и картинка была видна */
.hero-light::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.52) 48%, rgba(0,0,0,.25) 100%),
    radial-gradient(900px 520px at 18% 22%, rgba(0,0,0,.45), transparent 60%);
  z-index:1;
}

.hero-light__container{
  position:relative;
  z-index:2;
  width:min(1200px, calc(100% - 32px));
  margin:0 auto;
}

/* "прозрачная подложка" под текстом */
.hero-light__panel{
  max-width:780px;
  padding:clamp(22px, 3vw, 44px);
  border-radius:22px;
  background:rgba(10,14,22,.48);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px);
  box-shadow:0 22px 70px rgba(0,0,0,.45);
}

.hero-light__title{
  margin:0 0 16px 0;
  font-weight:550;
  letter-spacing:-0.02em;
  line-height:1.08;
  font-size:clamp(30px, 3.2vw, 56px);
  text-shadow:0 2px 18px rgba(0,0,0,.55);
}

.hero-light__lead{
  margin:0 0 18px 0;
  font-size:clamp(16px, 1.35vw, 20px);
  line-height:1.65;
  color:rgba(255,255,255,.88);
}

.hero-light__list{
  margin:0;
  padding-left:18px;
  font-size:clamp(15px, 1.1vw, 18px);
  line-height:1.75;
  color:rgba(255,255,255,.88);
}

.hero-light__list li{
  margin:8px 0;
}

.hero-light__list strong{
  color:#ffffff;
}

@media (max-width: 520px){
  .hero-light__panel{
    max-width:100%;
    border-radius:18px;
  }
}
.avm-zvuk-about__footer {
    text-align: center;
}

.avm-zvuk-about__right .avm-shero__btn {
    display: inline-block;
    margin: 20px auto 0;
}

.avm-zvuk-about__footer {
    text-align: center;
    margin-top: 30px;
}

.avm-zvuk-about__right > .avm-shero__btn {
    display: block;
    width: fit-content;
    margin: 20px auto 0;
}
.avm-zvuk-about__cta{
  margin-top: 28px;              /* общий отступ сверху */
  display: flex;
  flex-direction: column;
  align-items: center;           /* центр по горизонтали */
  gap: 16px;                     /* расстояние между текстом и кнопкой */
  text-align: center;
}

/* чтобы не мешали дефолтные маржины у p */
.avm-zvuk-about__footer p{
  margin: 0;
}
.avm-zvuk-about__right .avm-shero__btn {
    align-self: center;
}
.avm-zvuk-about__cta{
  margin-top: 28px;              /* общий отступ сверху */
  display: flex;
  flex-direction: column;
  align-items: center;           /* центр по горизонтали */
  gap: 16px;                     /* расстояние между текстом и кнопкой */
  text-align: center;
}

/* чтобы не мешали дефолтные маржины у p */
.avm-zvuk-about__footer p{
  margin: 0;
}
/* вариант без flex — только если есть height */
.avm-shero__btn{
  display: inline-block;
  height: 56px;          /* пример */
  line-height: 56px;     /* должно совпадать */
  text-align: center;
}
/* Фон только для концертного модуля */
.hero-light--concert {
  background: url("scenes/koncert.avif") center / cover no-repeat;
}
/* Расширяем текстовый модуль только для concert */
.hero-light--concert .hero-light__panel {
  max-width: 1100px; /* было 820px */
}
/* =========================================================
   FULL-BLEED hero (во всю ширину экрана) + свой фон
   Работает даже если секция вложена в .container с max-width/overflow
   ========================================================= */

/* 0) ВАЖНО: если родитель обрезает по бокам (overflow:hidden) —
   этот хак может не “вылезти”. На крайний случай см. блок 0.1 ниже. */

/* 1) Секция: делаем реальный full-bleed */
section.hero-light.hero-light--effects.hero-light--effects-dark {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;

  overflow: hidden;

  /* глушим любые базовые фоны на секции */
  background: none !important;
  background-image: none !important;
}

/* 1.1) Крайний случай: если сайт задаёт max-width/ padding/ box-sizing */
section.hero-light.hero-light--effects.hero-light--effects-dark {
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box;
}

/* 2) Если базовый фон рисуется через ::before/::after — отключаем */
section.hero-light.hero-light--effects.hero-light--effects-dark::before,
section.hero-light.hero-light--effects.hero-light--effects-dark::after {
  content: none !important;
  background: none !important;
  background-image: none !important;
}

/* 3) Новый фон рисуем на псевдоэлементе контейнера (стабильно) */
section.hero-light.hero-light--effects.hero-light--effects-dark > .hero-light__container {
  position: relative;
  z-index: 0;

  /* делаем контейнер на всю ширину секции */
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

section.hero-light.hero-light--effects.hero-light--effects-dark > .hero-light__container::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;

  background: url("scenes/svet_effects.avif") center / cover no-repeat !important;
}

/* 4) Контентная область внутри — чтобы текст был читабельным и “шире” */
section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__panel {
  position: relative;
  z-index: 1;

  max-width: 1300px;
  margin: 0 auto;
  padding: 120px 80px;
  box-sizing: border-box;
}

/* 5) Две колонки списка */
section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__list {
  list-style: none;
  padding: 0;
  margin: 0;

  columns: 2;
  column-gap: 60px;
}

section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__list li {
  margin: 0 0 18px;
  break-inside: avoid;
}

/* 6) Адаптив */
@media (max-width: 1024px) {
  section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__panel {
    padding: 90px 40px;
  }

  section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__list {
    columns: 1;
  }
}

@media (max-width: 768px) {
  section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__panel {
    padding: 70px 20px;
  }
}
/* Светлые точки для списка */
section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__list {
  list-style: none;
  padding: 0;
  margin: 0;
  columns: 2;
  column-gap: 60px;
}

section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 16px;
  break-inside: avoid;
}

/* Светлая точка */
section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 0 6px rgba(255, 255, 255, 0.6); /* лёгкое свечение */
}
/* Вертикальные отступы от фона */
section.hero-light.hero-light--effects.hero-light--effects-dark {
  padding-top: 140px;
  padding-bottom: 140px;
}

/* Если фон рисуется через ::before у контейнера —
   делаем контейнер растянутым */
section.hero-light.hero-light--effects.hero-light--effects-dark > .hero-light__container {
  padding: 0 80px;
  box-sizing: border-box;
}

/* Адаптив */
@media (max-width: 1024px) {
  section.hero-light.hero-light--effects.hero-light--effects-dark {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

@media (max-width: 768px) {
  section.hero-light.hero-light--effects.hero-light--effects-dark {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  section.hero-light.hero-light--effects.hero-light--effects-dark > .hero-light__container {
    padding: 0 20px;
  }
}
/* Отступы сверху и снизу только для этого блока */
section.hero-light.hero-light--effects.hero-light--effects-dark .hero-light__panel {
  margin-top: 100px;
  margin-bottom: 100px;
}
/* =========================
   AVM SPOT — CLEAN (DESKTOP + MOBILE)
   ========================= */

/* ---------- DESKTOP BASE ---------- */
.avm-spot{
  padding: 0;
  background: #fff;

  /* экран минус шапка */
  --avm-spot-offset: 80px;
  height: calc(100dvh - var(--avm-spot-offset));
  height: calc(100vh  - var(--avm-spot-offset));
  overflow: hidden; /* страница не растягивается */
  margin: 0;
}

.avm-spot__container{
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px;

  height: 100%;
  min-height: 0;        /* важно для grid */
  box-sizing: border-box;

  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 26px;
  align-items: stretch;
}

/* LEFT */
.avm-spot__nav{
  height: 100%;
  min-height: 0;
  overflow: auto;

  padding: 14px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,.06);

  display: flex;
  flex-direction: column;
  gap: 0; /* будем делать расстояния margin-ами */
}

/* tabs */
.avm-spot__tab{
  all: unset;
  position: relative;
  display: block;
  width: 100%;
  box-sizing: border-box;

  padding: 14px 18px;
  border-radius: 16px;

  background: #fff;
  border: 1px solid rgba(47,109,255,.35);
  color: rgba(17,17,17,.92);

  font-size: 15px;
  font-weight: 650;
  line-height: 1.25;
  text-align: left;

  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

/* расстояние между пунктами (НЕ padding) */
.avm-spot__tab{ margin: 0 0 14px 0; }
.avm-spot__tab:last-child{ margin-bottom: 0; }

/* gradient indicator */
.avm-spot__tab::before{
  content:"";
  position:absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 18px;
  border-radius: 999px;

  background: linear-gradient(180deg, #6ec1ff 0%, #2f6dff 100%);
  opacity: 0;
  transition: opacity .25s ease, height .25s ease;
}

.avm-spot__tab:hover{
  transform: translateY(-1px);
  border-color: rgba(47,109,255,.65);
  background: rgba(47,109,255,.03);
  box-shadow: 0 12px 26px rgba(47,109,255,.14);
}
.avm-spot__tab:hover::before{
  opacity: 1;
  height: 22px;
}

.avm-spot__tab.is-active{
  border-color: rgba(47,109,255,.85);
  background: rgba(47,109,255,.06);
  box-shadow: 0 14px 30px rgba(47,109,255,.18);
}
.avm-spot__tab.is-active::before{
  opacity: 1;
  height: 26px;
}

/* RIGHT */
.avm-spot__content{
  height: 100%;
  min-height: 0;
  overflow: auto;

  padding: 18px 18px 22px;
  border-radius: 18px;

  background: #fff;
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,.06);
}

.avm-spot__pane[hidden]{ display:none !important; }

/* title centered */
.avm-spot__title{
  font-size: 28px;
  font-weight: 700;
  line-height: 1.15;
  color: #111;
  margin: 0 0 12px 0;
  text-align: center;
}

/* gallery 2x2 */
.avm-spot__gallery{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 14px 0;
}

.avm-spot__item{
  border-radius: 16px;
  border: 1px solid rgba(39,50,60,.10);
  background: #fff;
  padding: 10px;

  box-shadow: 0 8px 16px rgba(16,24,40,.05);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.avm-spot__item:hover{
  transform: translateY(-2px);
  border-color: rgba(39,50,60,.18);
  box-shadow: 0 18px 34px rgba(16,24,40,.12);
}

/* images not cropped */
.avm-spot__item img{
  width: 100%;
  height: 180px;
  display: block;
  object-fit: contain;
}

.avm-spot__text{
  font-size: 15px;
  line-height: 1.6;
  color: rgba(39,50,60,.85);
}
.avm-spot__text p{ margin: 0 0 10px 0; }

/* CTA centered */
.avm-spot__cta{
  margin-top: 12px;
  display: flex;
  justify-content: center;
}
.avm-spot__cta .avm-tribune__btn{ display: inline-flex; }


/* ---------- MOBILE (<= 992px) ---------- */
/* На мобиле: НЕ режем блок, меню 2 в строке, без горизонтального скролла */
@media (max-width: 992px){

  /* главный фикс: снимаем "экранный режим" — чтобы ничего не обрезалось */
  .avm-spot{
    height: auto;
    overflow: visible;
  }

  .avm-spot__container{
    display: block;
    height: auto;
    min-height: 0;
    padding: 0 14px;
  }

  /* меню сеткой 2 в ряд */
  .avm-spot__nav{
    height: auto;
    overflow: visible;

    padding: 0;
    border: none;
    box-shadow: none;
    background: transparent;

    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 14px 0;
  }

  /* кнопки: перенос текста, без полосок, без margin-bottom */
  .avm-spot__tab{
    margin: 0;
    padding: 10px 10px;
    border-radius: 14px;
    text-align: center;

    /* переносы — чтобы название НЕ обрезалось */
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;

    /* чтобы росли по высоте */
    height: auto;
    min-height: 52px;

    /* индикатор слева на мобиле выключаем */
  }
  .avm-spot__tab::before{ display:none; }

  /* контент обычным потоком */
  .avm-spot__content{
    height: auto;
    overflow: visible;
    padding: 0;
    border: none;
    box-shadow: none;
    background: transparent;
  }

  .avm-spot__title{
    font-size: 22px;
    margin: 8px 0 10px 0;
  }

  .avm-spot__item img{ height: 140px; }
}

/* очень узкие экраны: меню в 1 колонку */
@media (max-width: 380px){
  .avm-spot__nav{
    grid-template-columns: 1fr;
  }
}
/* ONLY: modules .avm-truss.avm-srb (не трогаем остальные секции сайта) */
.avm-truss.avm-srb .avm-srb__media{
  display: flex;
  align-items: center;
  justify-content: center;
  /* если контейнер режет изображение — оставляем, но картинку вписываем */
  overflow: hidden;
}

/* Убираем обрезку и принудительные размеры/позиционирование */


/* убираем псевдо-эффекты если были */
.avm-truss.avm-srb .avm-srb__card::before,
.avm-truss.avm-srb .avm-srb__card::after {
  display: none !important;
}
/* ===== SPLIT LAYOUT ONLY FOR THIS MODULE ===== */
.avm-truss.avm-srb--split .avm-srb__split{
  display: flex;
  align-items: stretch;
  gap: 60px;
}

/* image block */
.avm-truss.avm-srb--split .avm-srb__media{
  flex: 0 0 50%;
  display: flex;
}

.avm-truss.avm-srb--split .avm-srb__media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 18px;
}

/* text block */
.avm-truss.avm-srb--split .avm-srb__content{
  flex: 0 0 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* adaptive */
@media (max-width: 992px){
  .avm-truss.avm-srb--split .avm-srb__split{
    flex-direction: column;
  }

  .avm-truss.avm-srb--split .avm-srb__media,
  .avm-truss.avm-srb--split .avm-srb__content{
    flex: 0 0 auto;
    width: 100%;
  }

  .avm-truss.avm-srb--split .avm-srb__media img{
    height: auto;
  }
}
/* ===== SRB split — большая картинка без белого фона, со скруглением ===== */

.avm-truss.avm-srb--split .avm-srb__media{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;

  overflow: hidden;          /* важно для скругления */
  border-radius: 18px;       /* возвращаем скругление */
}

.avm-truss.avm-srb--split .avm-srb__media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* BG только для модуля "театральные кресла" */
.avm-prem.avm-prem--seats {
  position: relative;
  overflow: hidden;
  /* на всякий случай — чтобы фон не вылезал за скругления/границы */
}

/* Фоновая подложка внутри модуля */
.avm-prem.avm-prem--seats .avm-prem__bg {
  position: absolute;
  inset: 0;
  z-index: 0;

  background-image: url("scenes/kresla.avif");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
/* Реверс расположения */
.avm-srb__split--reverse {
  display: flex;
  align-items: center;
  gap: 60px;
}

.avm-srb--fabric .avm-srb__content--fabric {
  width: 50%;
}

.avm-srb--fabric .avm-srb__media--fabric {
  width: 50%;
}

.avm-srb--fabric .avm-srb__media--fabric img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

/* Список */
.avm-srb--fabric .avm-srb__list {
  margin-top: 12px;
  padding-left: 20px;
}

.avm-srb--fabric .avm-srb__list li {
  margin-bottom: 6px;
}

/* Адаптив */
@media (max-width: 992px) {
  .avm-srb__split--reverse {
    flex-direction: column;
  }

  .avm-srb--fabric .avm-srb__content--fabric,
  .avm-srb--fabric .avm-srb__media--fabric {
    width: 100%;
  }

  .avm-srb--fabric .avm-srb__media--fabric {
    order: -1;
  }
}
/* Лейаут: текст слева, картинка справа, 50/50 */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__split{
  display:flex !important;
  align-items:stretch !important;
  gap:60px;
}

.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__content{
  width:50% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important; /* вертикальный центр */
}

/* ВОТ КЛЮЧ: переопределяем центровку именно на .avm-srb__text */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__text{
  max-width: none !important;  /* чтобы текст занимал ширину колонки */
  margin: 0 0 14px 0 !important;
  text-align: left !important; /* перебиваем text-align:center */
}

/* Картинка тянется по высоте */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
  width:50% !important;
  position:relative !important;
  overflow:hidden !important;
}

.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

/* Адаптив */
@media (max-width: 992px){
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__split{
    flex-direction:column !important;
    gap:24px;
  }
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__content,
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
    width:100% !important;
  }
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
    min-height:320px !important;
  }
}
/* Лейаут: текст слева, картинка справа (в потоке, НЕ absolute) */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__split{
  display:flex !important;
  align-items:stretch !important;
  gap:60px;
}

/* Текст 50% */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__content{
  width:50% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

/* Текстовые блоки — убираем глобальную центровку/ограничение */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__text{
  max-width:none !important;
  margin:0 0 14px 0 !important;
  text-align:left !important;
}

/* Медиа 50% + "вылет" до правого края экрана */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
  width:50% !important;
  overflow:hidden !important;

  /* тянем до правого края viewport, но НЕ перекрываем текст */
  margin-right: calc((100vw - 100%) / -2) !important;
}

/* Важно: чтобы картинка реально имела высоту */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media img{
  width:100% !important;
  height:100% !important;
  display:block !important;
}

/* ВАРИАНТ 1 — НЕ Обрезать по высоте (всё изображение видно) */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media img{
  object-fit: cover !important;
object-position: center !important; /* можно center top */
}

/* Если хотите фон под "поля" при contain — раскомментируйте:
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
  background: #f2f2f2;
}
*/

/* Чтобы блок не получался слишком низким, задаём минимальную высоту */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__split{
  min-height: 520px;
}

/* Адаптив */
@media (max-width: 992px){
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__split{
    flex-direction:column !important;
    gap:24px;
    min-height: 0;
  }
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__content,
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
    width:100% !important;
  }
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
    margin-right: 0 !important;
    height: 320px; /* фиксируем высоту картинки на мобилке */
  }
}
/* =========================
   ONLY: avm-srb--fabric-tips
   ========================= */

.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__split{
  display:flex !important;
  align-items:stretch !important;   /* одинаковая высота колонок */
  gap:60px !important;
  min-height:520px !important;
}

/* LEFT */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__content{
  width:50% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

/* перебиваем вашу центровку именно на текстовых блоках */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__text{
  max-width:none !important;
  margin:0 0 14px 0 !important;
  text-align:left !important;
}

/* RIGHT (background image) */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
  width:50% !important;

  /* Сброс всего, что могло перебить */
  background: none !important;

  /* ФОН КАРТИНКОЙ — пробиваем каскад */
  background-image: url("scenes/colour.avif") !important;

  background-repeat: no-repeat !important;
  background-position: center center !important;

  /* ключевое: растягиваем по ширине и высоте, без обрезки */
  background-size: 100% 100% !important;
}

/* если вдруг в медиа остался img — скрываем, чтобы не мешал фону */
.avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media img{
  display:none !important;
}

/* MOBILE */
@media (max-width: 992px){
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__split{
    flex-direction:column !important;
    gap:24px !important;
    min-height:0 !important;
  }
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__content,
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
    width:100% !important;
  }
  .avm-truss.avm-srb.avm-srb--fabric-tips .avm-srb__media{
    min-height:320px !important;
  }
}
/* Модуль "Этапы работы" — в стилистике avm-screenform / avm-inlineform */
.avm-steps, .avm-steps *{ box-sizing:border-box; }

.avm-steps{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:#27323c;
}

.avm-steps__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
  width:100%;
}

.avm-steps__head{
  max-width:760px;
  margin:0 auto 18px auto;
  text-align:center;
}

.avm-steps__title{
  margin:0 0 8px 0;
  font-size:clamp(22px,2.2vw,34px);
  font-weight:750;
  letter-spacing:-0.015em;
  line-height:1.12;
}

.avm-steps__subtitle{
  margin:0 auto;
  max-width:72ch;
  font-size:15px;
  line-height:1.65;
  color:rgba(39,50,60,.72);
}

/* Список шагов */
.avm-steps__list{
  list-style:none;
  margin:18px 0 0 0;
  padding:0;
  display:grid;
  gap:14px;
}

/* Карточка шага */
.avm-steps__item{
  border-radius:24px;
  padding:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84));
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 30px 80px rgba(16,24,40,0.16),inset 0 1px 0 rgba(255,255,255,.55);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);

  display:grid;
  grid-template-columns: 180px 54px 1fr;
  gap:14px;
  align-items:center;
}

/* Слева картинка */
.avm-steps__media{
  width:100%;
  aspect-ratio: 4 / 3;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(39,50,60,.10);
  background:radial-gradient(700px 220px at 20% 20%,rgba(47,124,246,.18),transparent 62%),
             linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.75));
  box-shadow:0 14px 30px rgba(16,24,40,0.10);
}

.avm-steps__img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* По центру номер */
.avm-steps__num{
  width:54px;
  height:54px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  font-weight:800;
  font-size:16px;
  color:rgba(47,109,255,1);
  background:rgba(47,109,255,.12);
  border:1px solid rgba(47,109,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
}

/* Справа текст */
.avm-steps__itemtitle{
  margin:0 0 6px 0;
  font-size:18px;
  font-weight:750;
  letter-spacing:-0.01em;
  line-height:1.2;
}

.avm-steps__text{
  margin:0 0 10px 0;
  font-size:14px;
  line-height:1.65;
  color:rgba(39,50,60,.72);
  max-width:80ch;
}

/* Буллеты — визуально как в вашем чек-листе */
.avm-steps__bullets{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:8px;
}

.avm-steps__bullets li{
  position:relative;
  padding-left:30px;
  font-size:14px;
  line-height:1.55;
  color:rgba(39,50,60,.82);
}

.avm-steps__bullets li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:22px;
  height:22px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  background:rgba(47,109,255,.12);
  color:rgba(47,109,255,1);
  font-weight:800;
  font-size:13px;
}

/* Адаптив */
@media (max-width: 980px){
  .avm-steps__item{
    grid-template-columns: 1fr;
    text-align:left;
  }

  .avm-steps__media{
    aspect-ratio: 16 / 9;
  }

  .avm-steps__num{
    width:46px;
    height:46px;
    font-size:15px;
  }
}

@media (max-width: 520px){
  .avm-steps__container{ padding:0 12px; }
  .avm-steps__item{ padding:16px; border-radius:22px; }
  .avm-steps__itemtitle{ font-size:17px; }
}
/* применяем ваш фон/отступы к новому модулю */
.avm-steps__outer{
  width:100%;
  padding:44px 0;
  background:radial-gradient(1200px 520px at 18% 8%, rgba(47, 124, 246, .10), transparent 62%),
             linear-gradient(180deg, #eef2f9 0%, #ffffff 70%);
}
.avm-steps__item{
  grid-template-columns: 340px 60px 1fr; /* было 180px */
  gap:18px;
}

.avm-steps__media{
  aspect-ratio: 4 / 3;
  border-radius:20px;
}

.avm-steps__num{
  width:60px;
  height:60px;
  font-size:18px;
}
/* ===== АДАПТИВ ДЛЯ ЭТАПОВ РАБОТЫ ===== */
@media (max-width: 992px) {

  .avm-steps__list {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }

  .avm-steps__item {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .avm-steps__media {
    width: 100%;
  }

  .avm-steps__img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 16px;
  }

  .avm-steps__content {
    padding: 0;
  }

  .avm-steps__num {
    position: static;
    margin-bottom: 8px;
  }

  .avm-steps__head {
    text-align: center;
    margin-bottom: 40px;
  }

  .avm-steps__subtitle {
    margin: 0 auto;
    max-width: 600px;
  }
}
#mod-custom295 .avm-truss {padding:0;}
/* ==== FIX mobile: avm-steps ==== */
.avm-steps__list{
  list-style: none !important;   /* убираем маркеры ol */
  padding-left: 0 !important;    /* убираем стандартный отступ ol */
  margin-left: 0 !important;
}

.avm-steps__item{
  list-style: none !important;   /* на всякий случай ещё и на li */
}

/* MOBILE */
@media (max-width: 992px){

  /* НЕ делаем flex-колонку (она у вас конфликтует с grid-логикой),
     просто переводим карточку в 1 колонку через grid */
  .avm-steps__list{
    display:grid !important;
    gap:24px !important;
  }

  .avm-steps__item{
    display:grid !important;
    grid-template-columns: 1fr !important;
    gap:14px !important;
    padding:16px !important;
    text-align:left !important;
  }

  /* картинка */
  .avm-steps__media{
    width:100% !important;
    aspect-ratio: 16 / 9 !important;   /* приятнее на мобилке */
    border-radius:16px !important;
    overflow:hidden !important;
    margin:0 auto !important;
  }

  .avm-steps__img{
    width:100% !important;
    height:100% !important;            /* ВАЖНО: не auto */
    object-fit:cover !important;
    object-position:center !important;
    display:block !important;
  }

  /* номер */
  .avm-steps__num{
    width:44px !important;
    height:44px !important;
    font-size:15px !important;
    margin-top:2px !important;
    margin-bottom:0 !important;
    justify-self:start !important;
  }

  /* текстовый блок — добавим “воздух” */
  .avm-steps__content{
    padding-top:2px !important;
  }

  .avm-steps__itemtitle{
    margin:6px 0 6px 0 !important;
  }

  .avm-steps__text{
    margin:0 0 10px 0 !important;
  }

  .avm-steps__bullets{
    margin-top:6px !important;
  }
}
.com-content-category-blog {display:none;}
body.itemid-158 .com-content-category-blog, body.itemid-228 .com-content-category-blog {
    display: block !important;
}
/* CTA в сетке: отдельной строкой на всю ширину + центр + отступы */
.avm-fermuse__grid .avm-fermuse__cta{
  grid-column: 1 / -1;  /* ключевое: не ломает сетку, а делает строку */
  text-align: center;
  margin: 30px 0;
}
  /* ТОЛЬКО для модуля арлекинов — другие блоки не затрагиваются */
  .avm-kompl--arlekin .avm-kompl__row--arlekin{
    display: flex;
    align-items: center;
    gap: 24px;
  }

  .avm-kompl--arlekin .avm-kompl__img--arlekin{
    flex: 0 0 50%;
    max-width: 50%;
  }

  /* Картинка БЕЗ обрезания */
  .avm-kompl--arlekin .avm-kompl__img--arlekin img{
    width: 100%;
    height: auto;        /* сохраняем пропорции */
    display: block;
    object-fit: contain; /* гарантированно без обрезки */
  }

  .avm-kompl--arlekin .avm-kompl__content--arlekin{
    flex: 0 0 50%;
    max-width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  /* адаптив */
  @media (max-width: 768px){
    .avm-kompl--arlekin .avm-kompl__row--arlekin{
      flex-direction: column;
      gap: 16px;
    }

    .avm-kompl--arlekin .avm-kompl__img--arlekin,
    .avm-kompl--arlekin .avm-kompl__content--arlekin{
      flex: 0 0 100%;
      max-width: 100%;
    }
  }
  /* ===== Модуль "Информация от швеи" (в стиле прошлого: 50/50, без обрезки) ===== */

.avm-kompl--seamstress .avm-seamstress__grid {
  display: flex;
  align-items: center;
  gap: 24px;
}

.avm-kompl--seamstress .avm-seamstress__img {
  flex: 0 0 50%;
  max-width: 50%;
}

.avm-kompl--seamstress .avm-seamstress__img img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  display: block;
}

.avm-kompl--seamstress .avm-seamstress__content {
  flex: 0 0 50%;
  max-width: 50%;
}

/* ===== Accordion ===== */

.avm-kompl--seamstress .avm-acc {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.avm-kompl--seamstress .avm-acc__item {
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.avm-kompl--seamstress .avm-acc__btn {
  width: 100%;
  text-align: left;
  padding: 14px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: transparent;
  border: 0;
  cursor: pointer;
}

.avm-kompl--seamstress .avm-acc__q {
  font-weight: 600;
  line-height: 1.25;
}

.avm-kompl--seamstress .avm-acc__icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  position: relative;
}

.avm-kompl--seamstress .avm-acc__icon::before,
.avm-kompl--seamstress .avm-acc__icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 2px;
  background: rgba(0,0,0,.65);
  transform: translate(-50%, -50%);
}

.avm-kompl--seamstress .avm-acc__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform .2s ease;
}

/* панель: плавное открытие через max-height */
.avm-kompl--seamstress .avm-acc__panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height .25s ease;
}

.avm-kompl--seamstress .avm-acc__inner {
  padding: 0 14px 14px;
  color: rgba(0,0,0,.78);
  line-height: 1.45;
}

/* состояние open */
.avm-kompl--seamstress .avm-acc__item.is-open .avm-acc__panel {
  /* значение будет выставляться JS-ом под контент */
}

.avm-kompl--seamstress .avm-acc__item.is-open .avm-acc__icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

/* ===== Responsive ===== */
@media (max-width: 768px) {
  .avm-kompl--seamstress .avm-seamstress__grid {
    flex-direction: column;
    gap: 16px;
  }

  .avm-kompl--seamstress .avm-seamstress__img,
  .avm-kompl--seamstress .avm-seamstress__content {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
/* ===== Модуль "Информация от швеи" — во всю высоту экрана ===== */

.avm-kompl--seamstress {
  min-height: 100vh;
  display: flex;
  align-items: center; /* вертикальное центрирование */
}

.avm-kompl--seamstress .avm-kompl__outer,
.avm-kompl--seamstress .avm-truss__container,
.avm-kompl--seamstress .avm-truss__panel {
  width: 100%;
}

.avm-kompl--seamstress .avm-seamstress__grid {
  display: flex;
  align-items: center;
  gap: 40px;
  min-height: 70vh; /* чтобы контент не "схлопывался" */
}

/* Левая часть */
.avm-kompl--seamstress .avm-seamstress__img {
  flex: 0 0 50%;
  max-width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Картинка без обрезания */
.avm-kompl--seamstress .avm-seamstress__img img {
  width: 100% !important;
  height: auto !important;
  max-height: 85vh; /* чтобы не вылезала за экран */
  object-fit: contain !important;
  display: block;
}

/* Правая часть */
.avm-kompl--seamstress .avm-seamstress__content {
  flex: 0 0 50%;
  max-width: 50%;
}

/* ===== Адаптив ===== */

@media (max-width: 768px) {

  .avm-kompl--seamstress {
    min-height: auto;
    padding: 60px 0;
  }

  .avm-kompl--seamstress .avm-seamstress__grid {
    flex-direction: column;
    gap: 24px;
    min-height: auto;
  }

  .avm-kompl--seamstress .avm-seamstress__img,
  .avm-kompl--seamstress .avm-seamstress__content {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .avm-kompl--seamstress .avm-seamstress__img img {
    max-height: none;
  }
}
/* строка всегда с картинкой слева */
.avm-zadnik__row {
  display: flex;
  align-items: center; /* вертикальное центрирование */
  gap: 40px;
}

/* фиксируем ширину картинки */
.avm-zadnik__img {
  flex: 0 0 40%;
}

.avm-zadnik__img img {
  width: 100%;
  height: auto;
  display: block;
}

/* текст занимает остальное пространство */
.avm-zadnik__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center; /* центр текста по высоте */
}

/* адаптив */
@media (max-width: 992px) {
  .avm-zadnik__row {
    flex-direction: column;
    align-items: stretch;
  }

  .avm-zadnik__img,
  .avm-zadnik__content {
    flex: unset;
    width: 100%;
  }
}
/* базовая строка */
.avm-zadnik__row {
  display: flex;
  align-items: center; /* вертикальное центрирование */
  gap: 40px;
}

/* чередование */
.avm-zadnik__row:nth-child(even) {
  flex-direction: row-reverse;
}

/* картинка */
.avm-zadnik__img {
  flex: 0 0 40%;
}

.avm-zadnik__img img {
  width: 100%;
  height: auto;
  display: block;
}

/* текст */
.avm-zadnik__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 50px 0; /* ← отступ сверху и снизу по 50px */
}

/* адаптив */
@media (max-width: 992px) {
  .avm-zadnik__row {
    flex-direction: column !important;
  }
}
/* ===== МОДУЛЬ ПРОЕКТИРОВАНИЕ ===== */

.avm-proekt .avm-kompl__row {
  display: flex;
  gap: 40px;
  align-items: stretch; /* растягивает элементы по высоте */
}

.avm-proekt .avm-kompl__img {
  flex: 0 0 40%;
  max-width: 40%;
  display: flex;
}

.avm-proekt .avm-kompl__img img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* заполняет всю высоту */
  display: block;
}

.avm-proekt .avm-kompl__content {
  flex: 0 0 60%;
  max-width: 60%;
  display: flex;
  flex-direction: column;
  justify-content: center; /* вертикальное выравнивание текста */
}

/* адаптив */
@media (max-width: 992px) {
  .avm-proekt .avm-kompl__row {
    flex-direction: column;
  }

  .avm-proekt .avm-kompl__img,
  .avm-proekt .avm-kompl__content {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .avm-proekt .avm-kompl__img img {
    height: auto;
  }
}
.avm-proekt .avm-kompl__img img{
  width: 100%;
  height: auto;
  object-fit: initial;
  display:block;
}
.avm-proekt .avm-kompl__row{
  align-items: flex-start;
}
/* ===== AVM-PROEKT: НЕ ОБРЕЗАТЬ КАРТИНКИ ===== */

.avm-proekt .avm-kompl__row{
  display:flex;
  gap:40px;
  align-items:flex-start; /* чтобы высота не тянулась */
}

.avm-proekt .avm-kompl__img{
  flex:0 0 60%;
  max-width:60%;
  height:auto !important;         /* сброс фиксированной высоты */
  min-height:0 !important;
  overflow:visible !important;    /* если было hidden — перестанет резать */
}

.avm-proekt .avm-kompl__img img{
  width:100%;
  height:auto !important;         /* важно */
  max-height:none !important;     /* вдруг ограничивали */
  object-fit:unset !important;    /* если где-то было cover */
  display:block;
}


/* адаптив */
@media (max-width: 992px){
  .avm-proekt .avm-kompl__row{ flex-direction:column; }
  .avm-proekt .avm-kompl__img,
  .avm-proekt .avm-kompl__content{ flex:0 0 100%; max-width:100%; }
}
/* Вертикальное центрирование текста */
.avm-proekt .avm-kompl__row {
  display: flex;
  align-items: stretch; /* строка одной высоты */
}

.avm-proekt .avm-kompl__content {
  flex: 0 0 35%;
  max-width: 35%;
  display: flex;
  flex-direction: column;
  justify-content: center; /* центр по вертикали */
}
/* Отступ между блоками */
.avm-proekt .avm-kompl__row:not(:last-child) {
  margin-bottom: 50px;
}
/* ===== AVM-PROEKT ===== */

.avm-proekt .avm-kompl__lead {
  text-align: center;
  margin-bottom: 50px;
}
/* ===== AVM-PROEKT MOBILE ===== */

@media (max-width: 992px) {

  .avm-proekt .avm-kompl__row {
    flex-direction: column;
  }

  .avm-proekt .avm-kompl__img,
  .avm-proekt .avm-kompl__content {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .avm-proekt .avm-kompl__content {
    width: 100%;
  }

}
/* ===== AVM-PROEKT TABLET FIX ===== */

@media (max-width: 992px) {

  /* чтобы текст не прилипал к краям */
  .avm-proekt .avm-kompl__content {
    padding: 0 20px;
  }

  /* подзаголовки по центру */
  .avm-proekt .avm-kompl__h {
    text-align: center;
  }

}
/* ===== AVM-PROEKT RESPONSIVE PADDING ===== */

@media (max-width: 992px) {

  .avm-proekt .avm-kompl__content {
    padding-bottom: 20px;
  }

}
/* ===== AVM-PROEKT CTA ===== */

.avm-proekt-cta {
  margin: 80px auto 0;
  text-align: center;
  max-width: 800px;
  padding: 40px 30px;
}

.avm-proekt-cta__title {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 15px;
}

.avm-proekt-cta__text {
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.6;
}

/* адаптив */
@media (max-width: 992px) {
  .avm-proekt-cta {
    padding: 30px 20px;
  }
}
/* ===== AVM NORMS NEW ===== */

.avm-norms__row {
  display: flex;
  align-items: center;
  gap: 60px;
  margin-top: 50px;
}

.avm-norms__content {
  flex: 0 0 50%;
  max-width: 50%;
}

.avm-norms__content p {
  margin-bottom: 20px;
  line-height: 1.6;
}

.avm-norms__img {
  flex: 0 0 50%;
  max-width: 50%;
}

.avm-norms__img img {
  width: 100%;
  height: auto;   /* без обрезки */
  display: block;
}

/* адаптив */
@media (max-width: 992px) {
  .avm-norms__row {
    flex-direction: column;
    gap: 30px;
  }

  .avm-norms__content,
  .avm-norms__img {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
/* ===== AVM NORMS IMAGE RADIUS ===== */

.avm-norms__img img {
  border-radius: 21px;
}
.avm-montazh__title{
  text-align:center;
  margin-bottom:50px;
}

.avm-montazh__row{
  display:flex;
  gap:40px;
  margin-bottom:60px;
  align-items:flex-start;
}

.avm-montazh__img{
  flex:0 0 30%;
}

.avm-montazh__img img{
  width:100%;
  height:auto;
  display:block;
}

.avm-montazh__content{
  flex:1;
}

.avm-montazh__content h3{
  margin-bottom:15px;
}

.avm-montazh__content p{
  margin-bottom:15px;
  line-height:1.6;
}

@media(max-width:992px){
  .avm-montazh__row{
    flex-direction:column;
  }

  .avm-montazh__img{
    flex:0 0 100%;
  }
}
/* Модификатор только для монтажа */
.avm-proekt--montazh .avm-proekt__row{
  display:flex;
  flex-wrap:nowrap;     /* запрещаем перенос, чтобы не было 3 колонок */
  gap:40px;
  align-items:flex-start;
}

/* Картинка 40% */
.avm-proekt--montazh .avm-proekt__img{
  flex:0 0 40%;
  max-width:40%;
}

/* Текст 60% */
.avm-proekt--montazh .avm-proekt__content{
  flex:0 0 60%;
  max-width:60%;
}

/* Картинка адаптив */
.avm-proekt--montazh .avm-proekt__img img{
  width:100%;
  height:auto;
  display:block;
}

/* Заголовок блока */
.avm-proekt--montazh .avm-proekt__h{
  margin-bottom:20px;
}

/* Списки */
.avm-proekt--montazh .avm-proekt__text ul{
  margin:0;
  padding-left:18px;
}

.avm-proekt--montazh .avm-proekt__text li{
  margin-bottom:12px;
  line-height:1.6;
}

/* Мобильная версия */
@media (max-width: 992px){
  .avm-proekt--montazh .avm-proekt__row{
    flex-direction:column;
  }

  .avm-proekt--montazh .avm-proekt__img,
  .avm-proekt--montazh .avm-proekt__content{
    flex:0 0 100%;
    max-width:100%;
  }
}
/* ===== MONTAGE: overrides only inside .avm-proekt--montazh ===== */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__row.avm-proekt__row{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:40px !important;
  align-items:flex-start !important;
}

/* 2 колонки: 40/60 */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__img.avm-proekt__img{
  flex:0 0 40% !important;
  max-width:40% !important;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__content.avm-proekt__content{
  flex:0 0 60% !important;
  max-width:60% !important;
}

/* картинка */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__img img{
  width:100% !important;
  height:auto !important;
  display:block !important;
}

/* Заголовок вынесен "за модуль" (над строкой) */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__h--montazh{
  margin:60px 0 25px !important;
}

/* списки — читабельно */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__text ul{
  margin:0 !important;
  padding-left:18px !important;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__text li{
  margin:0 0 12px !important;
  line-height:1.6 !important;
}

/* мобилка */
@media (max-width: 992px){
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__row.avm-proekt__row{
    flex-direction:column !important;
  }

  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__img.avm-proekt__img,
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__content.avm-proekt__content{
    flex:0 0 100% !important;
    max-width:100% !important;
  }
}
/* ===== Only for montazh sections (не трогаем другие модули) ===== */

/* 1 секция = 1 экран */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
  min-height: 100vh;
  display: flex;            /* чтобы центрировать содержимое по высоте */
}

/* центрируем внутренности секции по вертикали */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh > .avm-kompl__outer.avm-proekt__outer{
  width: 100%;
  margin: auto 0;
}

/* 2 колонки и вертикальное выравнивание текста/картинки по центру */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__row.avm-proekt__row{
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 40px;
  align-items: center;      /* <-- по центру высоты */
}

/* 40/60 */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__img.avm-proekt__img{
  flex: 0 0 40%;
  max-width: 40%;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__content.avm-proekt__content{
  flex: 0 0 60%;
  max-width: 60%;
}

/* картинка */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__img img{
  width: 100%;
  height: auto;
  display: block;
}

/* читабельные списки */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__text ul{
  margin: 0;
  padding-left: 18px;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__text li{
  margin: 0 0 12px;
  line-height: 1.6;
}

/* чтобы h2 не "прилипал" и визуально жилось в секции */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__title{
  margin-bottom: 30px;
}

/* мобилка: колонка */
@media (max-width: 992px){
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
    min-height: auto;
    display: block;
  }

  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh > .avm-kompl__outer.avm-proekt__outer{
    margin: 0;
  }

  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__row.avm-proekt__row{
    flex-direction: column;
    align-items: flex-start;
  }

  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__img.avm-proekt__img,
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__content.avm-proekt__content{
    flex: 0 0 100%;
    max-width: 100%;
  }
}
/* =========================================
   FIX ONLY FOR: .avm-proekt--montazh
   ========================================= */

/* 1) Каждая секция на экран */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
  min-height: 100svh !important;
  display: flex !important;
  align-items: center !important;   /* вертикальный центр секции */
}

/* чтобы внутренние обёртки не ограничивали высоту/центровку */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh > .avm-kompl__outer.avm-proekt__outer{
  width: 100% !important;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-truss__container,
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-truss__panel{
  width: 100% !important;
}

/* 2) Самое важное: отключаем grid/колонки у "таблицы", которая и даёт 3 колонки */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__table.avm-proekt__table{
  display: block !important;
  grid-template-columns: none !important;
  grid-auto-flow: initial !important;
  column-count: initial !important;
  columns: initial !important;
}

/* на всякий: если там gap/align через grid */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__table.avm-proekt__table > *{
  width: 100% !important;
}

/* 3) 2 колонки 40/60 + центр по высоте */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__row.avm-proekt__row{
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;   /* текст по центру высоты картинки */
  gap: 40px !important;
  width: 100% !important;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__img.avm-proekt__img{
  flex: 0 0 40% !important;
  width: 40% !important;
  max-width: 40% !important;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__content.avm-proekt__content{
  flex: 0 0 60% !important;
  width: 60% !important;
  max-width: 60% !important;
}

/* картинка */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__img img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* заголовок h2 */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__title{
  margin: 0 0 32px !important;
}

/* списки */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__text ul{
  margin: 0 !important;
  padding-left: 18px !important;
}

section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-proekt__text li{
  margin: 0 0 12px !important;
  line-height: 1.6 !important;
}

/* 4) Мобилка: секция не на экран, колонки в столбик */
@media (max-width: 992px){
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
    min-height: auto !important;
    display: block !important;
  }

  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__row.avm-proekt__row{
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__img.avm-proekt__img,
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-kompl__content.avm-proekt__content{
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* OVERRIDE (ставь в самый конец, ниже рабочего фикса) */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
  min-height: calc(100svh - 200px) !important;
  height: calc(100svh - 200px) !important;
  display: flex !important;
  align-items: center !important;
}

/* fallback для браузеров без svh */
@supports not (height: 100svh){
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
    min-height: calc(100vh - 200px) !important;
    height: calc(100vh - 200px) !important;
  }
}
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-truss__panel{
  min-height: calc(100svh - 200px) !important;
  height: calc(100svh - 200px) !important;
}
/* НЕ фиксируем height — только минимальная высота, чтобы не резало контент */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
  min-height: calc(100svh - 200px) !important;
  height: auto !important;          /* важно: убираем фикс */
  display: flex !important;
  align-items: center !important;
}

/* на всякий случай: если где-то осталось height на panel */
section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-truss__panel{
  min-height: calc(100svh - 200px) !important;
  height: auto !important;          /* важно */
}

/* fallback для браузеров без svh */
@supports not (height: 100svh){
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh{
    min-height: calc(100vh - 200px) !important;
  }
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh .avm-truss__panel{
    min-height: calc(100vh - 200px) !important;
  }
}
/* ================================
   Увеличиваем текст + отступ справа
   Только для montazh
   ================================ */

@media (min-width: 993px){

  /* Крупнее текст */
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh 
  .avm-proekt__text{
    font-size: 18px !important;   /* можно 19px если нужно заметнее */
  }

  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh 
  .avm-proekt__text li{
    line-height: 1.7 !important;
  }

  /* Отступ справа 40px у текстовой колонки */
  section.avm-truss.avm-kompl.avm-proekt.avm-proekt--montazh 
  .avm-kompl__content.avm-proekt__content{
    padding-right: 60px !important;
  }

}
/* ===== HERO TЗ 40 / 60 ===== */

.avm-shero.avm-shero--tz .avm-shero__container{
  display: grid;
  grid-template-columns: 40% 60%;
  align-items: center;
  gap: clamp(20px, 4vw, 60px);
}

/* Правая часть — картинка */
.avm-shero.avm-shero--tz .avm-shero__right{
  height: 100%;
}

.avm-shero.avm-shero--tz .avm-shero__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}

/* Немного плотнее текст слева */
.avm-shero.avm-shero--tz .avm-shero__left{
  max-width: 560px;
}

/* ===== Адаптив ===== */
@media (max-width: 1024px){
  .avm-shero.avm-shero--tz .avm-shero__container{
    grid-template-columns: 1fr;
  }

  .avm-shero.avm-shero--tz .avm-shero__img{
    height: auto;
  }

  .avm-shero.avm-shero--tz .avm-shero__left{
    max-width: 100%;
  }
}
/* Link inside equip title (like avm-podium__title a) */
.avm-equip__title a{
  color:#27323c;
  text-decoration:none;
  font:inherit;
  letter-spacing:inherit;
  line-height:inherit;
  transition:color .15s ease;
}

.avm-equip__title a:hover{
  color:rgba(47,109,255,1);
}
/* === avm-equip image hover like avm-scene__tile === */

.avm-equip__image{
  display:block;
  transition:opacity .18s ease,
             box-shadow .18s ease,
             transform .18s ease,
             border-color .18s ease;
}

.avm-equip__image:hover{
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:
    0 22px 44px rgba(16,24,40,0.16),
    0 10px 18px rgba(47,109,255,.10);
}
/* ===== avm-truss tile hover like avm-scene ===== */

.avm-truss__tile{
  position:relative;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(39,50,60,.10);
  opacity:.78;
  box-shadow:0 6px 14px rgba(16,24,40,0.05);
  transform:translateZ(0);
  transition:
    opacity .18s ease,
    box-shadow .18s ease,
    transform .18s ease,
    border-color .18s ease;
}

/* glow ring */
.avm-truss__tile::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:19px;
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
  box-shadow:
    0 0 0 1px rgba(47,109,255,.25),
    0 0 0 6px rgba(47,109,255,.10);
}

/* hover */
.avm-truss__tile:hover{
  opacity:1;
  transform:translateY(-4px);
  border-color:rgba(47,109,255,.22);
  box-shadow:
    0 22px 44px rgba(16,24,40,0.16),
    0 10px 18px rgba(47,109,255,.10);
}

.avm-truss__tile:hover::before{
  opacity:1;
}
.avm-truss__media, .avm-katalogmod__media{
  background:#fff;
}

.avm-truss__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:filter .18s ease;
}

.avm-truss__tile:hover .avm-truss__media img{
  filter:brightness(1) saturate(1) contrast(1);
}
.avm-truss__caption{
  padding:14px 16px;
  text-align:center;
  font-weight:650;
  font-size:15px;
  color:rgba(39,50,60,.70);
  background:linear-gradient(180deg,rgba(255,255,255,.92),#ffffff);
  transition:color .18s ease;
}

.avm-truss__tile:hover .avm-truss__caption{
  color:rgba(39,50,60,.92);
}
/* Remove transparency from truss tiles */
.avm-truss__tile{
  opacity:1;
}
/* ===== ТОЛЬКО для блока тканей ===== */

.fabric-section .prof-spot__gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

/* Планшет */
@media (max-width: 992px) {
  .fabric-section .prof-spot__gallery {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Мобильные */
@media (max-width: 576px) {
  .fabric-section .prof-spot__gallery {
    grid-template-columns: 1fr;
  }
}


/* Вертикальная версия этапов */
.avm-theatre-steps--vertical .avm-zvuk__item {
  display: block;
  margin-bottom: 0px;
}

.avm-theatre-steps--vertical .avm-theatre-steps__img {
  margin-bottom: 25px;
}

.avm-theatre-steps--vertical .avm-theatre-steps__img img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
}
/* Новый модуль: используем старые классы + добавляем свои */
.avm-komplekt {
  /* модуль на всю ширину экрана (desktop) */
}

.avm-komplekt .avm-truss__outer {
  width: 100%;
}

.avm-komplekt .avm-truss__container {
  /* делаем ширину во весь экран, но сохраняем внутренние отступы */
  max-width: 100%;
  padding-left: 24px;
  padding-right: 24px;
}

.avm-komplekt__title {
  margin: 0 0 20px;
}

.avm-komplekt__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.avm-komplekt__item {
  display: block;
  text-decoration: none;
  color: inherit;
}

.avm-komplekt__media {
  /* поддержка ваших avif/png разных размеров */
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 12px;
}

.avm-komplekt__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.avm-komplekt__name {
  margin-top: 10px;
  /* если avm-montaz__h уже стилизован — можно ничего не добавлять */
}

/* 2 строка по 4 (4x2) на обычных экранах */
@media (max-width: 1100px) {
  .avm-komplekt__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* мобилка: НЕ растягиваем на весь экран (оставляем контейнер как у сайта) */
@media (max-width: 640px) {
  .avm-komplekt .avm-truss__container {
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  .avm-komplekt__grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .avm-komplekt__media {
    border-radius: 10px;
  }
}
/* Гарантируем, что это именно GRID */
.avm-komplekt__grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px;
}

/* Убираем всё старое влияние flex и width */
.avm-komplekt__item {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}

/* Если вдруг родитель от старого модуля flex */
.avm-komplekt .avm-montaz__grid {
  display: grid !important;
}
/* =========================
   KOMPLEKT: только внутри .avm-komplekt
   ========================= */

/* 1) Высота "в экран" (desktop/tablet) */
@media (min-width: 768px) {
  .avm-komplekt .avm-truss__panel {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center; /* центрируем содержимое по высоте */
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

/* 2) Сетка строго 4+4 */
.avm-komplekt__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px; /* держим компактно, чтобы уложиться по высоте */
}

/* 3) Снимаем старые flex/width у айтемов только в этом модуле */
.avm-komplekt__item {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
}

/* 4) Картинки: фиксируем высоту карточки, чтобы секция влазила по высоте */
.avm-komplekt__media {
  aspect-ratio: 4 / 3;       /* можно 16/10 если надо ниже */
  overflow: hidden;
  border-radius: 12px;
}

.avm-komplekt__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 5) Адаптив */
@media (max-width: 1100px) {
  .avm-komplekt__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* 6) Мобилка: НЕ делаем 100vh, и сетка в 1 колонку */
@media (max-width: 767px) {
  .avm-komplekt .avm-truss__panel {
    min-height: auto;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .avm-komplekt__grid {
    grid-template-columns: 1fr !important;
    gap: 12px;
  }
}
/* =========================
   KOMPLEKT (только этот модуль)
   ========================= */

/* 1️⃣ Высота: экран минус 100px */
@media (min-width: 768px) {
  .avm-komplekt .avm-truss__panel {
    min-height: calc(100vh - 100px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

/* 2️⃣ Заголовок по центру */
.avm-komplekt__title {
  text-align: center;
  margin-bottom: 30px;
}

/* 3️⃣ Сетка строго 4 + 4 */
.avm-komplekt__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px;
}

/* 4️⃣ Убираем влияние старого flex */
.avm-komplekt__item {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  text-align: center;
}

/* 5️⃣ Сжимаем изображения (делаем ниже) */
.avm-komplekt__media {
  aspect-ratio: 4 / 2.8; /* было 4/3 — стало ниже */
  overflow: hidden;
  border-radius: 12px;
}

.avm-komplekt__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 6️⃣ Планшет */
@media (max-width: 1100px) {
  .avm-komplekt__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* 7️⃣ Мобилка — без 100vh */
@media (max-width: 767px) {
  .avm-komplekt .avm-truss__panel {
    min-height: auto;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .avm-komplekt__grid {
    grid-template-columns: 1fr !important;
    gap: 14px;
  }
}
/* Только для модуля "Состав комплексного оснащения сцены" */
.avm-truss.avm-montaz.avm-komplekt .avm-komplekt__item{
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

/* Эффект на hover/focus только у ссылок внутри этого модуля */
.avm-truss.avm-montaz.avm-komplekt .avm-komplekt__item:hover,
.avm-truss.avm-montaz.avm-komplekt .avm-komplekt__item:focus-visible{
  transform: translateY(-4px);
  border-color: rgba(47, 109, 255, .22);
  box-shadow: 0 22px 44px rgba(16, 24, 40, 0.16),
              0 10px 18px rgba(47, 109, 255, .10);
}
/* ============================
   AVSTAGE BLOG ARTICLE
   Scoped styles: ONLY .avm-blog-article
   ============================ */

.avm-blog-article{
  max-width: 920px;
  margin: 0 auto;
  padding: 28px 18px;
  line-height: 1.7;
  font-size: 16px;
}

.avm-blog-article h1,
.avm-blog-article h2,
.avm-blog-article h3{
  line-height: 1.2;
  margin: 0 0 14px;
}

.avm-blog-article h1{
  font-size: 34px;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin-top: 4px;
}

.avm-blog-article h2{
  font-size: 24px;
  font-weight: 800;
  margin-top: 28px;
}

.avm-blog-article h3{
  font-size: 19px;
  font-weight: 800;
  margin-top: 18px;
}

.avm-blog-article p{
  margin: 0 0 14px;
  opacity: 0.98;
}

.avm-blog-article a{
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,0.18);
  transition: border-color .15s ease, opacity .15s ease;
}

.avm-blog-article a:hover{
  border-bottom-color: rgba(0,0,0,0.45);
  opacity: 0.9;
}

.avm-blog-article img{
  display: block;
  width: 100%;
  height: auto;
  margin: 16px 0 22px;
  border-radius: 18px;
  object-fit: cover;
}

.avm-blog-article ul,
.avm-blog-article ol{
  margin: 0 0 16px 22px;
  padding: 0;
}

.avm-blog-article li{
  margin: 6px 0;
}

.avm-blog-article table{
  width: 100%;
  border-collapse: collapse;
  margin: 14px 0 18px;
  overflow: hidden;
  border-radius: 16px;
}

.avm-blog-article table th,
.avm-blog-article table td{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(0,0,0,0.08);
  text-align: left;
  vertical-align: top;
}

.avm-blog-article table th{
  font-weight: 800;
}

.avm-blog-article table tr:last-child td{
  border-bottom: 0;
}

/* nice callout (optional) */
.avm-blog-article .avm-note{
  margin: 18px 0;
  padding: 14px 14px;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,0.08);
  background: rgba(0,0,0,0.03);
}

/* responsive */
@media (max-width: 720px){
  .avm-blog-article{
    padding: 18px 14px;
    font-size: 15px;
  }
  .avm-blog-article h1{
    font-size: 28px;
  }
  .avm-blog-article h2{
    font-size: 21px;
  }
  .avm-blog-article h3{
    font-size: 18px;
  }
  .avm-blog-article table th,
  .avm-blog-article table td{
    padding: 10px 12px;
  }
}

/* optional: a little spacing at end */
.avm-blog-article > :last-child{
  margin-bottom: 0;
}
/* =========================================================
   AVSTAGE BLOG (scoped)
   Стиль в духе твоего CSS: жесткий reset ссылок, hover только на media,
   аккуратная типографика, таблицы/списки, бейджи/заметки.
   НЕ влияет на другие модули (только внутри .avm-blog)
   ========================================================= */

/* ---------- base ---------- */
.avm-blog .avm-blog-article{
  max-width: 980px;
  margin: 0 auto;
  padding: 28px 18px;
  font-size: 16px;
  line-height: 1.7;
  color: rgba(39,50,60,.92);
}

/* ---------- headings ---------- */
.avm-blog .avm-blog-article h1,
.avm-blog .avm-blog-article h2,
.avm-blog .avm-blog-article h3{
  margin: 0 0 14px;
  padding: 0;
  line-height: 1.15;
  color: #27323c;
}

.avm-blog .avm-blog-article h1{
  font-size: 34px;
  font-weight: 600;
  letter-spacing: -0.02em;
  margin-bottom: 16px;
}

.avm-blog .avm-blog-article h2{
  font-size: 24px;
  font-weight: 600;
  margin-top: 28px;
}

.avm-blog .avm-blog-article h3{
  font-size: 19px;
  font-weight: 600;
  margin-top: 18px;
}

/* ---------- text ---------- */
.avm-blog .avm-blog-article p{
  margin: 0 0 14px;
}

/* ---------- FULL LINK RESET (как у тебя) ---------- */
/* 1) Любые ссылки внутри статьи — без underline и без смены цвета */
.avm-blog .avm-blog-article a,
.avm-blog .avm-blog-article a:link,
.avm-blog .avm-blog-article a:visited,
.avm-blog .avm-blog-article a:hover,
.avm-blog .avm-blog-article a:active{
  text-decoration: none !important;
  color: inherit !important;
}

/* 2) Запрет underline всем вложенным элементам ссылки */
.avm-blog .avm-blog-article a *,
.avm-blog .avm-blog-article a *:hover{
  text-decoration: none !important;
}

/* 3) Если нужно, чтобы ссылки были визуально читаемыми — делаем “деликатный” бордер,
      но без hover-изменения цвета текста (как премиальная ссылка) */
.avm-blog .avm-blog-article a.avm-blog-link{
  border-bottom: 1px solid rgba(39,50,60,.18);
}
.avm-blog .avm-blog-article a.avm-blog-link:hover{
  border-bottom-color: rgba(39,50,60,.38);
}

/* ---------- lists ---------- */
.avm-blog .avm-blog-article ul,
.avm-blog .avm-blog-article ol{
  margin: 0 0 16px 22px;
  padding: 0;
}

.avm-blog .avm-blog-article li{
  margin: 6px 0;
}

/* ---------- tables ---------- */
.avm-blog .avm-blog-article table{
  width: 100%;
  border-collapse: collapse;
  margin: 14px 0 18px;
  border-radius: 16px;
  overflow: hidden;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.06), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-blog .avm-blog-article th,
.avm-blog .avm-blog-article td{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(39,50,60,.08);
  text-align: left;
  vertical-align: top;
}

.avm-blog .avm-blog-article th{
  font-weight: 600;
  color: #27323c;
}

.avm-blog .avm-blog-article tr:last-child td{
  border-bottom: 0;
}

/* ---------- MEDIA CARD (hover ONLY here) ---------- */
/* Используй такую разметку:
   <a class="avm-blog-mediaLink" href="...">
     <span class="avm-blog-media"><img ...></span>
   </a>
   или без ссылки:
     <div class="avm-blog-media"><img ...></div>
*/

/* базовая рамка/тень только у медиа */
.avm-blog .avm-blog-article .avm-blog-media{
  display: block;
  border-radius: 18px;
  overflow: hidden;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  margin: 16px 0 22px;
}

.avm-blog .avm-blog-article .avm-blog-media img{
  width: 100%;
  height: auto;
  display: block;
}

/* hover ТОЛЬКО если картинка обёрнута в ссылку */
.avm-blog .avm-blog-article a.avm-blog-mediaLink:hover .avm-blog-media{
  transform: translateY(-4px);
  border-color: rgba(47,109,255,.22);
  box-shadow: 0 26px 54px rgba(16,24,40,0.18),
              0 12px 22px rgba(47,109,255,0.10),
              inset 0 1px 0 rgba(255,255,255,.55);
}

/* Запрещаем любым hover-эффектам влиять на текст рядом */
.avm-blog .avm-blog-article a.avm-blog-mediaLink:hover{
  color: inherit !important;
}

/* ---------- badges / chips (опционально, если вставишь в статье) ---------- */
/* Разметка:
   <div class="avm-blog-badges">
     <span class="avm-blog-badge">Мобильные сцены</span>
   </div>
*/
.avm-blog .avm-blog-article .avm-blog-badges{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 0 0 18px 0;
  padding: 0;
}

.avm-blog .avm-blog-article .avm-blog-badge{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
  font-size: 14px;
  font-weight: 650;
  color: rgba(39,50,60,.88);
  text-align: center;
  transition: none !important; /* никаких эффектов */
}

/* ---------- callout (заметка) ---------- */
/* <div class="avm-blog-note">...</div> */
.avm-blog .avm-blog-article .avm-blog-note{
  margin: 18px 0;
  padding: 14px 14px;
  border-radius: 16px;
  border: 1px solid rgba(39,50,60,.10);
  background: rgba(39,50,60,.04);
  color: rgba(39,50,60,.92);
}

/* ---------- mobile ---------- */
@media (max-width: 520px){
  .avm-blog .avm-blog-article{
    padding: 18px 14px;
    font-size: 15px;
  }

  .avm-blog .avm-blog-article h1{ font-size: 28px; }
  .avm-blog .avm-blog-article h2{ font-size: 21px; }
  .avm-blog .avm-blog-article h3{ font-size: 18px; }

  .avm-blog .avm-blog-article .avm-blog-badge{
    width: 100%;
  }
}
/* ======================================================
   BLOG INTRO MODULE
   ====================================================== */

.avm-truss.avm-blogintro .avm-blogintro__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}



/* kicker */

.avm-truss.avm-blogintro .avm-blogintro__kicker{
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(39,50,60,.55);
  margin-bottom:10px;
}

/* title */

.avm-truss.avm-blogintro .avm-blogintro__title{
  font-size:28px;
  line-height:1.2;
  font-weight:850;
  color:#27323c;
  margin-bottom:16px;
}

/* text */

.avm-truss.avm-blogintro .avm-blogintro__text{
  font-size:16px;
  line-height:1.65;
  color:rgba(39,50,60,.88);
  max-width:900px;
}

.avm-truss.avm-blogintro .avm-blogintro__text p{
  margin-bottom:14px;
}

/* links */

.avm-truss.avm-blogintro a{
  text-decoration:none;
  color:inherit;
}

.avm-truss.avm-blogintro .avm-blogintro__text a{
  border-bottom:1px solid rgba(39,50,60,.18);
  transition:border-color .15s ease;
}

.avm-truss.avm-blogintro .avm-blogintro__text a:hover{
  border-bottom-color:rgba(39,50,60,.40);
}

/* badges */

.avm-truss.avm-blogintro .avm-blogintro__badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.avm-truss.avm-blogintro .avm-blogintro__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);

  font-size:14px;
  font-weight:650;
  color:rgba(39,50,60,.88);
}

/* mobile */

@media (max-width:520px){

  .avm-truss.avm-blogintro .avm-blogintro__title{
    font-size:22px;
  }

  .avm-truss.avm-blogintro .avm-blogintro__badge{
    width:100%;
  }

}
/* ======================================================
   BLOG SIDEBAR MODULES (scoped by module class suffix)
   Applies ONLY to modules with class .avm-blogside
   ====================================================== */

.avm-blogside{
  border-radius:18px;
  padding:18px 18px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.06), inset 0 1px 0 rgba(255,255,255,.55);
}

/* title */
.avm-blogside .module-title,
.avm-blogside .mod-title,
.avm-blogside h3,
.avm-blogside h4{
  margin:0 0 12px 0;
  padding:40px 0 0 0;
  font-size:16px;
  font-weight:850;
  color:#27323c;
  text-align:center;
}

/* lists */
.avm-blogside ul{
  list-style:none;
  margin:0;
  padding:0;
}

.avm-blogside li{
  margin:0;
  padding:10px 0;
  border-bottom:1px solid rgba(39,50,60,.08);
}

.avm-blogside li:last-child{
  border-bottom:0;
  padding-bottom:0;
}

/* link reset */
.avm-blogside a,
.avm-blogside a:link,
.avm-blogside a:visited,
.avm-blogside a:hover,
.avm-blogside a:active{
  text-decoration:none !important;
  color:inherit !important;
}

/* article link look */
.avm-blogside a{
  display:block;
}

.avm-blogside a .title,
.avm-blogside a .item-title{
  font-weight:800;
  color:#27323c;
  line-height:1.25;
}

/* meta (date/hits) if shown by module */
.avm-blogside .meta,
.avm-blogside .date,
.avm-blogside time,
.avm-blogside .small{
  display:block;
  margin-top:6px;
  font-size:13px;
  color:rgba(39,50,60,.62);
}

/* optional: intro images if module outputs them */
.avm-blogside img{
  width:100%;
  height:auto;
  display:block;
  border-radius:14px;
  margin:0 0 10px 0;
  object-fit:cover;
  border:1px solid rgba(39,50,60,.08);
}

/* hover: subtle, no text recolor */
.avm-blogside a:hover{
  opacity:.95;
}

/* mobile spacing */
@media (max-width: 520px){
  .avm-blogside{
    padding:16px 16px;
  }
}
.blog .avm-blogside,
.blog-category .avm-blogside{
  margin-top:100px;
}
/* визуальный сдвиг вниз (не меняет внутренние отступы) */
.avm-blogside{
  transform: translateY(100px);
}
/* ===== BLOG: fixed fallback ===== */
.blog .site-grid .container-sidebar-left .sidebar-left.card.avm-blogside,
.blog-category .site-grid .container-sidebar-left .sidebar-left.card.avm-blogside{
  position: fixed !important;
  top: 100px !important;
  left: auto !important;
  z-index: 50;
  max-height: calc(100vh - 120px);
  overflow: auto;
  width: 340px; /* подстрой под ширину сайдбара */
}
/* ===== BLOG ONLY: fixed sidebar WITHOUT shifting content ===== */
@media (min-width: 992px){

  body.avm-page-blog{
    --avm-blogside-w: 340px;   /* оставь как у тебя в fixed (340/320/300) */
  }

  /* резервируем место ТОЛЬКО левой колонкой */
  body.avm-page-blog .site-grid .container-sidebar-left{
    width: var(--avm-blogside-w) !important;
    flex: 0 0 var(--avm-blogside-w) !important;
    align-self: flex-start;
    min-height: 1px; /* чтобы колонка не схлопывалась */
  }

  /* контент НЕ двигаем */
  body.avm-page-blog .site-grid .container-component{
    margin-left: 0 !important;
    flex: 1 1 auto;
    min-width: 0;
  }


}

/* mobile: без фиксации */
@media (max-width: 991px){
  body.avm-page-blog .site-grid .container-sidebar-left .sidebar-left.card.avm-blogside{
    position: static !important;
    width: auto !important;
    max-height: none;
    overflow: visible;
  }
}
/* ======================================================
   BLOG SIDEBAR (two modules stacked)
   Applies ONLY on blog page class: body.avm-page-blog
   ====================================================== */

/* общая “карточка” для обоих модулей */
body.avm-page-blog .avm-blogside-fixed,
body.avm-page-blog .avm-blogside-box{
  border-radius:18px;
  margin-right:40px;
  padding:18px 18px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.06), inset 0 1px 0 rgba(255,255,255,.55);
}

/* расстояние между модулями */
body.avm-page-blog .avm-blogside-box{
  margin-top: 14px;
}

/* заголовки модулей */
body.avm-page-blog .avm-blogside-fixed .card-header,
body.avm-page-blog .avm-blogside-box .card-header{
  margin:0 0 12px 0;
  padding:20px 0;
  font-size:16px;
  font-weight:850;
  color:#27323c;
}
.card-body {
    padding:0!important;
}
ul li .mod-articles-item:first-child {
    padding-top:0;
}
/* link reset внутри модулей */
body.avm-page-blog .avm-blogside-fixed a,
body.avm-page-blog .avm-blogside-box a{
  text-decoration:none !important;
  color:inherit !important;
  font-weight:500;
}

/* список */
body.avm-page-blog .avm-blogside-fixed ul,
body.avm-page-blog .avm-blogside-box ul{
  list-style:none;
  margin:0;
  padding:0;
}
body.avm-page-blog .avm-blogside-fixed li,
body.avm-page-blog .avm-blogside-box li{
  padding:10px 0;
  border-bottom:1px solid rgba(39,50,60,.08);
}
body.avm-page-blog .avm-blogside-fixed li:last-child,
body.avm-page-blog .avm-blogside-box li:last-child{
  border-bottom:0;
  padding-bottom:0;
}

/* ===== fixed behaviour: фиксируем ТОЛЬКО первый модуль ===== */
@media (min-width: 992px){

  body.avm-page-blog{
    --avm-blogside-w: 340px; /* поставь как у тебя было */
  }

  /* резервируем место колонкой слева */
  body.avm-page-blog .site-grid .container-sidebar-left{
    width: var(--avm-blogside-w) !important;
    flex: 0 0 var(--avm-blogside-w) !important;
    align-self: flex-start;
    min-height: 1px;
  }


  /* второй модуль идет НИЖЕ фиксированного — резервируем место сверху */
  body.avm-page-blog .site-grid .container-sidebar-left .avm-blogside-box{
    margin-top: calc(100px + 14px + 260px); 
    /* 260px — примерная высота первого модуля.
       Ниже объясню, как сделать без подбора. */
  }
}

/* mobile: без фиксации */
@media (max-width: 991px){
  body.avm-page-blog .site-grid .container-sidebar-left .avm-blogside-fixed{
    position: static !important;
    width: auto !important;
  }
  body.avm-page-blog .site-grid .container-sidebar-left .avm-blogside-box{
    margin-top: 14px;
  }
}
body.avm-page-blog .container-sidebar-left .card-header,
body.avm-page-blog .container-sidebar-left h3,
body.avm-page-blog .container-sidebar-left h4,
body.avm-page-blog .container-sidebar-left .module-title{
  font-weight:700 !important;
}
.bottom-b:last-child {display:none;}
.container-component>:first-child, .container-sidebar-left>:first-child, .container-sidebar-right>:first-child, .container-component>*+*, .container-sidebar-left>*+*, .container-sidebar-right>*+*
{    margin-top: 0em!important;}

.feedback-overlay,
.fbm-overlay {
  position: fixed;
  inset: 0;              /* ключевое */
  width: 100vw;          /* можно не нужно, но полезно */
  height: 100vh;         /* можно не нужно, но полезно */
}
.feedback-overlay { display: none; }
.feedback-overlay.active { display: flex; }
/* ТОЛЬКО для конкретного модуля 378 */
.feedback-root[data-feedback-module-id="378"] [data-feedback-overlay]{
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999999;
}
.feedback-root[data-feedback-module-id="378"] [data-feedback-overlay]{
  display: none;
}

.feedback-root[data-feedback-module-id="378"] [data-feedback-overlay].active{
  display: flex;
}
/* 1) По умолчанию модалка 378 полностью скрыта */
.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay]{
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;

  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;
}

/* 2) Открытие — только при .active */
.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay].active{
  display: flex !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
/* Модуль 378 — скрыт, пока НЕТ .active */
.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay]:not(.active){
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;

  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;
}

/* Модуль 378 — открыт, когда ЕСТЬ .active */
.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay].active{
  display: flex !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;

  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;
}
/* 1) Модуль 378: оверлей должен жить как настоящий fullscreen */
.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay]{
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;

  /* по умолчанию скрыт */
  display: none !important;
}

/* показываем только при active */
.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay].active{
  display: flex !important;
}

/* 2) ВАЖНО: разжимаем ТОЛЬКО КОГДА модалка 378 ОТКРЫТА
   (чтобы не “плыл” другой модуль) */
.bottom-b.card:has(.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay].active),
.bottom-b.card:has(.feedback-root[data-feedback-module-id="378"] > [data-feedback-overlay].active) .card-body{
  overflow: visible !important;
  height: auto !important;
  min-height: 1px !important;
  /* на всякий случай: если где-то есть эффекты, которые ломают fixed */
  transform: none !important;
  filter: none !important;
  perspective: none !important;
}
/* Фикс только для нижнего контейнера (позиции bottom-*) */
.grid-child.container-bottom-b{
  display: block;
}

.grid-child.container-bottom-b > .bottom-b.card{
  display: block;
  position: relative;
  height: auto;
  min-height: 1px;      /* чтобы не схлопывался в 0 */
  overflow: visible;    /* чтобы контент не резался */
}

.grid-child.container-bottom-b > .bottom-b.card > .card-body{
  display: block;
  height: auto;
  min-height: 1px;
}
/* 378: скрыто по умолчанию */
.feedback-root[data-feedback-module-id="378"] [data-feedback-overlay]{
  display: none !important;
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;
}

/* 378: видно только при active */
.feedback-root[data-feedback-module-id="378"] [data-feedback-overlay].active{
  display: flex !important;
}
.avm-proekt--mainseo .avm-proekt__row{
  align-items: stretch;
  gap: 42px;
}

.avm-proekt--mainseo .avm-proekt__img img{
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  border-radius: 18px;
  display: block;
}

.avm-proekt--mainseo .avm-proekt__content{
  display: flex;
  align-items: center;
}

.avm-proekt--mainseo .avm-proekt__text--seo{
  max-width: 760px;
}

.avm-proekt--mainseo .avm-proekt__lead{
  margin: 0 0 22px;
  font-size: 18px;
  line-height: 1.75;
  color: #1f1f1f;
}

.avm-proekt--mainseo .avm-proekt__seo-list{
  margin: 0;
  padding: 0;
  list-style: none;
}

.avm-proekt--mainseo .avm-proekt__seo-list li{
  position: relative;
  margin: 0 0 18px;
  padding: 0 0 0 22px;
  font-size: 16px;
  line-height: 1.8;
  color: #4b4b4b;
}

.avm-proekt--mainseo .avm-proekt__seo-list li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #111;
}

.avm-proekt--mainseo .avm-proekt__bottom{
  margin: 26px 0 0;
  font-size: 16px;
  line-height: 1.8;
  color: #333;
}

.avm-proekt--mainseo .avm-proekt__text--seo a{
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,.28);
  transition: border-color .25s ease, color .25s ease;
}

.avm-proekt--mainseo .avm-proekt__text--seo a:hover{
  border-color: rgba(0,0,0,.85);
}

.avm-proekt--mainseo .avm-proekt__text--seo strong{
  color: #111;
  font-weight: 700;
}

.avm-proekt--mainseo .avm-proekt__actions{
  margin-top: 28px;
}

.avm-proekt--mainseo .avm-proekt__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 24px;
  border-radius: 12px;
  background: #111;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  transition: transform .25s ease, opacity .25s ease;
}

.avm-proekt--mainseo .avm-proekt__btn:hover{
  transform: translateY(-2px);
  opacity: .92;
}

@media (max-width: 980px){
  .avm-proekt--mainseo .avm-proekt__row{
    gap: 28px;
  }

  .avm-proekt--mainseo .avm-proekt__img img{
    min-height: 360px;
  }
}

@media (max-width: 768px){
  .avm-proekt--mainseo .avm-proekt__lead{
    font-size: 17px;
    line-height: 1.7;
  }

  .avm-proekt--mainseo .avm-proekt__seo-list li,
  .avm-proekt--mainseo .avm-proekt__bottom{
    font-size: 15px;
    line-height: 1.7;
  }

  .avm-proekt--mainseo .avm-proekt__img img{
    min-height: 260px;
    border-radius: 14px;
  }
}

/* ===== MOBILE SEO module (in current AVM style) ===== */
.avm-truss.avm-mobile-seo{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: #27323c;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__title{
  margin: 0 0 14px 0;
  text-align: center;
  font-size: clamp(24px, 2vw, 34px);
  line-height: 1.2;
  font-weight: 650;
  letter-spacing: -0.015em;
  color: #27323c;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__lead{
  max-width: 980px;
  margin: 0 auto 18px auto;
  text-align: center;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__lead p{
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(39,50,60,.88);
}

/* badges */
.avm-truss.avm-mobile-seo .avm-mobile-seo__badges{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-width: 980px;
  margin: 0 auto 18px auto;
  padding: 0;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__badge{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  padding: 10px 14px;
  border-radius: 999px;

  background: rgba(255,255,255,.92);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);

  font-size: 14px;
  font-weight: 650;
  color: rgba(39,50,60,.88);
  text-align: center;
}

/* main grid */
.avm-truss.avm-mobile-seo .avm-mobile-seo__grid{
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: 18px;
  align-items: stretch;
}

/* left media */
.avm-truss.avm-mobile-seo .avm-mobile-seo__media{
  height: 100%;
  min-height: 420px;

  border-radius: 18px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__media img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

/* right content */
.avm-truss.avm-mobile-seo .avm-mobile-seo__right{
  border-radius: 18px;
  overflow: hidden;

  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,50,60,.10);
  box-shadow: 0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);

  padding: 18px 18px 20px;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__subtitle{
  margin: 0 0 12px 0;
  font-size: clamp(18px, 1.45vw, 22px);
  line-height: 1.35;
  font-weight: 650;
  letter-spacing: -0.012em;
  color: #27323c;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__text{
  margin: 0 0 12px 0;
  color: rgba(39,50,60,.88);
  line-height: 1.6;
  font-size: 15px;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__text:last-child{
  margin-bottom: 0;
}

/* list */
.avm-truss.avm-mobile-seo .avm-mobile-seo__list{
  margin: 0 0 12px 0;
  padding: 0;
  list-style: none;
  color: rgba(39,50,60,.88);
  line-height: 1.55;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__list li{
  position: relative;
  padding-left: 26px;
  margin: 8px 0;
}

.avm-truss.avm-mobile-seo .avm-mobile-seo__list li::before{
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: rgba(47,109,255,1);
  font-weight: 800;
}

/* responsive */
@media (max-width: 980px){
  .avm-truss.avm-mobile-seo .avm-mobile-seo__grid{
    grid-template-columns: 1fr;
  }

  .avm-truss.avm-mobile-seo .avm-mobile-seo__media{
    min-height: 320px;
  }
}

@media (max-width: 520px){
  .avm-truss.avm-mobile-seo .avm-mobile-seo__badges{
    grid-template-columns: 1fr;
  }

  .avm-truss.avm-mobile-seo .avm-mobile-seo__lead p{
    font-size: 15px;
  }

  .avm-truss.avm-mobile-seo .avm-mobile-seo__text{
    font-size: 14px;
    line-height: 1.55;
  }

  .avm-truss.avm-mobile-seo .avm-mobile-seo__media{
    min-height: 260px;
  }
}
/* левая колонка — картинки друг под другом */
.avm-truss.avm-mobile-seo .avm-mobile-seo__left{
  display:flex;
  flex-direction:column;
  gap:16px;
}

/* карточка картинки */
.avm-truss.avm-mobile-seo .avm-mobile-seo__media{
  border-radius:18px;
  overflow:hidden;

  background:rgba(255,255,255,.88);
  border:1px solid rgba(39,50,60,.10);
  box-shadow:0 10px 22px rgba(16,24,40,0.08), inset 0 1px 0 rgba(255,255,255,.55);
}

/* сама картинка */
.avm-truss.avm-mobile-seo .avm-mobile-seo__media img{
  width:100%;
  height:auto;        /* ключевое — высота авто */
  display:block;
}
/* ===== SEO mobile stage images ===== */

.avm-mobile-seo__left{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.avm-mobile-seo__img{
  margin:0;
  padding:0;
  width:100%;
}

.avm-mobile-seo__img img{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  padding:0;
  border-radius:20px;
}
.container-footer.footer.full-width > .grid-child {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
}

#mod-custom357 {
    display: none;
}

#mod-custom115,
#mod-custom115 .site-footer {
    width: 100%;
    max-width: none !important;
}

#mod-custom115 .footer__container {
    max-width: 1320px;
    margin: 0 auto;
    padding:40px;
    box-sizing: border-box;
    background:#fff;
}
.footer {
    color: #fff;
    background: linear-gradient(135deg, #1b3a6b 0%, #2a5ea8 100%);
    margin-top: 1em;
}
.avm-podiumcalc__title {
    padding-top:30px;
    text-align:center;
}
.avm-podiumcalc__subtitle {
    text-align:center;
}
.avm-blog-checklist {
  margin-bottom: 15px;
}

.avm-blog-check {
  position: relative;
  padding-left: 18px;
  margin-bottom: 6px;
}

.avm-blog-check::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
}