.les {

    --les-layout-scale: 1.5;

    /* ====== SPACING ===== */
    --les-space-xxxs: calc( var(--les-space-xxs) / var(--les-layout-scale) );
    --les-space-xxs: calc( var(--les-space-xs) / var(--les-layout-scale) );
    --les-space-xs: calc( var(--les-space-sm) / var(--les-layout-scale) );
    --les-space-sm: calc( var(--les-space-md) / var(--les-layout-scale) );
    --les-space-md: 1.2rem;
    --les-space-lg: calc( var(--les-space-md) * var(--les-layout-scale) );
    --les-space-xl: calc( var(--les-space-lg) * var(--les-layout-scale) );
    --les-space-xxl: calc( var(--les-space-xl) * var(--les-layout-scale) );
    --les-space-xxxl: calc( var(--les-space-xxl) * var(--les-layout-scale) );


    /* ====== BORDER ===== */

    /* ----- Border ----- */
    --les-border-style: solid;
    --les-border-width: 1px;
    --les-border-color: var(--les-color-neutral-200);
    --les-border: var(--les-border-style) var(--les-border-width) var(--les-border-color);

    /* ----- Border Radius ----- */
    --les-border-radius-xxxs: calc( var(--les-border-radius-xxs) / var(--les-layout-scale) );
    --les-border-radius-xxs: calc( var(--les-border-radius-xs) / var(--les-layout-scale) );
    --les-border-radius-xs: calc( var(--les-border-radius-sm) / var(--les-layout-scale) );
    --les-border-radius-sm: calc( var(--les-border-radius-md) / var(--les-layout-scale) );
    --les-border-radius-md: 1rem;
    --les-border-radius-lg: calc( var(--les-border-radius-md) * var(--les-layout-scale) );
    --les-border-radius-xl: calc( var(--les-border-radius-lg) * var(--les-layout-scale) );
    --les-border-radius-xxl: calc( var(--les-border-radius-xl) * var(--les-layout-scale) );
    --les-border-radius-xxxl: calc( var(--les-border-radius-xxl) * var(--les-layout-scale) );

}


.les-border {   border: var(--les-border);  }

.les-border-radius-xxxs { border-radius: var(--les-border-radius-xxxs); }
.les-border-radius-xxs { border-radius: var(--les-border-radius-xxs); }
.les-border-radius-xs { border-radius: var(--les-border-radius-xs); }
.les-border-radius-sm { border-radius: var(--les-border-radius-sm); }
.les-border-radius-md,
.les-border-radius    { border-radius: var(--les-border-radius-md); }
.les-border-radius-lg { border-radius: var(--les-border-radius-lg); }
.les-border-radius-xl { border-radius: var(--les-border-radius-xl); }
.les-border-radius-xxl { border-radius: var(--les-border-radius-xxl); }
.les-border-radius-xxxl { border-radius: var(--les-border-radius-xxxl); }

/* ====== PADDING UTILITIES ====== */
/* All sides */
.les-p-xxxs, .les-p-xxxs.l-section[class*="height"] { padding: var(--les-space-xxxs); }
.les-p-xxs, .les-p-xxs.l-section[class*="height"] { padding: var(--les-space-xxs); }
.les-p-xs, .les-p-xs.l-section[class*="height"] { padding: var(--les-space-xs); }
.les-p-sm, .les-p-sm.l-section[class*="height"] { padding: var(--les-space-sm); }
.les-p-md, .les-p-md.l-section[class*="height"] { padding: var(--les-space-md); }
.les-p-lg, .les-p-lg.l-section[class*="height"] { padding: var(--les-space-lg); }
.les-p-xl, .les-p-xl.l-section[class*="height"] { padding: var(--les-space-xl); }
.les-p-xxl, .les-p-xxl.l-section[class*="height"] { padding: var(--les-space-xxl); }
.les-p-xxxl, .les-p-xxxl.l-section[class*="height"] { padding: var(--les-space-xxxl); }
.les-p-none, .les-p-none.l-section[class*="height"] { padding: 0; }

/* Top */
.les-pt-xxxs, .les-pt-xxxs.l-section[class*="height"] { padding-top:    var(--les-space-xxxs); }
.les-pt-xxs, .les-pt-xxs.l-section[class*="height"] { padding-top:    var(--les-space-xxs); }
.les-pt-xs, .les-pt-xs.l-section[class*="height"] { padding-top:    var(--les-space-xs); }
.les-pt-sm, .les-pt-sm.l-section[class*="height"] { padding-top:    var(--les-space-sm); }
.les-pt-md, .les-pt-md.l-section[class*="height"] { padding-top:    var(--les-space-md); }
.les-pt-lg, .les-pt-lg.l-section[class*="height"] { padding-top:    var(--les-space-lg); }
.les-pt-xl, .les-pt-xl.l-section[class*="height"] { padding-top:    var(--les-space-xl); }
.les-pt-xxl, .les-pt-xxl.l-section[class*="height"] { padding-top:    var(--les-space-xxl); }
.les-pt-xxxl, .les-pt-xxxl.l-section[class*="height"] { padding-top:    var(--les-space-xxxl); }
.les-pt-none, .les-pt-none.l-section[class*="height"] { padding-top:  0; }

/* Right */
.les-pr-xxxs, .les-pr-xxxs.l-section[class*="height"] { padding-right:  var(--les-space-xxxs); }
.les-pr-xxs, .les-pr-xxs.l-section[class*="height"] { padding-right:  var(--les-space-xxs); }
.les-pr-xs, .les-pr-xs.l-section[class*="height"] { padding-right:  var(--les-space-xs); }
.les-pr-sm, .les-pr-sm.l-section[class*="height"] { padding-right:  var(--les-space-sm); }
.les-pr-md, .les-pr-md.l-section[class*="height"] { padding-right:  var(--les-space-md); }
.les-pr-lg, .les-pr-lg.l-section[class*="height"] { padding-right:  var(--les-space-lg); }
.les-pr-xl, .les-pr-xl.l-section[class*="height"] { padding-right:  var(--les-space-xl); }
.les-pr-xxl, .les-pr-xxl.l-section[class*="height"] { padding-right:  var(--les-space-xxl); }
.les-pr-xxxl, .les-pr-xxxl.l-section[class*="height"] { padding-right:  var(--les-space-xxxl); }
.les-pr-none, .les-pr-none.l-section[class*="height"] { padding-right: 0 }

/* Bottom */
.les-pb-xxxs, .les-pb-xxxs.l-section[class*="height"] { padding-bottom: var(--les-space-xxxs); }
.les-pb-xxs, .les-pb-xxs.l-section[class*="height"] { padding-bottom: var(--les-space-xxs); }
.les-pb-xs, .les-pb-xs.l-section[class*="height"] { padding-bottom: var(--les-space-xs); }
.les-pb-sm, .les-pb-sm.l-section[class*="height"] { padding-bottom: var(--les-space-sm); }
.les-pb-md, .les-pb-md.l-section[class*="height"] { padding-bottom: var(--les-space-md); }
.les-pb-lg, .les-pb-lg.l-section[class*="height"] { padding-bottom: var(--les-space-lg); }
.les-pb-xl, .les-pb-xl.l-section[class*="height"] { padding-bottom: var(--les-space-xl); }
.les-pb-xxl, .les-pb-xxl.l-section[class*="height"] { padding-bottom: var(--les-space-xxl); }
.les-pb-xxxl, .les-pb-xxxl.l-section[class*="height"] { padding-bottom: var(--les-space-xxxl); }
.les-pb-none, .les-pb-none.l-section[class*="height"] {  padding-bottom: 0 }

/* Left */
.les-pl-xxxs, .les-pl-xxxs.l-section[class*="height"] { padding-left:   var(--les-space-xxxs); }
.les-pl-xxs, .les-pl-xxs.l-section[class*="height"] { padding-left:   var(--les-space-xxs); }
.les-pl-xs, .les-pl-xs.l-section[class*="height"] { padding-left:   var(--les-space-xs); }
.les-pl-sm, .les-pl-sm.l-section[class*="height"] { padding-left:   var(--les-space-sm); }
.les-pl-md, .les-pl-md.l-section[class*="height"] { padding-left:   var(--les-space-md); }
.les-pl-lg, .les-pl-lg.l-section[class*="height"] { padding-left:   var(--les-space-lg); }
.les-pl-xl, .les-pl-xl.l-section[class*="height"] { padding-left:   var(--les-space-xl); }
.les-pl-xxl, .les-pl-xxl.l-section[class*="height"] { padding-left:   var(--les-space-xxl); }
.les-pl-xxxl, .les-pl-xxxl.l-section[class*="height"] { padding-left:   var(--les-space-xxxl); }
.les-pl-none, .les-pl-none.l-section[class*="height"] { padding-left:   0 }

/* Horizontal (left + right) */
.les-px-xxxs, .les-pl-xxxs.l-section[class*="height"] {
    padding-left:  var(--les-space-xxxs);
    padding-right: var(--les-space-xxxs);
}
.les-px-xxs, .les-pl-xxs.l-section[class*="height"] {
    padding-left:  var(--les-space-xxs);
    padding-right: var(--les-space-xxs);
}
.les-px-xs, .les-pl-xs.l-section[class*="height"] {
    padding-left:  var(--les-space-xs);
    padding-right: var(--les-space-xs);
}
.les-px-sm, .les-pl-sm.l-section[class*="height"] {
    padding-left:  var(--les-space-sm);
    padding-right: var(--les-space-sm);
}
.les-px-md, .les-pl-md.l-section[class*="height"] {
    padding-left:  var(--les-space-md);
    padding-right: var(--les-space-md);
}
.les-px-lg, .les-pl-lg.l-section[class*="height"] {
    padding-left:  var(--les-space-lg);
    padding-right: var(--les-space-lg);
}
.les-px-xl, .les-pl-xl.l-section[class*="height"] {
    padding-left:  var(--les-space-xl);
    padding-right: var(--les-space-xl);
}
.les-px-xxl, .les-pl-xxl.l-section[class*="height"] {
    padding-left:  var(--les-space-xxl);
    padding-right: var(--les-space-xxl);
}
.les-px-xxxl, .les-pl-xxxl.l-section[class*="height"] {
    padding-left:  var(--les-space-xxxl);
    padding-right: var(--les-space-xxxl);
}
.les-px-none, .les-pl-none.l-section[class*="height"] {
    padding-left: 0;
    padding-right: 0;
}

/* Vertical (top + bottom) */
.les-py-xxxs, .les-py-xxxs.l-section[class*="height"] {
    padding-top:    var(--les-space-xxxs);
    padding-bottom: var(--les-space-xxxs);
}
.les-py-xxs, .les-py-xxs.l-section[class*="height"] {
    padding-top:    var(--les-space-xxs);
    padding-bottom: var(--les-space-xxs);
}
.les-py-xs, .les-py-xs.l-section[class*="height"] {
    padding-top:    var(--les-space-xs);
    padding-bottom: var(--les-space-xs);
}
.les-py-sm, .les-py-sm.l-section[class*="height"] {
    padding-top:    var(--les-space-sm);
    padding-bottom: var(--les-space-sm);
}
.les-py-md, .les-py-md.l-section[class*="height"] {
    padding-top:    var(--les-space-md);
    padding-bottom: var(--les-space-md);
}
.les-py-lg, .les-py-lg.l-section[class*="height"] {
    padding-top:    var(--les-space-lg);
    padding-bottom: var(--les-space-lg);
}
.les-py-xl, .les-py-xl.l-section[class*="height"] {
    padding-top:    var(--les-space-xl);
    padding-bottom: var(--les-space-xl);
}
.les-py-xxl, .les-py-xxl.l-section[class*="height"] {
    padding-top:    var(--les-space-xxl);
    padding-bottom: var(--les-space-xxl);
}
.les-py-xxxl, .les-py-xxxl.l-section[class*="height"] {
    padding-top:    var(--les-space-xxxl);
    padding-bottom: var(--les-space-xxxl);
}
.les-py-none, .les-py-none.l-section[class*="height"] {
    padding-top: 0;
    padding-bottom: 0;
}


/* ====== MARGIN UTILITIES ====== */
/* — Positive margins — */
/* All sides */
.les-m-xs, .les-m-xs.g-cols.wpb_row { margin: var(--les-space-xs); }
.les-m-sm, .les-m-sm.g-cols.wpb_row { margin: var(--les-space-sm); }
.les-m-md, .les-m-md.g-cols.wpb_row { margin: var(--les-space-md); }
.les-m-lg, .les-m-lg.g-cols.wpb_row { margin: var(--les-space-lg); }
.les-m-xl, .les-m-xl.g-cols.wpb_row { margin: var(--les-space-xl); }

/* Top */
.les-mt-xs { margin-top:    var(--les-space-xs); }
.les-mt-sm { margin-top:    var(--les-space-sm); }
.les-mt-md { margin-top:    var(--les-space-md); }
.les-mt-lg { margin-top:    var(--les-space-lg); }
.les-mt-xl { margin-top:    var(--les-space-xl); }

/* Right */
.les-mr-xs { margin-right:  var(--les-space-xs); }
.les-mr-sm { margin-right:  var(--les-space-sm); }
.les-mr-md { margin-right:  var(--les-space-md); }
.les-mr-lg { margin-right:  var(--les-space-lg); }
.les-mr-xl { margin-right:  var(--les-space-xl); }

