@font-face {
	font-family: "noto_sansregular";
	src: url("https://koelnmesse.asia/fonts/notosans_regular_webfont_eot.eot");
	src: url("https://koelnmesse.asia/fonts/notosans_regular_webfont_eot.eot?#iefix") format("embedded-opentype"), 
    url("https://koelnmesse.asia/fonts/notosans_regular_webfont_woff2.woff2") format("woff2"), 
    url("https://koelnmesse.asia/fonts/notosans_regular_webfont_woff.woff") format("woff"), url("https://koelnmesse.asia/fonts/notosans_regular_webfont_ttf.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}
@font-face {
    font-family: "noto_sansbold";
    src: url("https://media.koelnmesse.io/koelnmesse/assets/fonts/notosans_bold_webfont_eot.eot");
    src: url("https://media.koelnmesse.io/koelnmesse/assets/fonts/notosans_bold_webfont_eot.eot?#iefix") format("embedded-opentype"),url("https://media.koelnmesse.io/koelnmesse/assets/fonts/notosans_bold_webfont_woff2.woff2") format("woff2"),url("https://media.koelnmesse.io/koelnmesse/assets/fonts/notosans_bold_webfont_woff.woff") format("woff"),url("https://media.koelnmesse.io/koelnmesse/assets/fonts/notosans_bold_webfont_ttf.ttf") format("truetype");
    font-weight: normal;
    font-style: normal
}
body, html{
    padding: 0px;
    margin: 0;
    width: 100%;

    font-family: noto_sansregular, Arial, Helvetica, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: geometricprecision;

    font-style: inherit;
    font-variant: inherit;
    font-weight: inherit;
    font-stretch: inherit;
    line-height: inherit;
    font-optical-sizing: inherit;
    font-kerning: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
}
body{
    scroll-behavior: smooth;
}

:root{
    --color-green: #68b033;
    --color-lightgray: rgb(234,234,234);
    --color-footer: #333333;
    --k-gray-light: #555;
	--k-gray-lighter: #ccc;
    --k-gray-lightest: #e5e5e5;

    --max-content-width: 1365px; /* content is clipped to this width in wide screen */
};
.hide{
    display: none !important;
}
.font-green{
    color: var(--color-green);
}
a{
    color: black;
    text-decoration: none;
}
a:not(.inverse):hover{
    text-decoration: underline;
    text-decoration-thickness: 2px;
}
a.inverse{
    color: rgb(155, 155, 155);
    text-decoration: none;
}
a.inverse:hover{
    color: white;
}
h1 {
    padding: 0;
    color: #333;
    font-weight: 400;
}
h3{
    color: #333;
    font-weight: 400;
    font-size: 24px;
    line-height: 30px;
}
p{
    font-weight: 400;
    font-size: var(--font-base);
    font-stretch: normal;
    font-style: normal;
    line-height: 25px;
    color: rgb(51,51,51);
    letter-spacing: .5px;
}
strong{
    color: #333;
}
ul > li{
    font-weight: 400;
    font-size: var(--font-base);
    line-height: 25px;
    color: #333;
}
ol > li{
    font-weight: 400;
    font-size: var(--font-base);
    line-height: 25px;
    color: #333;
}
/* NOTE: only one set of @media to avoid confusion! */
/* xs */
@media only screen and (max-width: 600px) {
    :root {
        --padding-universal: 15px;
        --padding-universal-top: 2rem;
    }
    .nav-icon img{ /* actually not visible */
        width: 50px;
        height: 50px;
    }
    .menu-body{
        height: 100px; /* following global */
    }
    .menu-dropdown-wrapper{
        display: none;
    }
    .menu-mobile-dropdown-footer .search-wrapper {
        width: 100%;
        height: 2.5rem;
    }
    .menu-mobile-dropdown-footer .search-wrapper > div:first-child{
        font-size: 1rem;
        padding: .5rem 1rem;
    }
}
/* sm */
@media only screen and (min-width: 600px) {
    :root {
        --padding-universal: 30px;
        --padding-universal-top: 2rem;
    }
    .nav-icon img{
        width: 50px;
        height: 50px;
    }
    .menu-body{
        height: 100px; /* following global */
    }
    .menu-dropdown-wrapper{
        display: none;
    }
    .menu-mobile-dropdown-footer .search-wrapper {
        width: 100%;
        height: 2.5rem;
    }
    .menu-mobile-dropdown-footer .search-wrapper > div:first-child{
        font-size: 1rem;
        padding: .5rem 1rem;
    }
    
}
/* md */
@media only screen and (min-width: 768px) {
    :root {
        --padding-universal: 30px;
        --padding-universal-top: 2rem;
    }
    .menu-body{
        height: 140px; /* following global */
    }
    .menu-dropdown-wrapper{
        display: initial;
    }
    .nav-icon img{
        width: 50px;
        height: 50px;
    }
    
}
/* lg */
@media only screen and (min-width: 992px) {
    :root {
        --padding-universal: 55px;
        --padding-universal-top: 2rem;
    }
    .nav-icon img{
        width: 65px;
        height: 65px;
    }
   
}
/* xl */
@media only screen and (min-width: 1501px) {
   :root {
        --padding-universal: calc(50% - var(--max-content-width)/2);
        --padding-universal-top: 2rem;
    }
}
/* xxl */
@media only screen and (min-width: 1800px) {
    :root {
        --padding-universal: calc(50% - var(--max-content-width)/2); 
        --padding-universal-top: 2rem;
    }
}

/**** MENU ****/
.menu-wrapper{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 2;
    background-color: white;
    transition: all .2s ease-in;
}
.menu-wrapper.collapsed{
    top: -40px;
}

/** menu top bar that pans on scroll **/
.menu-top{
    font-size: 14px;
    padding: .5rem var(--padding-universal);
    border-bottom: solid 1px var(--k-gray-lighter);
    justify-content: space-between;
    align-items: center;
    height: 40px;
    background-color: white;
}
.menu-top > .flex{
    align-items: center;
}
.page-hashtag{
    border-left: solid 1px var(--k-gray-lighter);
    padding-left: 1rem;
    color: var(--k-gray-light);
}
.menu-top > div.flex > a{
    margin-right: .8rem;
}

/** search field in menu top bar **/
.search-wrapper{
    display: flex;
    width: 120px;
    border: solid 1px var(--color-lightgray);
    height: 22px;
}
.search-wrapper > div:first-child{
    flex: 1;
    font-size: .8rem;
    padding: .1rem .2rem;
    background-color: white;
}
.search-wrapper > div:last-child{
    background-color: var(--color-green);
    display: flex;
    cursor: pointer;
}
.search-wrapper > div:last-child > img{
    height: 12px;
    width: 12px;
    align-self: center;
    margin: 4px;
}
.search-wrapper > div[contenteditable]:empty:before{
    content: "Search";
    pointer-events: none;
    display: block; /* For Firefox */
    color: var(--k-gray-light);
}

/** menu middle part with logo **/
.menu-body{
    z-index: 2;
    background-color: white;
}
.menu-body > .flex {
    padding: 0 var(--padding-universal);
    height: 100%;
    border-bottom: solid 1px transparent;
    transition: all 0.2s ease-in;
}
.menu-wrapper.collapsed .menu-body > .flex {
    border-bottom: solid 1px var(--k-gray-lighter);
} 
.menu-body .menu-logo{
    display: flex;
    align-items: center;
    width: fit-content;
}
.menu-body .menu-logo img{
    max-height: 100px;
    width: auto;
    height: 70%;
    cursor: pointer;
    position: relative;
}
.menu-body > .flex > .col.menu-logo{
    flex: 1;
    height: 100%;
    position: relative;
}
.menu-body > .flex > .col.menu-logo > a{
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
}
.menu-body > .flex > .col.menu-main{
    display: flex;
}
.menu-body > .flex > .col.menu-main > .flex-xs-show{
    align-self: center;
}
.menu-body > .flex > .col.menu-main > .flex-xs-hide{
    align-self: flex-end;
}
.menu-body.mobile-open .menu-mobile-toggle > div.open,
.menu-body:not(.mobile-open) .menu-mobile-toggle > div.close{
    display: none;
}
.menu-body .menu-mobile-toggle > div{
    cursor: pointer;
    min-width: 31px;
    text-align: center;
}
.menu-icon > img{
    width: auto;
    height: 15px;
    margin-bottom: .5rem;
}
.menu-label{
    font-size: .6rem;
}
/** three menu items on desktop mode **/
.menuToggle{
    font-weight: 700;
    cursor: pointer;
    margin-left: 5rem;
    padding: 2rem 0;
}
.menuToggle:hover{
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-decoration-color: black;
}
.menuToggle.selected{
    color: var(--color-green);
    font-weight: 700;
}

.menu-offset{
    height: 140px;
    transition: all .2s ease-in;
}
.menu-offset.collapsed{
    height: 100px;
}
@media only screen and (min-width: 992px) {
    .menu-offset{
        height: 180px;
    }
    .menu-offset.collapsed{
        height: 140px;
    }
}

/* desktop menu options */
.menu-dropdown-wrapper{
    height:170px;  /* following global */
    width: 100%; 
    position: absolute; 
    top:100%; 
    background-color:white; 
    left: 0;
    border-top: solid 1px var(--k-gray-lighter);
    border-bottom: solid 1px var(--k-gray-lighter);
    transition: all .4s ease-in;
    overflow: hidden;
    max-height: 170px;
    z-index: -1;
}
.menu-wrapper.collapsed .menu-dropdown-wrapper{
    border-top: solid 1px transparent;
}
.menu-dropdown-wrapper:not(.show){
    max-height: 0;
    top: 0px;
}
.nav-table{
    height: 100%;
    position: relative;
    font-size: 20px;
}
.nav-table:not(.show){
    display: none;
}
.nav-table > div.col{
    height: 100%;
    justify-content: center;
    align-items: center;
    display: flex;
    cursor: pointer;
}
.nav-table > div.col:not(:last-child){
    border-right: solid 1px var(--k-gray-lighter);
}
.nav-table > div.col > div{
    text-align: center;
}
.nav-table > div.col:hover > div > p:last-child{
    text-decoration: underline;
    text-decoration-thickness: 2px;
}
.nav-icon img{
    display: block;
    margin: auto;
}

/* mobile menu options */
.menu-mobile-dropdown-wrapper{
    position: absolute; 
    width: 100%; 
    height: calc(100vh - 100px);  
    left: 0; 
    background-color: white;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: max-height .5s ease-in;
    max-height: 0;
    overflow: hidden;
}
.menu-mobile-dropdown-wrapper.show{
    max-height: 100vh;
}
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-viewer{
    display: flex;
    flex-wrap: nowrap;
    width: fit-content;
    position: relative;
    transition: all .4s ease-in-out;
}
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-viewer > div{
    flex-basis: 100vw !important;
    position: relative;
    width: 100vw !important;
}
.menu-mobile-nav-header{
    padding: .8rem var(--padding-universal);
    background-color: var(--color-green);
    color: white;
    font-weight: 600;
    cursor: pointer;
}
.menu-mobile-main-nav,
.menu-mobile-sub-nav{
    padding: .8rem var(--padding-universal);
    border-bottom: solid 1px var(--k-gray-lighter);
    cursor: pointer;
    display: flex;
    align-items: center;
}
.menu-mobile-main-nav img,
.menu-mobile-nav-header img, 
.menu-mobile-sub-nav img{
    max-width: 20px;
    margin-right: 0.5rem;
}
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-viewer.open{
    transform: translateX(-50%);
}
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-viewer.open:not([data-target]) > div:not(.menu-mobile-list),
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-viewer.open[data-target="dates"] > div:not([data-mobile="dates"]):not(.menu-mobile-list),
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-viewer.open[data-target="company"] > div:not([data-mobile="company"]):not(.menu-mobile-list),
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-viewer.open[data-target="news"] > div:not([data-mobile="news"]):not(.menu-mobile-list){
    display: none;
}

/** mobile menu footer **/
.menu-mobile-dropdown-wrapper > .menu-mobile-dropdown-footer{
    min-height: 300px;
    padding: 2rem;
    background-color: var(--color-lightgray);
}
.menu-mobile-dropdown-footer .menu-mobile-contact{
    display: flex;
    padding-bottom: 1.5rem;
    justify-content: center;
    align-items: center;
}
.menu-mobile-dropdown-footer .menu-mobile-contact > img{
    width: 20px;
    height: auto;
    margin-right: 1rem;
}

@media only screen and (min-width: 768px){
    .menu-mobile-dropdown-wrapper{
        display: none;
    }
}

/* go to top btn */
#goTopBtn{
    background-color: var(--color-green);
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 0;
    bottom: 0;
    border: 0;
    cursor: pointer;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    z-index: 9;
    cursor: pointer;
    margin: 0.8rem;
}
#goTopBtn img{
    max-width: 25px;
    max-height: 25px;
}

