@media only screen and (max-width: 1599px) {
    /* -- Universal Setting
    --------------------------------------------------*/
    body {
        font-size: 16px;
    }
    
    /* -- Header
    --------------------------------------------------*/
    html:lang(en) #siteHeader #siteNav {
        padding: 0 50px;
    }
    
    /* -- Nav
    --------------------------------------------------*/
    html:lang(en) ul.nav-main > li ~ li {
        margin-left: 1em;
    }
}

@media only screen and (max-width: 1199px) {
    /* -- Universal Setting
    --------------------------------------------------*/
    body {
        font-size: 14px;
    }
    
    /* -- Customized Style
    --------------------------------------------------*/
    /* -- HOME -- */
    #homeStory .theme-puzzle::before {
        width: 17.5%;
        padding-top: 20.6%;
    }
    
    #homeConcept .section-heading,
    #homeConcept .content-text {
        width: 50%;
    }

    #homeConcept .theme-puzzle::before {
        width: -webkit-calc(50% - 2.5em);
        width: -moz-calc(50% - 2.5em);
        width: calc(50% - 2.5em);
        padding-top: -webkit-calc((50% - 2.5em) * 14.49 / 26);
        padding-top: -moz-calc((50% - 2.5em) * 14.49 / 26);
        padding-top: calc((50% - 2.5em) * 14.49 / 26);
    }
    
    /* -- SIGNUP -- */
    #containerUserSwitch ul {
        display: block;
        vertical-align: baseline;
    }

    #containerUserSwitch ul > li {
        width: 50%;
    }

    #containerUserSwitch ul > li ~ li {
        margin-left: auto;
    }
    
    /* -- JUDGES -- */
    #containerJudges .styled-card-container > .styled-card:nth-child(n+4) {
        margin-top: 2.5em;
    }
    
    /* -- NEWS -- */
    #containerNews .styled-card-container > .styled-card {
        width: -webkit-calc((100% - 2.5em * 1) / 2 - 0.01px);
        width: -moz-calc((100% - 2.5em * 1) / 2 - 0.01px);
        width: calc((100% - 2.5em * 1) / 2 - 0.01px);
    }

    #containerNews .styled-card-container > .styled-card ~ .styled-card {
        margin-left: 2.5em;
    }
    
    #containerNews .styled-card-container > .styled-card:nth-child(2n+1) {
        margin-left: auto;
    }
    
    /* -- VIDEOS -- */
    #containerVideos .styled-card-container > .styled-card {
        width: -webkit-calc((100% - 2.5em * 1) / 2 - 0.01px);
        width: -moz-calc((100% - 2.5em * 1) / 2 - 0.01px);
        width: calc((100% - 2.5em * 1) / 2 - 0.01px);
    }

    #containerVideos .styled-card-container > .styled-card ~ .styled-card {
        margin-left: 2.5em;
    }
    
    #containerVideos .styled-card-container > .styled-card:nth-child(2n+1) {
        margin-left: auto;
    }
    
    /* -- TRAVELTW -- */
    #containerAttractions .styled-card-container > .styled-card {
        width: -webkit-calc((100% - 2.5em * 2) / 3 - 0.01px);
        width: -moz-calc((100% - 2.5em * 2) / 3 - 0.01px);
        width: calc((100% - 2.5em * 2) / 3 - 0.01px);
    }

    #containerAttractions .styled-card-container > .styled-card ~ .styled-card {
        margin-left: 2.5em;
    }
    
    #containerAttractions .styled-card-container > .styled-card:nth-child(3n+1) {
        margin-left: auto;
    }
    
    #containerD3Map {
        width: 850px;
        padding-top: 850px;
        /* padding-top: 680px; */
    }
    
    #containerD3Map #titleNorthArea {
        top: 25%;
        /* top: 0%; */
        left: 53%;
    }

    #containerD3Map #titleCentralArea {
        top: 41%;
        /* top: 20%; */
        left: 33.333333%;
    }

    #containerD3Map #titleSouthArea {
        bottom: 11%;
        /* bottom: 20%; */
        left: 27%;
    }

    #containerD3Map #titleEastArea {
        top: 60%;
        /* top: 42%; */
        right: 0%;
    }
    
    #containerInformation .styled-card-container > .styled-card {
        width: -webkit-calc((100% - 2.5em * 2) / 3 - 0.01px);
        width: -moz-calc((100% - 2.5em * 2) / 3 - 0.01px);
        width: calc((100% - 2.5em * 2) / 3 - 0.01px);
    }

    #containerInformation .styled-card-container > .styled-card ~ .styled-card {
        margin-left: 2.5em;
    }
    
    #containerInformation .styled-card-container > .styled-card:nth-child(3n+1) {
        margin-left: auto;
    }
    
    /* -- WINNERS -- */
    #containerStageSwitch ul {
        display: block;
        vertical-align: baseline;
    }

    #containerStageSwitch ul > li {
        width: auto;
    }
    
    #containerStageContent .styled-card-container > .styled-card {
        width: -webkit-calc((100% - 2.5em * 2) / 3 - 0.01px);
        width: -moz-calc((100% - 2.5em * 2) / 3 - 0.01px);
        width: calc((100% - 2.5em * 2) / 3 - 0.01px);
    }

    #containerStageContent .styled-card-container > .styled-card ~ .styled-card {
        margin-left: 2.5em;
    }
    
    #containerStageContent .styled-card-container > .styled-card:nth-child(3n+1) {
        margin-left: auto;
    }
    
    /* -- Header
    --------------------------------------------------*/
    #siteHeader {
        height: 60px;
        padding: 0 0 0 30px;
        font-size: 24px;
    }
    
    #pseudoHeader {
        height: 60px;
        font-size: 24px;
    }
    
    #siteHeader._inverted #siteLang {
        color: #fff;
    }
    
    #siteHeader._inverted #siteLang::before {
        background-image: url(../images/icon-earth-white.svg);
    }
    
    //#siteHeader._inverted #siteOther::before {
    //    background-image: url(../images/icon-edit-dark.svg);
    //}
    
    #siteHeader._inverted ul.nav-main > li > a,
    #siteHeader._inverted ul.nav-main > li._active > a,
    body.hasHover #siteHeader._inverted ul.nav-main > li > a:hover {
        color: #fff;
    }
    
    #siteHeader._inverted ul.nav-main > li.with-dropdown > a::before,
    #siteHeader._inverted ul.nav-main > li.with-dropdown._active > a::before,
    body.hasHover #siteHeader._inverted ul.nav-main > li.with-dropdown > a:hover::before {
        border-color: #fff transparent transparent transparent;
    }
    
    #siteHeader #siteBrand {
        float: none;
        height: 44px;
        margin: 8px auto;
    }
    
    #siteHeader #navToggle {
        z-index: 2;
    }
    
    #siteHeader #siteNav {
        position: fixed;
        top: 0;
        bottom: auto;
        height: 0;
        margin: auto;
        padding: 0;
        background-color: #ea6344;
        opacity: 0;
        overflow: hidden;
    }
    
    html:lang(en) #siteHeader #siteNav {
        padding: 0;
    }
    
    #siteHeader #siteNav::before {
        display: none;
    }
    
    #siteHeader._open #siteNav {
        height: 100%;
        min-height: 100vh;
        opacity: 1;
        z-index: 1;
    }
    
    #siteHeader #siteNav .nav-container {
        max-height: -webkit-calc(100% - 15vh - 5vh);
        max-height: -moz-calc(100% - 15vh - 5vh);
        max-height: calc(100% - 15vh - 5vh);
        margin-top: 15vh;
        margin-bottom: 5vh;
        overflow-x: hidden;
    }
    
    #siteHeader #siteLang {
        position: relative;
        top: auto;
        bottom: auto;
        right: auto;
        margin-top: 1.5em;
        padding-left: 1.5em;
        font-size: 16px;
        /* position: absolute;
        top: auto;
        bottom: 20px;
        left: 50%;
        right: auto;
        height: 30px;
        padding-left: 1.5em;
        font-size: 16px;
        line-height: 30px;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%); */
    }
    
    #siteHeader #siteOther {
        position: absolute;
        float: none;
        top: 0;
        bottom: 0;
        right: 0;
        width: 100px;
        height: 60px;
        margin: auto;
        padding: 0;
        //background-color: transparent;
        overflow: hidden;
				font-size: 14px;
				font-weight: 400;
				line-height: 4.3;
				padding-left: 20px;
    }

		#siteHeader #siteOther::before {
			left: 0;
			right: 4.9em;
		}

    //#siteHeader #siteOther::before {
    //    content: '';
    //    position: absolute;
    //    top: 0;
    //    bottom: 0;
    //    left: 0;
    //    right: 0;
    //    width: 20px;
    //    height: 20px;
    //}
    
    /* -- Nav
    --------------------------------------------------*/
    .nav-container {
        display: block;
        vertical-align: baseline;
    }
    
    ul.nav-main {
        display: block;
        padding-left: 15px;
        padding-right: 15px;
        vertical-align: baseline;
    }
    
    ul.nav-main > li {
        float: none;
    }
    
    ul.nav-main > li ~ li,
    html:lang(en) ul.nav-main > li ~ li {
        margin: 1em auto 0;
    }
    
    ul.nav-main > li > a {
        display: inline-block;
        padding: 0.5em 1em;
        line-height: 1.5;
        vertical-align: bottom;
        white-space: normal;
        text-indent: 0.25em;
        letter-spacing: 0.25em;
    }
    
    html:lang(en) ul.nav-main > li > a.nav-item-row-2 {
        padding: 0.5em 1em;
        line-height: 1.5;
    }
    
    ul.nav-main > li:not(.with-dropdown) > a::before {
        display: none;
    }
    
    ul.nav-main > li.with-dropdown > a._open {
        color: #fbdbd4;
    }

    ul.nav-main > li.with-dropdown > a::before {
        top: 0;
        bottom: 0;
        left: auto;
        right: 0;
    }
    
    html:lang(en) ul.nav-main > li.with-dropdown > a.nav-item-row-2::before {
        bottom: 0;
    }
    
    ul.nav-main > li.with-dropdown > a._open::before {
        -webkit-transform: rotateZ(180deg);
        -moz-transform: rotateZ(180deg);
        -ms-transform: rotateZ(180deg);
        -o-transform: rotateZ(180deg);
        transform: rotateZ(180deg);
    }
    
    ul.nav-main > li.with-dropdown > a::after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        width: 0;
        height: 1px;
        margin: auto;
        background-color: #fff;
        -webkit-transition: width 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
        -moz-transition: width 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
        -ms-transition: width 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
        -o-transition: width 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
        transition: width 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    }
    
    ul.nav-main > li.with-dropdown > a._open::after {
        width: 100%;
    }

    ul.nav-main > li.with-dropdown > .dropdown-container {
        position: relative;
        top: auto;
        left: auto;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
        opacity: 1;
    }

    ul.nav-dropdown {
        margin: 0 auto;
        padding: 0;
        background-color: transparent;
        box-shadow: none;
    }
    
    ul.nav-dropdown > li {
        margin-top: 0.75em;
    }

    ul.nav-dropdown > li > a {
        display: inline-block;
        min-width: 0;
        padding: 0.25em 1em;
        font-size: 16px;
        vertical-align: bottom;
        text-indent: 0.07125em;
        letter-spacing: 0.07125em;
        color: inherit;
    }
    
    /* -- Components
    --------------------------------------------------*/
    /* -- Styled Card -- */
    .styled-card-judge .card-img .card-img-heading {
        font-size: 1em;
    }
    
    @media only screen and (orientation: portrait) {
        
    }

    @media only screen and (orientation: landscape) {
        
    }
}

