:root
{   
    --margin-section: 80px;

/*    --color-text: #01161e;*/
    --color-text: #464646;
    --color-text-headline: #042A2B;
    --color-text-anchor:  #26AACF;
    

}

* 
{
  box-sizing: border-box;
  line-height: 1.3;
  margin: 0;
  padding: 0;
  border: 0;
}

body
{
    display: flex;
    flex-direction: column;
    min-height: 100vh;    
    
    margin: 0;
    padding: 0;   
    
    background: var(--color-white);    
    
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    line-height: 1.5;
}

body, p, li, ol, td, input, textarea, a, span, div, body, .menuSide a, .menuSide .dir a, .titleCircle span
{
    color: var(--color-text);    
    font-size: 1em; /* 1em = 16px */            
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: 1px;
}

h1, h2, h3, h4, h5, h6, .labelFooterSection, .mediaTitle
{
    display: block;
    float: none;
/*    width: 100%;*/
    font-family: 'Libre Baskerville', sans-serif;
    font-weight: 500;   
    color: var(--color-text-headline);
    line-break: 1;
    margin-top: 0;
    padding-top: 0;
    line-height: 1.0em;
    position: relative;
}

h1, h2, legend
{ 
    margin-bottom: 16px;
    color: var(--color-text-headline); 
    font-family: 'Libre Baskerville', sans-serif;   
    font-size: 175%;         
    text-align: center; 
    font-weight: 400;   
    line-heigh: 1.25;
}

h1 { font-size: 200%; font-weight: 400; }
h2{ font-size: 150%; text-align: center;  }
h3{ font-size: 125%; font-weight: 400; padding: 0; border: 0; }
h4{ font-size: 112%; padding: 0; border: 0; margin: 0 0 10px; }
h5{ font-size: 100%; padding: 0; border: 0; margin: 0 0 10px; }
h6{ font-size: 100%; padding: 0; border: 0; margin: 0 0 10px;  }

h1 + h2, h2 + h3, h3 + h4, h4 + h5, h5 + h6
{
}

h2 + p, h3 + p, h4 + p, h5 + p, h6 + p, h2 + ul, h3 + ul, h4 + ul, h5 + ul, h6 + ul
{
/*    margin-top: 10px;*/
}

p + h2, p + h3, p + h4, p + h5, p + h6, ul + h2, ul + h3, ul + h4, ul + h5, ul + h6
{
    margin-top: 48px;
}

ul + h2
{
    margin-top: 30px;
}

p 
{    
}

p + p
{
    margin-top: 2.5%;    
}

p, ul, ol
{

}

b, strong
{
    font-weight: 600;
}

a 
{
    color: var(--color-text-anchor); 
    text-decoration: underline;
}

a:hover 
{ 
    color: var(--color-category-red); 
    text-decoration: underline; 
}

a img
{ 
    border: none; 
}

ul, ol 
{ 
    margin: 20px 0px 10px 0px; 
    padding: 0px; 
}

ul li 
{ 
    margin: 0; 
    padding: 2px 0 0 30px; 
    list-style-type: none; 
    background: transparent url('/templates/__shared__/images/li-grey.svg') no-repeat 10px 8px;
    background-size: 11px; 
}

ul li + li
{ 
    margin-top: 10px; 
}

ol li 
{ 
    margin: 0px 0px 5px 26px; 
    padding: 0px; 
    list-style-type: decimal; 
}

ul ul, ol ol 
{ 
    margin-top: 5px; 
}

p + ul
{
    margin-top: 5px;
}

ul + p, ul + ul
{
    margin-top: 3.5%;
}

legend
{
    font-size: 125%;
}

hr
{
    color: #f6f6f6;
    height: 1px;
    border: none;
    background-color: #f6f6f6;
}

/* pomocne tridy */
.cl
{
   clear: both;
   width: 100%;
   line-height: 0px;
   height: 0px;
   font-size: 0px;
   overflow: hidden;
   margin: 0px;
}

.tal { text-align:left; }
.tac { text-align: center; }
.tar { text-align:right; }



/**************************************************/
/* lazyload images */
/**************************************************/



@keyframes lazyAnimation
{
    0% {
      opacity: 0;
    }
    100% {
      visibility: visible;
      opacity: 1;
    }
}

