/*
Theme Name:   R-Mod by Gro Media
Theme URI:    https://gromedia.dk
Author:       Gro Media ApS
Author URI:   https://gromedia.dk
Template:     r-2024 - V1
Function:     Container styles
Version:      1.0
*/




/***************************
* CONTAINERS: Default flex/grid styling, Width, spacing and gaps [Custom html r-con containers]
****************************/

/* 
* * * FLEX: Generic settings   * * *
*/

/* General flex styling for r-con + r-con-inner elements */
.r-con,
.r-con > .r-con-inner {
display: flex;
flex-direction: column;
flex-basis: auto;
flex-grow: 0;
flex-shrink: 1;
align-items: initial;
flex-wrap: nowrap;
gap: var(--r-con-gap-reg);
width: 100%;
}
@media (max-width: 767px) {
.r-con,
.r-con > .r-con-inner {
flex-wrap: wrap;
}
}

/* 
* * * FLEX: Modification with class   * * *
*/

/* Center "r-con" containers by default for HTML-widget elements */
.r-con > .r-con-inner {
margin: 0 auto;
}

/* Force center for containers with class */
.r-con.r-con-center {
margin: 0 auto;
}

/* Force center on mobile only */
@media (max-width: 767px) {
.r-con-center_M {
margin: 0 auto;
}
}

/* Flex direction row */
.r-con > .r-con-inner.r-row {
flex-direction: row;
flex-grow: 1;
width: 100%;
}

/* Flexwrap nowrap */
.r-con.r-nowrap,
.r-con > .r-con-inner.r-nowrap,
.r-con.r-nowrap > .e-con-inner {
flex-wrap: nowrap !important;
}

/* Flex direction row reverse */
.r-con > .r-con-inner.r-row-reverse {
flex-direction: row-reverse;
}

/* Align items center */
.r-con > .r-con-inner.r-align-items-center {
align-items: center;
}

/* Justify content center */
.r-con > .r-con-inner.r-justify-content-center {
justify-content: center;
}

/* Justify content space between */
.r-con > .r-con-inner.r-justify-content-space-between {
justify-content: space-between;
}

/* Flex grow: 0 */
.r-con.r-flex-grow-0,
.r-con .r-flex-grow-0 {
flex-grow: 0;
}
/* Flex grow: 1 */
.r-con.r-flex-grow-1,
.r-con .r-flex-grow-1 {
flex-grow: 1;
}
/* Flex grow: 2 */
.r-con.r-flex-grow-2,
.r-con .r-flex-grow-2 {
flex-grow: 2;
}
/* Flex shrink: 0 */
.r-con.r-flex-shrink-0,
.r-con .r-flex-shrink-0 {
flex-shrink: 0;
}



/***************************
* CONTAINERS: Container widths - "Parents" only (not r-con-inner or e-con-inner)
****************************/

/* Regular */
.r-con.r-con-max-width-reg {
max-width: var(--r-con-max-width-reg);
}

/* Xxsmall */
.r-con.r-con-max-width-xxsm  {
max-width: var(--r-con-max-width-xxsm);
}

/* Xsmall */
.r-con.r-con-max-width-xsm{
max-width: var(--r-con-max-width-xsm);
}

/* Small */
.r-con.r-con-max-width-sm {
max-width: var(--r-con-max-width-sm);
}
/* Small */
.r-con.r-con-max-width-sm-med {
max-width: var(--r-con-max-width-sm-med);
}

/* Small Medium */
.r-con.r-con-max-width-med {
max-width: var(--r-con-max-width-med);
}

/* Full */
.r-con.r-con-max-width-full {
max-width: var(--r-con-max-width-full);
}

/* Fit content */
.r-con.r-con-max-width-fit-content {
max-width: fit-content;
min-width: fit-content;
}

/* 
* * * Container widths for desktop/tablet only   * * *
*/

@media (min-width: 768px) {
/* Xxsmall */
.r-con.r-con-max-width-xxsm_D  {
max-width: var(--r-con-max-width-xxsm);
} 
/* Small */
.r-con.r-con-max-width-sm_D {
max-width: var(--r-con-max-width-sm);
} 
}



/***************************
* CONTAINERS: Container widths - "Inners" only (not r-con or e-con)
****************************/

/* Regular */
.r-con-parent.r-con > .r-con-inner,
.r-con-parent.r-con > .e-con-inner,
.r-con.r-con-inner-max-width-reg > .e-con-inner {
max-width: var(--r-con-max-width-reg);
}

