/**
 * A collection of utility classes for quick styling.
 *
 */

:root {
    /** Colors **/
    --primary-blue:  #86ACCB; /* #406E96; */
    --gray-1: #f8f9fa;
    --gray-2: #ececec;
    --gray-3: #a1a1a1;
    --gray-4: #777777;
    --gray-5: #333333;
    --transparent-white-58: rgba(255,255,255,0.58);
    --transparent-white-75: rgba(255,255,255,0.75);

    /** Widths **/
    --content-width-lg: 1920px;
    --content-width: 1500px;
    --content-width-md: 1050px;
}

/* Backgrounds
--------------------------------------------- */
.has-blurred-bg {
    position: relative;
    z-index: 1;
    box-shadow: 0 3px 6px #cecece;
}
/*
.has-blurred-bg::before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--transparent-white-75);
    -webkit-backdrop-filter: blur(3px);
            backdrop-filter: blur(3px);
} */
.wp-block-group.has-gray-inner-bg .wp-block-group__inner-container {
    background-color: var(--gray-1);
}
.white-bg { background-color: #fff; }
.gray-bg-1 { background-color: var(--gray-1); }
.gray-bg-2 { background-color: var(--gray-2); }
.gray-bg-3 { background-color: var(--gray-3); }
.gray-bg-4 { background-color: var(--gray-4); }
.gray-bg-5 { background-color: var(--gray-5); }


/* Widths
--------------------------------------------- */
.contain-width-lg, .content-width-lg { max-width: var(--content-width-lg); margin-left: auto; margin-right: auto; }
.contain-width, .content-width { max-width: var(--content-width); margin-left: auto; margin-right: auto; }
.contain-width-md, .content-width-md { max-width: var(--content-width-md); margin-left: auto; margin-right: auto; }


/* Heights
--------------------------------------------- */


/* Colors
--------------------------------------------- */
.blue-1 { color: var(--primary-blue); }
.white-color { color: #ffffff; }


/* Padding/Margin
--------------------------------------------- */
/*
.p-1 { padding: 0.5rem; }
.p-2 { padding: 1rem; }
.p-3 { padding: 1.5rem; }
.p-4 { padding: 2rem; }
.p-5 { padding: 2.5rem; }
.px-1 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-2 { padding-left: 1rem; padding-right: 1rem; }
.px-3 { padding-left: 1.5rem; padding-right: 1.5rem; }
.px-4 { padding-left: 2rem; padding-right: 2rem; }
.px-5 { padding-left: 2.5rem; padding-right: 2.5rem; }
.py-1 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-2 { padding-top: 1rem; padding-bottom: 1rem; }
.py-3 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.py-4 { padding-top: 2rem; padding-bottom: 2rem; }
.py-5 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.m-1 { margin: 0.5rem; }
.m-2 { margin: 1rem; }
.m-3 { margin: 1.5rem; }
.m-4 { margin: 2rem; }
.m-5 { margin: 2.5rem; }
.mt-1 { margin-top: 0.5rem; }
.mt-2 { margin-top: 1rem; }
.mt-3 { margin-top: 1.5rem; }
.mt-4 { margin-top: 2rem;}
.mt-5 { margin-top: 2.5rem; }
.mb-1 { margin-bottom: 0.5rem; }
.mb-2 { margin-bottom: 1rem; }
.mb-3 { margin-bottom: 1.5rem; }
.mb-4 { margin-bottom: 2rem;}
.mb-5 { margin-bottom: 2.5rem; }
.mt-0 { margin-top: 0; }
.mb-0 { margin-bottom: 0; } 
*/


/* Display Properties
--------------------------------------------- */
.d-block { display: block; }
.d-flex { display: flex; }
.d-grid { display: grid; }
.d-inline { display: inline; }
.d-inline-block { display: inline-block; }
.d-table { display: table; }
.d-table-row { display: table-row; }
.d-table-cell { display: table-cell; }
.justify-content-start { justify-content: flex-start; }
.justify-content-end { justify-content: flex-end; }
.justify-content-center { justify-content: center; }
.justify-content-between { justify-content: space-between; }
.justify-content-around { justify-content: space-around; }
.justify-content-evenly { justify-content: space-evenly; }
.align-items-start { align-items: flex-start; }
.align-items-end { align-items: flex-end; }
.align-items-center { align-items: center; }
.align-items-baseline { align-items: baseline; }
.align-items-stretch { align-items: stretch; }
.no-break { white-space: nowrap; }
.overflow-hidden { overflow: hidden; }
.responsive-frame { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.responsive-frame > * { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/* Font Properties
--------------------------------------------- */
.bold, .font-bold { font-weight: bold; }


/* Mobile
--------------------------------------------- */
@media screen and (min-width: 550px) {
    /* Display Properties */
    .justify-content-sm-start { justify-content: flex-start; }
    .justify-content-sm-end { justify-content: flex-end; }
    .justify-content-sm-center { justify-content: center; }
    .justify-content-sm-between { justify-content: space-between; }
    .justify-content-sm-around { justify-content: space-around; }
    .justify-content-sm-evenly { justify-content: space-evenly; }
    .align-items-sm-start { align-items: flex-start; }
    .align-items-sm-end { align-items: flex-end; }
    .align-items-sm-center { align-items: center; }
    .align-items-sm-baseline { align-items: baseline; }
    .align-items-sm-stretch { align-items: stretch; }
}

/* Tablet */
@media screen and (min-width: 770px) {
    /* Display Properties */
    .justify-content-md-start { justify-content: flex-start; }
    .justify-content-md-end { justify-content: flex-end; }
    .justify-content-md-center { justify-content: center; }
    .justify-content-md-between { justify-content: space-between; }
    .justify-content-md-around { justify-content: space-around; }
    .justify-content-md-evenly { justify-content: space-evenly; }
    .align-items-md-start { align-items: flex-start; }
    .align-items-md-end { align-items: flex-end; }
    .align-items-md-center { align-items: center; }
    .align-items-md-baseline { align-items: baseline; }
    .align-items-md-stretch { align-items: stretch; }
}

/* Laptop/Horizontal Tablet */
@media screen and (min-width: 1200px),
only screen and (min-device-width: 770px) and (max-device-width: 1200px) and (orientation: landscape) {
    /* Display Properties */
    .justify-content-lg-start { justify-content: flex-start; }
    .justify-content-lg-end { justify-content: flex-end; }
    .justify-content-lg-center { justify-content: center; }
    .justify-content-lg-between { justify-content: space-between; }
    .justify-content-lg-around { justify-content: space-around; }
    .justify-content-lg-evenly { justify-content: space-evenly; }
    .align-items-lg-start { align-items: flex-start; }
    .align-items-lg-end { align-items: flex-end; }
    .align-items-lg-center { align-items: center; }
    .align-items-lg-baseline { align-items: baseline; }
    .align-items-lg-stretch { align-items: stretch; }
    .no-break-lg { white-space: nowrap; }
}