.lazyAni
{
    animation: lazyAnimation 1s;
}

/**************************************************/
/* základní prvky */
/**************************************************/

.block
{
    display: block;
    overflow: hidden;
    float: none;
    margin: 0;
    padding: 0;
}

.containerFlex { display: flex; flex-direction: row; flex-wrap: wrap; }
.hidden { display: none; }

.overflowHidden { overflow: hidden !important; }
.overflowVisible { overflow: visible !important; }

.fl { float: left; }
.fr { float: right; }
.fn { float: none; }

.main
{
    max-width: 1000px;
    
    margin: 0 auto;
    padding: 0;
    
    text-align: left;
    overflow: hidden;
}

.wrapHeaderAndContent
{
    justify-content: center;
}

.wrapArticleContent
{
    margin-top: 32px;
}


/**************************************************/
/* kulaté rohy */
/**************************************************/

.boxRounded
{
    -webkit-border-top-left-radius:3px;
    -moz-border-radius-topleft:3px;
    border-top-left-radius:3px;
    -webkit-border-top-right-radius:3px;
    -moz-border-radius-topright:3px;
    border-top-right-radius:3px;
    -webkit-border-bottom-right-radius:3px;
    -moz-border-radius-bottomright:3px;
    border-bottom-right-radius:3px;
    -webkit-border-bottom-left-radius:3px;
    -moz-border-radius-bottomleft:3px;
    border-bottom-left-radius:3px;
} 

.boxCircle 
{
    -webkit-border-top-left-radius:1000px;
    -moz-border-radius-topleft:1000px;
    border-top-left-radius:1000px;
    -webkit-border-top-right-radius:1000px;
    -moz-border-radius-topright:1000px;
    border-top-right-radius:1000px;
    -webkit-border-bottom-right-radius:1000px;
    -moz-border-radius-bottomright:1000px;
    border-bottom-right-radius:1000px;
    -webkit-border-bottom-left-radius:1000px;
    -moz-border-radius-bottomleft:1000px;
    border-bottom-left-radius:1000px;
} 



/**************************************************/
/* efekty */
/**************************************************/

.fx, .fx:hover, a, a:hover
{
    transition: all ease-in-out 0.3s;
} 



/**************************************************/
/* message box */
/**************************************************/

.ok, .err 
{
   padding: 10px;
   margin: 5px 0 0 0;
   padding: 2% 2% 2% 38px;
   font-size: 80%;
   color: #fff;
}

.ok 
{
   background: #78b800 url('/templates/__shared__/images/ico-ok.png') no-repeat  10px center;
   background-size: 20px;
}

.err 
{
   background: #c80002 url('/templates/__shared__/images/ico-err.png') no-repeat  10px center;
   background-size: 20px;   
}


/**************************************************/
/* čtverec */
/**************************************************/

.boxSquare
{
    width: 100%;
    height: 0;
    padding-bottom: 100%;    
}



/**************************************************/
/* loading pro lazyloading obrázků */
/**************************************************/

.lazyBakery
{
    background: transparent url('/templates/__shared__/images/loading.svg') no-repeat center center;
    background-size: 48px !important;
}



/**************************************************/
/* definice barevných šablon */
/**************************************************/

.wrapSectionYellow
{
    background: #defa04;
}   

.wrapSectionYellowLight
{
    background: #e2c704;
}

.wrapSectionWhite
{
    background: #fff;
}

.wrapSectionGrey
{
    background: #adadad;
}

.wrapSectionGreyLight
{
    background: #DAFBFB;
}

.wrapSectionGreyDark
{
    background: #202020;
}

.wrapSectionBlack
{
    background: #000;
}



/**************************************************/
/* button more */
/**************************************************/

.wrapButMoreSection
{
    margin-top: 30px;
    justify-content: center;
}

    .butMore, .butMore:link,
    .wrapSubMenu a, .wrapSubMenu a:link,
    .butCallToActionInline, .butCallToActionInline:link
    {
        display: inline-block;
        float: left;
        padding: 10px 22px;
        border: 2px solid #14b8b8;

        color: #14b8b8;
        font-weight: 700;
        text-decoration: none;
        text-align: center;

        cursor: pointer;
    }

    .butMore:hover, .wrapSubMenu a:hover,
    .butCallToActionInline:hover
    {
        background: #14b8b8;
        color: #fff;
        text-decoration: none;
    }
    
    .butMore + .butMore,
    .butCallToActionInline + .butCallToActionInline
    {
        margin-left: 12px;
    }


