/******************************************/
/* fonts */

@font-face {
    font-family: museo-sans;
    font-weight: 300;
    src: url('/lib/MuseoSans_300.otf');
}

@font-face {
    font-family: museo-sans;
    font-weight: 500;
    src: url('/lib/MuseoSans_500.otf');
}

@font-face {
    font-family: museo-sans;
    font-weight: 700;
    src: url('/lib/MuseoSans_700.otf');
}

/******************************************/
/* elements */

* {
    box-sizing: border-box;
    --init-class: initial;
    --dyn-class: initial;
    --ind-class: initial;
}

html {
    --dyn-class: "\
    rel_width<=40:width_lvl_narrow \
    rel_width>40&rel_width<=60:width_lvl_compact \
    rel_width>60&rel_width<80:width_lvl_normal \
    rel_width>=80:width_lvl_wide \
    ";

    --init-class: '\
    agent=internet_explorer&version>=10:quirk_ms_grid \
    agent=internet_explorer&version<10:quirk_no_grid \
    agent=internet_explorer&version<9:quirk_no_rgba \
    agent=internet_explorer&version<9:quirk_no_v_units \
    agent=internet_explorer&version<9:quirk_ms_bg_size \
    ';
}

body {
    -ms-text-size-adjust: 100%;    
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body { background-color: #eeeeee; }

body { font-size: 1.2em; }
html.width_lvl_compact body { font-size: 1.1em; }
html.width_lvl_narrow body { font-size: 1em; }

body { --ind-class: band; }

body,
textarea,
input,
button {
    font-family: museo-sans,tahoma;
    font-weight: 300;
    line-height: 1.5;
}

body,
td {
    margin: 0;
    padding: 0;
}

textarea,
input,
button { font-size: 1em; }

input,
textarea {
    padding-left: .25em;
    padding-right: .25em;
}

textarea { display: block; }

ul {
    padding-left: 1.25em;
    margin-top: .5em;
    margin-bottom: .5em;
    marker-offset: 80px;
}

ul:first-child { margin-top: 0; }
ul:last-child { margin-bottom: 0; }

a { text-decoration: none; }

a,
a:visited { color: #4499dd; }

a:hover { color: #66ccff; }

textarea { overflow: auto; }

table { border-spacing: 0; }

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
    line-height: 1.25;
}

h1 {
    font-size: 1.44em;
    margin-top: 1.74em; /* 2.5 base */
    margin-bottom: .35em; /* .5 base */
}

h2 {
    font-size: 1.25em;
    margin-top: 1em; /* 1.25 base */
    margin-bottom: .4em; /* .5 base */
}

h1:first-child,
h2:first-child { margin-top: 0; }

h3,
h4,
h5,
h6 {
    font-size: 1em;
    margin-top: .75em; /* .75 base */
    margin-bottom: .5em; /* .5 base */
}

/* classes */

div.dark { color: #ffffff; }

.fixed {
    position: fixed;
    z-index: 10;
}

.full_size {
    width: 100%;
    height: 100%;
}

.full_width { width: 100%; }

.full_height { height: 100%; }

.view_height { min-height: 100%; }

table.view_height {
    height: 100%;
    min-height: 0;
}

.clickable { cursor: pointer; }

p,
.paragraph {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

p:first-child { margin-top: 0; }
p:last-child { margin-bottom: 0; }

/* section */

.sec { width: 100%; }

/* page */

.page {
    min-height:  height: 100%;
    position: relative;
}

/* bg_img */

.bg_img,
.band,
.tile {
    background-size: cover;
    background-position-x: center;
    background-position-y: center;
}

/* button */

.button {
    display: inline-block;
    /* background-color: #009cff; */
    background-color: #00ccff;
    font-weight: bold;
    padding: .25em 1em .25em 1em;
    /* border-radius: 6px; */
}

.button {
    text-transform: uppercase;
    margin-top: 1em;
}
.button, a.button { color: #ffffff; }
.button.disabled { opacity: .30; }
.dark .button.disabled { opacity: .60; }
button.button { border-style: none; }

/* .button:hover { color: #0651c9; } */

/* popup */

.popup_mask {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
}

html.quirk_no_rgba .popup_mask.veil { background-color: rgb(221,221,221); }
.popup_mask.veil { background-color: rgba(221,221,221,.95); }

/* icon*/

div.icon {
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    text-align: center;
}
html.agent_internet_explorer .icon { -ms-interpolation-mode: bicubic; }

/* header */

#header {
    font-size: 1.2em;
    width: 100%;
    background-color: #ffffff;
}

#header >* {
    display: inline-block;
    vertical-align: top;
}

#header .logo {
    width: 10.866em; /* 326/75*height */
    background-size: contain;
    background-position: left center;
    background-position-x: 10%;
    background-repeat: no-repeat;
    background-image: url('/lib/header_logo.png');
    height: 2.5em;
    margin-left: 1em;
}
html.width_lvl_compact #header .logo  { margin-left: 5%; }
html.width_lvl_narrow #header .logo { margin-left: 3%; }

/* menu */

#header .menu {
    position: absolute;
    right: 0;
    font-weight: 700;
    user-select: none;
}

#header .menu .menu_button {
    display: inline-block;
    line-height: 2.5;
    color: #4499dd;
    padding-left: 1em; 
    padding-right: 1em; 
}

#header .menu_button .icon {
    width: .75em;
    height: .75em;
}

