/* Modern replacement for the WPBakery (js_composer) grid. Class names are clean
 * c-*; every RULE below the header is js_composer.min.css's own, extracted with a
 * real CSS parser (tools/extract_grid_css.py) and renamed -- so the static grid
 * renders identically by construction. Replaces the 164K js_composer.min.css +
 * js_composer_front.js. c-* is distinct from Foundation's .row/.columns.
 * Verified pixel-identical by tools/vcheck.py. */

.c-clearfix:after, .c-col-inner::after, .c-row:after { clear:both }
.c-row:after, .c-row:before { content:" ";display:table }
.c-col { width:100% }
.c-row { margin-left:-15px;margin-right:-15px }
.c-col-12, .c-col-3, .c-col-4, .c-col-6, .c-col-9 { position:relative;min-height:1px;padding-left:15px;padding-right:15px;box-sizing:border-box }
.c-col-3\/5, .c-col-4\/5 { position:relative;min-height:1px;padding-left:15px;padding-right:15px;box-sizing:border-box }
.c-clearfix:after, .c-clearfix:before { content:" ";display:table }
.c-row.c-row--no-padding .c-col-inner { padding-left:0;padding-right:0 }
.c-row[data-vc-full-width] { transition:opacity .5s ease;overflow:hidden }
.c-row--no-padding .c-inner { margin-left:0;margin-right:0 }
.c-row.c-row--flex { box-sizing:border-box;display:flex;flex-wrap:wrap }
.c-row.c-row--flex>.c-col { display:flex }
.c-row.c-row--flex>.c-col>.c-col-inner { flex-grow:1;display:flex;flex-direction:column;z-index:1 }
.c-row.c-row--flex::after, .c-row.c-row--flex::before { display:none }
.c-col-inner::after, .c-col-inner::before { content:" ";display:table }
.c-row--fill+.c-row-clear+.c-row>.c-col>.c-col-inner, .c-row--fill+.c-row>.c-col>.c-col-inner, .c-row--fill>.c-col>.c-col-inner { padding-top:35px }
.c-col { padding-left:0;padding-right:0 }
.c-col>.c-col-inner { box-sizing:border-box;padding-left:15px;padding-right:15px;width:100% }
.c-section { padding-left:15px;padding-right:15px;margin-left:-15px;margin-right:-15px }
.c-section[data-vc-full-width] { transition:opacity .5s ease;overflow:hidden }
.c-section[data-vc-full-width]>.c-row { margin-left:0;margin-right:0 }
.c-section[data-vc-stretch-content] { padding-left:0;padding-right:0 }
.c-row.c-row--flex>.c-col { align-items:stretch }
@media (min-width:768px) {
  .c-col-12, .c-col-3, .c-col-4, .c-col-6, .c-col-9 { float:left }
  .c-col-12 { width:100% }
  .c-col-9 { width:75% }
  .c-col-6 { width:50% }
  .c-col-4 { width:33.33333333% }
  .c-col-3 { width:25% }
  .c-col-3\/5, .c-col-4\/5 { float:left }
  .c-col-4\/5 { width:80% }
  .c-col-3\/5 { width:60% }
}
@media (-ms-high-contrast:active),(-ms-high-contrast:none) {
  .c-row.c-row--flex>.c-col>.c-col-inner>* { min-height:1em }
}

/* Full-bleed rows (.c-row--full) are positioned by assets/js/fullbleed.js, which
 * reproduces js_composer_front.js's runtime measurement (a plain CSS full-bleed
 * can't read the row's per-viewport offset). No CSS needed here. */
/* Spacer (vc_empty_space) — height comes inline; just clear floats. */
.c-spacer { clear: both; }
