/* #region GENERAL */
.cs4ek
{
    --colgap: 0px;
    --rowgap: 0px;
}

.cs4ek img
{
    max-width: 100%;
    height: auto;
}

.cs4ek .clearfix::after
{
    content: "";
    clear: both;
    display: table;
}

.cs4ek section
{
    margin-bottom: 2rem;
}

.cs4ek .bd-top
{
    border-top: 1px solid;
}

.cs4ek .bd-bot
{
    border-bottom: 1px solid;
}
/* #endregion */

/* #region cs4ek-map */
.cs4ek section.cs4ek-map
{
    margin: 0;
}

.cs4ek #cs4ekMap
{
    height: 400px;
    max-height: 50vh;
}
/* #endregion */

/* #region Info content */
.cs4ek .cs4ek-info
{
    padding: .7rem 0;
}

.cs4ek .info-item .info-title
{
    font-weight: bold;
}
/* #endregion */

/* #region flexbox */
.tac {text-align: center;}
.acc { align-content: center; }
.fi { padding: .25rem; }

/* col1: max 30%, col2: min 70% */
.fx-type-1 { display: flex; }
.fx-type-1 > .fi1 { flex-shrink: 0; max-width: 30%; margin-right: 2rem; }
.fx-type-1 > .fi2 { flex-grow: 1; }

/* 50/50 fixed */
.fx-type-2 { display: flex; }
.fx-type-2 > .fi1 { flex: 0 0 50%; }
.fx-type-2 > .fi2 { flex: 0 0 50%; text-align: right; }

/* columns grow with max amount of columns / row */
.fx-max-1, .fx-max-2, .fx-max-3, .fx-max-4, .fx-max-5 { display: flex; flex-wrap: wrap; column-gap: var(--colgap); row-gap: var(--rowgap);}

.fx-max-1 > .fi { flex-basis: calc(100% - var(--colgap)); flex-shrink: 0; flex-grow: 1; }
.fx-max-2 > .fi { flex-basis: calc(50% - var(--colgap)); flex-shrink: 0; flex-grow: 1; }
.fx-max-3 > .fi { flex-basis: calc(33% - var(--colgap)); flex-shrink: 0; flex-grow: 1; }
.fx-max-4 > .fi { flex-basis: calc(25% - var(--colgap)); flex-shrink: 0; flex-grow: 1; }
.fx-max-5 > .fi { flex-basis: calc(20% - var(--colgap)); flex-shrink: 0; flex-grow: 1; }

/* fixed number of columns */
.fx-col-1, .fx-col-2, .fx-col-3, .fx-col-4, .fx-col-5 { display: flex; flex-wrap: wrap;}
.fx-col-1 > .fi {flex: 0 0 100%;}
.fx-col-2 > .fi {flex: 0 0 50%; }
.fx-col-3 > .fi {flex: 0 0 33%; }
.fx-col-4 > .fi {flex: 0 0 25%; }
.fx-col-5 > .fi {flex: 0 0 20%; }

@media (max-width: 1024px) 
{
    .fx-col-4 > .fi, .fx-col-5 > .fi { flex-basis: 33%; }
    .fi, .fx-max-4 > .fi, .fx-max-5 > .fi { flex-basis: calc(33% - var(--colgap)); }
}

@media (max-width: 768px) 
{
    .fx-col-3 > .fi, .fx-col-4 > .fi, .fx-col-5 > .fi { flex-basis: 50%; }
    .fx-max-3 > .fi, .fx-max-4 > .fi, .fx-max-5 > .fi { flex-basis: calc(50% - var(--colgap)); }

    .fx-type-1 { flex-wrap: wrap; }
    .fx-type-1 > .fi1 { flex-grow: 1; flex-shrink: 1; max-width: unset; margin-right: 0; }
}

@media (max-width: 576px) 
{
    .fx-col-2 > .fi, .fx-col-3 > .fi, .fx-col-4 > .fi, .fx-col-5 > .fi { flex-basis: 100%; }
    .fx-max-2 > .fi, .fx-max-3 > .fi, .fx-max-4 > .fi, .fx-max-5 > .fi { flex-basis: calc(100% - var(--colgap)); }
}
/* #endregion */

/* #region SINGLE */
.cs4ek.cs4ek-single h2
{
    margin-top: 0;
}

.cs4ek.cs4ek-single .cs4ek-title
{
    margin: 0;
}

.cs4ek.cs4ek-single .cs4ek-header
{
    margin-bottom: 1rem;
}

.cs4ek.cs4ek-single .cs4ek-share-social
{
    margin-top: 1rem;
}

.cs4ek.cs4ek-single .cs4ek-share-social > a
{
    margin-right: 1rem;
}
/* #endregion */

/* #region ARCHIVE */
.cs4ek.cs4ek-archive .cs4ek-title
{
    margin: 0 0 2rem 0;
}

.cs4ek.cs4ek-archive .cs4ek-subtitle
{
    margin-bottom: .25rem;
}

.cs4ek.cs4ek-archive.cs4ek-core
{
    margin-bottom: 3rem;
}

.cs4ek.cs4ek-archive .cs4ek-excerpt
{
    margin-top: 1rem;
}

.cs4ek.cs4ek-archive .cs4ek-archive-nav
{
    margin: 2rem 0;
    padding: 2rem 0;
}
/* #endregion */

/* #region shortcode-stats */
.cs4ek .cs4ek-stats-item
{
    display: inline-block;
    text-align: center;
    padding: 1rem;
}

.cs4ek .cs4ek-stats-item .cs4ek-stats-no
{
    font-weight: bold;
    font-size: 2rem;
}
/* #endregion */

/* #region shortcode-grid */
.cs4ek .cs4ek-shortcode-item .cs4ek-main-image-bg
{
    height: 300px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #ddd;
    place-content: end;

}

.cs4ek .cs4ek-shortcode-item .cs4ek-title
{
    padding: 2rem .75rem;
    font-size: 1.5rem;
    background-color: #fffa;
    margin: 0 0 0 0;
}

.cs4ek.cs4ek-shorcode
{
    --colgap: 20px;
    --rowgap: 20px;
}

.cs4ek .cs4ek-shortcode-item.fi
{
    padding: 0;
}

.cs4ek .cs4ek-shortcode-item .cs4ek-readmore
{
    text-align: center;
    padding: 1rem;
    font-size: 1.25rem;
}
/* #endregion */