/* 
.cscribe-container>.cscribe-section:not(.section-pseudo), .cscribe-container>.section:not(.section-pseudo) {
    padding: 0 var(--padding-universal) !important;
} 
*/

/** cookie **/
.cookie-wrapper {
    position: fixed; 
    z-index: 10; 
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; 
    
    overflow: hidden; 
    background-color: rgba(0,0,0,0.5); 
    display: flex;
    justify-content: center;
}
.cookie-wrapper:not(.show){
    display: none;
}
.cookie-content {
    background-color: #fefefe;
    margin: auto;
    padding: 20px 30px;
    border: 1px solid #888;
    width: 80%;
    max-width: 650px;
    font-size: .813rem;
    position: absolute;
    top:10%;
    border-radius: 3px;
}
.cookie-content h2{
    font-size: 1rem;
    color: var(--color-footer);
}
.cookie-content a{
    text-decoration: underline;
    font-weight: 600;
}
.cookie-content .cookie-btn{
    background-color: var(--color-green);
    color: white;
    padding: 0.75rem 1rem;
    border-radius: 5px;
    font-size: .813rem;
    cursor: pointer;
    min-width: 135px;
    width: fit-content;
    text-align: center;
    font-weight: 600;
}
.cookie-content .cookie-btn:not(:first-child){
    margin-left: .5rem;
}
#cookieNotice > #cookieInitial > .flex{
    width: 100%;
    justify-content: space-between;
    border-top: solid 1px var(--k-gray-lightest);
    padding: 2rem 0 1rem 0;
    margin-top: 1rem;
    align-items: center;
}
#cookie-showsettings{
    cursor: pointer;
    text-decoration: underline;
    font-weight: 600;
}
#cookie-showsettings:hover{
    text-decoration: none;
}
#cookieSetting:not(.show){
    display: none;
}
#cookieInitial.grayed{
    filter:brightness(.5);
}
.cookie-logo{
    height: 20px;
    width: auto;
}
.cookie-close {
    color: #aaaaaa;
    justify-items: end;
    /* font-size: 28px; */
    font-weight: bold;
    text-align: right;
   
}
.cookie-close > img{
    height: 20px;
    width: auto;
    cursor: pointer;
}
.cookie-close > img:hover{
    filter:opacity(.5);
}
#cookieSetting > .flex{
    justify-content: space-between;
    width: 100%;
    
    margin-bottom: 1rem;
    padding-bottom: 1rem;
}
#cookieSetting > .flex:first-child{
    border-bottom: solid 1px var(--k-gray-lightest);
}
.cookie-content#cookieSetting{
    max-width: 575px;
    top:8%
}
.cookie-content .cookie-scroll{
    height: 295px;
    overflow-y: auto;
}