/* Bottom */
.les-mb-xs, .les-mb-xs.g-cols.wpb_row { margin-bottom: var(--les-space-xs); }
.les-mb-sm, .les-mb-sm.g-cols.wpb_row { margin-bottom: var(--les-space-sm); }
.les-mb-md, .les-mb-md.g-cols.wpb_row { margin-bottom: var(--les-space-md); }
.les-mb-lg, .les-mb-lg.g-cols.wpb_row { margin-bottom: var(--les-space-lg); }
.les-mb-xl, .les-mb-xl.g-cols.wpb_row { margin-bottom: var(--les-space-xl); }

/* Left */
.les-ml-xs { margin-left:   var(--les-space-xs); }
.les-ml-sm { margin-left:   var(--les-space-sm); }
.les-ml-md { margin-left:   var(--les-space-md); }
.les-ml-lg { margin-left:   var(--les-space-lg); }
.les-ml-xl { margin-left:   var(--les-space-xl); }

/* Horizontal (left + right) */
.les-mx-xs {
    margin-left:  var(--les-space-xs);
    margin-right: var(--les-space-xs);
}
.les-mx-sm {
    margin-left:  var(--les-space-sm);
    margin-right: var(--les-space-sm);
}
.les-mx-md {
    margin-left:  var(--les-space-md);
    margin-right: var(--les-space-md);
}
.les-mx-lg {
    margin-left:  var(--les-space-lg);
    margin-right: var(--les-space-lg);
}
.les-mx-xl {
    margin-left:  var(--les-space-xl);
    margin-right: var(--les-space-xl);
}

/* Vertical (top + bottom) */
.les-my-xs, .les-mt-xs.g-cols.wpb_row {
    margin-top:    var(--les-space-xs);
    margin-bottom: var(--les-space-xs);
}
.les-my-sm, .les-mt-sm.g-cols.wpb_row {
    margin-top:    var(--les-space-sm);
    margin-bottom: var(--les-space-sm);
}
.les-my-md, .les-mt-md.g-cols.wpb_row {
    margin-top:    var(--les-space-md);
    margin-bottom: var(--les-space-md);
}
.les-my-lg, .les-mt-lg.g-cols.wpb_row {
    margin-top:    var(--les-space-lg);
    margin-bottom: var(--les-space-lg);
}
.les-my-xl, .les-mt-xl.g-cols.wpb_row {
    margin-top:    var(--les-space-xl);
    margin-bottom: var(--les-space-xl);
}

/* — Negative margins — */
/* All sides */
.les-m-n-xs, .les-m-n-xs.g-cols.wpb_row { margin: calc(-1 * var(--les-space-xs)); }
.les-m-n-sm, .les-m-n-sm.g-cols.wpb_row { margin: calc(-1 * var(--les-space-sm)); }
.les-m-n-md, .les-m-n-md.g-cols.wpb_row { margin: calc(-1 * var(--les-space-md)); }
.les-m-n-lg, .les-m-n-lg.g-cols.wpb_row { margin: calc(-1 * var(--les-space-lg)); }
.les-m-n-xl, .les-m-n-xl.g-cols.wpb_row { margin: calc(-1 * var(--les-space-xl)); }

/* Top */
.les-mt-n-xs { margin-top:    calc(-1 * var(--les-space-xs)); }
.les-mt-n-sm { margin-top:    calc(-1 * var(--les-space-sm)); }
.les-mt-n-md { margin-top:    calc(-1 * var(--les-space-md)); }
.les-mt-n-lg { margin-top:    calc(-1 * var(--les-space-lg)); }
.les-mt-n-xl { margin-top:    calc(-1 * var(--les-space-xl)); }

/* Right */
.les-mr-n-xs { margin-right:  calc(-1 * var(--les-space-xs)); }
.les-mr-n-sm { margin-right:  calc(-1 * var(--les-space-sm)); }
.les-mr-n-md { margin-right:  calc(-1 * var(--les-space-md)); }
.les-mr-n-lg { margin-right:  calc(-1 * var(--les-space-lg)); }
.les-mr-n-xl { margin-right:  calc(-1 * var(--les-space-xl)); }

/* Bottom */
.les-mb-n-xs, .les-mb-n-xs.g-cols.wpb_row { margin-bottom: calc(-1 * var(--les-space-xs)); }
.les-mb-n-sm, .les-mb-n-sm.g-cols.wpb_row { margin-bottom: calc(-1 * var(--les-space-sm)); }
.les-mb-n-md, .les-mb-n-md.g-cols.wpb_row { margin-bottom: calc(-1 * var(--les-space-md)); }
.les-mb-n-lg, .les-mb-n-lg.g-cols.wpb_row { margin-bottom: calc(-1 * var(--les-space-lg)); }
.les-mb-n-xl, .les-mb-n-xl.g-cols.wpb_row { margin-bottom: calc(-1 * var(--les-space-xl)); }

/* Left */
.les-ml-n-xs { margin-left:   calc(-1 * var(--les-space-xs)); }
.les-ml-n-sm { margin-left:   calc(-1 * var(--les-space-sm)); }
.les-ml-n-md { margin-left:   calc(-1 * var(--les-space-md)); }
.les-ml-n-lg { margin-left:   calc(-1 * var(--les-space-lg)); }
.les-ml-n-xl { margin-left:   calc(-1 * var(--les-space-xl)); }

/* Horizontal */
.les-mx-n-xs {
    margin-left:  calc(-1 * var(--les-space-xs));
    margin-right: calc(-1 * var(--les-space-xs));
}
.les-mx-n-sm {
    margin-left:  calc(-1 * var(--les-space-sm));
    margin-right: calc(-1 * var(--les-space-sm));
}
.les-mx-n-md {
    margin-left:  calc(-1 * var(--les-space-md));
    margin-right: calc(-1 * var(--les-space-md));
}
.les-mx-n-lg {
    margin-left:  calc(-1 * var(--les-space-lg));
    margin-right: calc(-1 * var(--les-space-lg));
}
.les-mx-n-xl {
    margin-left:  calc(-1 * var(--les-space-xl));
    margin-right: calc(-1 * var(--les-space-xl));
}

/* Vertical */
.les-my-n-xs, .les-my-n-xs.g-cols.wpb_row {
    margin-top:    calc(-1 * var(--les-space-xs));
    margin-bottom: calc(-1 * var(--les-space-xs));
}
.les-my-n-sm, .les-my-n-sm.g-cols.wpb_row {
    margin-top:    calc(-1 * var(--les-space-sm));
    margin-bottom: calc(-1 * var(--les-space-sm));
}
.les-my-n-md, .les-my-n-md.g-cols.wpb_row {
    margin-top:    calc(-1 * var(--les-space-md));
    margin-bottom: calc(-1 * var(--les-space-md));
}
.les-my-n-lg, .les-my-n-lg.g-cols.wpb_row {
    margin-top:    calc(-1 * var(--les-space-lg));
    margin-bottom: calc(-1 * var(--les-space-lg));
}
.les-my-n-xl, .les-my-n-xl.g-cols.wpb_row {
    margin-top:    calc(-1 * var(--les-space-xl));
    margin-bottom: calc(-1 * var(--les-space-xl));
}


/* - gaps - */
.les-gap-none,
.vc_column_container.les-gap-none > .vc_column-inner,
.g-cols.via_grid.les-gap-none,
.l-section.les-gap-none > .l-section-h > .vc_row {
    gap: 0;
}
.les-gap-xxxs,
.vc_column_container.les-gap-xxxs > .vc_column-inner,
.g-cols.via_grid.les-gap-xxxs,
.l-section.les-gap-xxxs > .l-section-h > .vc_row {
    gap: var(--les-space-xxxs);
}
.les-gap-xxs,
.vc_column_container.les-gap-xxs > .vc_column-inner,
.g-cols.via_grid.les-gap-xxs,
.l-section.les-gap-xxs > .l-section-h > .vc_row {
    gap: var(--les-space-xxs);
}
.les-gap-xs,
.vc_column_container.les-gap-xs > .vc_column-inner,
.g-cols.via_grid.les-gap-xs,
.l-section.les-gap-xs > .l-section-h > .vc_row {
    gap: var(--les-space-xs);
}
.les-gap-sm,
.vc_column_container.les-gap-sm > .vc_column-inner,
.g-cols.via_grid.les-gap-sm,
.l-section.les-gap-sm > .l-section-h > .vc_row {
    gap: var(--les-space-sm);
}
.les-gap,
.les-gap-md,
.vc_column_container.les-gap-md > .vc_column-inner,
.g-cols.via_grid.les-gap-md,
.l-section.les-gap > .l-section-h > .vc_row {
    gap: var(--les-space-md);
}
.les-gap-lg,
.vc_column_container.les-gap-lg > .vc_column-inner,
.g-cols.via_grid.les-gap-lg,
.l-section.les-gap-lg > .l-section-h > .vc_row {
    gap: var(--les-space-lg);
}
.les-gap-xl,
.vc_column_container.les-gap-xl > .vc_column-inner,
.g-cols.via_grid.les-gap-xl,
.l-section.les-gap-xl > .l-section-h > .vc_row {
    gap: var(--les-space-xl);
}
.les-gap-xxl,
.vc_column_container.les-gap-xxl > .vc_column-inner,
.g-cols.via_grid.les-gap-xxl,
.l-section.les-gap-xxl > .l-section-h > .vc_row {
    gap: var(--les-space-xxl);
}
.les-gap-xxxl,
.vc_column_container.les-gap-xxxl > .vc_column-inner,
.g-cols.via_grid.les-gap-xxxl,
.l-section.les-gap-xxxl > .l-section-h > .vc_row {
    gap: var(--les-space-xxxl);
}

.g-cols.via_grid.les-gap-none {
    --gap: 0;
}
.g-cols.via_grid.les-gap-xs {
    --gap: var(--les-space-xs);
}
.g-cols.via_grid.les-gap-sm {
    --gap: var(--les-space-sm);
}
.g-cols.via_grid.les-gap {
    --gap: var(--les-space-md);
}
.g-cols.via_grid.les-gap-lg {
    --gap: var(--les-space-lg);
}
.g-cols.via_grid.les-gap-xl {
    --gap: var(--les-space-xl);
}
.g-cols.via_grid.les-gap-xxl {
    --gap: var(--les-space-xxl);
}
.g-cols.via_grid.les-gap-xxxl {
    --gap: var(--les-space-xxxl);
}

.w-hwrapper.les-gap-none {
    --hwrapper-gap: 0;
}
.w-hwrapper.les-gap-xs {
    --hwrapper-gap: var(--les-space-xs);
}
.w-hwrapper.les-gap-sm {
    --hwrapper-gap: var(--les-space-sm);
}
.w-hwrapper.les-gap-md {
    --hwrapper-gap: var(--les-space-md);
}
.w-hwrapper.les-gap-lg {
    --hwrapper-gap: var(--les-space-lg);
}
.w-hwrapper.les-gap-xl {
    --hwrapper-gap: var(--les-space-xl);
}
.w-hwrapper.les-gap-xxl {
    --hwrapper-gap: var(--les-space-xxl);
}
.w-hwrapper.les-gap-xxxl {
    --hwrapper-gap: var(--les-space-xxxl);
}

.w-vwrapper.les-gap-none {
    --vwrapper-gap: 0;
}
.w-vwrapper.les-gap-xs {
    --vwrapper-gap: var(--les-space-xs);
}
.w-vwrapper.les-gap-sm {
    --vwrapper-gap: var(--les-space-sm);
}
.w-vwrapper.les-gap-md {
    --vwrapper-gap: var(--les-space-md);
}
.w-vwrapper.les-gap-lg {
    --vwrapper-gap: var(--les-space-lg);
}
.w-vwrapper.les-gap-xl {
    --vwrapper-gap: var(--les-space-xl);
}
.w-vwrapper.les-gap-xxl {
    --vwrapper-gap: var(--les-space-xxl);
}
.w-vwrapper.les-gap-xxxl {
    --vwrapper-gap: var(--les-space-xxxl);
}
.w-vwrapper[class*="les-gap-"] {
    gap: unset;
    row-gap: var(--vwrapper-gap);
}
.w-hwrapper[class*="les-gap-"] {
    gap: unset;
    row-gap: var(--hwrapper-gap);
}

.vc_column_container[class*="les-gap-"] > .vc_column-inner {
    --h1-margin-bottom: 0;
    --h2-margin-bottom: 0;
    --h3-margin-bottom: 0;
    --h4-margin-bottom: 0;
    --h5-margin-bottom: 0;
    --h6-margin-bottom: 0;
}


/* ====== GAP — COLUMN / ROW ====== */
.les-gap-col-none  { column-gap: 0; }
.les-gap-col-xxxs  { column-gap: var(--les-space-xxxs); }
.les-gap-col-xxs   { column-gap: var(--les-space-xxs); }
.les-gap-col-xs    { column-gap: var(--les-space-xs); }
.les-gap-col-sm    { column-gap: var(--les-space-sm); }
.les-gap-col-md    { column-gap: var(--les-space-md); }
.les-gap-col-lg    { column-gap: var(--les-space-lg); }
.les-gap-col-xl    { column-gap: var(--les-space-xl); }
.les-gap-col-xxl   { column-gap: var(--les-space-xxl); }
.les-gap-col-xxxl  { column-gap: var(--les-space-xxxl); }

.les-gap-row-none  { row-gap: 0; }
.les-gap-row-xxxs  { row-gap: var(--les-space-xxxs); }
.les-gap-row-xxs   { row-gap: var(--les-space-xxs); }
.les-gap-row-xs    { row-gap: var(--les-space-xs); }
.les-gap-row-sm    { row-gap: var(--les-space-sm); }
.les-gap-row-md    { row-gap: var(--les-space-md); }
.les-gap-row-lg    { row-gap: var(--les-space-lg); }
.les-gap-row-xl    { row-gap: var(--les-space-xl); }
.les-gap-row-xxl   { row-gap: var(--les-space-xxl); }
.les-gap-row-xxxl  { row-gap: var(--les-space-xxxl); }