#header .menu_button div.icon {
    background-image: url('/lib/menu_blue.svg');
    display: inline-block;
}

html.quirk_no_rgba #header .menu0 { background-color: rgb(238,238,238); }
#header .menu0 {
    background-color: rgba(238,238,238,.95);
    display: none;
    text-align: left;
    line-height: 2; 
    position: absolute;
    right: 0;
    width: 15em;
}

#header .menu0 span { color: #888888; }

#header .menu:hover .menu0 {
    display: block;
    z-index: 10;
}

#header .menu a,
#header .menu span {
    display: block;
    padding-left: .5em;
    padding-right: .5em;
}

#header .item1 a,
#header .item1 span { padding-left: 1.5em; }

#header .menu a:hover {
    background-color: #66ccff;
    color: #ffffff;
}

#header .menu:hover .menu_button { background-color: #eeeeee; }

html.pre #header .menu { display: none; }

/* menu - bar */

#header .menu { --dyn-class: 'width_lvl=normal|width_lvl=wide:bar'; }

#header .menu.bar .menu_button { display: none; }

#header .menu.bar .menu0 {
    line-height: inherit;
    background-color: transparent;
    position: relative;
    right: auto;
    width: auto;
}

#header .menu.bar .menu0,
#header .menu.bar:hover .menu0 { display: inline-block; }
#header .menu.bar .menu0 >* { display: inline-block; }

#header .menu.bar .item0 >a,
#header .menu.bar .item0 >span {
    line-height: 2.5;
    height: 2.5em;
}

#header .menu.bar .item0 >span { color: #4499dd; }
#header .menu.bar .item0 >a,
#header .menu.bar .item0:last-child >a,
#header .menu.bar .item0:last-child >span { padding-right: 1em; }

html.quirk_no_rgba #header .menu.bar .menu1 { background-color: rgb(238,238,238); }
#header .menu.bar .menu1 {
    background-color: rgba(238,238,238,.95);
    position: fixed;
    display: none;
    font-size: .8em;
}

#header .menu.bar .item1 >a,
#header .menu.bar .item1 >span { line-height: 2; }

#header .menu.bar .item1 a,
#header .menu.bar .item1 span {
    padding-left: .65em;
    padding-right: .62em;
 }

#header .menu.bar .item0:hover .menu1 {
    position: absolute;
    display: block;
    z-index: 3;
}

#header .menu.bar .item0:hover >span { background-color: #eeeeee; }


html.quirk_ms_bg_size #header .logo {
    background-image: none;
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/lib/header_logo.png',sizingMethod='scale')";
}

html.quirk_ms_bg_size #header .menu div.icon {
    background-image: none;
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/lib/menu_blue20.png',sizingMethod='scale')";
}


/* footer */

#footer {
    width: 100%;
    background-color: #000000;
    background:linear-gradient(135deg,#000000,#444444);
    font-size: .7em;
    line-height: 1.25;
    display: table;
}

#footer >div {
    display: table-cell;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    vertical-align: middle;
    height: 100%;
    width: 50%;
}

#footer,
#footer a { color: #ffffff; }

#footer h1 { margin-top: 0; }

#footer .info >div { display: table; }

#footer .info >div >div {
    display: table-cell;
    margin-left: 1em;
    margin-right: 1em;
}

#footer .news {
    padding-left: 1.5em;
    width: 28%;
}

#footer .events {
    padding-left: 1em;
    padding-right: 1em;
    width: 22%;
}

#footer .contact {
    border-left-style: solid;
    border-left-color: #777777;
    border-left-width: 1px;
    text-align: center;
}

#footer .contact >div {
    display:inline-block;
    text-align: left;
    font-size: 2em;
}

html.width_lvl_compact #footer .info,
html.width_lvl_narrow #footer .info { display: none; }

html.width_lvl_compact #footer { font-size: 1.8em; }

html.quirk_no_v_units.width_lvl_narrow #footer { font-size: 1.25em; }
html.width_lvl_narrow #footer { font-size: 6vw; }

html.width_lvl_compact #footer .contact,
html.width_lvl_narrow #footer .contact {
    padding-top: .5em;
    padding-bottom: .5em;
    width: 100%;
    border-left-style: none;
}

html.width_lvl_compact #footer .contact >div,
html.width_lvl_narrow #footer .contact >div {
    text-align: center;
    font-size: 1em;
}

html.pre #footer { display: none; }

#footer { max-height: 10000px; } /* stop edge font enlargement */

/* filler */

#filler { background-color: #ffffff; }

/* content */

.icon.abrv {
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5;
    font-weight: 700;
    background-image: url("/lib/circle100.png");
}
html.quirk_ms_bg_size .icon.abrv {
    background-image: none;
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/lib/circle100.png',sizingMethod='scale')";
}