.cookie-accordion{
    border: solid 1px var(--k-gray-lighter);
    width: calc(100% - 1rem);
}
.cookie-accordion-title{
    padding: 1rem;
    font-weight: 600;
    align-items: center;
    cursor: pointer;
}
.cookie-accordion-title > div:first-child{
    width: 25px;
    font-size: 1.2rem;
}
.cookie-accordion-title > div:nth-child(2){
    flex: 1;
}
.cookie-accordion-body{
    background-color: #f8f8f8;
    padding: .3rem 1rem;
    transition: all .4s ease-in;
    max-height: 100vh;
    height: fit-content;
    overflow: hidden;
}
.cookie-accordion:not(.open) > .cookie-accordion-body{
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
}

.cookie-accordion:not(.open) > .cookie-accordion-title .minus,
.cookie-accordion.open > .cookie-accordion-title .plus{
    display: none;
}
#cookieSetting > .flex:last-child{
    padding-top: 1rem;
    margin-top:1rem;
    border-top: solid 1px var(--k-gray-lightest);
    justify-content: flex-end;
}
@media only screen and (max-width: 991px) {
    #cookieInitial > .flex > .flex{
        width: 100%;
        padding-top: 1rem;
    }
    .cookie-content .cookie-btn{
        width: 100%;
        margin: .5rem 0 !important;
    }
}