/* ====== FORMS ====== */
.les input:not([type=submit]),
.les textarea,
.les select {
    border: var(--les-border);
}
.les .form-row {
    margin-left: -.65rem;
    width: calc(100% + 1.3rem);
}
@media (max-width: 512px) {
    .les .form-row {
        margin-left: -.64rem;
        width: calc(100% + .64rem);
    }
}



.les .vc_column_container .vc_column-inner {
    display: flex;
    flex-direction: column;
}
.les .vc_row:not(.valign_bottom, .valign_middle) > .vc_column_container:not(.type_sticky) > .vc_column-inner,
.les .wpb_row:not(.valign_bottom, .valign_middle) > .vc_column_container:not(.type_sticky) > .vc_column-inner {
    height: 100%;
}

/* ---------- Hover lift (card corsi, card servizi) ---------- */
.les .les-hover-lift {
    transition: transform .12s ease, box-shadow .12s ease;
}
.les .les-hover-lift:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(56,31,54,.10);
}


/* ====== ORDER UTILITIES ====== */
/* Uso: "les-order-first-mob" per portare un elemento in cima solo su mobile */
.les-order-first,
.w-btn-wrapper:has(.les-order-first) { order: -1; }
.les-order-last,
.w-btn-wrapper:has(.les-order-last)  { order: 9999; }
.les-order-none,
.w-btn-wrapper:has(.les-order-none)  { order: 0; }


/* ======================================================
   RESPONSIVE UTILITIES
   -desk → min-width: 1025px              (desktop only)
   -tab  → 601px – 1024px               (tablet only)
   -mob  → max-width:  600px            (mobile only)
   Uso: es. "les-gap-xl les-gap-md-tab les-gap-sm-mob"
   ====================================================== */