/**************************************************/
/* button call-to-action inline */
/**************************************************/

.butCallToActionInline, .butCallToActionInline:link
{
    background: #defa04;
    border: 0;
}

.butCallToActionInline:hover
{
    border: 0;
}
    


/************************************************/
/* text ve sloupcích  */
/************************************************/ 

.textInColumns
{
    column-count: 3;    
}

.fontSizeBigger .textInColumns li
{
    padding: 2px 15px 0 20px;
    background-position-y: 12px;
}


/**************************************************/
/* minišablona - title & content */
/**************************************************/

.wrapTitleAndContent, .wrapSection
{
/*    padding: var(--margin-section) 0;*/
}

.wrapContentNoMargins 
{
    margin: 0;
    padding: 0;
}


.sectionNoMargin > div, .sectionNoMargin > .wrapSection, .sectionNoMargin > .wrapTitleAndContent
{
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;    
}

.wrapSection.containerFlex > .block
{
    margin-left: auto;
    margin-right: auto;
}



/**************************************************/
/* minišablona - title & content & cover background*/
/**************************************************/


.wrapTitleAndContentAndCoverBackground
{
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}



/**************************************************/
/* minišablona - galerie */
/**************************************************/

.wrapGalleryContainer
{
    justify-content: center;
}

    .boxGalleryContainer
    {
        margin: var(--margin-section) 0;
    }


/**************************************************/
/* minišablona - nadpis a obsha  */
/**************************************************/

.wrapSection  .boxTitleAndContent h2, .boxTitleAndContent h3, .boxTitleAndContent h4, .boxTitleAndContent h5, .boxTitleAndContent h6
{
/*    text-align: left;*/
}


/**************************************************/
/* minišablona - mapa  */
/**************************************************/

.wrapSection.wrapMapContent
{
    padding-bottom: 0;
}


/**************************************************/
/* minišablona - úvodní text  */
/**************************************************/

.wrapSection.wrapIntroTextSection
{
    justify-content: center;
    padding-bottom: 0;
}

    .boxIntroTextSection
    {
        background: #f2f2f2;
        padding: 48px;
    }
    
    
    
/************************************************/
/* tabulky přes DIVy */
/************************************************/  

.wrapTable
{
    width: 100%;
    overflow: hidden;
    float: none;
}

.wrapTable + h2
{
    margin-top: 60px;
}

.wrapTableGreen
{
    background: #C8F9F9;
}

.wrapTableWhite
{
    background: #fff;
}

    .wrapTr
    {
        width: 100%;
        display: flex;
        overflow: hidden;
        float: none;   
        
        margin: 0 0 2px; 
    }
    
    .wrapTr:nth-child(even)
    {
        background: #fff;
    }
    
    .wrapTr:nth-child(odd)
    {
        background: #fff;
    }   
    
    .wrapTableWhite .wrapTr:nth-child(odd)
    {
        background: #fff;
    }
    
    .wrapTrLine
    {
        border-bottom: 1px solid #e9e9e9;
        margin: 0;
        padding: 10px 0;
    } 
    
    .wrapTrTh
    {
        padding: 0;
    }
    
        .wrapTd, .wrapTh, .wrapTdLabel, .wrapTdValue
        {
            float: left;
            margin: 0;
            padding: 0;
            
            font-size: 100%;

            align-items: flex-start;
        }    

        .wrapTableSmaller .wrapTd/*, .wrapTableSmaller .wrapTh*/, .wrapTableSmaller .wrapTdLabel, .wrapTableSmaller .wrapTdValue
        {
            font-size: 85%;
        }
        
        .wrapTh
        {
            background: #C8F9F9;
            font-weight: 600;
        }  
        
        .wrapTdLabel
        {
            width: 25%;
        }            

            .wrapTdLabel label
            {
                font-size: 110%;
            }         
        
        .wrapTdValue
        {
            width: 75%;
        }        
        
            .wrapTdValue input.w100
            {
                width: 97% !important;
                padding: .8%;
            }      