/* switches */
.pswitch{
    width: 45px;
    height: 25px;
    position: relative;
}
.pswitch-display{
    position: relative;
    width: 100%;
    height: 100%;
    top: 0;
    -moz-transition: all .2s ease-in 0s;
    -o-transition: all .2s ease-in 0s;
    -webkit-transition: all .2s ease-in 0s;
    transition: all .2s ease-in 0s;
    cursor: pointer;
    border: solid 1px var(--k-gray-lighter);
    background-color: var(--k-gray-lightest);
    border-radius: 1rem;
}
.pswitch-display:before{
    position: absolute;
    content: "";
    height: 21px;
    width: 21px;
    bottom: 1px;
    background-color: #7d7d7d;
    border-radius: 50%;
    transition: all .4s;
    left: 0;
}
.pswitch .pswitch-input{
    position: absolute;
    width: 100%;
    z-index: 2;
    cursor: pointer;
    opacity: 0;
}
.pswitch-input:checked + .pswitch-display{
    border: solid 1px var(--color-green);
    background-color: white;
}
.pswitch-input:checked + .pswitch-display:before{
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
    background-color: var(--color-green);
}

/* footer */
.footer-area{
    background-color: var(--color-footer);
    padding: 3rem var(--padding-universal) 0 var(--padding-universal);
    color: rgb(255, 255, 255);
    font-size: 1rem;
    width: 100%;
    position: relative;
}
hr.footer-hr{
    width: 100%;
    border: 0.5px solid gray;
}
.footer-logo{
    text-align: right;
}
.footer-logo > a > img{
    max-width: 180px;
    width:90%;
}
.footer-area > .footer-hr+.flex a{
    margin-right: 1rem;
}
@media only screen and (max-width: 600px) {
    
    .footer-area > .footer-hr+.flex > .col{
        flex: 0 100%;
        padding: 4rem 0;
    }
}
/* sm */
@media only screen and (min-width: 600px) {
    
    .footer-area > .footer-hr+.flex > .col{
        flex: 0 100%;
        padding: 4rem 0;
    }

}
/* md */
@media only screen and (min-width: 768px) {
    
    .footer-area > .footer-hr+.flex > .col.footer-logo{
        width: fit-content;
        flex: initial;
    }
    .footer-area > .footer-hr+.flex > .col.flex{
        flex: 1;
    }
}