/* Xxsmall */
.r-con-parent.r-con.r-con-inner-max-width-xxsm > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-xxsm > .e-con-inner,
.r-con.r-con-inner-max-width-xxsm > .e-con-inner {
max-width: var(--r-con-max-width-xxsm);
}

/* Xsmall */
.r-con-parent.r-con.r-con-inner-max-width-xsm > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-xsm > .e-con-inner,
.r-con.r-con-inner-max-width-xsm > .e-con-inner {
max-width: var(--r-con-max-width-xsm);
}

/* Small */
.r-con-parent.r-con.r-con-inner-max-width-sm > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-sm > .e-con-inner,
.r-con.r-con-inner-max-width-sm > .e-con-inner {
max-width: var(--r-con-max-width-sm);
}

/* Small Medium */
.r-con-parent.r-con.r-con-inner-max-width-sm-med > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-sm-med > .e-con-inner,
.r-con.r-con-inner-max-width-sm-med > .e-con-inner {
max-width: var(--r-con-max-width-sm-med);
}

/* Medium */
.r-con-parent.r-con.r-con-inner-max-width-med > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-med > .e-con-inner,
.r-con.r-con-inner-max-width-med > .e-con-inner {
max-width: var(--r-con-max-width-med);
}

/* Full */
.r-con-parent.r-con.r-con-inner-max-width-full > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-full > .e-con-inner,
.r-con.r-con-inner-max-width-full > .e-con-inner {
max-width: var(--r-con-max-width-full);
}

/* Fit content */
.r-con-parent.r-con.r-con-inner-max-width-fit-content > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-fit-content > .e-con-inner,
.r-con.r-con-inner-max-width-fit-content > .e-con-inner {
max-width: fit-content;
}

/* 
* * * Container widths for desktop/tablet only   * * *
*/

@media (min-width:768px) {
/* Small */
.r-con-parent.r-con.r-con-inner-max-width-sm_D > .r-con-inner,
.r-con-parent.r-con.r-con-inner-max-width-sm_D > .e-con-inner,
.r-con.r-con-inner-max-width-sm_D > .e-con-inner {
max-width: var(--r-con-max-width-sm);
}
}




/***************************
* CONTAINERS: Container outer horizontal padding for parent containers (r-con-parent + r-con)
****************************/

/* Regular */
.r-con-parent.r-con,
.r-con.r-outer-horz-padding-reg {
padding-inline-start: var(--r-con-parent-outer-horz-padding-reg);
padding-inline-end: var(--r-con-parent-outer-horz-padding-reg);
}
/* None */
.r-con-parent.r-con.r-outer-horz-padding-none,
.r-con.r-outer-horz-padding-none {
padding-inline-start: var(--r-con-parent-outer-horz-padding-none);
padding-inline-end: var(--r-con-parent-outer-horz-padding-none);
}



/***************************
* CONTAINERS: Container inner vertical padding (r-con-inner + e-con-inner)
****************************/

/* Regular */
.r-con > .r-con-inner.r-con-vert-padding-reg,
.r-con.r-con-vert-padding-reg > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-reg);
padding-block-end: var(--r-con-vert-padding-reg);
}
/* None */
.r-con > .r-con-inner.r-con-vert-padding-none,
.r-con.r-con-vert-padding-none > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-none);
padding-block-end: var(--r-con-vert-padding-none);
}
/* Xxxsmall */
.r-con > .r-con-inner.r-con-vert-padding-xxxsm,
.r-con.r-con-vert-padding-xxxsm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-xxxm);
padding-block-end: var(--r-con-vert-padding-xxxsm);
}
/* Xxsmall */
.r-con > .r-con-inner.r-con-vert-padding-xxsm,
.r-con.r-con-vert-padding-xxsm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-xxsm);
padding-block-end: var(--r-con-vert-padding-xxsm);
}
/* Xsmall */
.r-con > .r-con-inner.r-con-vert-padding-xsm,
.r-con.r-con-vert-padding-xsm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-xsm);
padding-block-end: var(--r-con-vert-padding-xsm);
}
/* Small */
.r-con > .r-con-inner.r-con-vert-padding-sm,
.r-con.r-con-vert-padding-sm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-sm);
padding-block-end: var(--r-con-vert-padding-sm);
}
/* Medium */
.r-con > .r-con-inner.r-con-vert-padding-med,
.r-con.r-con-vert-padding-med > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-med);
padding-block-end: var(--r-con-vert-padding-med);
}

