/*! CONTENT CSS - common for page and tinymce */

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

:root { --font-size: 14px; }
html { font-size: 8px; }
body { font-size: 2rem; }

.ibs {
    display: block;
    font-size: 0.000001px;
    margin: -1rem;
    position: relative;
}
.ib {
    direction: initial;
    display: inline-block;
    font-size: 14px;
    font-size: var(--font-size);
    font-size: 1.4rem;
    margin: 0;
    max-width: 100%;
    padding: 1rem;
    position: relative;
    vertical-align: top;
}    
    .ib--12 { width: 100%; }
    .ib--11 { width: 91.66%; }
    .ib--10 { width: 83.33%; }
    .ib--9 { width: 75%; }
    .ib--8 { width: 66.66%; }
    .ib--7 { width: 58.33%; }
    .ib--6 { width: 50%; }
    .ib--5 { width: 41.66%; }
    .ib--4 { width: 33.33%; }
    .ib--3 { width: 25%; }
    .ib--2 { width: 16.66%; }
    .ib--1 { width: 8.33%; }
    .ib--020 { width: 20%; }
@media only screen and (max-width: 480px) {
    .ibs { direction: initial !important; }
    .ib { width: 100%; }
}

.ibs.flex {
    display: flex;
    flex-wrap: wrap;
}
.ibs.flex > .ib > div { min-height: 100%; }

.ibs.justify { text-align: justify; }
.ibs.justify:after {
    content: "";
    display: inline-block;
    height: 0;
    width: 100%;
}

.mceTmpl {
    border: 0 !important;
    padding: 0 !important;
}
.tinymce .ibs {
    font-size: 14px;
    font-size: var(--font-size);
    font-size: 1rem;
    margin: 1rem 0 !important;
    /*min-height: 25px;*/
    outline: 1px dashed #CCC;
    padding: 3px;
}
.tinymce .ibs:after { display: none; }
.tinymce .ib {
    min-height: 25px;
    outline: 1px dashed #CCC;
    outline-offset: -3px;
}

.table-wrapper {
    overflow-x: auto;
    width: 100%;
}
@media only screen and (max-width: 600px) {
    table.flip {
        clear: both;
        display: block;
        white-space: nowrap;
        width: 100%;
    }
    table.flip thead {
        display: block;
        float: left;
    }
    table.flip thead tr { display: block; }
    table.flip tbody {
        display: block;
        overflow-x: auto;
        position: relative;
        width: auto;
    }
    table.flip tbody tr {
        display: inline-block;
        vertical-align: top;
    }
    table.flip th, table.flip td { display: block; }
}

.table { display: table; }
.thead { display: table-header-group; }
.tbody { display: table-row-group; }
.tfoot { display: table-footer-group; }
.tr { display: table-row; }
.td { display: table-cell; }

.gallery {
    margin-bottom: 1rem;
    margin-top: 1rem;
}
.gallery-item {
    font-size: 0.000001rem;
    text-align: center;
    vertical-align: middle;
}
.gallery-a {
    display: inline-block;
    overflow: hidden;
}
    .gallery-a:hover { text-decoration: none; }
.gallery- img {
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all 0.25s ease;
    will-change: transform;
}
    .gallery-a:hover .gallery-img {
        -webkit-transform: scale(1.03);
        -moz-transform: scale(1.03);
        -ms-transform: scale(1.03);
        -o-transform: scale(1.03);
        transform: scale(1.03);
    }
.gallery-name {
    display: block;
    padding: 0.3rem 0;
    text-align: center;
}

.con { line-height: 1.6; }

.con img { max-width: 100%; }

.con ol > li {
    list-style-type: decimal;
    margin: 0.3em 0;
}

.con ul {
    margin: 1em 0;
    padding: 0;
}
.con ul > li {
    list-style-type: none;
    margin: 0.3em 0;
    padding: 0 0 0 2.5rem;
    position: relative;
}
.con ul > li:before {
    background: #CCC;
    border: 0;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    content: "";
    height: 1.1rem;
    left: 0.2rem;
    position: absolute;
    top: 0.7em;
    width: 1.1rem;
}

.ta-c,
.center { text-align: center; }
.ta-j,
.justify {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    position: relative;
    text-align: justify;
}
.ta-j:after,
.justify:after {
    content: "";
    display: inline-block;
    width: 100%;
}
.ta-l { text-align: left; }
.ta-r { text-align: right; }

.h0,
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5 { 
    font-weight: bold;
    line-height: 1.2;
    margin: 1em 0;
    padding: 0;
    text-transform: none;
}
h1, .h1, .fs-1 { font-size: 2.4rem; }
h2, .h2, .fs-2 { font-size: 2.0rem; } 
h3, .h3, .fs-3 { font-size: 1.8rem; }
h4, .h4, .fs-4 { font-size: 1.6rem; } 
h5, .h5, .fs-5 { font-size: 1.4rem; }

a > h1,
a > h2,
a > h3,
a > h4,
a > h5 {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
}

.c-0 { color: #000; }
.c-1 { color: #888; }
.c-2 { color: #F00; }

.va-b { vertical-align: bottom; }
.va-m { vertical-align: middle; }
.va-t { vertical-align: top; }