.layout { max-height: 10000px; } /* stop edge font enlargement */

.band .layout {
    padding-top: 2em;
    padding-bottom: 2em;
    margin-left: auto;
    margin-right: auto;
    width: 45em; 
}
html.width_lvl_wide .band >.layout { width: 50em; }
html.width_lvl_compact .band >.layout { width: 90%; }
html.width_lvl_narrow .band >.layout { width: 94%; }

/* dbg */

html.agent_internet_explorer #dbg_msg { background-color:#ffffff; -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=70)'; }
#dbg_msg {
    position: fixed;
    bottom: 0;
    width: 100%;
    color: #ff0000;
    background-color: rgba(255, 255, 255, .6);
    line-height:1;
    white-space: pre-wrap;
}

/* graphic */

.graphic { cursor: pointer; }

html.agent_internet_explorer .zoom { -ms-transform: translate(-50%,-50%); }
.zoom {
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);

    display: block;
    position: relative;
    width: 85%;
    height: 85%;
    left: 50%;
    top: 50%;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}

.zoom .close {
    position:absolute;
    height: .75em;
    width: .75em;
    top: -.75em;
    right: -.75em;
    text-align:center;
    vertical-align: middle;
    cursor: pointer;
    background-size: cover;
    background-image: url('/lib/x_gray12.png');
}

/* ms_gap_grid */

html.quirk_ms_grid div.ms_gap_grid { --ind-class: ms_cell; }
html.quirk_ms_grid div.ms_gap_grid >div { --dyn-class: ms_cell; }

html.quirk_ms_grid .ms_gap_grid >.ms_cell { -ms-grid-column: 1; }

html.quirk_ms_grid .ms_gap_grid >.ms_cell_0 { -ms-grid-row: 1; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_1 { -ms-grid-row: 3; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_2 { -ms-grid-row: 5; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_3 { -ms-grid-row: 7; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_4 { -ms-grid-row: 9; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_5 { -ms-grid-row: 11; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_6 { -ms-grid-row: 13; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_7 { -ms-grid-row: 15; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_8 { -ms-grid-row: 17; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_9 { -ms-grid-row: 19; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_10 { -ms-grid-row: 21; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_11 { -ms-grid-row: 23; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_12 { -ms-grid-row: 25; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_13 { -ms-grid-row: 27; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_14 { -ms-grid-row: 29; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_15 { -ms-grid-row: 31; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_16 { -ms-grid-row: 33; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_17 { -ms-grid-row: 35; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_18 { -ms-grid-row: 37; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_19 { -ms-grid-row: 39; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_20 { -ms-grid-row: 41; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_21 { -ms-grid-row: 43; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_22 { -ms-grid-row: 45; }
html.quirk_ms_grid .ms_gap_grid >.ms_cell_23 { -ms-grid-row: 47; }

/* ms_gap_grid - c2 */

html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_0,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_2,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_4,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_6,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_8,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_10,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_12,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_14,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_16,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_18,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_20,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_22 { -ms-grid-column: 1; }

html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_1,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_3,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_5,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_7,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_9,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_11,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_13,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_15,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_17,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_19,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_21,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_23 { -ms-grid-column: 3; }

html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_0,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_1 { -ms-grid-row: 1; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_2,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_3 { -ms-grid-row: 3; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_4,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_5 { -ms-grid-row: 5; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_6,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_7 { -ms-grid-row: 7; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_8,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_9 { -ms-grid-row: 9; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_10,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_11 { -ms-grid-row: 11; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_12,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_13 { -ms-grid-row: 13; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_14,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_15 { -ms-grid-row: 15; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_16,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_17 { -ms-grid-row: 17; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_18,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_19 { -ms-grid-row: 19; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_20,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_21 { -ms-grid-row: 21; }
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_22,
html.quirk_ms_grid .ms_gap_grid.c2 >.ms_cell_23 { -ms-grid-row: 23; }

/* ms_gap_grid - c3 */

html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_0,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_3,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_6,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_9,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_12,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_15,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_18,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_21 { -ms-grid-column: 1; }

html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_1,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_4,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_7,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_10,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_13,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_16,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_19,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_22 { -ms-grid-column: 3; }

html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_2,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_5,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_8,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_11,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_14,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_17,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_20,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_23 { -ms-grid-column: 5; }

html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_0,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_1,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_2 { -ms-grid-row: 1; }
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_3,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_4,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_5 { -ms-grid-row: 3; }
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_6,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_7,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_8 { -ms-grid-row: 5; }
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_9,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_10,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_11 { -ms-grid-row: 7; }
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_12,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_13,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_14 { -ms-grid-row: 9; }
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_15,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_16,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_17 { -ms-grid-row: 11; }
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_18,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_19,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_20 { -ms-grid-row: 13; }
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_21,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_22,
html.quirk_ms_grid .ms_gap_grid.c3 >.ms_cell_23 { -ms-grid-row: 15; }