/* 
* * * Top only (Class mod)   * * *
*/


/* Regular */
.r-con > .r-con-inner.r-con-vert-padding-top-reg,
.r-con.r-con-vert-padding-top-reg > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-reg);
}
/* None */
.r-con > .r-con-inner.r-con-vert-padding-top-none,
.r-con.r-con-vert-padding-top-none > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-none);
}
/* Xxxsmall */
.r-con > .r-con-inner.r-con-vert-padding-top-xxxsm,
.r-con.r-con-vert-padding-top-xxxsm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-xxxsm);
}
/* Xxsmall */
.r-con > .r-con-inner.r-con-vert-padding-top-xxsm,
.r-con.r-con-vert-padding-top-xxsm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-xxsm);
}
/* Xsmall */
.r-con > .r-con-inner.r-con-vert-padding-top-xsm,
.r-con.r-con-vert-padding-top-xsm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-xsm);
}
/* Small */
.r-con > .r-con-inner.r-con-vert-padding-top-sm,
.r-con.r-con-vert-padding-top-sm > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-sm);
}
/* Medium */
.r-con > .r-con-inner.r-con-vert-padding-top-med,
.r-con.r-con-vert-padding-top-med > .e-con-inner {
padding-block-start: var(--r-con-vert-padding-med);
}

/* 
* * * Bottom only only (Class mod)   * * *
*/

/* Regular */
.r-con > .r-con-inner.r-con-vert-padding-bottom-reg,
.r-con.r-con-vert-padding-bottom-reg > .e-con-inner {
padding-block-end: var(--r-con-vert-padding-reg);
}
/* None */
.r-con > .r-con-inner.r-con-vert-padding-bottom-none,
.r-con.r-con-vert-padding-bottom-none > .e-con-inner {
padding-block-end: var(--r-con-vert-padding-none);
}
/* Xxxsmall */
.r-con > .r-con-inner.r-con-vert-padding-bottom-xxxsm,
.r-con.r-con-vert-padding-bottom-xxxsm > .e-con-inner {
padding-block-end: var(--r-con-vert-padding-xxxsm);
}
/* Xxsmall */
.r-con > .r-con-inner.r-con-vert-padding-bottom-xxsm,
.r-con.r-con-vert-padding-bottom-xxsm > .e-con-inner {
padding-block-end: var(--r-con-vert-padding-xxsm);
}
/* Xsmall */
.r-con > .r-con-inner.r-con-vert-padding-bottom-xsm,
.r-con.r-con-vert-padding-bottom-xsm > .e-con-inner {
padding-block-end: var(--r-con-vert-padding-xsm);
}
/* Small */
.r-con > .r-con-inner.r-con-vert-padding-bottom-sm,
.r-con.r-con-vert-padding-bottom-sm > .e-con-inner {
padding-block-end: var(--r-con-vert-padding-sm);
}
/* Medium */
.r-con > .r-con-inner.r-con-vert-padding-bottom-med,
.r-con.r-con-vert-padding-bottom-med > .e-con-inner {
padding-block-end: var(--r-con-vert-padding-med);
}



/***************************
* CONTAINERS: Content gaps (r-con-inner + e-con-inner)
****************************/

/* Regular */
.r-con > .r-con-inner,
.r-con.e-con > .e-con-inner {
gap: var(--r-con-gap-reg);
}
/* None */
.r-con > .r-con-inner.r-con-gap-none,
.r-con.r-con-gap-none > .e-con-inner {
gap: var(--r-con-gap-none);
}
/* Xxsmall */
.r-con > .r-con-inner.r-con-gap-xxsm,
.r-con.r-con-gap-xxsm > .e-con-inner {
gap: var(--r-con-gap-xxsm);
}
/* Xsmall */
.r-con > .r-con-inner.r-con-gap-xsm,
.r-con.r-con-gap-xsm > .e-con-inner {
gap: var(--r-con-gap-xsm);
}
/* Small */
.r-con > .r-con-inner.r-con-gap-sm,
.r-con.r-con-gap-sm > .e-con-inner {
gap: var(--r-con-gap-xsm);
}
/* Medium */
.r-con > .r-con-inner.r-con-gap-med,
.r-con.r-con-gap-med > .e-con-inner {
gap: var(--r-con-gap-med);
}
/* Large */
.r-con > .r-con-inner.r-con-gap-lg,
.r-con.r-con-gap-lg > .e-con-inner {
gap: var(--r-con-gap-lg);
}