@media only screen and (max-width: 991px) {
    /* -- Customized Style
    --------------------------------------------------*/
    /* -- WINNERS -- */
    #containerStageContent .styled-card-container > .styled-card {
        width: -webkit-calc((100% - 2.5em * 1) / 2 - 0.01px);
        width: -moz-calc((100% - 2.5em * 1) / 2 - 0.01px);
        width: calc((100% - 2.5em * 1) / 2 - 0.01px);
    }

    #containerStageContent .styled-card-container > .styled-card ~ .styled-card {
        /*margin-left: 2.5em;*/
				margin-top: 20px;
				margin-left: 0;
				width: 100%
    }
    
    #containerStageContent .styled-card-container > .styled-card:nth-child(n+3) {
        margin-top: 2.5em;
    }
    
    #containerStageContent .styled-card-container > .styled-card:nth-child(3n+1) {
        /*margin-left: 2.5em;*/
				margin-left: 0;
        clear: none;
				width: 100%;
    }

    #containerStageContent .styled-card-container > .styled-card:nth-child(2n+1) {
        margin-left: auto;
        clear: both;
				width: 100%;
    }
    
		/* -- FORM -- */
		#option-content:nth-of-type(9).form-half-container.option {
				height: auto !important;
		}

		#option-content.form-half-container.option {
				width: 100%;
		}

		.form-half-container.option:nth-child(odd) {
				margin-left: 0 !important;
		}

    /* -- Components
    --------------------------------------------------*/
    /* -- Styled Card -- */
    .styled-card-blog-content .content-text iframe {
        width: 84.375vw;
        height: 47.4609375vw;
    }
    
    .styled-card-blog .card-img {
        float: none;
        width: auto;
        margin-right: auto;
        padding-top: 0;
    }

    .styled-card-blog .card-img .bg-img {
        position: relative;
        top: auto;
        bottom: auto;
        left: auto;
        right: auto;
        background: none;
    }

    .styled-card-blog .card-img .bg-img > img {
        position: relative;
        width: 100%;
        height: auto;
    }
    
    .styled-card-blog .card-content {
        padding-top: 2.75em;
    }

    .styled-card-blog .card-content .card-content-heading {
        position: absolute;
        left: auto;
        bottom: -webkit-calc(100% - 1.375em);
        bottom: -moz-calc(100% - 1.375em);
        bottom: calc(100% - 1.375em);
        width: 93.75%;
        margin: auto auto auto 0;
        padding: 0.625em 1.25em;
    }

    .styled-card-blog .card-content .card-content-header {
        position: static;
        width: auto;
        margin: 0 auto;
    }

    .styled-card-blog .card-content .card-content-body,
    .styled-card-blog .card-content .card-content-footer {
        margin-top: 1.5em;
    }

    .styled-card-blog .card-content .card-content-footer {
        width: auto;
        margin-left: auto;
        margin-right: auto;
        text-align: left;
    }

    .styled-card-blog .card-content .card-content-body .card-title-text:nth-child(1),
    .styled-card-blog .card-content .card-content-body .card-title-text:nth-child(2) {
        display: block;
        /* float: none; */
        width: auto;
        margin-bottom: 0;
        vertical-align: baseline;
    }

    .styled-card-blog .card-content .card-content-footer .card-title-text:nth-child(1),
    .styled-card-blog .card-content .card-content-footer .card-title-text:nth-child(2) {
        display: block;
        /* float: none; */
        width: auto;
        vertical-align: baseline;
    }
    
    .styled-card-blog .card-content .card-content-body .card-title-text ~ .card-title-text {
        margin-top: 1.25em;
    }
    
    .styled-card-blog .card-content .card-content-footer .card-title-text ~ .card-title-text {
        margin-top: 1.5em;
    }

    .styled-card-blog .card-intro {
        min-height: 0;
    }
    
    @media only screen and (orientation: portrait) {
        /* -- Universal Setting
        --------------------------------------------------*/
        body {
            font-size: 16px;
        }
    }

    @media only screen and (orientation: landscape) {
        /* -- Universal Setting
        --------------------------------------------------*/
        body {
            font-size: 13px;
        }
    }
}