@media (min-width: 1025px) {

    /* ---- gap ---- */
    .les-gap-none-desk,
    .vc_column_container.les-gap-none-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-none-desk,
    .l-section.les-gap-none-desk > .l-section-h > .vc_row { gap: 0; }
    .g-cols.via_grid.les-gap-none-desk { --gap: 0; }
    .w-hwrapper.les-gap-none-desk { --hwrapper-gap: 0; }
    .w-vwrapper.les-gap-none-desk { --vwrapper-gap: 0; }

    .les-gap-xxxs-desk,
    .vc_column_container.les-gap-xxxs-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxxs-desk,
    .l-section.les-gap-xxxs-desk > .l-section-h > .vc_row { gap: var(--les-space-xxxs); }
    .g-cols.via_grid.les-gap-xxxs-desk { --gap: var(--les-space-xxxs); }
    .w-hwrapper.les-gap-xxxs-desk { --hwrapper-gap: var(--les-space-xxxs); }
    .w-vwrapper.les-gap-xxxs-desk { --vwrapper-gap: var(--les-space-xxxs); }

    .les-gap-xxs-desk,
    .vc_column_container.les-gap-xxs-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxs-desk,
    .l-section.les-gap-xxs-desk > .l-section-h > .vc_row { gap: var(--les-space-xxs); }
    .g-cols.via_grid.les-gap-xxs-desk { --gap: var(--les-space-xxs); }
    .w-hwrapper.les-gap-xxs-desk { --hwrapper-gap: var(--les-space-xxs); }
    .w-vwrapper.les-gap-xxs-desk { --vwrapper-gap: var(--les-space-xxs); }

    .les-gap-xs-desk,
    .vc_column_container.les-gap-xs-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-xs-desk,
    .l-section.les-gap-xs-desk > .l-section-h > .vc_row { gap: var(--les-space-xs); }
    .g-cols.via_grid.les-gap-xs-desk { --gap: var(--les-space-xs); }
    .w-hwrapper.les-gap-xs-desk { --hwrapper-gap: var(--les-space-xs); }
    .w-vwrapper.les-gap-xs-desk { --vwrapper-gap: var(--les-space-xs); }

    .les-gap-sm-desk,
    .vc_column_container.les-gap-sm-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-sm-desk,
    .l-section.les-gap-sm-desk > .l-section-h > .vc_row { gap: var(--les-space-sm); }
    .g-cols.via_grid.les-gap-sm-desk { --gap: var(--les-space-sm); }
    .w-hwrapper.les-gap-sm-desk { --hwrapper-gap: var(--les-space-sm); }
    .w-vwrapper.les-gap-sm-desk { --vwrapper-gap: var(--les-space-sm); }

    .les-gap-md-desk,
    .vc_column_container.les-gap-md-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-md-desk,
    .l-section.les-gap-md-desk > .l-section-h > .vc_row { gap: var(--les-space-md); }
    .g-cols.via_grid.les-gap-md-desk { --gap: var(--les-space-md); }
    .w-hwrapper.les-gap-md-desk { --hwrapper-gap: var(--les-space-md); }
    .w-vwrapper.les-gap-md-desk { --vwrapper-gap: var(--les-space-md); }

    .les-gap-lg-desk,
    .vc_column_container.les-gap-lg-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-lg-desk,
    .l-section.les-gap-lg-desk > .l-section-h > .vc_row { gap: var(--les-space-lg); }
    .g-cols.via_grid.les-gap-lg-desk { --gap: var(--les-space-lg); }
    .w-hwrapper.les-gap-lg-desk { --hwrapper-gap: var(--les-space-lg); }
    .w-vwrapper.les-gap-lg-desk { --vwrapper-gap: var(--les-space-lg); }

    .les-gap-xl-desk,
    .vc_column_container.les-gap-xl-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-xl-desk,
    .l-section.les-gap-xl-desk > .l-section-h > .vc_row { gap: var(--les-space-xl); }
    .g-cols.via_grid.les-gap-xl-desk { --gap: var(--les-space-xl); }
    .w-hwrapper.les-gap-xl-desk { --hwrapper-gap: var(--les-space-xl); }
    .w-vwrapper.les-gap-xl-desk { --vwrapper-gap: var(--les-space-xl); }

    .les-gap-xxl-desk,
    .vc_column_container.les-gap-xxl-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxl-desk,
    .l-section.les-gap-xxl-desk > .l-section-h > .vc_row { gap: var(--les-space-xxl); }
    .g-cols.via_grid.les-gap-xxl-desk { --gap: var(--les-space-xxl); }
    .w-hwrapper.les-gap-xxl-desk { --hwrapper-gap: var(--les-space-xxl); }
    .w-vwrapper.les-gap-xxl-desk { --vwrapper-gap: var(--les-space-xxl); }

    .les-gap-xxxl-desk,
    .vc_column_container.les-gap-xxxl-desk > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxxl-desk,
    .l-section.les-gap-xxxl-desk > .l-section-h > .vc_row { gap: var(--les-space-xxxl); }
    .g-cols.via_grid.les-gap-xxxl-desk { --gap: var(--les-space-xxxl); }
    .w-hwrapper.les-gap-xxxl-desk { --hwrapper-gap: var(--les-space-xxxl); }
    .w-vwrapper.les-gap-xxxl-desk { --vwrapper-gap: var(--les-space-xxxl); }

    /* ---- column-gap / row-gap ---- */
    .les-gap-col-none-desk  { column-gap: 0; }
    .les-gap-col-xxxs-desk  { column-gap: var(--les-space-xxxs); }
    .les-gap-col-xxs-desk   { column-gap: var(--les-space-xxs); }
    .les-gap-col-xs-desk    { column-gap: var(--les-space-xs); }
    .les-gap-col-sm-desk    { column-gap: var(--les-space-sm); }
    .les-gap-col-md-desk    { column-gap: var(--les-space-md); }
    .les-gap-col-lg-desk    { column-gap: var(--les-space-lg); }
    .les-gap-col-xl-desk    { column-gap: var(--les-space-xl); }
    .les-gap-col-xxl-desk   { column-gap: var(--les-space-xxl); }
    .les-gap-col-xxxl-desk  { column-gap: var(--les-space-xxxl); }

    .les-gap-row-none-desk  { row-gap: 0; }
    .les-gap-row-xxxs-desk  { row-gap: var(--les-space-xxxs); }
    .les-gap-row-xxs-desk   { row-gap: var(--les-space-xxs); }
    .les-gap-row-xs-desk    { row-gap: var(--les-space-xs); }
    .les-gap-row-sm-desk    { row-gap: var(--les-space-sm); }
    .les-gap-row-md-desk    { row-gap: var(--les-space-md); }
    .les-gap-row-lg-desk    { row-gap: var(--les-space-lg); }
    .les-gap-row-xl-desk    { row-gap: var(--les-space-xl); }
    .les-gap-row-xxl-desk   { row-gap: var(--les-space-xxl); }
    .les-gap-row-xxxl-desk  { row-gap: var(--les-space-xxxl); }

    /* ---- padding — all sides ---- */
    .les-p-none-desk,  .les-p-none-desk.l-section[class*="height"]  { padding: 0; }
    .les-p-xxxs-desk,  .les-p-xxxs-desk.l-section[class*="height"]  { padding: var(--les-space-xxxs); }
    .les-p-xxs-desk,   .les-p-xxs-desk.l-section[class*="height"]   { padding: var(--les-space-xxs); }
    .les-p-xs-desk,    .les-p-xs-desk.l-section[class*="height"]    { padding: var(--les-space-xs); }
    .les-p-sm-desk,    .les-p-sm-desk.l-section[class*="height"]    { padding: var(--les-space-sm); }
    .les-p-md-desk,    .les-p-md-desk.l-section[class*="height"]    { padding: var(--les-space-md); }
    .les-p-lg-desk,    .les-p-lg-desk.l-section[class*="height"]    { padding: var(--les-space-lg); }
    .les-p-xl-desk,    .les-p-xl-desk.l-section[class*="height"]    { padding: var(--les-space-xl); }
    .les-p-xxl-desk,   .les-p-xxl-desk.l-section[class*="height"]   { padding: var(--les-space-xxl); }
    .les-p-xxxl-desk,  .les-p-xxxl-desk.l-section[class*="height"]  { padding: var(--les-space-xxxl); }

    /* ---- padding — top ---- */
    .les-pt-none-desk,  .les-pt-none-desk.l-section[class*="height"]  { padding-top: 0; }
    .les-pt-xxxs-desk,  .les-pt-xxxs-desk.l-section[class*="height"]  { padding-top: var(--les-space-xxxs); }
    .les-pt-xxs-desk,   .les-pt-xxs-desk.l-section[class*="height"]   { padding-top: var(--les-space-xxs); }
    .les-pt-xs-desk,    .les-pt-xs-desk.l-section[class*="height"]    { padding-top: var(--les-space-xs); }
    .les-pt-sm-desk,    .les-pt-sm-desk.l-section[class*="height"]    { padding-top: var(--les-space-sm); }
    .les-pt-md-desk,    .les-pt-md-desk.l-section[class*="height"]    { padding-top: var(--les-space-md); }
    .les-pt-lg-desk,    .les-pt-lg-desk.l-section[class*="height"]    { padding-top: var(--les-space-lg); }
    .les-pt-xl-desk,    .les-pt-xl-desk.l-section[class*="height"]    { padding-top: var(--les-space-xl); }
    .les-pt-xxl-desk,   .les-pt-xxl-desk.l-section[class*="height"]   { padding-top: var(--les-space-xxl); }
    .les-pt-xxxl-desk,  .les-pt-xxxl-desk.l-section[class*="height"]  { padding-top: var(--les-space-xxxl); }

    /* ---- padding — right ---- */
    .les-pr-none-desk,  .les-pr-none-desk.l-section[class*="height"]  { padding-right: 0; }
    .les-pr-xxxs-desk,  .les-pr-xxxs-desk.l-section[class*="height"]  { padding-right: var(--les-space-xxxs); }
    .les-pr-xxs-desk,   .les-pr-xxs-desk.l-section[class*="height"]   { padding-right: var(--les-space-xxs); }
    .les-pr-xs-desk,    .les-pr-xs-desk.l-section[class*="height"]    { padding-right: var(--les-space-xs); }
    .les-pr-sm-desk,    .les-pr-sm-desk.l-section[class*="height"]    { padding-right: var(--les-space-sm); }
    .les-pr-md-desk,    .les-pr-md-desk.l-section[class*="height"]    { padding-right: var(--les-space-md); }
    .les-pr-lg-desk,    .les-pr-lg-desk.l-section[class*="height"]    { padding-right: var(--les-space-lg); }
    .les-pr-xl-desk,    .les-pr-xl-desk.l-section[class*="height"]    { padding-right: var(--les-space-xl); }
    .les-pr-xxl-desk,   .les-pr-xxl-desk.l-section[class*="height"]   { padding-right: var(--les-space-xxl); }
    .les-pr-xxxl-desk,  .les-pr-xxxl-desk.l-section[class*="height"]  { padding-right: var(--les-space-xxxl); }

    /* ---- padding — bottom ---- */
    .les-pb-none-desk,  .les-pb-none-desk.l-section[class*="height"]  { padding-bottom: 0; }
    .les-pb-xxxs-desk,  .les-pb-xxxs-desk.l-section[class*="height"]  { padding-bottom: var(--les-space-xxxs); }
    .les-pb-xxs-desk,   .les-pb-xxs-desk.l-section[class*="height"]   { padding-bottom: var(--les-space-xxs); }
    .les-pb-xs-desk,    .les-pb-xs-desk.l-section[class*="height"]    { padding-bottom: var(--les-space-xs); }
    .les-pb-sm-desk,    .les-pb-sm-desk.l-section[class*="height"]    { padding-bottom: var(--les-space-sm); }
    .les-pb-md-desk,    .les-pb-md-desk.l-section[class*="height"]    { padding-bottom: var(--les-space-md); }
    .les-pb-lg-desk,    .les-pb-lg-desk.l-section[class*="height"]    { padding-bottom: var(--les-space-lg); }
    .les-pb-xl-desk,    .les-pb-xl-desk.l-section[class*="height"]    { padding-bottom: var(--les-space-xl); }
    .les-pb-xxl-desk,   .les-pb-xxl-desk.l-section[class*="height"]   { padding-bottom: var(--les-space-xxl); }
    .les-pb-xxxl-desk,  .les-pb-xxxl-desk.l-section[class*="height"]  { padding-bottom: var(--les-space-xxxl); }

    /* ---- padding — left ---- */
    .les-pl-none-desk,  .les-pl-none-desk.l-section[class*="height"]  { padding-left: 0; }
    .les-pl-xxxs-desk,  .les-pl-xxxs-desk.l-section[class*="height"]  { padding-left: var(--les-space-xxxs); }
    .les-pl-xxs-desk,   .les-pl-xxs-desk.l-section[class*="height"]   { padding-left: var(--les-space-xxs); }
    .les-pl-xs-desk,    .les-pl-xs-desk.l-section[class*="height"]    { padding-left: var(--les-space-xs); }
    .les-pl-sm-desk,    .les-pl-sm-desk.l-section[class*="height"]    { padding-left: var(--les-space-sm); }
    .les-pl-md-desk,    .les-pl-md-desk.l-section[class*="height"]    { padding-left: var(--les-space-md); }
    .les-pl-lg-desk,    .les-pl-lg-desk.l-section[class*="height"]    { padding-left: var(--les-space-lg); }
    .les-pl-xl-desk,    .les-pl-xl-desk.l-section[class*="height"]    { padding-left: var(--les-space-xl); }
    .les-pl-xxl-desk,   .les-pl-xxl-desk.l-section[class*="height"]   { padding-left: var(--les-space-xxl); }
    .les-pl-xxxl-desk,  .les-pl-xxxl-desk.l-section[class*="height"]  { padding-left: var(--les-space-xxxl); }

    /* ---- padding — horizontal ---- */
    .les-px-none-desk,  .les-px-none-desk.l-section[class*="height"]  { padding-left: 0; padding-right: 0; }
    .les-px-xxxs-desk,  .les-px-xxxs-desk.l-section[class*="height"]  { padding-left: var(--les-space-xxxs); padding-right: var(--les-space-xxxs); }
    .les-px-xxs-desk,   .les-px-xxs-desk.l-section[class*="height"]   { padding-left: var(--les-space-xxs);  padding-right: var(--les-space-xxs); }
    .les-px-xs-desk,    .les-px-xs-desk.l-section[class*="height"]    { padding-left: var(--les-space-xs);   padding-right: var(--les-space-xs); }
    .les-px-sm-desk,    .les-px-sm-desk.l-section[class*="height"]    { padding-left: var(--les-space-sm);   padding-right: var(--les-space-sm); }
    .les-px-md-desk,    .les-px-md-desk.l-section[class*="height"]    { padding-left: var(--les-space-md);   padding-right: var(--les-space-md); }
    .les-px-lg-desk,    .les-px-lg-desk.l-section[class*="height"]    { padding-left: var(--les-space-lg);   padding-right: var(--les-space-lg); }
    .les-px-xl-desk,    .les-px-xl-desk.l-section[class*="height"]    { padding-left: var(--les-space-xl);   padding-right: var(--les-space-xl); }
    .les-px-xxl-desk,   .les-px-xxl-desk.l-section[class*="height"]   { padding-left: var(--les-space-xxl);  padding-right: var(--les-space-xxl); }
    .les-px-xxxl-desk,  .les-px-xxxl-desk.l-section[class*="height"]  { padding-left: var(--les-space-xxxl); padding-right: var(--les-space-xxxl); }

    /* ---- padding — vertical ---- */
    .les-py-none-desk,  .les-py-none-desk.l-section[class*="height"]  { padding-top: 0; padding-bottom: 0; }
    .les-py-xxxs-desk,  .les-py-xxxs-desk.l-section[class*="height"]  { padding-top: var(--les-space-xxxs); padding-bottom: var(--les-space-xxxs); }
    .les-py-xxs-desk,   .les-py-xxs-desk.l-section[class*="height"]   { padding-top: var(--les-space-xxs);  padding-bottom: var(--les-space-xxs); }
    .les-py-xs-desk,    .les-py-xs-desk.l-section[class*="height"]    { padding-top: var(--les-space-xs);   padding-bottom: var(--les-space-xs); }
    .les-py-sm-desk,    .les-py-sm-desk.l-section[class*="height"]    { padding-top: var(--les-space-sm);   padding-bottom: var(--les-space-sm); }
    .les-py-md-desk,    .les-py-md-desk.l-section[class*="height"]    { padding-top: var(--les-space-md);   padding-bottom: var(--les-space-md); }
    .les-py-lg-desk,    .les-py-lg-desk.l-section[class*="height"]    { padding-top: var(--les-space-lg);   padding-bottom: var(--les-space-lg); }
    .les-py-xl-desk,    .les-py-xl-desk.l-section[class*="height"]    { padding-top: var(--les-space-xl);   padding-bottom: var(--les-space-xl); }
    .les-py-xxl-desk,   .les-py-xxl-desk.l-section[class*="height"]   { padding-top: var(--les-space-xxl);  padding-bottom: var(--les-space-xxl); }
    .les-py-xxxl-desk,  .les-py-xxxl-desk.l-section[class*="height"]  { padding-top: var(--les-space-xxxl); padding-bottom: var(--les-space-xxxl); }

    /* ---- margin — all sides ---- */
    .les-m-none-desk, .les-m-none-desk.g-cols.wpb_row { margin: 0; }
    .les-m-xs-desk,   .les-m-xs-desk.g-cols.wpb_row   { margin: var(--les-space-xs); }
    .les-m-sm-desk,   .les-m-sm-desk.g-cols.wpb_row   { margin: var(--les-space-sm); }
    .les-m-md-desk,   .les-m-md-desk.g-cols.wpb_row   { margin: var(--les-space-md); }
    .les-m-lg-desk,   .les-m-lg-desk.g-cols.wpb_row   { margin: var(--les-space-lg); }
    .les-m-xl-desk,   .les-m-xl-desk.g-cols.wpb_row   { margin: var(--les-space-xl); }

    /* ---- margin — top ---- */
    .les-mt-none-desk { margin-top: 0; }
    .les-mt-xs-desk   { margin-top: var(--les-space-xs); }
    .les-mt-sm-desk   { margin-top: var(--les-space-sm); }
    .les-mt-md-desk   { margin-top: var(--les-space-md); }
    .les-mt-lg-desk   { margin-top: var(--les-space-lg); }
    .les-mt-xl-desk   { margin-top: var(--les-space-xl); }

    /* ---- margin — right ---- */
    .les-mr-none-desk { margin-right: 0; }
    .les-mr-xs-desk   { margin-right: var(--les-space-xs); }
    .les-mr-sm-desk   { margin-right: var(--les-space-sm); }
    .les-mr-md-desk   { margin-right: var(--les-space-md); }
    .les-mr-lg-desk   { margin-right: var(--les-space-lg); }
    .les-mr-xl-desk   { margin-right: var(--les-space-xl); }

    /* ---- margin — bottom ---- */
    .les-mb-none-desk, .les-mb-none-desk.g-cols.wpb_row { margin-bottom: 0; }
    .les-mb-xs-desk,   .les-mb-xs-desk.g-cols.wpb_row   { margin-bottom: var(--les-space-xs); }
    .les-mb-sm-desk,   .les-mb-sm-desk.g-cols.wpb_row   { margin-bottom: var(--les-space-sm); }
    .les-mb-md-desk,   .les-mb-md-desk.g-cols.wpb_row   { margin-bottom: var(--les-space-md); }
    .les-mb-lg-desk,   .les-mb-lg-desk.g-cols.wpb_row   { margin-bottom: var(--les-space-lg); }
    .les-mb-xl-desk,   .les-mb-xl-desk.g-cols.wpb_row   { margin-bottom: var(--les-space-xl); }

    /* ---- margin — left ---- */
    .les-ml-none-desk { margin-left: 0; }
    .les-ml-xs-desk   { margin-left: var(--les-space-xs); }
    .les-ml-sm-desk   { margin-left: var(--les-space-sm); }
    .les-ml-md-desk   { margin-left: var(--les-space-md); }
    .les-ml-lg-desk   { margin-left: var(--les-space-lg); }
    .les-ml-xl-desk   { margin-left: var(--les-space-xl); }

    /* ---- margin — horizontal ---- */
    .les-mx-none-desk { margin-left: 0; margin-right: 0; }
    .les-mx-xs-desk   { margin-left: var(--les-space-xs);  margin-right: var(--les-space-xs); }
    .les-mx-sm-desk   { margin-left: var(--les-space-sm);  margin-right: var(--les-space-sm); }
    .les-mx-md-desk   { margin-left: var(--les-space-md);  margin-right: var(--les-space-md); }
    .les-mx-lg-desk   { margin-left: var(--les-space-lg);  margin-right: var(--les-space-lg); }
    .les-mx-xl-desk   { margin-left: var(--les-space-xl);  margin-right: var(--les-space-xl); }

    /* ---- margin — vertical ---- */
    .les-my-none-desk, .les-my-none-desk.g-cols.wpb_row { margin-top: 0; margin-bottom: 0; }
    .les-my-xs-desk,   .les-my-xs-desk.g-cols.wpb_row   { margin-top: var(--les-space-xs);  margin-bottom: var(--les-space-xs); }
    .les-my-sm-desk,   .les-my-sm-desk.g-cols.wpb_row   { margin-top: var(--les-space-sm);  margin-bottom: var(--les-space-sm); }
    .les-my-md-desk,   .les-my-md-desk.g-cols.wpb_row   { margin-top: var(--les-space-md);  margin-bottom: var(--les-space-md); }
    .les-my-lg-desk,   .les-my-lg-desk.g-cols.wpb_row   { margin-top: var(--les-space-lg);  margin-bottom: var(--les-space-lg); }
    .les-my-xl-desk,   .les-my-xl-desk.g-cols.wpb_row   { margin-top: var(--les-space-xl);  margin-bottom: var(--les-space-xl); }

    /* ---- negative margin — all sides ---- */
    .les-m-n-xs-desk,  .les-m-n-xs-desk.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-xs)); }
    .les-m-n-sm-desk,  .les-m-n-sm-desk.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-sm)); }
    .les-m-n-md-desk,  .les-m-n-md-desk.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-md)); }
    .les-m-n-lg-desk,  .les-m-n-lg-desk.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-lg)); }
    .les-m-n-xl-desk,  .les-m-n-xl-desk.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — top ---- */
    .les-mt-n-xs-desk { margin-top: calc(-1 * var(--les-space-xs)); }
    .les-mt-n-sm-desk { margin-top: calc(-1 * var(--les-space-sm)); }
    .les-mt-n-md-desk { margin-top: calc(-1 * var(--les-space-md)); }
    .les-mt-n-lg-desk { margin-top: calc(-1 * var(--les-space-lg)); }
    .les-mt-n-xl-desk { margin-top: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — right ---- */
    .les-mr-n-xs-desk { margin-right: calc(-1 * var(--les-space-xs)); }
    .les-mr-n-sm-desk { margin-right: calc(-1 * var(--les-space-sm)); }
    .les-mr-n-md-desk { margin-right: calc(-1 * var(--les-space-md)); }
    .les-mr-n-lg-desk { margin-right: calc(-1 * var(--les-space-lg)); }
    .les-mr-n-xl-desk { margin-right: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — bottom ---- */
    .les-mb-n-xs-desk,  .les-mb-n-xs-desk.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-xs)); }
    .les-mb-n-sm-desk,  .les-mb-n-sm-desk.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-sm)); }
    .les-mb-n-md-desk,  .les-mb-n-md-desk.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-md)); }
    .les-mb-n-lg-desk,  .les-mb-n-lg-desk.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-lg)); }
    .les-mb-n-xl-desk,  .les-mb-n-xl-desk.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — left ---- */
    .les-ml-n-xs-desk { margin-left: calc(-1 * var(--les-space-xs)); }
    .les-ml-n-sm-desk { margin-left: calc(-1 * var(--les-space-sm)); }
    .les-ml-n-md-desk { margin-left: calc(-1 * var(--les-space-md)); }
    .les-ml-n-lg-desk { margin-left: calc(-1 * var(--les-space-lg)); }
    .les-ml-n-xl-desk { margin-left: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — horizontal ---- */
    .les-mx-n-xs-desk { margin-left: calc(-1 * var(--les-space-xs));  margin-right: calc(-1 * var(--les-space-xs)); }
    .les-mx-n-sm-desk { margin-left: calc(-1 * var(--les-space-sm));  margin-right: calc(-1 * var(--les-space-sm)); }
    .les-mx-n-md-desk { margin-left: calc(-1 * var(--les-space-md));  margin-right: calc(-1 * var(--les-space-md)); }
    .les-mx-n-lg-desk { margin-left: calc(-1 * var(--les-space-lg));  margin-right: calc(-1 * var(--les-space-lg)); }
    .les-mx-n-xl-desk { margin-left: calc(-1 * var(--les-space-xl));  margin-right: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — vertical ---- */
    .les-my-n-xs-desk,  .les-my-n-xs-desk.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-xs));  margin-bottom: calc(-1 * var(--les-space-xs)); }
    .les-my-n-sm-desk,  .les-my-n-sm-desk.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-sm));  margin-bottom: calc(-1 * var(--les-space-sm)); }
    .les-my-n-md-desk,  .les-my-n-md-desk.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-md));  margin-bottom: calc(-1 * var(--les-space-md)); }
    .les-my-n-lg-desk,  .les-my-n-lg-desk.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-lg));  margin-bottom: calc(-1 * var(--les-space-lg)); }
    .les-my-n-xl-desk,  .les-my-n-xl-desk.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-xl));  margin-bottom: calc(-1 * var(--les-space-xl)); }

    /* ---- order ---- */
    .les-order-first-desk,
    .w-btn-wrapper:has(.les-order-first-desk) { order: -1; }
    .les-order-last-desk,
    .w-btn-wrapper:has(.les-order-last-desk)  { order: 9999; }
    .les-order-none-desk,
    .w-btn-wrapper:has(.les-order-none-desk)  { order: 0; }
}