/* 
* * * Vertical only (row-gap) (Class mod)   * * *
*/

/* Regular */
.r-con > .r-con-inner.r-con-gap-row-reg,
.r-con.r-con-gap-row-reg > .e-con-inner {
row-gap: var(--r-con-gap-reg);
}
/* None */
.r-con > .r-con-inner.r-con-gap-row-none,
.r-con.r-con-gap-row-none > .e-con-inner {
row-gap: var(--r-con-gap-none);
}
/* Xxsmall */
.r-con > .r-con-inner.r-con-gap-row-xxsm,
.r-con.r-con-gap-row-xxsm > .e-con-inner {
row-gap: var(--r-con-gap-xxsm);
}
/* Xsmall */
.r-con > .r-con-inner.r-con-gap-row-xsm,
.r-con.r-con-gap-row-xsm > .e-con-inner {
row-gap: var(--r-con-gap-xsm);
}
/* Small */
.r-con > .r-con-inner.r-con-gap-row-sm,
.r-con.r-con-gap-row-sm > .e-con-inner {
row-gap: var(--r-con-gap-sm);
}
/* Medium */
.r-con > .r-con-inner.r-con-gap-row-med,
.r-con.r-con-gap-row-med > .e-con-inner {
row-gap: var(--r-con-gap-med);
}
/* Large */
.r-con > .r-con-inner.r-con-gap-row-lg,
.r-con.r-con-gap-row-lg > .e-con-inner {
row-gap: var(--r-con-gap-lg);
}

/* 
* * * Horizontal only (column-gap) (Class mod)   * * *
*/

/* Regular */
.r-con > .r-con-inner.r-con-gap-column-reg,
.r-con.r-con-gap-column-reg > .e-con-inner {
column-gap: var(--r-con-gap-reg);
}
/* None */
.r-con > .r-con-inner.r-con-gap-column-none,
.r-con.r-con-gap-column-none > .e-con-inner {
column-gap: var(--r-con-gap-none);
}
/* Xxsmall */
.r-con > .r-con-inner.r-con-gap-column-xxsm,
.r-con.r-con-gap-column-xxsm > .e-con-inner {
column-gap: var(--r-con-gap-xxsm);
}
/* Xsmall */
.r-con > .r-con-inner.r-con-gap-column-xsm,
.r-con.r-con-gap-column-xsm > .e-con-inner {
column-gap: var(--r-con-gap-xsm);
}
/* Small */
.r-con > .r-con-inner.r-con-gap-column-sm,
.r-con.r-con-gap-column-sm > .e-con-inner {
column-gap: var(--r-con-gap-sm);
}
/* Medium */
.r-con > .r-con-inner.r-con-gap-column-med,
.r-con.r-con-gap-column-med > .e-con-inner {
column-gap: var(--r-con-gap-med);
}
/* Large */
.r-con > .r-con-inner.r-con-gap-column-lg,
.r-con.r-con-gap-column-lg > .e-con-inner {
column-gap: var(--r-con-gap-lg);
}



/***************************
* CONTAINERS: Container content TOP ONLY margin to control gaps on a "per element level" + auto center element (Class mod)
****************************/


/* CENTER: Margin auto */
.r-con > .r-con-inner .r-margin-auto,
.r-con.e-con > .e-con-inner .r-margin-auto {
margin: auto;
}