@media only screen and (max-width: 767px) {
    /* -- Universal Setting
    --------------------------------------------------*/
    body {
        font-size: 14px;
    }
    
    /* -- Color & Font
    --------------------------------------------------*/
    .font-h5 { font-size: 1em; }
    
    /* -- Customized Style
    --------------------------------------------------*/
    .mobile-px-half {
        margin-left: -8.335%;
        margin-right: -8.335%;
    }
    
    .mobile-px-0 {
        margin-left: -16.67%;
        margin-right: -16.67%;
    }
    
    /* -- HOME -- */
    #homeStory.content-section .content-container,
    #homePromotion.content-section .content-container,
    #homeConcept.content-section .content-container {
        padding-top: 1.5em;
    }
    
    #homeStory p,
    #homePromotion p,
    #homeConcept p {
        margin-top: 0.5em;
				width: 100%;
				font-size: 14px;
				line-height: 24px;
    }
    
		#country-name {
			margin-top: 0 !important;
		}

    #homeStory {
        position: relative;
    }
    
		/*
    #homeStory {
        background-image: url(../images/m-icon-deco-01.svg);
        background-repeat: no-repeat;
        background-position: right 0 top 9.375vw;
        background-size: 10% auto;
        //background-position: right 8.335% top 2.5em;
        //background-size: 5.5em auto; 
    }*/

    #homeStory .section-heading,
    #homeStory .content-text {
        width: auto;
    }

    #homeStory #homeStoryBanner {
        margin-top: 3em;
        margin-right: -16.67%;
    }

		#homeStory .theme-puzzle {
				background-image: url(../images/m-icon-deco-01.svg);
				top: 15px;
				background-size: auto 80%;
    }

    #siteBody.auto-width-body #homePromotion .content-with-fixed-width > .fixed-width-container {
        padding-top: 0;
    }
    
    #homePromotion .section-heading {
        background-image: url(../images/m-icon-deco-02.svg);
        background-size: auto 90%;
    }
    
    html:lang(en) #homePromotion .section-heading {
        background-size: 7em auto;
    }
    
    html:lang(en) #homePromotion .section-heading .heading-title {
        padding-right: 4em;
    }
    
    #homePromotion #homePromotionContent #homePromotionNext,
    #homePromotion #homePromotionContent #homePromotionBack {
        margin-top: 3em;
    }
    
    #homePromotion #homePromotionContent #homePromotionNext {
        padding-right: 7em;
    }

    #homePromotion #homePromotionContent #homePromotionBack {
        padding-left: 7em;
    }

    #homePromotion #homePromotionContent #homePromotionNext::before,
    #homePromotion #homePromotionContent #homePromotionBack::before {
        width: 6em;
				background-image: url(../images/m-icon-arrow-right-dark.svg);
    }
    
		.homePromotionLast::before {
				-webkit-transform: rotateZ(180deg) !important;
        -moz-transform: rotateZ(180deg) !important;
        -ms-transform: rotateZ(180deg) !important;
        -o-transform: rotateZ(180deg) !important;
        transform: rotateZ(180deg) !important;
		}

		#homePromotion #homePromotionBanner > div {
				width: 100%;
		}

		#siteBody.auto-width-body .content-with-fixed-width{
				margin-top: 55px;
		} 

		#siteBody.auto-width-body .content-with-fixed-width.no-top{
				margin-top: 0;
		} 

		#homeStory.content-section.section-with-y-padding.color-bg-white {
			padding-bottom: 0;
		}

    #homeConcept .section-heading,
    #homeConcept .content-text {
        width: auto;
        margin-left: auto;
        margin-right: auto;
    }
    
    #homeConcept .section-heading {
        text-align: right;
				margin: 45px -20px 0 0px;
    }
    
    html:lang(en) #homeConcept .section-heading {
        background-size: 7em auto;
    }
    
    html:lang(en) #homeConcept .section-heading .heading-title {
        padding-left: 4em;
    }

    #homeConcept .theme-puzzle::before {
        display: none;
    }

    #homeConcept #homeConceptBlock2 {
        margin-top: 3em;
    }

    #homeConcept #homeConceptBlock2 .block-content {
        position: relative;
        top: auto;
        left: auto;
        width: auto;
        padding-right: 0;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }

    #homeConcept #homeConceptBlock2 .block-img {
        width: auto;
        margin-top: 3em;
        margin-left: -16.67%;
        margin-right: -16.67%;
    }

    #homeConcept #homeConceptBlock3 {
        margin-top: 3em;
    }

    #homeConcept #homeConceptBlock3 .block-content {
        padding-top: 0;
    }

    #homeConcept #homeConceptBlock3 .block-content .block-content-left {
        float: none;
        width: auto;
    }

    #homeConcept #homeConceptBlock3 .block-content .block-content-right {
        float: none;
        width: auto;
				margin-bottom: 5px;
    }
    
    /* -- SIGNUP -- */
    #signupForm {
        font-size: 1em;
    }
    
    #containerUserSwitch {
        margin-bottom: 1.5em;
    }

    #containerUserSwitch ul > li > a {
        display: block;
        position: relative;
        padding-left: 34px;
        padding-right: 10px;
        padding-bottom: 9px;
        font-size: 12px;
        font-weight: 500;
    }
    
    html:lang(en) #containerUserSwitch ul > li > a {
        font-size: 12px;
    }

    #containerUserSwitch ul > li > a::before {
        left: 10px;
        width: 20px;
        height: 20px;
    }
    
    #modalAgreement .modal-dialog,
    #modalAgreement .modal-dialog .modal-content,
    #modalAgreement .modal-dialog .modal-content .modal-body,
    #modalAgreement .modal-content-container,
    #modalAgreement .modal-content-container .content-text {
        height: 100%;
        overflow: hidden;
    }
    
    #modalAgreement .modal-dialog .modal-content .modal-header {
        margin: 0 auto;
    }

    #modalAgreement .modal-dialog .modal-content .modal-body {
        padding: 40px 0 0;
    }

    #modalAgreement .modal-heading {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
    }

    #modalAgreement .modal-heading .heading-title {
        height: 40px;
        padding-right: 20px;
        white-space: nowrap;
        text-overflow: ellipsis;
        -o-text-overflow: ellipsis;
        overflow: hidden;
    }
    
    #modalAgreement .modal-content-container .content-text {
        overflow-x: hidden;
        overflow-y: auto;
    }

    #modalAgreement .modal-close-btn {
        position: absolute;
        top: 7px;
        right: 0;
        width: 16px;
        height: 16px;
        margin: auto;
    }
    
    /* -- JUDGES -- */
    #containerJudges .styled-card-container {
        max-width: 378px;
        margin-left: auto;
        margin-right: auto;
    }
    
    #containerJudges .styled-card-container > br {
        display: none;
    }
    
    #containerJudges .styled-card-container > .styled-card {
        display: block;
        /*width: auto;*/
        vertical-align: baseline;
    }
    
    #containerJudges .styled-card-container > .styled-card ~ .styled-card {
        margin-top: 2.5em;
        margin-left: 0px;
				margin-right: 0px;
    }
    
    #containerJudges .styled-card-container > .styled-card:nth-child(n+4) {
        float: none;
    }
    
		.first-row-container {
				flex-direction: column;
				align-items: center;
				margin-bottom: 49px;
		}

		#first-styled-card {
				margin-right: 0px;
				margin-bottom: 49px;
		}

		#containerJudges .styled-card-container > .styled-card.fifth:nth-child(n+5){
				margin-top: 2.5em;
		}

    /* -- TRAVELTW -- */
    #containerAttractions {
        font-size: 12px;
    }
    
    #containerInformation {
        font-size: 16px;
    }
    
    #containerMapM #accordionMap.styled-accordion .accordion-heading {
        padding-left: 6.25%;
        padding-right: -webkit-calc(6.25% + 1.25em);
        padding-right: -moz-calc(6.25% + 1.25em);
        padding-right: calc(6.25% + 1.25em);
    }
    
    #containerMapM #accordionMap.styled-accordion .accordion-heading::before {
        right: 6.25%;
    }
    
    #containerMapM #accordionMap.styled-accordion .accordion-collapse {
        padding-left: 6.25%;
        padding-right: 6.25%;
    }
    
    /* -- ABOUT -- */
    #containerAbout .banner-text {
        padding: 3em 0 0;
        font-size: 1em;
    }
    
    /* -- WINNERS -- */
    #containerStageSwitch {
        margin-bottom: 1.5em;
    }

    #containerStageSwitch ul > li > a,
    #containerStageSwitch ul > li > p {
        display: block;
        position: relative;
        padding-left: 1.5em;
        padding-right: 1.5em;
        padding-bottom: 9px;
        font-size: 14px;
        font-weight: 500;
    }
    
    html:lang(en) #containerStageSwitch ul > li > a,
    html:lang(en) #containerStageSwitch ul > li > p {
        font-size: 12px;
    }
    
    /* -- BLOGS -- */
    #containerBlog .content-section .section-heading .heading-title {
        font-size: 20px;
        line-height: 1.5;
    }
    
    #containerBlog .content-section .section-heading + .content-container {
        padding-top: 5.55%;
    }
    
    #containerBlog .styled-card-blog .card-content .card-content-body,
    #containerBlog .styled-card-blog .card-content .card-content-footer {
        padding-left: 6.25%;
        padding-right: 6.25%;
    }
    
    /* -- Header
    --------------------------------------------------*/
    #siteHeader {
        padding: 0 0 0 20px;
    }
    
    html:lang(en) #siteHeader #siteNav #navItemSpecial {
        width: 12.5em;
        max-width: 100%;
    }
    
    /* -- Section
    --------------------------------------------------*/
    #siteBody.auto-width-body .content-with-fixed-width > .fixed-width-container {
        padding-top: 12.5%;
        padding-left: 12.5%;
        padding-right: 12.5%;
    }

    #siteBody.auto-width-body .content-section.section-with-y-padding .content-with-fixed-width > .fixed-width-container {
        padding-bottom: 12.5%;
    }
    
    .content-section-container {
        padding-bottom: 12.5%;
    }

    .content-section {
        padding-top: 12.5%;
        padding-left: 12.5%;
        padding-right: 12.5%;
    }
    
    .content-section.section-with-y-padding {
        padding-bottom: 12.5%;
    }
    
    .content-section .section-heading .heading-title {
        font-size: 28px;
				margin-left: 0;
    }
    
    html:lang(en) .content-section .section-heading .heading-title {
        font-size: 1.75em;
    }
    
    .content-section .section-heading.heading-with-index .heading-title.with-note {
        padding-bottom: 22px;
        line-height: 34px;
    }
    
    html:lang(en) .content-section .section-heading.heading-with-index .heading-title.with-note {
        margin-bottom: 36px;
        padding-bottom: 0;
        line-height: 2;
    }
    
    html:lang(en) .content-section .section-heading.heading-with-index .heading-title.with-note .heading-note {
        bottom: -36px;
    }
    
    .content-section .section-heading.heading-with-index .heading-title.with-note .heading-note > span {
        height: 1.5em;
        font-size: 12px;
        line-height: 1.5;
    }
    
    html:lang(en) .content-section .section-heading.heading-with-index .heading-title.with-note .heading-note > span {
        height: 3em;
        font-size: 12px;
        white-space: normal;
    }
    
    .content-section .section-heading.heading-with-theme .heading-title {
        padding-left: 1.5em;
        padding-right: 0.75em;
        font-size: 1.75em;
        line-height: 1.5;
    }

    .content-section .section-heading.heading-with-theme .heading-title::before {
        font-size: 1.5em;
    }
    
    .content-section .section-heading.heading-with-theme .heading-title.with-note {
        margin-bottom: 24px;
    }
    
    .content-section .section-heading.heading-with-theme .heading-title.with-note .heading-note {
        position: absolute;
        left: 1.5em;
        bottom: -24px;
    }

    .content-section .section-heading.heading-with-theme .heading-title.with-note .heading-note > span {
        height: 2em;
        font-size: 12px;
        line-height: 2;
    }
    
    .content-section .section-heading + .content-container {
        padding-top: 7.5%;
    }
    
    /* -- Footer
    --------------------------------------------------*/
    #siteFooter {
        padding-left: 20px;
        padding-right: 20px;
    }
    
    /* -- Components
    --------------------------------------------------*/
    /* -- Owl Carousel -- */
    .owl-carousel-normal .owl-nav button.owl-prev,
    .owl-carousel-normal .owl-nav button.owl-next {
        width: 2em;
        height: 2em;
    }

    .owl-carousel-normal .owl-nav button.owl-prev {
        left: -1em;
    }

    .owl-carousel-normal .owl-nav button.owl-next {
        right: -1em;
    }
    
    /* -- Styled Modal -- */
    .styled-modal-normal {
        padding: 40px 20px !important;
    }

    .styled-modal-normal .modal-dialog {
        margin: 0 auto;
    }

    .styled-modal-normal .modal-dialog .modal-content {
        padding: 1.5em 1em;
    }

    .styled-modal-normal .modal-heading .heading-title {
        display: block;
        padding: 0 0 10px;
        font-size: 20px;
        vertical-align: baseline;
        overflow: hidden;
    }

    .styled-modal-normal .modal-heading .heading-title::before {
        top: auto;
        left: 0;
        right: 0;
        width: auto;
    }

    .styled-modal-normal .modal-content-container {
        padding: 1.5em 0 0;
    }

    .styled-modal-normal .modal-close-btn {
        width: 16px;
        height: 16px;
    }

    /* -- Styled Card -- */
    .styled-card-judge .card-img .card-img-heading {
        font-size: 16px;
    }

    .styled-card-judge .card-text {
        font-size: 16px;
    }

    /* .styled-card-news,
    body.hasHover .styled-card-news:hover {
        box-shadow: none;
    } */

    .styled-card-news .card-img::before,
    body.hasHover .styled-card-news:hover .card-img::before,
    .styled-card-news .card-img::after,
    body.hasHover .styled-card-news:hover .card-img::after {
        display: none;
    }

    .styled-card-news .card-content {
        padding: 10px 0 0;
    }

    .styled-card-news .card-title {
        min-height: 0;
        font-size: 16px;
    }

    .styled-card-news .card-date {
        margin: 0 auto;
        font-size: 12px;
        line-height: 1.5;
    }

    .styled-card-video .card-video .video-wrapper .card-video-thumbnail::before,
    body:not(.hasHover) .styled-card-video .card-video .video-wrapper .card-video-thumbnail::before,
    body.hasHover .styled-card-video .card-video:hover .video-wrapper .card-video-thumbnail::before {
        opacity: 1;
    }

    .styled-card-video .card-video .video-wrapper .card-video-btn,
    body:not(.hasHover) .styled-card-video .card-video .video-wrapper .card-video-btn,
    body.hasHover .styled-card-video .card-video:hover .video-wrapper .card-video-btn {
        opacity: 1;
    }

    .styled-card-video .card-content {
        padding: 10px 0 0;
    }

    .styled-card-video .card-title {
        margin: 0 auto 10px;
        font-size: 16px;
    }
    
    .styled-card-video .card-subtitle {
        font-size: 14px;
    }

    .styled-card-video .card-date {
        font-size: 12px;
        line-height: 1.5;
    }
    
    .styled-card-attraction,
    body.hasHover .styled-card-attraction:hover {
        box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.1);
    }
    
    .styled-card-attraction .card-title {
        min-height: 3em;
    }
    
    .styled-card-information .card-content {
        padding: 1em;
    }
    
    .styled-card-information .card-content,
    body.hasHover .styled-card-information:hover .card-content {
        box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.1);
    }

    .styled-card-information .card-icon {
        width: 2em;
        height: 2em;
        margin: 0 auto 0.5em;
    }

    .styled-card-information .card-title {
        font-size: 1em;
    }
    
    .styled-card-blog-content .card-title {
        font-size: 16px;
    }

    .styled-card-blog-content .card-date {
        margin: 0 auto 4px;
        font-size: 12px;
        line-height: 1.5;
    }

    .styled-card-blog-content .content-text {
        padding-top: 20px;
    }
    
    .styled-card-blog-content .content-text iframe {
        width: 75vw;
        height: 42.1875vw;
    }
    
    .styled-card-blog-content .card-btn-container {
        margin-top: 20px;
    }
    
    .styled-card-winner,
    body.hasHover .styled-card-winner:hover {
        box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.1);
    }

    .styled-card-winner .card-img {
        padding-bottom: 19px;
    }

    .styled-card-winner .card-img .card-img-heading {
        width: 92.5%;
        padding: 10px 16px;
        font-size: 14px;
        line-height: 18px;
    }

    .styled-card-winner .card-content {
        padding: 16px;
    }

    .styled-card-winner .card-title-text ~ .card-title-text {
        margin-top: 10px;
    }

    .styled-card-winner .card-title {
        font-size: 12px;
    }

    .styled-card-winner .card-text {
        font-size: 14px;
    }
    
    .styled-card-blog .card-content {
        padding-top: 22px;
    }

    .styled-card-blog .card-content .card-content-heading {
        font-size: 16px;
    }
    
    .styled-card-blog .card-content .card-content-body,
    .styled-card-blog .card-content .card-content-footer {
        margin-top: 20px;
    }
    
    .styled-card-blog .card-content .card-content-body .card-title-text ~ .card-title-text {
        margin-top: 16px;
    }
    
    .styled-card-blog .card-content .card-content-footer .card-title-text ~ .card-title-text {
        margin-top: 20px;
    }
    
    .styled-card-blog .card-title {
        font-size: 12px;
    }

    .styled-card-blog .card-text {
        font-size: 14px;
    }
    
    /* -- Styled Button -- */
    .styled-btn-normal.btn-size-normal {
        font-size: 16px;
    }
    
    @media only screen and (orientation: portrait) {
        /* -- Customized Style
        --------------------------------------------------*/
        /* -- HOME -- */
        #homeStory #homeStoryBanner {
            margin-left: -8.335%;
        }
        
        #homePromotion #homePromotionBanner,
        html:lang(en) #homePromotion #homePromotionBanner {
            min-height: 0;
            padding-top: 0;
        }

        #homePromotion #homePromotionBanner > div {
            position: relative;
            top: auto;
            bottom: auto;
            left: auto;
            right: auto;
            background: none;
        }

        #homePromotion #homePromotionBanner > div > img {
            display: block;
            position: relative;
            top: auto;
            bottom: auto;
            left: auto;
            right: auto;
            line-height: normal;
            width: 100%;
            height: auto;
            margin: auto;
        }
        
        #homePromotion .section-heading {
            margin-left: -1.5em;
            /*margin-right: -6.5em;*/
            padding-left: 1.5em;
            padding-right: 1.5em;
        }
        
        html:lang(en) #homePromotion .section-heading {
            background-size: 6.75em auto;
        }
        
        html:lang(en) #homePromotion .section-heading .heading-title {
            padding-right: 3em;
        }

        #homePromotion #homePromotionContent {
            position: relative;
            top: auto;
            width: auto;
            max-width: none;
            margin-top: -3em;
            margin-left: -8.335%;
            margin-right: -8.335%;
            padding: 1.5em;
            background-color: rgba(255,255,255,1);
            -webkit-transform: none;
            -moz-transform: none;
            -ms-transform: none;
            -o-transform: none;
            transform: none;
        }
        
        #siteBody.auto-width-body #homeConcept.content-section.section-with-y-padding .content-with-fixed-width > .fixed-width-container {
            padding-bottom: 0;
        }
        
        #homeConcept {
						background-image: none;
				}
        
        html:lang(en) #homeConcept .section-heading {
            background-size: -webkit-calc(100% - 8em * 1.75) auto;
            background-size: -moz-calc(100% - 8em * 1.75) auto;
            background-size: calc(100% - 8em * 1.75) auto;
        }
        
        html:lang(en) #homeConcept .section-heading .heading-title {
            width: 8em;
            max-width: 100%;
            margin-left: 0;
            margin-right: auto;
            padding-left: 0;
            padding-right: 0;
        }
        
        #homeConcept #homeConceptBlock3 .block-img {
            display: none;
        }
        
        #homeConcept #homeConceptBlock3 .block-img-m {
            display: block;
            margin-top: 2.5em;
            margin-left: -16.67%;
            margin-right: -16.67%;
        }
        
        /* -- SIGNUP -- */
        html:lang(en) #containerUserSwitch ul > li > a {
            min-height: 57px;
        }
        
        /* -- NEWS -- */
        #containerNews .styled-card-container > .styled-card {
            float: none;
            width: auto;
        }

        #containerNews .styled-card-container > .styled-card ~ .styled-card {
            margin-top: 2.5em;
            margin-left: auto;
						width: 100%;
        }
        
        /* -- VIDEOS -- */
        #containerVideos .styled-card-container > .styled-card {
            float: none;
            width: auto;
        }

        #containerVideos .styled-card-container > .styled-card ~ .styled-card {
            margin-top: 2.5em;
            margin-left: auto;
        }
        
        /* -- TRAVELTW -- */
        #containerAttractions .styled-card-container > .styled-card {
            width: -webkit-calc((100% - 5vw * 1) / 2 - 0.01px);
            width: -moz-calc((100% - 5vw * 1) / 2 - 0.01px);
            width: calc((100% - 5vw * 1) / 2 - 0.01px);
            margin-top: 6.25vw;
            margin-left: auto;
            margin-right: auto;
        }

        #containerAttractions .styled-card-container > .styled-card ~ .styled-card {
            margin-left: 5vw;
        }
        
        #containerAttractions .styled-card-container > .styled-card:nth-child(n+3) {
            margin-top: 6.25vw;
        }
        
        #containerAttractions .styled-card-container > .styled-card:nth-child(3n+1) {
            margin-left: 5vw;
            clear: none;
        }

        #containerAttractions .styled-card-container > .styled-card:nth-child(2n+1) {
            margin-left: auto;
            clear: both;
        }
        
        #containerInformation .styled-card-container > .styled-card {
            display: block;
            width: auto;
            vertical-align: baseline;
        }

        #containerInformation .styled-card-container > .styled-card ~ .styled-card {
            margin-top: 1.25em;
            margin-left: auto;
        }
        
        /* -- WINNERS -- */
        html:lang(en) #containerStageSwitch ul > li > a,
        html:lang(en) #containerStageSwitch ul > li > p {
            /* min-height: 57px; */
        }
        
        #containerStageContent .styled-card-container > .styled-card {
            float: none;
            width: auto;
        }

        #containerStageContent .styled-card-container > .styled-card ~ .styled-card {
            margin-top: 20px;
            margin-left: auto;
						width: 100%;
        }
    }

    @media only screen and (orientation: landscape) {
        
    }
}