@media (min-width: 601px) and (max-width: 1024px) {

    /* ---- gap ---- */
    .les-gap-none-tab,
    .vc_column_container.les-gap-none-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-none-tab,
    .l-section.les-gap-none-tab > .l-section-h > .vc_row { gap: 0; }
    .g-cols.via_grid.les-gap-none-tab { --gap: 0; }
    .w-hwrapper.les-gap-none-tab { --hwrapper-gap: 0; }
    .w-vwrapper.les-gap-none-tab { --vwrapper-gap: 0; }

    .les-gap-xxxs-tab,
    .vc_column_container.les-gap-xxxs-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxxs-tab,
    .l-section.les-gap-xxxs-tab > .l-section-h > .vc_row { gap: var(--les-space-xxxs); }
    .g-cols.via_grid.les-gap-xxxs-tab { --gap: var(--les-space-xxxs); }
    .w-hwrapper.les-gap-xxxs-tab { --hwrapper-gap: var(--les-space-xxxs); }
    .w-vwrapper.les-gap-xxxs-tab { --vwrapper-gap: var(--les-space-xxxs); }

    .les-gap-xxs-tab,
    .vc_column_container.les-gap-xxs-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxs-tab,
    .l-section.les-gap-xxs-tab > .l-section-h > .vc_row { gap: var(--les-space-xxs); }
    .g-cols.via_grid.les-gap-xxs-tab { --gap: var(--les-space-xxs); }
    .w-hwrapper.les-gap-xxs-tab { --hwrapper-gap: var(--les-space-xxs); }
    .w-vwrapper.les-gap-xxs-tab { --vwrapper-gap: var(--les-space-xxs); }

    .les-gap-xs-tab,
    .vc_column_container.les-gap-xs-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-xs-tab,
    .l-section.les-gap-xs-tab > .l-section-h > .vc_row { gap: var(--les-space-xs); }
    .g-cols.via_grid.les-gap-xs-tab { --gap: var(--les-space-xs); }
    .w-hwrapper.les-gap-xs-tab { --hwrapper-gap: var(--les-space-xs); }
    .w-vwrapper.les-gap-xs-tab { --vwrapper-gap: var(--les-space-xs); }

    .les-gap-sm-tab,
    .vc_column_container.les-gap-sm-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-sm-tab,
    .l-section.les-gap-sm-tab > .l-section-h > .vc_row { gap: var(--les-space-sm); }
    .g-cols.via_grid.les-gap-sm-tab { --gap: var(--les-space-sm); }
    .w-hwrapper.les-gap-sm-tab { --hwrapper-gap: var(--les-space-sm); }
    .w-vwrapper.les-gap-sm-tab { --vwrapper-gap: var(--les-space-sm); }

    .les-gap-md-tab,
    .vc_column_container.les-gap-md-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-md-tab,
    .l-section.les-gap-md-tab > .l-section-h > .vc_row { gap: var(--les-space-md); }
    .g-cols.via_grid.les-gap-md-tab { --gap: var(--les-space-md); }
    .w-hwrapper.les-gap-md-tab { --hwrapper-gap: var(--les-space-md); }
    .w-vwrapper.les-gap-md-tab { --vwrapper-gap: var(--les-space-md); }

    .les-gap-lg-tab,
    .vc_column_container.les-gap-lg-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-lg-tab,
    .l-section.les-gap-lg-tab > .l-section-h > .vc_row { gap: var(--les-space-lg); }
    .g-cols.via_grid.les-gap-lg-tab { --gap: var(--les-space-lg); }
    .w-hwrapper.les-gap-lg-tab { --hwrapper-gap: var(--les-space-lg); }
    .w-vwrapper.les-gap-lg-tab { --vwrapper-gap: var(--les-space-lg); }

    .les-gap-xl-tab,
    .vc_column_container.les-gap-xl-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-xl-tab,
    .l-section.les-gap-xl-tab > .l-section-h > .vc_row { gap: var(--les-space-xl); }
    .g-cols.via_grid.les-gap-xl-tab { --gap: var(--les-space-xl); }
    .w-hwrapper.les-gap-xl-tab { --hwrapper-gap: var(--les-space-xl); }
    .w-vwrapper.les-gap-xl-tab { --vwrapper-gap: var(--les-space-xl); }

    .les-gap-xxl-tab,
    .vc_column_container.les-gap-xxl-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxl-tab,
    .l-section.les-gap-xxl-tab > .l-section-h > .vc_row { gap: var(--les-space-xxl); }
    .g-cols.via_grid.les-gap-xxl-tab { --gap: var(--les-space-xxl); }
    .w-hwrapper.les-gap-xxl-tab { --hwrapper-gap: var(--les-space-xxl); }
    .w-vwrapper.les-gap-xxl-tab { --vwrapper-gap: var(--les-space-xxl); }

    .les-gap-xxxl-tab,
    .vc_column_container.les-gap-xxxl-tab > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxxl-tab,
    .l-section.les-gap-xxxl-tab > .l-section-h > .vc_row { gap: var(--les-space-xxxl); }
    .g-cols.via_grid.les-gap-xxxl-tab { --gap: var(--les-space-xxxl); }
    .w-hwrapper.les-gap-xxxl-tab { --hwrapper-gap: var(--les-space-xxxl); }
    .w-vwrapper.les-gap-xxxl-tab { --vwrapper-gap: var(--les-space-xxxl); }

    /* ---- column-gap / row-gap ---- */
    .les-gap-col-none-tab  { column-gap: 0; }
    .les-gap-col-xxxs-tab  { column-gap: var(--les-space-xxxs); }
    .les-gap-col-xxs-tab   { column-gap: var(--les-space-xxs); }
    .les-gap-col-xs-tab    { column-gap: var(--les-space-xs); }
    .les-gap-col-sm-tab    { column-gap: var(--les-space-sm); }
    .les-gap-col-md-tab    { column-gap: var(--les-space-md); }
    .les-gap-col-lg-tab    { column-gap: var(--les-space-lg); }
    .les-gap-col-xl-tab    { column-gap: var(--les-space-xl); }
    .les-gap-col-xxl-tab   { column-gap: var(--les-space-xxl); }
    .les-gap-col-xxxl-tab  { column-gap: var(--les-space-xxxl); }

    .les-gap-row-none-tab  { row-gap: 0; }
    .les-gap-row-xxxs-tab  { row-gap: var(--les-space-xxxs); }
    .les-gap-row-xxs-tab   { row-gap: var(--les-space-xxs); }
    .les-gap-row-xs-tab    { row-gap: var(--les-space-xs); }
    .les-gap-row-sm-tab    { row-gap: var(--les-space-sm); }
    .les-gap-row-md-tab    { row-gap: var(--les-space-md); }
    .les-gap-row-lg-tab    { row-gap: var(--les-space-lg); }
    .les-gap-row-xl-tab    { row-gap: var(--les-space-xl); }
    .les-gap-row-xxl-tab   { row-gap: var(--les-space-xxl); }
    .les-gap-row-xxxl-tab  { row-gap: var(--les-space-xxxl); }

    /* ---- padding — all sides ---- */
    .les-p-none-tab,  .les-p-none-tab.l-section[class*="height"]  { padding: 0; }
    .les-p-xxxs-tab,  .les-p-xxxs-tab.l-section[class*="height"]  { padding: var(--les-space-xxxs); }
    .les-p-xxs-tab,   .les-p-xxs-tab.l-section[class*="height"]   { padding: var(--les-space-xxs); }
    .les-p-xs-tab,    .les-p-xs-tab.l-section[class*="height"]    { padding: var(--les-space-xs); }
    .les-p-sm-tab,    .les-p-sm-tab.l-section[class*="height"]    { padding: var(--les-space-sm); }
    .les-p-md-tab,    .les-p-md-tab.l-section[class*="height"]    { padding: var(--les-space-md); }
    .les-p-lg-tab,    .les-p-lg-tab.l-section[class*="height"]    { padding: var(--les-space-lg); }
    .les-p-xl-tab,    .les-p-xl-tab.l-section[class*="height"]    { padding: var(--les-space-xl); }
    .les-p-xxl-tab,   .les-p-xxl-tab.l-section[class*="height"]   { padding: var(--les-space-xxl); }
    .les-p-xxxl-tab,  .les-p-xxxl-tab.l-section[class*="height"]  { padding: var(--les-space-xxxl); }

    /* ---- padding — top ---- */
    .les-pt-none-tab,  .les-pt-none-tab.l-section[class*="height"]  { padding-top: 0; }
    .les-pt-xxxs-tab,  .les-pt-xxxs-tab.l-section[class*="height"]  { padding-top: var(--les-space-xxxs); }
    .les-pt-xxs-tab,   .les-pt-xxs-tab.l-section[class*="height"]   { padding-top: var(--les-space-xxs); }
    .les-pt-xs-tab,    .les-pt-xs-tab.l-section[class*="height"]    { padding-top: var(--les-space-xs); }
    .les-pt-sm-tab,    .les-pt-sm-tab.l-section[class*="height"]    { padding-top: var(--les-space-sm); }
    .les-pt-md-tab,    .les-pt-md-tab.l-section[class*="height"]    { padding-top: var(--les-space-md); }
    .les-pt-lg-tab,    .les-pt-lg-tab.l-section[class*="height"]    { padding-top: var(--les-space-lg); }
    .les-pt-xl-tab,    .les-pt-xl-tab.l-section[class*="height"]    { padding-top: var(--les-space-xl); }
    .les-pt-xxl-tab,   .les-pt-xxl-tab.l-section[class*="height"]   { padding-top: var(--les-space-xxl); }
    .les-pt-xxxl-tab,  .les-pt-xxxl-tab.l-section[class*="height"]  { padding-top: var(--les-space-xxxl); }

    /* ---- padding — right ---- */
    .les-pr-none-tab,  .les-pr-none-tab.l-section[class*="height"]  { padding-right: 0; }
    .les-pr-xxxs-tab,  .les-pr-xxxs-tab.l-section[class*="height"]  { padding-right: var(--les-space-xxxs); }
    .les-pr-xxs-tab,   .les-pr-xxs-tab.l-section[class*="height"]   { padding-right: var(--les-space-xxs); }
    .les-pr-xs-tab,    .les-pr-xs-tab.l-section[class*="height"]    { padding-right: var(--les-space-xs); }
    .les-pr-sm-tab,    .les-pr-sm-tab.l-section[class*="height"]    { padding-right: var(--les-space-sm); }
    .les-pr-md-tab,    .les-pr-md-tab.l-section[class*="height"]    { padding-right: var(--les-space-md); }
    .les-pr-lg-tab,    .les-pr-lg-tab.l-section[class*="height"]    { padding-right: var(--les-space-lg); }
    .les-pr-xl-tab,    .les-pr-xl-tab.l-section[class*="height"]    { padding-right: var(--les-space-xl); }
    .les-pr-xxl-tab,   .les-pr-xxl-tab.l-section[class*="height"]   { padding-right: var(--les-space-xxl); }
    .les-pr-xxxl-tab,  .les-pr-xxxl-tab.l-section[class*="height"]  { padding-right: var(--les-space-xxxl); }

    /* ---- padding — bottom ---- */
    .les-pb-none-tab,  .les-pb-none-tab.l-section[class*="height"]  { padding-bottom: 0; }
    .les-pb-xxxs-tab,  .les-pb-xxxs-tab.l-section[class*="height"]  { padding-bottom: var(--les-space-xxxs); }
    .les-pb-xxs-tab,   .les-pb-xxs-tab.l-section[class*="height"]   { padding-bottom: var(--les-space-xxs); }
    .les-pb-xs-tab,    .les-pb-xs-tab.l-section[class*="height"]    { padding-bottom: var(--les-space-xs); }
    .les-pb-sm-tab,    .les-pb-sm-tab.l-section[class*="height"]    { padding-bottom: var(--les-space-sm); }
    .les-pb-md-tab,    .les-pb-md-tab.l-section[class*="height"]    { padding-bottom: var(--les-space-md); }
    .les-pb-lg-tab,    .les-pb-lg-tab.l-section[class*="height"]    { padding-bottom: var(--les-space-lg); }
    .les-pb-xl-tab,    .les-pb-xl-tab.l-section[class*="height"]    { padding-bottom: var(--les-space-xl); }
    .les-pb-xxl-tab,   .les-pb-xxl-tab.l-section[class*="height"]   { padding-bottom: var(--les-space-xxl); }
    .les-pb-xxxl-tab,  .les-pb-xxxl-tab.l-section[class*="height"]  { padding-bottom: var(--les-space-xxxl); }

    /* ---- padding — left ---- */
    .les-pl-none-tab,  .les-pl-none-tab.l-section[class*="height"]  { padding-left: 0; }
    .les-pl-xxxs-tab,  .les-pl-xxxs-tab.l-section[class*="height"]  { padding-left: var(--les-space-xxxs); }
    .les-pl-xxs-tab,   .les-pl-xxs-tab.l-section[class*="height"]   { padding-left: var(--les-space-xxs); }
    .les-pl-xs-tab,    .les-pl-xs-tab.l-section[class*="height"]    { padding-left: var(--les-space-xs); }
    .les-pl-sm-tab,    .les-pl-sm-tab.l-section[class*="height"]    { padding-left: var(--les-space-sm); }
    .les-pl-md-tab,    .les-pl-md-tab.l-section[class*="height"]    { padding-left: var(--les-space-md); }
    .les-pl-lg-tab,    .les-pl-lg-tab.l-section[class*="height"]    { padding-left: var(--les-space-lg); }
    .les-pl-xl-tab,    .les-pl-xl-tab.l-section[class*="height"]    { padding-left: var(--les-space-xl); }
    .les-pl-xxl-tab,   .les-pl-xxl-tab.l-section[class*="height"]   { padding-left: var(--les-space-xxl); }
    .les-pl-xxxl-tab,  .les-pl-xxxl-tab.l-section[class*="height"]  { padding-left: var(--les-space-xxxl); }

    /* ---- padding — horizontal ---- */
    .les-px-none-tab,  .les-px-none-tab.l-section[class*="height"]  { padding-left: 0; padding-right: 0; }
    .les-px-xxxs-tab,  .les-px-xxxs-tab.l-section[class*="height"]  { padding-left: var(--les-space-xxxs); padding-right: var(--les-space-xxxs); }
    .les-px-xxs-tab,   .les-px-xxs-tab.l-section[class*="height"]   { padding-left: var(--les-space-xxs);  padding-right: var(--les-space-xxs); }
    .les-px-xs-tab,    .les-px-xs-tab.l-section[class*="height"]    { padding-left: var(--les-space-xs);   padding-right: var(--les-space-xs); }
    .les-px-sm-tab,    .les-px-sm-tab.l-section[class*="height"]    { padding-left: var(--les-space-sm);   padding-right: var(--les-space-sm); }
    .les-px-md-tab,    .les-px-md-tab.l-section[class*="height"]    { padding-left: var(--les-space-md);   padding-right: var(--les-space-md); }
    .les-px-lg-tab,    .les-px-lg-tab.l-section[class*="height"]    { padding-left: var(--les-space-lg);   padding-right: var(--les-space-lg); }
    .les-px-xl-tab,    .les-px-xl-tab.l-section[class*="height"]    { padding-left: var(--les-space-xl);   padding-right: var(--les-space-xl); }
    .les-px-xxl-tab,   .les-px-xxl-tab.l-section[class*="height"]   { padding-left: var(--les-space-xxl);  padding-right: var(--les-space-xxl); }
    .les-px-xxxl-tab,  .les-px-xxxl-tab.l-section[class*="height"]  { padding-left: var(--les-space-xxxl); padding-right: var(--les-space-xxxl); }

    /* ---- padding — vertical ---- */
    .les-py-none-tab,  .les-py-none-tab.l-section[class*="height"]  { padding-top: 0; padding-bottom: 0; }
    .les-py-xxxs-tab,  .les-py-xxxs-tab.l-section[class*="height"]  { padding-top: var(--les-space-xxxs); padding-bottom: var(--les-space-xxxs); }
    .les-py-xxs-tab,   .les-py-xxs-tab.l-section[class*="height"]   { padding-top: var(--les-space-xxs);  padding-bottom: var(--les-space-xxs); }
    .les-py-xs-tab,    .les-py-xs-tab.l-section[class*="height"]    { padding-top: var(--les-space-xs);   padding-bottom: var(--les-space-xs); }
    .les-py-sm-tab,    .les-py-sm-tab.l-section[class*="height"]    { padding-top: var(--les-space-sm);   padding-bottom: var(--les-space-sm); }
    .les-py-md-tab,    .les-py-md-tab.l-section[class*="height"]    { padding-top: var(--les-space-md);   padding-bottom: var(--les-space-md); }
    .les-py-lg-tab,    .les-py-lg-tab.l-section[class*="height"]    { padding-top: var(--les-space-lg);   padding-bottom: var(--les-space-lg); }
    .les-py-xl-tab,    .les-py-xl-tab.l-section[class*="height"]    { padding-top: var(--les-space-xl);   padding-bottom: var(--les-space-xl); }
    .les-py-xxl-tab,   .les-py-xxl-tab.l-section[class*="height"]   { padding-top: var(--les-space-xxl);  padding-bottom: var(--les-space-xxl); }
    .les-py-xxxl-tab,  .les-py-xxxl-tab.l-section[class*="height"]  { padding-top: var(--les-space-xxxl); padding-bottom: var(--les-space-xxxl); }

    /* ---- margin — all sides ---- */
    .les-m-none-tab, .les-m-none-tab.g-cols.wpb_row { margin: 0; }
    .les-m-xs-tab,   .les-m-xs-tab.g-cols.wpb_row   { margin: var(--les-space-xs); }
    .les-m-sm-tab,   .les-m-sm-tab.g-cols.wpb_row   { margin: var(--les-space-sm); }
    .les-m-md-tab,   .les-m-md-tab.g-cols.wpb_row   { margin: var(--les-space-md); }
    .les-m-lg-tab,   .les-m-lg-tab.g-cols.wpb_row   { margin: var(--les-space-lg); }
    .les-m-xl-tab,   .les-m-xl-tab.g-cols.wpb_row   { margin: var(--les-space-xl); }

    /* ---- margin — top ---- */
    .les-mt-none-tab { margin-top: 0; }
    .les-mt-xs-tab   { margin-top: var(--les-space-xs); }
    .les-mt-sm-tab   { margin-top: var(--les-space-sm); }
    .les-mt-md-tab   { margin-top: var(--les-space-md); }
    .les-mt-lg-tab   { margin-top: var(--les-space-lg); }
    .les-mt-xl-tab   { margin-top: var(--les-space-xl); }

    /* ---- margin — right ---- */
    .les-mr-none-tab { margin-right: 0; }
    .les-mr-xs-tab   { margin-right: var(--les-space-xs); }
    .les-mr-sm-tab   { margin-right: var(--les-space-sm); }
    .les-mr-md-tab   { margin-right: var(--les-space-md); }
    .les-mr-lg-tab   { margin-right: var(--les-space-lg); }
    .les-mr-xl-tab   { margin-right: var(--les-space-xl); }

    /* ---- margin — bottom ---- */
    .les-mb-none-tab, .les-mb-none-tab.g-cols.wpb_row { margin-bottom: 0; }
    .les-mb-xs-tab,   .les-mb-xs-tab.g-cols.wpb_row   { margin-bottom: var(--les-space-xs); }
    .les-mb-sm-tab,   .les-mb-sm-tab.g-cols.wpb_row   { margin-bottom: var(--les-space-sm); }
    .les-mb-md-tab,   .les-mb-md-tab.g-cols.wpb_row   { margin-bottom: var(--les-space-md); }
    .les-mb-lg-tab,   .les-mb-lg-tab.g-cols.wpb_row   { margin-bottom: var(--les-space-lg); }
    .les-mb-xl-tab,   .les-mb-xl-tab.g-cols.wpb_row   { margin-bottom: var(--les-space-xl); }

    /* ---- margin — left ---- */
    .les-ml-none-tab { margin-left: 0; }
    .les-ml-xs-tab   { margin-left: var(--les-space-xs); }
    .les-ml-sm-tab   { margin-left: var(--les-space-sm); }
    .les-ml-md-tab   { margin-left: var(--les-space-md); }
    .les-ml-lg-tab   { margin-left: var(--les-space-lg); }
    .les-ml-xl-tab   { margin-left: var(--les-space-xl); }

    /* ---- margin — horizontal ---- */
    .les-mx-none-tab { margin-left: 0; margin-right: 0; }
    .les-mx-xs-tab   { margin-left: var(--les-space-xs);  margin-right: var(--les-space-xs); }
    .les-mx-sm-tab   { margin-left: var(--les-space-sm);  margin-right: var(--les-space-sm); }
    .les-mx-md-tab   { margin-left: var(--les-space-md);  margin-right: var(--les-space-md); }
    .les-mx-lg-tab   { margin-left: var(--les-space-lg);  margin-right: var(--les-space-lg); }
    .les-mx-xl-tab   { margin-left: var(--les-space-xl);  margin-right: var(--les-space-xl); }

    /* ---- margin — vertical ---- */
    .les-my-none-tab, .les-my-none-tab.g-cols.wpb_row { margin-top: 0; margin-bottom: 0; }
    .les-my-xs-tab,   .les-my-xs-tab.g-cols.wpb_row   { margin-top: var(--les-space-xs);  margin-bottom: var(--les-space-xs); }
    .les-my-sm-tab,   .les-my-sm-tab.g-cols.wpb_row   { margin-top: var(--les-space-sm);  margin-bottom: var(--les-space-sm); }
    .les-my-md-tab,   .les-my-md-tab.g-cols.wpb_row   { margin-top: var(--les-space-md);  margin-bottom: var(--les-space-md); }
    .les-my-lg-tab,   .les-my-lg-tab.g-cols.wpb_row   { margin-top: var(--les-space-lg);  margin-bottom: var(--les-space-lg); }
    .les-my-xl-tab,   .les-my-xl-tab.g-cols.wpb_row   { margin-top: var(--les-space-xl);  margin-bottom: var(--les-space-xl); }

    /* ---- negative margin — all sides ---- */
    .les-m-n-xs-tab,  .les-m-n-xs-tab.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-xs)); }
    .les-m-n-sm-tab,  .les-m-n-sm-tab.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-sm)); }
    .les-m-n-md-tab,  .les-m-n-md-tab.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-md)); }
    .les-m-n-lg-tab,  .les-m-n-lg-tab.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-lg)); }
    .les-m-n-xl-tab,  .les-m-n-xl-tab.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — top ---- */
    .les-mt-n-xs-tab { margin-top: calc(-1 * var(--les-space-xs)); }
    .les-mt-n-sm-tab { margin-top: calc(-1 * var(--les-space-sm)); }
    .les-mt-n-md-tab { margin-top: calc(-1 * var(--les-space-md)); }
    .les-mt-n-lg-tab { margin-top: calc(-1 * var(--les-space-lg)); }
    .les-mt-n-xl-tab { margin-top: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — right ---- */
    .les-mr-n-xs-tab { margin-right: calc(-1 * var(--les-space-xs)); }
    .les-mr-n-sm-tab { margin-right: calc(-1 * var(--les-space-sm)); }
    .les-mr-n-md-tab { margin-right: calc(-1 * var(--les-space-md)); }
    .les-mr-n-lg-tab { margin-right: calc(-1 * var(--les-space-lg)); }
    .les-mr-n-xl-tab { margin-right: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — bottom ---- */
    .les-mb-n-xs-tab,  .les-mb-n-xs-tab.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-xs)); }
    .les-mb-n-sm-tab,  .les-mb-n-sm-tab.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-sm)); }
    .les-mb-n-md-tab,  .les-mb-n-md-tab.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-md)); }
    .les-mb-n-lg-tab,  .les-mb-n-lg-tab.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-lg)); }
    .les-mb-n-xl-tab,  .les-mb-n-xl-tab.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — left ---- */
    .les-ml-n-xs-tab { margin-left: calc(-1 * var(--les-space-xs)); }
    .les-ml-n-sm-tab { margin-left: calc(-1 * var(--les-space-sm)); }
    .les-ml-n-md-tab { margin-left: calc(-1 * var(--les-space-md)); }
    .les-ml-n-lg-tab { margin-left: calc(-1 * var(--les-space-lg)); }
    .les-ml-n-xl-tab { margin-left: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — horizontal ---- */
    .les-mx-n-xs-tab { margin-left: calc(-1 * var(--les-space-xs));  margin-right: calc(-1 * var(--les-space-xs)); }
    .les-mx-n-sm-tab { margin-left: calc(-1 * var(--les-space-sm));  margin-right: calc(-1 * var(--les-space-sm)); }
    .les-mx-n-md-tab { margin-left: calc(-1 * var(--les-space-md));  margin-right: calc(-1 * var(--les-space-md)); }
    .les-mx-n-lg-tab { margin-left: calc(-1 * var(--les-space-lg));  margin-right: calc(-1 * var(--les-space-lg)); }
    .les-mx-n-xl-tab { margin-left: calc(-1 * var(--les-space-xl));  margin-right: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — vertical ---- */
    .les-my-n-xs-tab,  .les-my-n-xs-tab.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-xs));  margin-bottom: calc(-1 * var(--les-space-xs)); }
    .les-my-n-sm-tab,  .les-my-n-sm-tab.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-sm));  margin-bottom: calc(-1 * var(--les-space-sm)); }
    .les-my-n-md-tab,  .les-my-n-md-tab.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-md));  margin-bottom: calc(-1 * var(--les-space-md)); }
    .les-my-n-lg-tab,  .les-my-n-lg-tab.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-lg));  margin-bottom: calc(-1 * var(--les-space-lg)); }
    .les-my-n-xl-tab,  .les-my-n-xl-tab.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-xl));  margin-bottom: calc(-1 * var(--les-space-xl)); }

    /* ---- order ---- */
    .les-order-first-tab,
    .w-btn-wrapper:has(.les-order-first-tab) { order: -1; }
    .les-order-last-tab,
    .w-btn-wrapper:has(.les-order-last-tab)  { order: 9999; }
    .les-order-none-tab,
    .w-btn-wrapper:has(.les-order-none-tab)  { order: 0; }
}

