div[class*="inline-block-wrapper-"] {
  display: inline-block;
  vertical-align: top;
}

.constructor-row > div[class*="inline-block-wrapper-"] {
  margin-right: 0;
}

.inline-block-wrapper-100 {width: 100%;}
.inline-block-wrapper-80  {width: 80%;}
.inline-block-wrapper-75  {width: 75%;}
.inline-block-wrapper-70  {width: 70%;}
.inline-block-wrapper-66  {width: 66.66667%;}
.inline-block-wrapper-60  {width: 60%;}
.inline-block-wrapper-50  {width: 50%;}
.inline-block-wrapper-40  {width: 40%;}
.inline-block-wrapper-33  {width: 33.33333%;}
.inline-block-wrapper-30  {width: 30%;}
.inline-block-wrapper-25  {width: 25%;}
.inline-block-wrapper-20  {width: 20%;}
.inline-block-wrapper-15 {width: 15%;}

@media all and (max-width: 768px) {
  .constructor-layout .inline-block-wrapper-100, .constructor-layout .inline-block-wrapper-80, .constructor-layout .inline-block-wrapper-75, .constructor-layout .inline-block-wrapper-70,
  .constructor-layout .inline-block-wrapper-66, .constructor-layout .inline-block-wrapper-60, .constructor-layout .inline-block-wrapper-50,
  .constructor-layout .inline-block-wrapper-66 + .inline-block-wrapper-33 {
    width: 100%;
  }

  .constructor-layout .inline-block-wrapper-40 .constructor-layout .inline-block-wrapper-33, .constructor-layout .inline-block-wrapper-30,
  .constructor-layout .inline-block-wrapper-25, .constructor-layout .inline-block-wrapper-20 {
    width: 50%;
  }
}

@media all and (max-width: 640px) {
  .constructor-layout .inline-block-wrapper-40, .constructor-layout .inline-block-wrapper-33, .constructor-layout .inline-block-wrapper-30,
  .constructor-layout .inline-block-wrapper-25, .constructor-layout .inline-block-wrapper-20, .constructor-layout .inline-block-wrapper-15 {
    width: 100%;
  }
}


form div[class*="inline-block-wrapper-"] > .constructor-inner {
  padding-right: 2em;
}

form div[class*="inline-block-wrapper-"]:last-child > .constructor-inner {
  padding-right: 0em;
}

.constructor-row {
  width: 100%;
}

.constructor-row:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}







.constructor-inner > .constructor-element {
  margin-right: 1em;
}

/*
* Evil bug in yandex maps
* Browser: Chrome
* Conditions: show entity with constructor layout inside ymaps popup balloon on the map
* The ymaps script goes into an infinite loop when margin-right specified in em's and value > 0.95em
* Fix: use pixels margin-right for ymaps context
*/
ymaps .constructor-inner > .constructor-element {
  margin-right: 12px;
}
.constructor-under-each-other .constructor-inner > .constructor-element {
  display: block;
}

.constructor-inline .constructor-inner > .constructor-element {
  display: inline-block;
  vertical-align: top;
  margin: 0 1em 0.5em 0;
}


.constructor-align-left .constructor-inner > .constructor-element:first-child {
  float: left;
  margin-top: 0;
}

.constructor-align-right .constructor-inner > .constructor-element:first-child {
  float: right;
  margin-left: 1em;
  margin-top: 0;
}


.constructor-vert-align-middle .constructor-inner > .constructor-element {
   vertical-align: middle;
}

.constructor-vert-align-bottom .constructor-inner > .constructor-element {
   vertical-align: bottom;
}

.constructor-text-horizontal-alignment-align-left {
  text-align: left !important;
}

.constructor-text-horizontal-alignment-align-right {
  text-align: right !important;
}

.constructor-text-horizontal-alignment-align-middle {
  text-align: center !important;
}

.constructor-text-horizontal-alignment-align-left h1 {
  text-align: left !important;
}

.constructor-text-horizontal-alignment-align-right h1 {
  text-align: right !important;
}

.constructor-text-horizontal-alignment-align-middle h1 {
  text-align: center !important;
}

.constructor-text-vertical-alignment-align-top {
  vertical-align: top !important;
}

.constructor-text-vertical-alignment-align-middle {
  vertical-align: middle !important;
  /* bred: padding-top: 10%; */
}

.constructor-text-vertical-alignment-align-bottom {
  vertical-align: bottom !important;
}