@media only screen and (max-width: 575px) {
    /* -- Footer
    --------------------------------------------------*/
    #siteFooter,
    #siteFooter::before {
        padding-top: 40.625%;
				background-image: url(../images/m-bg-footer.svg);
				background-position: top;
				background-size: cover;
    }

    #siteFooter .footer-container {
        padding-top: 3em;
        padding-bottom: 3em;
    }

    #siteFooter ul.footer-units-container,
    html:lang(en) #siteFooter ul.footer-units-container {
        width: 180px;
    }
    
    #siteFooter ul.footer-units-container ~ ul.footer-units-container,
    html:lang(en) ul.footer-units-container ~ ul.footer-units-container {
        display: block;
        width: 180px;
        padding: 0 0 4.5em;
        vertical-align: baseline;
    }

    #siteFooter ul.footer-units-container > li,
    #siteFooter ul.footer-units-container > li:nth-child(3),
    html:lang(en) #siteFooter ul.footer-units-container > li:nth-child(1) {
        float: none;
        width: 100%;
    }
    
    #siteFooter ul.footer-units-container ~ ul.footer-units-container > li,
    html:lang(en) #siteFooter ul.footer-units-container ~ ul.footer-units-container > li {
        width: 100%;
    }

    #siteFooter ul.footer-units-container > li ~ li,
    html:lang(en) #siteFooter ul.footer-units-container > li ~ li {
        margin: 3em auto 0;
    }

    #siteFooter ul.footer-units-container > li .unit-logo-container,
    #siteFooter ul.footer-units-container > li:nth-child(3) .unit-logo-container {
        width: 85%;
    }
    
    #siteFooter ul.footer-units-container > li:nth-child(1) .unit-logo-container,
    html:lang(en) #siteFooter ul.footer-units-container > li:nth-child(1) .unit-logo-container {
        width: 90%;
        margin-top: 0;
    }
    
    #siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container,
    html:lang(en) #siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container {
        width: 66.67%;
    }

    #siteFooter ul.footer-units-container > li .unit-logo-container > .unit-logo,
    #siteFooter ul.footer-units-container > li:nth-child(3) .unit-logo-container > .unit-logo {
        width: 100%;
        padding-top: 50%;
    }
    
    #siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container > .unit-logo {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding-top: 60%;
    }
    
    #siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container > .unit-logo:last-child {
        margin-left: auto;
        margin-right: auto;
    }
    
    #siteFooter ul.footer-units-container > li .unit-logo-container > .unit-logo ~ .unit-logo {
        margin-top: 1.75em;
				margin-left: 0px;
    }
    
    #siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container > .unit-logo ~ .unit-logo {
        margin-top: 0.75em;
    }

		#siteFooter ul.footer-units-container > li:nth-child(3) .unit-logo-container > .unit-logo.smaller {
				width: 100%;
		}

		#siteFooter ul.footer-units-container > li:nth-child(3) .unit-logo-container > .unit-logo.small {
				width: 100%;
		}

		html:lang(en) #siteFooter ul.footer-units-container > li:nth-child(3) {
				width: 100%;
		}

		#culture-dep {
				width: 100% !important;
		}

		#homePromotion .section-heading {
        background-position: center right 30px;
    }

		#homeConcept .theme-puzzle {
				left: 0px;
    		width: 43%;
		}

		.quote-container {
				background-image: url(../images/m-icon-quote.svg);
				margin-left: -15px;
		}

		.content-text.padding {
				padding-left: 0px;
				font-size: 18px;
		}

		.content-container.no-top {
				padding-top: 0px !important;
		}

		.promo-country-container {
				margin-top: 10px;
		}

		.content-section .content-container .content-title {
				font-size: 24px;
				font-weight: 900;
				line-height: 36px;
		}

		.site-brand .brand-img {
				margin-right: 50px;
		}

		.mobile-px-half {
				margin-left: -8.5%;
				margin-right: -8.5%;
		}

		.form-group, .label-block, .form-check-checkbox, .form-check-radio.checkbox {
				font-size: 16px;
		}
		

		.option-description {
				font-size: 14px;
		}

		.star-explain {
				font-size: 14px;
				letter-spacing: -0.1px;
		}    

		.form-check-checkbox.final {
				text-align: left;
		}

    /* -- Components
    --------------------------------------------------*/
    /* -- Form -- */
    ::-webkit-input-placeholder { color: #95A9CB !important; opacity: 0.5 !important; }
    :-moz-placeholder { color: #95A9CB !important; opacity: 0.5 !important; }
    ::-moz-placeholder { color: #95A9CB !important; opacity: 0.5 !important; }
    :-ms-input-placeholder { color: #95A9CB !important; opacity: 0.5 !important; }
    ::-ms-input-placeholder { color: #95A9CB !important; opacity: 0.5 !important; }
    ::placeholder { color: #95A9CB !important; opacity: 0.5 !important; }

    form label {
        margin-bottom: 0.5em;
    }
    
    form label > span.label-note {
        font-size: 1em;
    }
    
    html:lang(en) form label > span.label-note {
        font-size: 12px;
    }

    form .form-group-container ~ .form-group-container {
        margin-top: 1.5em;
    }

    form .form-group-container .form-whole-container .form-group {
        float: none;
        width: auto;
    }

    form .form-group-container .form-whole-container .form-group ~ .form-group {
        margin-top: 1em;
        margin-left: auto;
    }

    form .form-group-container .form-half-container {
        float: none;
        width: auto;
    }

    form .form-group-container .form-half-container + .form-half-container {
        margin-top: 1.5em;
        margin-left: auto;
    }

    form .form-dynamic-container {
        padding-right: 2em;
    }

    form .form-dynamic-container .form-dynamic-btn {
        width: 1.75em;
        height: 1.75em;
    }
    
		#homeStory .theme-puzzle {
				right: -3vw;
    }

		html:lang(en) #homeStory .theme-puzzle {
				right: -11vw;
    }

		.option-selected {
				font-size: 16px;
		}

		.select-more {
				font-size: 16px;
				margin-left: -7px;
		}

		#containerStageSwitch ul > li > a,
    #containerStageSwitch ul > li > p {
        padding-left: 0.5em;
        padding-right: 0.5em;
    }

		#containerNews .styled-card-container > .styled-card {
				width: 100%;
		}

    @media only screen and (orientation: portrait) {
        
    }

    @media only screen and (orientation: landscape) {
        
    }
}

@media only screen and (max-width: 320px) {
    /* -- HOME -- */
    html:lang(en) #homeConcept .section-heading {
        background-size: -webkit-calc(100% - 6em * 1.75) auto;
        background-size: -moz-calc(100% - 6em * 1.75) auto;
        background-size: calc(100% - 6em * 1.75) auto;
    }
    
    html:lang(en) #homeConcept .section-heading .heading-title {
        width: 6em;
        max-width: 100%;
        margin-left: 0;
        margin-right: auto;
        padding-left: 0;
        padding-right: 0;
    }
    
    /* -- Header
    --------------------------------------------------*/
    #siteHeader {
        height: 50px;
        padding: 0 15px;
    }
    
    #pseudoHeader {
        height: 50px;
    }
    
    #siteHeader #siteBrand {
        height: 36px;
        margin: 7px auto;
    }
    
    /* -- Footer
    --------------------------------------------------*/
    #siteFooter {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    /* -- Components
    --------------------------------------------------*/
    /* -- Styled Modal -- */
    .styled-modal-normal {
        padding: 30px 15px !important;
    }
    
    @media only screen and (orientation: portrait) {
        
    }

    @media only screen and (orientation: landscape) {
        
    }
}

@media(-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:3/2),(min-resolution:1.5dppx),(min-resolution: 192dpi) {
    
}