@media (max-width: 600px) {

    /* ---- gap ---- */
    .les-gap-none-mob,
    .vc_column_container.les-gap-none-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-none-mob,
    .l-section.les-gap-none-mob > .l-section-h > .vc_row { gap: 0; }
    .g-cols.via_grid.les-gap-none-mob { --gap: 0; }
    .w-hwrapper.les-gap-none-mob { --hwrapper-gap: 0; }
    .w-vwrapper.les-gap-none-mob { --vwrapper-gap: 0; }

    .les-gap-xxxs-mob,
    .vc_column_container.les-gap-xxxs-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxxs-mob,
    .l-section.les-gap-xxxs-mob > .l-section-h > .vc_row { gap: var(--les-space-xxxs); }
    .g-cols.via_grid.les-gap-xxxs-mob { --gap: var(--les-space-xxxs); }
    .w-hwrapper.les-gap-xxxs-mob { --hwrapper-gap: var(--les-space-xxxs); }
    .w-vwrapper.les-gap-xxxs-mob { --vwrapper-gap: var(--les-space-xxxs); }

    .les-gap-xxs-mob,
    .vc_column_container.les-gap-xxs-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxs-mob,
    .l-section.les-gap-xxs-mob > .l-section-h > .vc_row { gap: var(--les-space-xxs); }
    .g-cols.via_grid.les-gap-xxs-mob { --gap: var(--les-space-xxs); }
    .w-hwrapper.les-gap-xxs-mob { --hwrapper-gap: var(--les-space-xxs); }
    .w-vwrapper.les-gap-xxs-mob { --vwrapper-gap: var(--les-space-xxs); }

    .les-gap-xs-mob,
    .vc_column_container.les-gap-xs-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-xs-mob,
    .l-section.les-gap-xs-mob > .l-section-h > .vc_row { gap: var(--les-space-xs); }
    .g-cols.via_grid.les-gap-xs-mob { --gap: var(--les-space-xs); }
    .w-hwrapper.les-gap-xs-mob { --hwrapper-gap: var(--les-space-xs); }
    .w-vwrapper.les-gap-xs-mob { --vwrapper-gap: var(--les-space-xs); }

    .les-gap-sm-mob,
    .vc_column_container.les-gap-sm-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-sm-mob,
    .l-section.les-gap-sm-mob > .l-section-h > .vc_row { gap: var(--les-space-sm); }
    .g-cols.via_grid.les-gap-sm-mob { --gap: var(--les-space-sm); }
    .w-hwrapper.les-gap-sm-mob { --hwrapper-gap: var(--les-space-sm); }
    .w-vwrapper.les-gap-sm-mob { --vwrapper-gap: var(--les-space-sm); }

    .les-gap-md-mob,
    .vc_column_container.les-gap-md-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-md-mob,
    .l-section.les-gap-md-mob > .l-section-h > .vc_row { gap: var(--les-space-md); }
    .g-cols.via_grid.les-gap-md-mob { --gap: var(--les-space-md); }
    .w-hwrapper.les-gap-md-mob { --hwrapper-gap: var(--les-space-md); }
    .w-vwrapper.les-gap-md-mob { --vwrapper-gap: var(--les-space-md); }

    .les-gap-lg-mob,
    .vc_column_container.les-gap-lg-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-lg-mob,
    .l-section.les-gap-lg-mob > .l-section-h > .vc_row { gap: var(--les-space-lg); }
    .g-cols.via_grid.les-gap-lg-mob { --gap: var(--les-space-lg); }
    .w-hwrapper.les-gap-lg-mob { --hwrapper-gap: var(--les-space-lg); }
    .w-vwrapper.les-gap-lg-mob { --vwrapper-gap: var(--les-space-lg); }

    .les-gap-xl-mob,
    .vc_column_container.les-gap-xl-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-xl-mob,
    .l-section.les-gap-xl-mob > .l-section-h > .vc_row { gap: var(--les-space-xl); }
    .g-cols.via_grid.les-gap-xl-mob { --gap: var(--les-space-xl); }
    .w-hwrapper.les-gap-xl-mob { --hwrapper-gap: var(--les-space-xl); }
    .w-vwrapper.les-gap-xl-mob { --vwrapper-gap: var(--les-space-xl); }

    .les-gap-xxl-mob,
    .vc_column_container.les-gap-xxl-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxl-mob,
    .l-section.les-gap-xxl-mob > .l-section-h > .vc_row { gap: var(--les-space-xxl); }
    .g-cols.via_grid.les-gap-xxl-mob { --gap: var(--les-space-xxl); }
    .w-hwrapper.les-gap-xxl-mob { --hwrapper-gap: var(--les-space-xxl); }
    .w-vwrapper.les-gap-xxl-mob { --vwrapper-gap: var(--les-space-xxl); }

    .les-gap-xxxl-mob,
    .vc_column_container.les-gap-xxxl-mob > .vc_column-inner,
    .g-cols.via_grid.les-gap-xxxl-mob,
    .l-section.les-gap-xxxl-mob > .l-section-h > .vc_row { gap: var(--les-space-xxxl); }
    .g-cols.via_grid.les-gap-xxxl-mob { --gap: var(--les-space-xxxl); }
    .w-hwrapper.les-gap-xxxl-mob { --hwrapper-gap: var(--les-space-xxxl); }
    .w-vwrapper.les-gap-xxxl-mob { --vwrapper-gap: var(--les-space-xxxl); }

    /* ---- column-gap / row-gap ---- */
    .les-gap-col-none-mob  { column-gap: 0; }
    .les-gap-col-xxxs-mob  { column-gap: var(--les-space-xxxs); }
    .les-gap-col-xxs-mob   { column-gap: var(--les-space-xxs); }
    .les-gap-col-xs-mob    { column-gap: var(--les-space-xs); }
    .les-gap-col-sm-mob    { column-gap: var(--les-space-sm); }
    .les-gap-col-md-mob    { column-gap: var(--les-space-md); }
    .les-gap-col-lg-mob    { column-gap: var(--les-space-lg); }
    .les-gap-col-xl-mob    { column-gap: var(--les-space-xl); }
    .les-gap-col-xxl-mob   { column-gap: var(--les-space-xxl); }
    .les-gap-col-xxxl-mob  { column-gap: var(--les-space-xxxl); }

    .les-gap-row-none-mob  { row-gap: 0; }
    .les-gap-row-xxxs-mob  { row-gap: var(--les-space-xxxs); }
    .les-gap-row-xxs-mob   { row-gap: var(--les-space-xxs); }
    .les-gap-row-xs-mob    { row-gap: var(--les-space-xs); }
    .les-gap-row-sm-mob    { row-gap: var(--les-space-sm); }
    .les-gap-row-md-mob    { row-gap: var(--les-space-md); }
    .les-gap-row-lg-mob    { row-gap: var(--les-space-lg); }
    .les-gap-row-xl-mob    { row-gap: var(--les-space-xl); }
    .les-gap-row-xxl-mob   { row-gap: var(--les-space-xxl); }
    .les-gap-row-xxxl-mob  { row-gap: var(--les-space-xxxl); }

    /* ---- padding — all sides ---- */
    .les-p-none-mob,  .les-p-none-mob.l-section[class*="height"]  { padding: 0; }
    .les-p-xxxs-mob,  .les-p-xxxs-mob.l-section[class*="height"]  { padding: var(--les-space-xxxs); }
    .les-p-xxs-mob,   .les-p-xxs-mob.l-section[class*="height"]   { padding: var(--les-space-xxs); }
    .les-p-xs-mob,    .les-p-xs-mob.l-section[class*="height"]    { padding: var(--les-space-xs); }
    .les-p-sm-mob,    .les-p-sm-mob.l-section[class*="height"]    { padding: var(--les-space-sm); }
    .les-p-md-mob,    .les-p-md-mob.l-section[class*="height"]    { padding: var(--les-space-md); }
    .les-p-lg-mob,    .les-p-lg-mob.l-section[class*="height"]    { padding: var(--les-space-lg); }
    .les-p-xl-mob,    .les-p-xl-mob.l-section[class*="height"]    { padding: var(--les-space-xl); }
    .les-p-xxl-mob,   .les-p-xxl-mob.l-section[class*="height"]   { padding: var(--les-space-xxl); }
    .les-p-xxxl-mob,  .les-p-xxxl-mob.l-section[class*="height"]  { padding: var(--les-space-xxxl); }

    /* ---- padding — top ---- */
    .les-pt-none-mob,  .les-pt-none-mob.l-section[class*="height"]  { padding-top: 0; }
    .les-pt-xxxs-mob,  .les-pt-xxxs-mob.l-section[class*="height"]  { padding-top: var(--les-space-xxxs); }
    .les-pt-xxs-mob,   .les-pt-xxs-mob.l-section[class*="height"]   { padding-top: var(--les-space-xxs); }
    .les-pt-xs-mob,    .les-pt-xs-mob.l-section[class*="height"]    { padding-top: var(--les-space-xs); }
    .les-pt-sm-mob,    .les-pt-sm-mob.l-section[class*="height"]    { padding-top: var(--les-space-sm); }
    .les-pt-md-mob,    .les-pt-md-mob.l-section[class*="height"]    { padding-top: var(--les-space-md); }
    .les-pt-lg-mob,    .les-pt-lg-mob.l-section[class*="height"]    { padding-top: var(--les-space-lg); }
    .les-pt-xl-mob,    .les-pt-xl-mob.l-section[class*="height"]    { padding-top: var(--les-space-xl); }
    .les-pt-xxl-mob,   .les-pt-xxl-mob.l-section[class*="height"]   { padding-top: var(--les-space-xxl); }
    .les-pt-xxxl-mob,  .les-pt-xxxl-mob.l-section[class*="height"]  { padding-top: var(--les-space-xxxl); }

    /* ---- padding — right ---- */
    .les-pr-none-mob,  .les-pr-none-mob.l-section[class*="height"]  { padding-right: 0; }
    .les-pr-xxxs-mob,  .les-pr-xxxs-mob.l-section[class*="height"]  { padding-right: var(--les-space-xxxs); }
    .les-pr-xxs-mob,   .les-pr-xxs-mob.l-section[class*="height"]   { padding-right: var(--les-space-xxs); }
    .les-pr-xs-mob,    .les-pr-xs-mob.l-section[class*="height"]    { padding-right: var(--les-space-xs); }
    .les-pr-sm-mob,    .les-pr-sm-mob.l-section[class*="height"]    { padding-right: var(--les-space-sm); }
    .les-pr-md-mob,    .les-pr-md-mob.l-section[class*="height"]    { padding-right: var(--les-space-md); }
    .les-pr-lg-mob,    .les-pr-lg-mob.l-section[class*="height"]    { padding-right: var(--les-space-lg); }
    .les-pr-xl-mob,    .les-pr-xl-mob.l-section[class*="height"]    { padding-right: var(--les-space-xl); }
    .les-pr-xxl-mob,   .les-pr-xxl-mob.l-section[class*="height"]   { padding-right: var(--les-space-xxl); }
    .les-pr-xxxl-mob,  .les-pr-xxxl-mob.l-section[class*="height"]  { padding-right: var(--les-space-xxxl); }

    /* ---- padding — bottom ---- */
    .les-pb-none-mob,  .les-pb-none-mob.l-section[class*="height"]  { padding-bottom: 0; }
    .les-pb-xxxs-mob,  .les-pb-xxxs-mob.l-section[class*="height"]  { padding-bottom: var(--les-space-xxxs); }
    .les-pb-xxs-mob,   .les-pb-xxs-mob.l-section[class*="height"]   { padding-bottom: var(--les-space-xxs); }
    .les-pb-xs-mob,    .les-pb-xs-mob.l-section[class*="height"]    { padding-bottom: var(--les-space-xs); }
    .les-pb-sm-mob,    .les-pb-sm-mob.l-section[class*="height"]    { padding-bottom: var(--les-space-sm); }
    .les-pb-md-mob,    .les-pb-md-mob.l-section[class*="height"]    { padding-bottom: var(--les-space-md); }
    .les-pb-lg-mob,    .les-pb-lg-mob.l-section[class*="height"]    { padding-bottom: var(--les-space-lg); }
    .les-pb-xl-mob,    .les-pb-xl-mob.l-section[class*="height"]    { padding-bottom: var(--les-space-xl); }
    .les-pb-xxl-mob,   .les-pb-xxl-mob.l-section[class*="height"]   { padding-bottom: var(--les-space-xxl); }
    .les-pb-xxxl-mob,  .les-pb-xxxl-mob.l-section[class*="height"]  { padding-bottom: var(--les-space-xxxl); }

    /* ---- padding — left ---- */
    .les-pl-none-mob,  .les-pl-none-mob.l-section[class*="height"]  { padding-left: 0; }
    .les-pl-xxxs-mob,  .les-pl-xxxs-mob.l-section[class*="height"]  { padding-left: var(--les-space-xxxs); }
    .les-pl-xxs-mob,   .les-pl-xxs-mob.l-section[class*="height"]   { padding-left: var(--les-space-xxs); }
    .les-pl-xs-mob,    .les-pl-xs-mob.l-section[class*="height"]    { padding-left: var(--les-space-xs); }
    .les-pl-sm-mob,    .les-pl-sm-mob.l-section[class*="height"]    { padding-left: var(--les-space-sm); }
    .les-pl-md-mob,    .les-pl-md-mob.l-section[class*="height"]    { padding-left: var(--les-space-md); }
    .les-pl-lg-mob,    .les-pl-lg-mob.l-section[class*="height"]    { padding-left: var(--les-space-lg); }
    .les-pl-xl-mob,    .les-pl-xl-mob.l-section[class*="height"]    { padding-left: var(--les-space-xl); }
    .les-pl-xxl-mob,   .les-pl-xxl-mob.l-section[class*="height"]   { padding-left: var(--les-space-xxl); }
    .les-pl-xxxl-mob,  .les-pl-xxxl-mob.l-section[class*="height"]  { padding-left: var(--les-space-xxxl); }

    /* ---- padding — horizontal ---- */
    .les-px-none-mob,  .les-px-none-mob.l-section[class*="height"]  { padding-left: 0; padding-right: 0; }
    .les-px-xxxs-mob,  .les-px-xxxs-mob.l-section[class*="height"]  { padding-left: var(--les-space-xxxs); padding-right: var(--les-space-xxxs); }
    .les-px-xxs-mob,   .les-px-xxs-mob.l-section[class*="height"]   { padding-left: var(--les-space-xxs);  padding-right: var(--les-space-xxs); }
    .les-px-xs-mob,    .les-px-xs-mob.l-section[class*="height"]    { padding-left: var(--les-space-xs);   padding-right: var(--les-space-xs); }
    .les-px-sm-mob,    .les-px-sm-mob.l-section[class*="height"]    { padding-left: var(--les-space-sm);   padding-right: var(--les-space-sm); }
    .les-px-md-mob,    .les-px-md-mob.l-section[class*="height"]    { padding-left: var(--les-space-md);   padding-right: var(--les-space-md); }
    .les-px-lg-mob,    .les-px-lg-mob.l-section[class*="height"]    { padding-left: var(--les-space-lg);   padding-right: var(--les-space-lg); }
    .les-px-xl-mob,    .les-px-xl-mob.l-section[class*="height"]    { padding-left: var(--les-space-xl);   padding-right: var(--les-space-xl); }
    .les-px-xxl-mob,   .les-px-xxl-mob.l-section[class*="height"]   { padding-left: var(--les-space-xxl);  padding-right: var(--les-space-xxl); }
    .les-px-xxxl-mob,  .les-px-xxxl-mob.l-section[class*="height"]  { padding-left: var(--les-space-xxxl); padding-right: var(--les-space-xxxl); }

    /* ---- padding — vertical ---- */
    .les-py-none-mob,  .les-py-none-mob.l-section[class*="height"]  { padding-top: 0; padding-bottom: 0; }
    .les-py-xxxs-mob,  .les-py-xxxs-mob.l-section[class*="height"]  { padding-top: var(--les-space-xxxs); padding-bottom: var(--les-space-xxxs); }
    .les-py-xxs-mob,   .les-py-xxs-mob.l-section[class*="height"]   { padding-top: var(--les-space-xxs);  padding-bottom: var(--les-space-xxs); }
    .les-py-xs-mob,    .les-py-xs-mob.l-section[class*="height"]    { padding-top: var(--les-space-xs);   padding-bottom: var(--les-space-xs); }
    .les-py-sm-mob,    .les-py-sm-mob.l-section[class*="height"]    { padding-top: var(--les-space-sm);   padding-bottom: var(--les-space-sm); }
    .les-py-md-mob,    .les-py-md-mob.l-section[class*="height"]    { padding-top: var(--les-space-md);   padding-bottom: var(--les-space-md); }
    .les-py-lg-mob,    .les-py-lg-mob.l-section[class*="height"]    { padding-top: var(--les-space-lg);   padding-bottom: var(--les-space-lg); }
    .les-py-xl-mob,    .les-py-xl-mob.l-section[class*="height"]    { padding-top: var(--les-space-xl);   padding-bottom: var(--les-space-xl); }
    .les-py-xxl-mob,   .les-py-xxl-mob.l-section[class*="height"]   { padding-top: var(--les-space-xxl);  padding-bottom: var(--les-space-xxl); }
    .les-py-xxxl-mob,  .les-py-xxxl-mob.l-section[class*="height"]  { padding-top: var(--les-space-xxxl); padding-bottom: var(--les-space-xxxl); }

    /* ---- margin — all sides ---- */
    .les-m-none-mob, .les-m-none-mob.g-cols.wpb_row { margin: 0; }
    .les-m-xs-mob,   .les-m-xs-mob.g-cols.wpb_row   { margin: var(--les-space-xs); }
    .les-m-sm-mob,   .les-m-sm-mob.g-cols.wpb_row   { margin: var(--les-space-sm); }
    .les-m-md-mob,   .les-m-md-mob.g-cols.wpb_row   { margin: var(--les-space-md); }
    .les-m-lg-mob,   .les-m-lg-mob.g-cols.wpb_row   { margin: var(--les-space-lg); }
    .les-m-xl-mob,   .les-m-xl-mob.g-cols.wpb_row   { margin: var(--les-space-xl); }

    /* ---- margin — top ---- */
    .les-mt-none-mob { margin-top: 0; }
    .les-mt-xs-mob   { margin-top: var(--les-space-xs); }
    .les-mt-sm-mob   { margin-top: var(--les-space-sm); }
    .les-mt-md-mob   { margin-top: var(--les-space-md); }
    .les-mt-lg-mob   { margin-top: var(--les-space-lg); }
    .les-mt-xl-mob   { margin-top: var(--les-space-xl); }

    /* ---- margin — right ---- */
    .les-mr-none-mob { margin-right: 0; }
    .les-mr-xs-mob   { margin-right: var(--les-space-xs); }
    .les-mr-sm-mob   { margin-right: var(--les-space-sm); }
    .les-mr-md-mob   { margin-right: var(--les-space-md); }
    .les-mr-lg-mob   { margin-right: var(--les-space-lg); }
    .les-mr-xl-mob   { margin-right: var(--les-space-xl); }

    /* ---- margin — bottom ---- */
    .les-mb-none-mob, .les-mb-none-mob.g-cols.wpb_row { margin-bottom: 0; }
    .les-mb-xs-mob,   .les-mb-xs-mob.g-cols.wpb_row   { margin-bottom: var(--les-space-xs); }
    .les-mb-sm-mob,   .les-mb-sm-mob.g-cols.wpb_row   { margin-bottom: var(--les-space-sm); }
    .les-mb-md-mob,   .les-mb-md-mob.g-cols.wpb_row   { margin-bottom: var(--les-space-md); }
    .les-mb-lg-mob,   .les-mb-lg-mob.g-cols.wpb_row   { margin-bottom: var(--les-space-lg); }
    .les-mb-xl-mob,   .les-mb-xl-mob.g-cols.wpb_row   { margin-bottom: var(--les-space-xl); }

    /* ---- margin — left ---- */
    .les-ml-none-mob { margin-left: 0; }
    .les-ml-xs-mob   { margin-left: var(--les-space-xs); }
    .les-ml-sm-mob   { margin-left: var(--les-space-sm); }
    .les-ml-md-mob   { margin-left: var(--les-space-md); }
    .les-ml-lg-mob   { margin-left: var(--les-space-lg); }
    .les-ml-xl-mob   { margin-left: var(--les-space-xl); }

    /* ---- margin — horizontal ---- */
    .les-mx-none-mob { margin-left: 0; margin-right: 0; }
    .les-mx-xs-mob   { margin-left: var(--les-space-xs);  margin-right: var(--les-space-xs); }
    .les-mx-sm-mob   { margin-left: var(--les-space-sm);  margin-right: var(--les-space-sm); }
    .les-mx-md-mob   { margin-left: var(--les-space-md);  margin-right: var(--les-space-md); }
    .les-mx-lg-mob   { margin-left: var(--les-space-lg);  margin-right: var(--les-space-lg); }
    .les-mx-xl-mob   { margin-left: var(--les-space-xl);  margin-right: var(--les-space-xl); }

    /* ---- margin — vertical ---- */
    .les-my-none-mob, .les-my-none-mob.g-cols.wpb_row { margin-top: 0; margin-bottom: 0; }
    .les-my-xs-mob,   .les-my-xs-mob.g-cols.wpb_row   { margin-top: var(--les-space-xs);  margin-bottom: var(--les-space-xs); }
    .les-my-sm-mob,   .les-my-sm-mob.g-cols.wpb_row   { margin-top: var(--les-space-sm);  margin-bottom: var(--les-space-sm); }
    .les-my-md-mob,   .les-my-md-mob.g-cols.wpb_row   { margin-top: var(--les-space-md);  margin-bottom: var(--les-space-md); }
    .les-my-lg-mob,   .les-my-lg-mob.g-cols.wpb_row   { margin-top: var(--les-space-lg);  margin-bottom: var(--les-space-lg); }
    .les-my-xl-mob,   .les-my-xl-mob.g-cols.wpb_row   { margin-top: var(--les-space-xl);  margin-bottom: var(--les-space-xl); }

    /* ---- negative margin — all sides ---- */
    .les-m-n-xs-mob,  .les-m-n-xs-mob.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-xs)); }
    .les-m-n-sm-mob,  .les-m-n-sm-mob.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-sm)); }
    .les-m-n-md-mob,  .les-m-n-md-mob.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-md)); }
    .les-m-n-lg-mob,  .les-m-n-lg-mob.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-lg)); }
    .les-m-n-xl-mob,  .les-m-n-xl-mob.g-cols.wpb_row  { margin: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — top ---- */
    .les-mt-n-xs-mob { margin-top: calc(-1 * var(--les-space-xs)); }
    .les-mt-n-sm-mob { margin-top: calc(-1 * var(--les-space-sm)); }
    .les-mt-n-md-mob { margin-top: calc(-1 * var(--les-space-md)); }
    .les-mt-n-lg-mob { margin-top: calc(-1 * var(--les-space-lg)); }
    .les-mt-n-xl-mob { margin-top: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — right ---- */
    .les-mr-n-xs-mob { margin-right: calc(-1 * var(--les-space-xs)); }
    .les-mr-n-sm-mob { margin-right: calc(-1 * var(--les-space-sm)); }
    .les-mr-n-md-mob { margin-right: calc(-1 * var(--les-space-md)); }
    .les-mr-n-lg-mob { margin-right: calc(-1 * var(--les-space-lg)); }
    .les-mr-n-xl-mob { margin-right: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — bottom ---- */
    .les-mb-n-xs-mob,  .les-mb-n-xs-mob.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-xs)); }
    .les-mb-n-sm-mob,  .les-mb-n-sm-mob.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-sm)); }
    .les-mb-n-md-mob,  .les-mb-n-md-mob.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-md)); }
    .les-mb-n-lg-mob,  .les-mb-n-lg-mob.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-lg)); }
    .les-mb-n-xl-mob,  .les-mb-n-xl-mob.g-cols.wpb_row  { margin-bottom: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — left ---- */
    .les-ml-n-xs-mob { margin-left: calc(-1 * var(--les-space-xs)); }
    .les-ml-n-sm-mob { margin-left: calc(-1 * var(--les-space-sm)); }
    .les-ml-n-md-mob { margin-left: calc(-1 * var(--les-space-md)); }
    .les-ml-n-lg-mob { margin-left: calc(-1 * var(--les-space-lg)); }
    .les-ml-n-xl-mob { margin-left: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — horizontal ---- */
    .les-mx-n-xs-mob { margin-left: calc(-1 * var(--les-space-xs));  margin-right: calc(-1 * var(--les-space-xs)); }
    .les-mx-n-sm-mob { margin-left: calc(-1 * var(--les-space-sm));  margin-right: calc(-1 * var(--les-space-sm)); }
    .les-mx-n-md-mob { margin-left: calc(-1 * var(--les-space-md));  margin-right: calc(-1 * var(--les-space-md)); }
    .les-mx-n-lg-mob { margin-left: calc(-1 * var(--les-space-lg));  margin-right: calc(-1 * var(--les-space-lg)); }
    .les-mx-n-xl-mob { margin-left: calc(-1 * var(--les-space-xl));  margin-right: calc(-1 * var(--les-space-xl)); }

    /* ---- negative margin — vertical ---- */
    .les-my-n-xs-mob,  .les-my-n-xs-mob.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-xs));  margin-bottom: calc(-1 * var(--les-space-xs)); }
    .les-my-n-sm-mob,  .les-my-n-sm-mob.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-sm));  margin-bottom: calc(-1 * var(--les-space-sm)); }
    .les-my-n-md-mob,  .les-my-n-md-mob.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-md));  margin-bottom: calc(-1 * var(--les-space-md)); }
    .les-my-n-lg-mob,  .les-my-n-lg-mob.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-lg));  margin-bottom: calc(-1 * var(--les-space-lg)); }
    .les-my-n-xl-mob,  .les-my-n-xl-mob.g-cols.wpb_row  { margin-top: calc(-1 * var(--les-space-xl));  margin-bottom: calc(-1 * var(--les-space-xl)); }

    /* ---- order ---- */
    .les-order-first-mob,
    .w-btn-wrapper:has(.les-order-first-mob) { order: -1; }
    .les-order-last-mob,
    .w-btn-wrapper:has(.les-order-last-mob)  { order: 9999; }
    .les-order-none-mob,
    .w-btn-wrapper:has(.les-order-none-mob)  { order: 0; }
}

/* ====== SCROLL OFFSET — compensa header sticky ====== */
html {
    scroll-behavior: smooth;
    scroll-padding-top: calc(var(--header-sticky-height, 100px) + 1.5rem);
}