/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-top-reg,
.r-con.e-con > .e-con-inner .r-margin-top-reg {
margin-top: var(--r-con-gap-reg);
}
/* None (none content gap) */
.r-con > .r-con-inner .r-margin-top-none,
.r-con.e-con > .e-con-inner .r-margin-top-none {
margin-top: var(--r-con-gap-none);
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-top-xxsm,
.r-con.e-con > .e-con-inner .r-margin-top-xxsm {
margin-top: var(--r-con-gap-xxsm);
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-top-xsm,
.r-con.e-con > .e-con-inner .r-margin-top-xsm {
margin-top: var(--r-con-gap-xsm);
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-top-sm,
.r-con.e-con > .e-con-inner .r-margin-top-sm {
margin-top: var(--r-con-gap-sm);
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-top-med,
.r-con.e-con > .e-con-inner .r-margin-top-med {
margin-top: var(--r-con-gap-med);
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-top-lg,
.r-con.e-con > .e-con-inner .r-margin-top-lg {
margin-top: var(--r-con-gap-lg);
}

/* 
* * * Mobile only (Class mod)   * * *
*/

@media (max-width: 767px) {
/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-top-reg_M,
.r-con.e-con > .e-con-inner .r-margin-top-reg_M {
margin-top: var(--r-con-gap-reg);
}
/* None (none content gap) */
.r-con > .r-con-inner .r-margin-top-none_M,
.r-con.e-con > .e-con-inner .r-margin-top-none_M {
margin-top: var(--r-con-gap-none);
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-top-xxsm_M,
.r-con.e-con > .e-con-inner .r-margin-top-xxsm_M {
margin-top: var(--r-con-gap-xxsm);
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-top-xsm_M,
.r-con.e-con > .e-con-inner .r-margin-top-xsm_M {
margin-top: var(--r-con-gap-xsm);
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-top-sm_M,
.r-con.e-con > .e-con-inner .r-margin-top-sm_M {
margin-top: var(--r-con-gap-sm);
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-top-med_M,
.r-con.e-con > .e-con-inner .r-margin-top-med_M {
margin-top: var(--r-con-gap-med);
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-top-lg_M,
.r-con.e-con > .e-con-inner .r-margin-top-lg_M {
margin-top: var(--r-con-gap-lg);
}
}



/***************************
* CONTAINERS: Container content TOP ONLY + NEGATIVE margin to control gaps on a "per element level" (Class mod)
****************************/

/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-top-reg-neg,
.r-con.e-con > .e-con-inner .r-margin-top-reg-neg {
margin-top: calc(-1 * var(--r-con-gap-reg));
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-top-xxsm-neg,
.r-con.e-con > .e-con-inner .r-margin-top-xxsm-neg {
margin-top: calc(-1 * var(--r-con-gap-xxsm));
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-top-xsm-neg,
.r-con.e-con > .e-con-inner .r-margin-top-xsm-neg {
margin-top: calc(-1 * var(--r-con-gap-xsm));
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-top-sm-neg,
.r-con.e-con > .e-con-inner .r-margin-top-sm-neg {
margin-top: calc(-1 * var(--r-con-gap-sm));
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-top-med-neg,
.r-con.e-con > .e-con-inner .r-margin-top-med-neg {
margin-top: calc(-1 * var(--r-con-gap-med));
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-top-lg-neg,
.r-con.e-con > .e-con-inner .r-margin-top-lg-neg {
margin-top: calc(-1 * var(--r-con-gap-lg));
}


/* 
* * * Mobile only (Class mod)   * * *
*/


@media (max-width: 767px) {
/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-top-reg-neg_M,
.r-con.e-con > .e-con-inner .r-margin-top-reg-neg_M {
margin-top: calc(-1 * var(--r-con-gap-reg));
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-top-xxsm-neg_M,
.r-con.e-con > .e-con-inner .r-margin-top-xxsm-neg_M {
margin-top: calc(-1 * var(--r-con-gap-xxsm));
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-top-xsm-neg_M,
.r-con.e-con > .e-con-inner .r-margin-top-xsm-neg_M {
margin-top: calc(-1 * var(--r-con-gap-xsm));
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-top-sm-neg_M,
.r-con.e-con > .e-con-inner .r-margin-top-sm-neg_M {
margin-top: calc(-1 * var(--r-con-gap-sm));
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-top-med-neg_M,
.r-con.e-con > .e-con-inner .r-margin-top-med-neg_M {
margin-top: calc(-1 * var(--r-con-gap-med));
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-top-lg-neg_M,
.r-con.e-con > .e-con-inner .r-margin-top-lg-neg_M {
margin-top: calc(-1 * var(--r-con-gap-lg));
}
}




/***************************
* CONTAINERS: Container content BOTTOM ONLY margin to control gaps on a "per element level" (Class mod)
****************************/

/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-bottom-reg,
.r-con.e-con > .e-con-inner .r-margin-bottom-reg {
margin-bottom: var(--r-con-gap-reg);
}
/* None (none content gap) */
.r-con > .r-con-inner .r-margin-bottom-none,
.r-con.e-con > .e-con-inner .r-margin-bottom-none {
margin-bottom: var(--r-con-gap-none);
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xxsm,
.r-con.e-con > .e-con-inner .r-margin-bottom-xxsm {
margin-bottom: var(--r-con-gap-xxsm);
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xsm,
.r-con.e-con > .e-con-inner .r-margin-bottom-xsm {
margin-bottom: var(--r-con-gap-xsm);
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-bottom-sm,
.r-con.e-con > .e-con-inner .r-margin-bottom-sm {
margin-bottom: var(--r-con-gap-sm);
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-bottom-med,
.r-con.e-con > .e-con-inner .r-margin-bottom-med {
margin-bottom: var(--r-con-gap-med);
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-bottom-lg,
.r-con.e-con > .e-con-inner .r-margin-bottom-lg {
margin-bottom: var(--r-con-gap-lg);
}

/* 
* * * Mobile only (Class mod)   * * *
*/

@media (max-width: 767px) {
/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-bottom-reg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-reg_M {
margin-bottom: var(--r-con-gap-reg);
}
/* None (none content gap) */
.r-con > .r-con-inner .r-margin-bottom-none_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-none_M {
margin-bottom: var(--r-con-gap-none);
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xxsm_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-xxsm_M {
margin-bottom: var(--r-con-gap-xxsm);
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xsm_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-xsm_M {
margin-bottom: var(--r-con-gap-xsm);
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-bottom-sm_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-sm_M {
margin-bottom: var(--r-con-gap-sm);
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-bottom-med_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-med_M {
margin-bottom: var(--r-con-gap-med);
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-bottom-lg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-lg_M {
margin-bottom: var(--r-con-gap-lg);
}
}





/***************************
* CONTAINERS: Container content BOTTOM ONLY + NEGATIVE margin to control gaps on a "per element level" (Class mod)
****************************/


/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-bottom-reg-neg,
.r-con.e-con > .e-con-inner .r-margin-bottom-reg-neg {
margin-bottom: calc(-1 * var(--r-con-gap-reg));
}
/* None (none content gap) */
.r-con > .r-con-inner .r-margin-bottom-none-neg,
.r-con.e-con > .e-con-inner .r-margin-bottom-none-neg {
margin-bottom: calc(-1 * var(--r-con-gap-none));
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xxsm-neg,
.r-con.e-con > .e-con-inner .r-margin-bottom-xxsm-neg {
margin-bottom: calc(-1 * var(--r-con-gap-xxsm));
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xsm-neg,
.r-con.e-con > .e-con-inner .r-margin-bottom-xsm-neg {
margin-bottom: calc(-1 * var(--r-con-gap-xsm));
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-bottom-sm-neg,
.r-con.e-con > .e-con-inner .r-margin-bottom-sm-neg {
margin-bottom: calc(-1 * var(--r-con-gap-sm));
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-bottom-med-neg,
.r-con.e-con > .e-con-inner .r-margin-bottom-med-neg {
margin-bottom: calc(-1 * var(--r-con-gap-med));
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-bottom-lg-neg,
.r-con.e-con > .e-con-inner .r-margin-bottom-lg-neg {
margin-bottom: calc(-1 * var(--r-con-gap-lg));
}

/* 
* * * Mobile only (Class mod)   * * *
*/

@media (max-width: 767px) {
/* Regular (regular content gap) */
.r-con > .r-con-inner .r-margin-bottom-reg-neg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-reg-neg_M {
margin-bottom: calc(-1 * var(--r-con-gap-reg));
}
/* None (none content gap) */
.r-con > .r-con-inner .r-margin-bottom-none-neg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-none-neg_M {
margin-bottom: calc(-1 * var(--r-con-gap-none));
}
/* Xxsmall (xxsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xxsm-neg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-xxsm-neg_M {
margin-bottom: calc(-1 * var(--r-con-gap-xxsm));
}
/* Xsmall (xsm content gap) */
.r-con > .r-con-inner .r-margin-bottom-xsm-neg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-xsm-neg_M {
margin-bottom: calc(-1 * var(--r-con-gap-xsm));
}
/* Small (sm content gap) */
.r-con > .r-con-inner .r-margin-bottom-sm-neg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-sm-neg_M {
margin-bottom: calc(-1 * var(--r-con-gap-sm));
}
/* Medium (med content gap) */
.r-con > .r-con-inner .r-margin-bottom-med-neg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-med-neg_M {
margin-bottom: calc(-1 * var(--r-con-gap-med));
}
/* Large (lg content gap) */
.r-con > .r-con-inner .r-margin-bottom-lg-neg_M,
.r-con.e-con > .e-con-inner .r-margin-bottom-lg-neg_M {
margin-bottom: calc(-1 * var(--r-con-gap-lg));
}
}



/***************************
* CONTAINERS: margin auto left/right (Class mod)
****************************/

.r-margin-left-auto > .e-con-inner {
margin-left: auto;
margin-right: 0;
}
.r-margin-right-auto > .e-con-inner {
margin-right: auto;
margin-left: 0;
}