.footer-area > div.social-wrapper{
    position: absolute; 
    width: 100%; 
    top: -50px; 
    left: 0; 
    display:flex; 
    justify-content: center;
}
.footer-social{
    background-color: var(--color-green);
    border-radius: 50%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 50px;
    height: 50px;
    top: 25px;
    transition: all .1s ease-in;
}
.footer-social + .footer-social{
    margin-left: .8rem;
}
.footer-social:hover{
    width: 56px;
    height: 56px;
    top: 22px;
}
.footer-social img{
    max-width: 25px;
    max-height: 25px;
    transition: all .1s ease-in;
}
.footer-social:hover img{
    max-width: 28px;
    max-height: 28px;
}

/** to edit **/
/* .banner-wrapper img{
    width: 100%;
    display: block;
    object-fit: cover;
    height: 800px;
}
.border-bottom img{
    max-width:80px;
}
.policy-card{
    padding: 1rem;
    margin: 0.8rem;
}

.bullet{
    position: relative;
    padding-left: 10px;
    list-style-type: none;
}
.bullet::before{
    content: '';
    top: 9px;
    left: -10px;
    position: absolute;
    display: block;
    background-color:black;
    height: 4px;
    width:4px;
    border-radius: 50%;

} */

.cscribe-container{
    border-top: 0.8rem solid var(--color-green);
    background-color: white;
    min-height: calc(100vh - 300px);
}
.cscribe-section.padding-top-none{
    padding-top: 0 !important;
}
.cscribe-section.padding-bottom-none{
    padding-bottom: 0 !important;
}
@media print {
    body{
        -webkit-print-color-adjust:exact !important;
        print-color-adjust:exact !important;
    }
    div {
        break-inside: avoid;
    }
    .no-print, .menu-mobile-toggle, #goTopBtn, .footer-area,
    .menu-main, .menu-dropdown-wrapper, .menu-mobile-dropdown-wrapper,
    #cookieNotice{
        display: none !important;
    }
    .menu-logo img{
        max-height: 60px;
    }
    .cscribe-container{
        border-top: 0;
    }
 
} 